Revision History

Revision History
Revision 1-16Tuesday July 14, 2020Ghislain Fourny
Add feature matrix with clear diff overview to W3C standard in introduction.
Revision 1-15Monday July 13, 2020Ghislain Fourny
Expanded function call section with dynamic function calls and partial function application. Expanded item construction section with inline function expressions and named function references. All of these follow the W3C standard and are already supported by several JSONiq implementations.
Revision 1-14Tuesday May 19, 2020Ghislain Fourny
Added function items to the data model with link to the W3C specification. Refactored JDM section.
Revision 1-13Monday Jul 8, 2019Ghislain Fourny
Fixed typos in the code of some builtin functions.
Revision 1-12Friday Aug 7th, 2015Ghislain Fourny
Added ?: syntax.
Revision 1-11Tuesday Aug 13th, 2013Ghislain Fourny
Refactored definition of parse-json to make options clear.
Fixed signature of size() to return "integer?".
Fixed signature of descendant-arrays() to return "array*".
Revision 1-10Thursday Aug 8th, 2013Ghislain Fourny
Fixed semantics of libjn:project() to make it consistent with the other functions.
Added libjn:remove-keys() which does the contrary of libjn:project(), i.e., removes the given keys from all input objects.
Revision 1-9Monday July 22th, 2013Ghislain Fourny
Relaxed the functions descendant-objects, descendant-pairs, values, flatten, project to accept any sequence of items. The behavior on mixed sequences is consistent with object and array lookup. Also introduced new function descendant-arrays and relaxed size to accept the empty sequence.
Relaxed boolean value of sequences beginning with an object or array to be true.
Revision 1-8Tuesday June 18th, 2013Ghislain Fourny
New array navigation syntax to avoid overloading dynamic function call syntax as well as predicate syntax: $array[[$position]] (was: $array($position)).
The functions keys() and members() were relaxed to take any sequence of items as parameters, performing implicit iteration, ignoring non-objects (keys) or non-arrays (members) (was: keys(object), members(array). Now: keys(item*), members(item*)).
New array unboxing syntax $array[], a shortcut for members($array). It also performs an implicit iteration.
Array lookup casts the position expression to an integer. Object lookup casts the key expression to a string (this reverts the change from 1.0.7)
Revision 1-7Monday May 27th, 2013Ghislain Fourny
Relaxed array and object navigation to make it more XPath-like. No more cast is done. Lookup on mixed sequences of items (with an implicit iteration) are allowed. The empty sequence is returned in case of mismatch, i.e. in case of (i) integer lookup on object/atomic or (ii) string lookup on array/atomic.
Revision 1-6Friday May 24th, 2013Ghislain Fourny
Reran all queries through a newer Zorba version (trunk 11475).
Revision 1-5Thursday May 2nd, 2013Ghislain Fourny
Reran all queries through a newer Zorba version (trunk revision 11426).
Corrected some typos, like superfluous prefixes in function library sample queries.
Revision 1-4Monday April 8th, 2013Ghislain Fourny
Allowed the context item to appear unparenthesized in an object lookup expression.
Added the function parse-json()
Revision 1-3Thursday April 4th, 2013Ghislain Fourny
Fixed some typos.
Revision 1-2Thursday April 4th, 2013Ghislain Fourny
Null are comparable with other atomic items and are considered the smallest.
Added link to semantics for all builtin functions inherited from XQuery.
Aggregated some examples.
Revision 1-1Tuesday April 2nd, 2013Ghislain Fourny
Initial commit.