Changes to Saxon Extensions
The EXSLT function
set:distinct() is withdrawn.
(It contained a bug that was non-trivial to fix, and the functionality
is superseded by the
distinct-values() function and by XSLT's
The Saxon extension function
saxon:distinct() is withdrawn for the same reason.
A new function
saxon:evaluate-node() is introduced. This is a variant of
designed specifically for evaluating an XPath expression contained within a node of an XML document. It differs from
saxon:evaluate() in that the static context (in particular, the namespace context) is taken from the
node in the source document containing the expression, rather than from the stylesheet. The expression has access
to standard functions and vendor extension functions, but not to user-defined functions or variables. The context
node for evaluating the expression is also the node containing the expression, so the expression can act as a
reference or pointer to other nodes in the document.
The extension function
saxon:line-number() now takes an optional argument identifying the node
whose line number is required. If the argument is omitted, then it applies to the context node, as before.
The XSLT extension instruction
saxon:assign now works only with global variables.