# XQuery 1.0 Conformance

This release of Saxon implements the full XQuery 1.0 grammar as defined in the working draft of 29 October 2004 The restrictions noted with respect to XPath 2.0 apply equally to Saxon's support for XQuery 1.0.

The current XQuery specification does not define multiple conformance levels. However, it is widely expected that as with XSLT 2.0, there will be a conformance level that requires XML Schema support and another that does not. Saxon-SA aims to support the schema-aware conformance level when it is defined, Saxon-B the basic conformance level.

Restrictions in Saxon compared with the current draft of XQuery 1.0 include the following:

- The encoding specified in the XQuery version declaration, if present, is ignored.

- If a document node appears in the sequence constructor for an element node, no error is produced. Instead the children of the document node are copied to the new element, as in XSLT.

- Whitespace characters such as tab and newline appearing in attribute content are not normalized.

- The default serialization options are currently as defined in XSLT. For example, HTML serialization is used if the first element output is an <html> element.

- If there is a circularity among the definitions of global variables, this is reported as a dynamic error rather than a static error.

- The `no-preserve` option on the `copy-namespaces` declaration in the Query Prolog is not yet implemented.

- Saxon does not report an error if the namespace axis is used in a query.

Expand | Next