Redistributed Components

This page describes Category C components as defined above: components that are redistributed with Saxon in binary form, without source-level alteration. (The ICU library is included in this category, though the version that is distributed has been tailored to Saxon's needs using the configuration facilities available within the ICL product.)

Java and .NET platforms

ASM

See http://asm.ow2.org/

Saxon-EE, on both Java and .NET, includes the ASM bytecode generation library. The code is issued without modification, except that on .NET it is cross-compiled to .NET IL form.

The license can be found at http://asm.ow2.org/license.html

Applicable notice: ASM.txt

ICU-J

See http://site.icu-project.org//

Saxon-EE, on both Java and .NET, includes portions of the International Components for Unicode, to support prinicipally use of the Unicode Collation Algorthim.

The license can be found at http://source.icu-project.org/repos/icu/icu/trunk/license.html, which contains details of the licences for third-party software components that it includes, not all of which are included in Saxon-EE.

Saxon on Java

XQJ

See http://www.jcp.org/en/jsr/detail?id=225

XQJ is a Java API for XQuery, supported by a number of XQuery implementations including Saxon. To support this API, Saxon necessarily includes the Java files that define the interfaces.

These files are copyright (c) Oracle Corporation. They are used under a license which permits use and redistribution. The license however does not qualify as an open source license under the rules of the Open Source Initiative, because it explicitly prohibits modification of the relevant files. For this reason XQJ is issued as a free-standing JAR file in the open-source Saxon-HE product.

The license for XQJ is provided in the JSR 225 specification. This contains separate licenses for the specification, the reference implementation, and the "technology compatibility kit" (that is, the reference tests). Saxonica considers that the Java interface files are part of the specification and are licensed under the conditions that apply to the specification. These conditions are as follows:

Saxonica certifies that the Saxon product, as an implementation of XQJ, satisfies the conditions of this license (for example, it passes the tests in the TCK).

Note: although Saxonica complies with all the conditions of this license, Saxonica does not necessarily accept that implementing a published specification is an action that requires a license.

Saxon on .NET

IKVM Runtime

See http://www.ikvm.net/. Can be downloaded from http://sourceforge.net/project/showfiles.php?group_id=69637. Saxon links dynamically to this DLL.

License is at http://weblog.ikvm.net/story.aspx/license

Applicable notice: FRIJTERS.txt

OpenJDK Classpath

The copy of OpenJDK Classpath released with Saxon on .NET is derived from the version that is released as part of IKVM Runtime (see above). This in turn is derived largely from the Sun OpenJDK distribution, together with some components taken from the Red Hat IcedTea library, compiled into CIL code using IKVMC. Saxon 9.1 uses IKVM 0.40.0.1, which in turn uses OpenJDK 7 b13.

Saxon distributes only the parts of this library that are actually needed. These parts have been rebuilt from source code, but no source modifications have been made.

Saxon links dynamically to this DLL.

The license conditions are at http://openjdk.java.net/legal/gplv2+ce.html. (This is a modified variant of the GNU Public License version 2, with a special clause allowing it to be used as part of a product that is not itself open source.)

Applicable notice: GPL+CLASSPATH.txt

Apache Xerces

Rather than distributing the Sun version of Xerces that comes with the OpenJDK library, Saxon instead distributes the Apache version of Xerces. (The two versions have diverged considerably. The Apache version is used because it is considered more reliable and is also easier to integrate because it does not have unnecessary dependencies on other parts of the JDK library.)

The two Apache JAR files xercesImpl.jar and resolver.jar have been cross-compiled to IL code using the IKVMC compiler, but are otherwise unmodified.

The license conditions for Xerces are at http://www.apache.org/licenses/LICENSE-2.0

Applicable notices: APACHE-XERCES.txt, APACHE-RESOLVER.txt

TagSoup

Supporting the saxon:parse-html() extension function, the code of TagSoup version 1.2 is included in the Saxon-PE and Saxon-EE distributions on .NET. Apart from cross-compiling from Java bytecode to IL code, the code is unmodified.

Information about TagSoup, including links to the download location for source code, is available at https://mvnrepository.com/artifact/org.ccil.cowan.tagsoup/tagsoup/1.2.

The license conditions for TagSoup are at http://www.apache.org/licenses/LICENSE-2.0

Applicable notices: APACHE-TAGSOUP.txt