Saxonica: Latest releases

Saxon 9.8

Saxon 9.8.0.4 maintenance release for Java and .NET, released 16 August 2017.

Saxon 9.8.0.3 maintenance release for Java and .NET, released 6 July 2017.

Saxon 9.8.0.2 maintenance release for Java and .NET, released 21 June 2017.

Saxon 9.8.0.1, the first release in this series for Java and .NET, released 8 June 2017.

Product Headlines

  • XSLT 3.0 implementation: The release is timed to coincide with the publication of the final XSLT 3.0 Recommendation on 8 June 2017. Saxon 9.8 is a complete implementation: Conformance details are available. In particular, the basic conformance level of XSLT 3.0 is now implemented in Saxon-HE.
  • New optimizations: As well as taking XSLT 3.0 support forward to match the final Recommendation, Saxon 9.8 includes a number of new optimizations (these apply to Saxon-EE only):
    • Just-in-time compilation of template rules, to reduce the cost of loading large stylesheets like DocBook and DITA where typical source documents trigger only a fraction of the template rules
    • hot-spot bytecode generation, focusing compilation effort where it delivers most benefits
    • optimization of template rule sets where the matching is predominantly based on predicates rather than element names (DITA-OT being the most obvious example)
    • a new approach to processing of DOM trees (the Domino model), which speeds up navigation of the DOM by building index structures
    • bytecode generation for validation of user-defined simple types in XSD.
  • Packaging: Support for XSLT 3.0 packages is enhanced with a new mechanism allowing available packages and their versions to be catalogued in the Saxon configuration file, with dependencies between packages resolved automatically.
  • Generating SEFs: Saxon-EE is able to generate stylesheet export files (SEFs) containing compiled XSLT packages, either for execution in the browser using Saxon-JS, or for distribution to the production servers where the transformations will be executed.

For further details, see the Saxon 9.8 Feature Matrix.

Upgrading

Saxon-EE and Saxon-PE licenses issued after 16 August 2016 will work with the current maintenance release. For those with earlier licenses, simply enter the existing license number when you reorder, and we will refund its residual value, based on when it was purchased (see Upgrades for more details).

Changes and fixes

Changes in the functionality of the product in successive releases are documented in the Change History section of the documentation. Bug fixes are documented in the bug tracker database; you can search for bugs cleared in a particular maintenance release.

Saxon 9.7

Saxon 9.7.0.20 maintenance release for Java and .NET, released 28 July 2017.

Saxon 9.7.0.19 maintenance release for Java and .NET, released 7 July 2017.

Saxon 9.7.0.18 maintenance release for Java and .NET, released 5 April 2017.

Saxon 9.7.0.15 maintenance release for Java and .NET, released 7 February 2017.

Saxon 9.7.0.14 maintenance release for Java and .NET, released 2 December 2016.

Saxon 9.7.0.13 maintenance release for Java and .NET, released 28 November 2016.

Saxon 9.7.0.12 maintenance release for Java and .NET, released 22 November 2016.

Saxon 9.7.0.11 maintenance release for Java and .NET, released 2 November 2016.

Saxon 9.7.0.10 maintenance release for Java and .NET, released 21 October 2016.

Saxon 9.7.0.8 maintenance release for Java and .NET, released 1 September 2016.

Saxon 9.7.0.7 maintenance release for Java and .NET, released 15 July 2016.

Saxon 9.7.0.6 maintenance release for Java and .NET, released 17 June 2016.

Saxon 9.7.0.5 maintenance release for Java and .NET, released 12 May 2016.

Saxon 9.7.0.4 maintenance release for Java and .NET, released 11 March 2016.

Saxon 9.7.0.3 maintenance release for Java, released 18 February 2016.

Saxon 9.7.0.2 maintenance release for Java, released 19 January 2016.

The first release in this series, Saxon 9.7.0.1 for Java, was issued 27 November 2015.

Product Headlines

  • XSLT 3.0 implementation largely complete (requires Saxon-PE or Saxon-EE): Saxon 9.7 implements the new XSLT 3.0 Candidate Recommendation of 19 November 2015.
  • Schema validation: the schema validator offers customised error reporting.
  • Arrays, Maps, and JSON: XPath 3.1 Arrays are implemented. Along with maps, this provides the infrastructure for full support of JSON.
  • Miscellaneous new functions: two of the most interesting are random-number-generator(), and parse-ietf-date().
  • Streaming: further improvements to the set of constructs that can be streamed, and the diagnostics when constructs cannot be streamed.
  • Collections: In line with XPath 3.1 changes, a major overhaul of the way collections work.
  • Concurrency improvements: Saxon 9.6 already offered various options for executing stylesheets in parallel to take advantage of multi-code processors. These facilities have now been tuned for performance and made more robust, by taking advantage of more advanced concurrency features in the JDK platform.
  • Cost-based optimization: Saxon's optimizer now makes cost estimates in order to decide the best execution strategy.

