This page describes Category C components as defined above: components that are
redistributed with Saxon in binary form, without source-level alteration.
SaxonCS uses a number of third-party components that would fall into
this category, but they are referenced via Nuget dependencies rather than being distributed
with the Saxon product.
Saxon on Java
ASM
See http://asm.ow2.org/
SaxonJ-EE, includes the ASM bytecode generation library. The code is
issued without modification, except that classes are renamed to avoid version conflicts.
The license can be found at http://asm.ow2.org/license.html
SaxonJ-EE 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
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 believes that creating an implementation of the XQJ API would be lawful
without any license.
JLine 2
See https://github.com/jline/jline2
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.
The xmlresolver library
provides an advanced implementation of the SAX EntityResolver,
the JAXP URIResolver, and a new NamespaceResolver; the
implementation uses the OASIS XML Catalogs V1.1 Standard to provide a mapping from public
identifiers to local resources.
The xmlresolverdata JAR file contains standard DTDs, schemas, and URIs for
use with the XML Resolver. These resources carry individual copyright statements; most
of them are Copyright W3C (MIT, ERCIM, Keio), with a variety of dates,
and are distributed under the
W3C Software and Document Notice and License.