SAXON
The XSLT and XQuery Processor


This is the home page for the Open Source SAXON XSLT processor developed by Saxonica Limited. It also provides information about commercial versions of the Saxon product available from Saxonica.

See also the project page for Saxon.

Documentation for the current release of Saxon is available online at http://www.saxonica.com/documentation.

The latest version of Saxon is version 9.6, first released on 2 October 2014.

The most stable version is version 9.5, first released on 19 April 2013, and regularly updated with maintenance releases.

There are several editions of Saxon currently maintained:

Saxon 9.6 on Java ideally requires Java 6 (also known as JDK 1.6) or later. It is no longer tested on Java 5 (JDK 1.5), though we believe it can probably be made to work if the required JAXP libraries are separately installed.

Saxon 9.6 on .NET requires .NET framework 3.5 or later. Users have reported that it also works on Mono, but we do not run tests on this platform.


A comparison of the features available in different editions of the Saxon product is available.

A detailed history of changes in successive releases is available.


Current releases

Saxon-EE 9.6

The commercial Enterprise Edition from Saxonica, supporting XSLT 2.0, XPath 2.0 and 3.0, XQuery 1.0 and 3.0, and XML Schema 1.0 and 1.1, XQuery Update 1.0, and almost-complete support of the current (2 October 2014) "last-call" draft of XSLT 3.0.

All current releases are listed on the Saxonica download page.

Source code for Saxon-EE is not available.

Saxon-PE 9.6

The commercial Professional Edition from Saxonica, supporting XSLT 2.0, XPath 2.0 and 3.0, and XQuery 1.0 and 3.0, together with selected features from XSLT 3.0. It omits support for some optional features of these specifications, notably schema awareness and (in the case of XSLT 3.0) streaming.

All current releases are listed on the Saxonica download page.

Source code for Saxon-PE is not available.

Saxon-HE 9.6

The open-source implementation of XSLT 2.0, and XPath 2.0 and 3.0, and XQuery 1.0 and 3.0. This provides the "basic" conformance level of these languages; it also supports some optional features of the specifications such as serialization and support for XQuery modules.

Not included in the Home Edition are: schema processing and schema aware XSLT and XQuery; support for higher-order functions; numerous Saxon extensions; calling out to Java methods; XQuery Update support; various optimizations including join optimization; streamed processing; and byte code generation.