For further details, see the Saxon 9.7 Feature Matrix.

Saxon 9.6

Saxon 9.6.0.10 maintenance release for Java and .NET, released 2 December 2016.

Saxon 9.6.0.9 maintenance release for Java and .NET, released 26 May 2016.

Saxon 9.6.0.8 maintenance release for Java and .NET, released 10 December 2015.

Saxon 9.6.0.7 maintenance release for Java and .NET, released 5 August 2015.

Saxon 9.6.0.6 maintenance release for Java and .NET, released 5 June 2015.

Saxon 9.6.0.5 maintenance release for Java and .NET, released 27 March 2015.

Saxon 9.6.0.4 maintenance release for Java and .NET, released 14 January 2015.

Saxon 9.6.0.3 maintenance release for Java and .NET, released 2 December 2014.

Saxon 9.6.0.2 maintenance release for Java and .NET, released 13 November 2014.

The first release in this series, Saxon 9.6.0.1 for Java, was issued 2 October 2014.

Product Headlines

  • Saxon 9.6 implements the XSLT 3.0 working draft specification dated 2 October 2014.
  • Support for XQuery 3.0 and XPath 3.0 (recommendations published 8 April 2014) was added to the open-source product Saxon-HE.
  • Saxon 9.6 performs localization using the ICU (International Components for Unicode), which supports many more languages.

For further details, see the Saxon 9.6 Feature Matrix.

Saxon 9.5

Saxon 9.5.1.10 maintenance release for Java and .NET, released 15 April 2015.

Saxon 9.5.1.8 maintenance release for Java and .NET, released 31 October 2014.

Saxon 9.5.1.6 maintenance release for Java and .NET, released 10 July 2014.

The first release in this series, 9.5.0.1, was issued 16 April 2013.

Product Headlines

  • Complete and conformant support for XQuery 3.0 and XPath 3.0, now in the Candidate Recommendation phase.
  • Many advances in XSLT 3.0 support (still a working draft), including more capability for streaming of large documents.
  • In Saxon-EE, multi-threading "out-of-the-box" when processing multiple input files or when generating multiple output files.
  • There are some very handy new extensions, including libraries (defined by the EXPath initiative) for handling of files and directories and ZIP archives, and a function for sending email notifications.

Saxon/C 1.0

Saxon/C 1.0.2 maintenance release for C/C++ platforms, released 5 August 2016.

Saxon/C 1.0.1 maintenance release for C/C++ platforms, released 7 April 2016.

Saxon/C 1.0.0 first major release for C/C++ platforms, released 5 February 2016.

APIs are currently available to run XSLT 2.0/3.0, XQuery 1.0/3.0, XPath 2.0/3.0 and Schema Validation from C/C++ or PHP applications. Saxon/C 1.0.0 is built from the Saxon 9.6.0.9 Java product using the Excelsior JET tool (version 11 MP1).

Saxon-C is now available in the standard Saxon range of editions: the open-source product Saxon-HE/C, and the commercial products Saxon-PE/C and Saxon-EE/C. For further information see Saxon/C.

Saxon-JS 1.0

Saxon-JS 1.0.1 maintenance release 21 July 2017.

Saxon-JS 1.0 first full release 7 February 2017.

Saxon-JS allows execution of XSLT 3.0 stylesheets in the browser. It is a run-time only product; you first need to compile the stylesheet using Saxon-EE (9.7.0.15 or later). The compiled form (called a "stylesheet export file") is an XML document in a Saxon-specific format, so you can prepare the stylesheet on a development workstation and then deploy it anywhere on the web.

Saxon-JS is planned as a replacement for Saxon-CE. It shares with Saxon-CE the ability to write interactive applications, where template rules with modes such as "ixsl:onclick" respond to user interaction. Unlike Saxon-CE, it's a new product written in pure JavaScript, which makes it much smaller and more manageable.

Saxon-JS at its first release has almost complete coverage of XPath 3.1 (including maps, arrays, and JSON), plus support for many XSLT 3.0 features such as try/catch and text value templates. To keep it small, it omits most optional features including schema awareness, streaming, and higher order functions.

For further information see Saxon-JS.

Saxon Client Edition 1.1

Saxon-CE 1.1 is open-source, released 22 February 2013.

Saxon Client Edition achieved its first production release, 1.0, in June 2012, marking the culmination of effort in porting and then wrapping the Saxon XSLT 2.0 processor core into a product fit and ready for the browser, in the era of HTML5 and the dynamic web.

Saxon-CE features interactive event-driven templates and works in any modern browser with JavaScript enabled - including mobile devices.

In February 2013 Saxonica announced that the product would be made open-source, in the hope that this would enable the technology to become mainstream, allowing every developer to produce the same kind of quality interactive applications that pioneer users of the 1.0 release have shown to be possible.

For further information see Saxon-CE.