XPath 3.0 Conformance
Saxon 9.5 implements the XPath 3.0 specification as defined in the Candidate Recommendation of 8 January 2013.
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
Dynamic function call (Functions are first class values (items) in the data model)
Function literals, for example
Inline functions, for example
Partial application of functions, for example
Let expressions (
let $v := expr return f($v))
'uri':local) wherever QNames are allowed
Maps are implemented in XPath 3.0 as described in the XSLT 3.0 specification. This is true whether or not the XPath processor is being invoked in an XSLT context. For details see Maps in XPath 3.0.