XSLT 3.0 Support

Saxon implements almost all of the features defined in the XSLT 3.0 Candidate Recommendation dated 19 November 2015.

All XSLT 3.0 features require at least Saxon-PE. Schema-awareness, streaming, and packages require Saxon-EE.

The XSLT 3.0 specification gives processors the option of supporting XPath 3.0 (plus maps), or XPath 3.1. Saxon supports XPath 3.1. The specification requires the processor to provide a mode of operation that is restricted to XPath 3.0; this is not available in Saxon 9.7, but will be made available if the requirement remains in the final version of the specificaion.

XSLT 3.0 support must be explicitly enabled, for example by specifying version="3.0" in the stylesheet or by using the option -xsltversion:3.0 on the command line. It can also be enabled from the configuration file (see Configuration Features) or using methods in the API (for example, on the s9api XsltCompiler object).

For details of the features implemented in the current Saxon release, see XSLT 3.0 Conformance. Full details of these features are in the W3C XSLT and XPath specifications; but further summary information about many of them can be found in the relevant sections of the Saxon documentation listed below: