XPath 3.1 Conformance
Saxon 9.8 implements the final XPath 3.1 Recommendation in its entirety.
New features in XPath 3.0 include the following:
-
String contatenation operator
||
-
Simple mapping operator
!
-
Casting is allowed from a string to a union or list type
-
Union types, provided they meet certain rules, can be used as a
SequenceType
-
Dynamic function call (functions are first class values (items) in the data model)
-
Function literals, for example
substring#2
-
Inline functions, for example
function($i) {$i*$i}
-
Partial application of functions, for example
concat('$', ?)
-
Let expressions, for example
let $v := expr return f($v)
-
EQNames (
Q{uri}local
) wherever QNames are allowed
New features in XPath 3.1 include:
-
Support for maps and arrays
-
Functions to read and write data in JSON format
-
A new operator (
=>
) to allow function chaining -
Various new functions including
random-number-generator()
,sort()
,parse-ietf-date()
.