SAXON home page

Limitations

This page lists areas where Saxon 6.5.5 is known to be non-conformant with W3C specifications.

Since Saxon 6.5.5 is now stable and generally reliable, there are no plans to remove these limitations.

XSLT 1.0 conformance

  1. The characters used in the xsl:decimal-format element and the picture string of format-number must have Unicode code points less than 65535. (This is arguably in conformance with the specification, since XSLT 1.0 refers to the specification of the DecimalFormat class in JDK 1.1, which has the same limitation.)

  2. The picture string of format-number behaves as implemented in the Java DecimalFormat class for the JDK version in use, whereas the XSLT specification mandates that it should behave as specified in JDK 1.1.

  3. When the version attribute is set to 1.1, Saxon recognizes certain constructs that were defined in the draft XSLT 1.1 specification; XSLT 1.0 requires that such constructs are treated as errors.

  4. An erratum to the XSLT 1.0 specification states that xsl:copy and xsl:copy-of may be used to add a namespace node to a newly constructed element. This works correctly in Saxon, provided that the name of the namespace node does not clash with the namespace prefix that Saxon has allocated to the element for serialization purposes. (In principle, this namespace prefix should not be present in the result tree, and should therefore be incapable of causing a conflict.) More details: see bug 637117.

XML 1.0 Conformance

The default parser is a version of Ælfred. There is one known non-conformance in the version of the AElfred parser provided with the Saxon product: it does not enforce the constraint that the contents of a general entity must be well-formed. Note, however, that this parser does not perform XML validation.


Michael H. Kay
15 October 2005