Changes to Functions and Operators
The new rules for effective boolean value, and for the
have been implemented. These rules make it a type error to ask for the effective boolean value of
anything other than a sequence starting with a node, or a singleton boolean, number, or string.
For example, testing the effective boolean value of an
xs:anyURI value or
of a sequence of integers is now an error.
Saxon's two native tree models now implement the W3C
An attribute named
xml:id is considered to be an ID attribute for the purposes
of the id() function. Note that when using schema or DTD validation, the attribute is not
permitted unless the element declaration explicitly allows it, and it must then be declared
as of type ID.
The new function
prefix-from-QName is implemented.
In the TinyTree model, the base URI of a processing instruction is now maintained, and is
accessible to the
base-uri() function. Previously,
the base URI was always taken to be the same as that of the parent element or document node.
Casting or constructing a QName or NOTATION is now permitted only if the argument is
supplied as a string literal. (Saxon is actually a bit more flexible than this, and allows a compile-time