Saxon-EE, on both Java and .NET, includes portions of the International Components for
Unicode library, principally to support use of the Unicode Collation Algorithm, and localization
features such as formatting of numbers and dates.
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
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
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.
JLine 2 is a library for handling interactive console input, with facilities such as
content completion and command history. It is used by the Gizmo utility. For user convenience,
the JLine 2 JAR file is distributed in unmodified form with the Saxon release. It should be placed
on the classpath when running Gizmo, but is otherwise unused.
Note: Saxon Gizmo does not work with JLine 3.
The license is the two-clause BSD license:
Applicable notice: JLINE2.txt
Saxon on .NET
See http://www.ikvm.net/. Can be downloaded from
http://sourceforge.net/project/showfiles.php?group_id=69637. Saxon links dynamically to this
License is at http://weblog.ikvm.net/story.aspx/license
Applicable notice: FRIJTERS.txt
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
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
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
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.
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.