There are four files available: a ZIP file containing executable code for the Java platform; a .EXE installer for the .NET platform; a resources file containing documentation and sample applications applicable to both platforms; and a ZIP archive of the source code for both platforms. (Documentation is also available online)

  • Download for Java (1.9 Mbytes)
  • Download for .NET (6.1 Mbytes)
  • Download documentation and samples) (13.1 Mbytes)
  • Source code for Saxon-HE (3.0 Mbytes)
  • Recent Saxon-HE releases can also be downloaded from Maven: see Maven Repository.

    At the time of writing, Saxon 9.5 is more stable and mature than Saxon 9.6, so users who do not require the new features of 9.6 may prefer to stick with 9.5 for a few months longer.

    From Saxon 9.4, the Subversion repository for source code is no longer maintained in SourceForge, but on the Saxonica site at https://dev.saxonica.com/repos/archive/opensource. The repository does not contain the development branch of the code, only versions that have been released; it is the best way of obtaining bug fixes quickly if you are prepared to build the product from source (which is not for the faint-hearted).

    Note that bug fixes are typically made available in Subversion as soon as they are available, and are then consolidated periodically into a maintenance release. Source code under development is not held in Subversion, and is not available until a tested release is issued. Sometimes prereleases of new facility releases are made available for testing; these are announced on the saxon-help mailing list but will not generally be advertised here.

    Older releases of Saxon-HE remain available from SourceForge: see the SourceForge download page for details. If you require a release that is no longer listed, please ask: we can't offer to support it, but in general we don't mind you using it at your own risk.

    Saxon-CE 1.1

    Saxon-CE is the client edition of Saxon, offering XSLT 2.0 running in the browser. For information about the product, see the Saxon-CE home page. The product is open-source, under the Mozilla Public License version 2.0, and the source code (and other developer resources) are hosted on github. Unlike the Saxon-HE project, we plan to make new developments available in the repository before they are fully tested and released.

    Bugs, Forums and Discussion Lists

    The bug tracker for all versions of Saxon is a Redmine database hosted at saxonica.plan.io. You are free to enter new bugs here directly, or if bugs are raised by other routes (such as the mailing list) we will register them there if they need to be tracked.

    The Redmine database also offers discussion forums and these are the best way to raise technical issues or questions that need an answer from the Saxonica development team.

    The SourceForge project hosts a mailing list, saxon-help, which provides a good way of reaching other Saxon users. Since SourceForge is dedicated to open source, we don't encourage use of this list for issues specific to the commercial versions of the product.

    If you need help using the underlying languages (XSLT, XQuery, XSD etc) and the problem is not specific to Saxon, it's better to use a general forum rather than a Saxon community resource. These days StackOverflow seems to be the best place to be confident of getting a good answer to straight coding questions, while the xsl-list (also known as the Mulberry list) is the place for deeper discussions about the nature of XSLT as a language.

    To search the history of previous questions and answers on these lists, the database maintained at MarkMail is the most comprehensive and most readily searchable.

    Please try to avoid contacting Saxonica developers by personal email; while we love to help, it's much easier to manage the correspondence through an archived forum.

    Older Products

    Saxon-B

    Saxon-HE does not offer all the capabilities that were present in Saxon-B. Most notably, support for Saxon extension functions and other extensions was dropped, as was the capability for writing extension functions that rely on dynamic loading of Java or .NET code (a new facility for "integrated extension functions" is however available). Users whose code relies on these features of Saxon-B should either purchase the Professional Edition product or stick with Saxon-B: the latest release of Saxon-B is 9.1.0.8, and although there are no plans to develop it further or maintain it, it will remain available indefinitely.

    Saxon-B version 9.1.0.8 is a complete and conformant implementation of the XSLT 2.0, XQuery 1.0, and XPath 2.0 Recommendations published on 23 January 2007 by W3C.

    Saxon-B 9.1.0.8 is available on both the Java and .NET platforms.

    For the bug fixes in each successive maintenance release, see the Release Notes and Change Notes for the release on the SourceForge downloads page.

    It can be downloaded from:

    Saxon 6.5.5

    The Saxon XSLT 1.0 processor remains available. The latest version is 6.5.5. However, even if your stylesheets only require XSLT 1.0, it is probably better to run them under Saxon 9.x

    This product is mature and stable, and further developments are very unlikely.

    The download includes documentation, source code, Java executables, and sample code.

    Known limitations of this release are listed here. This page will be updated with information about any new bugs that come to light.

    Saxon 6.5.3

    The previous release of Saxon's implementation of XSLT 1.0. This product remains available because it runs in some environments that are not supported by Saxon 6.5.5, notably under JDK 1.1.

    The download includes documentation, source code, Java executables, and sample code.

    Known limitations of this release are listed here. No further updates will be made to this page.

    Instant Saxon 6.5.3

    The most recent version of the Instant Saxon product. Instant Saxon was built using the same source code as Saxon 6.5.3, but was packaged for ease of installation when using the Microsoft Java VM. Since the Microsoft Java VM has long ceased to be a standard component of the Windows platform, this release has outlived its usefulness, but it remains available for download for those of an antiquarian disposition.

    Old products

    Ant Task for Saxon

    There is a custom Ant task for invoking Saxon XSLT transformations. This was previously issued as part of the Saxon product but has now been separated into a separate package under the Saxon SourceForge project. It is no longer actively developed and is not recommended (there are a number of bugs, and it is difficult to improve the quality because of an absence of test material). The download is here.

    Ælfred

    The Ælfred XML Parser that was bundled with Saxon versions up to version 7.1 is available as a separate download. It is of historic interest only.

    DTDGenerator

    Also available on this site is the DTDGenerator program. This was formerly produced as a Saxon demonstration application, but has since been adapted to work as a pure SAX application, with no dependencies on the Saxon software.

    Documentation for earlier releases remains present on the SourceForge web site: 6.4.2, 6.4.3, 6.5, 6.5.1, 6.5.2, 6.5.3, 6.5.4, 6.5.5, 7.0, 7.1, 7.2, 7.3, 7.3.1, 7.4, 7.5, 7.5.1, 7.6, 7.7, 7.8, 7.9, 7.9.1

    For releases from 8.0 onwards, the documentation is not available directly on the web site, but can be obtained by downloading the software.

    SourceForge.net Logo


    Michael H. Kay
    3 October 2014