XQuery 4.0
This article is part of the XQuery Portal. It provides a summary of the most important features of the XPath and XQuery Functions and Operators 4.0 W3C Editor's Draft.
Contents
Otherwise operator
$a otherwise $b
… is equivalent to …
if(exists($a)) then $a else $b
Braced if, optional else
if($a) { $b } else { $c }
if($a) { if($b) { $c } }
Arrow map operator
"The cat sat on the mat"
=> tokenize()
=!> concat(".")
=!> upper-case()
=> string-join(" ")
Numeric literals
1_048_576
0xFC00
0b111000
Abbreviated function syntax
let $inc := fn($n) { $n + 1 } return $inc(99)
… is equivalent to …
let $inc := function($n) { $n + 1 } return $inc(99)
Focus functions (arity-one)
let $inc := fn { . + 1 } return $inc(99)
fn:filter($integers, fn { . > 5 })
fn:iterate-while($number, fn { . < 100 }, fn { . * . })
Maps
20 new map functions have been added in XPath and XQuery Functions and Operators 4.0, namely
fn:atomic-equalmap:buildmap:containsmap:entriesmap:entrymap:filtermap:findmap:for-eachmap:getmap:keysmap:mergemap:of-pairsmap:pairmap:pairsmap:putmap:removemap:replacemap:sizemap:substitutemap:values
Map functions are described in Map Module.
Arrays
30 new array functions have been added in XPath and XQuery Functions and Operators 4.0, namely
array:appendarray:buildarray:emptyarray:existsarray:filterarray:flattenarray:fold-leftarray:fold-rightarray:footarray:for-eacharray:for-each-pairarray:getarray:headarray:index-wherearray:insert-beforearray:joinarray:membersarray:of-membersarray:putarray:removearray:replacearray:reversearray:sizearray:slicearray:sortarray:splitarray:subarrayarray:tailarray:trunkarray:values
Array functions are described in Array Module.
Changelog
- Version 11.0
- Added
otherwiseoperator