# JAR files included in the product

The full list of JAR files in the Saxon distribution is as follows:

JAR file | Contents
saxon8.jar | Basic XSLT 2.0 and XQuery 1.0 processor. Includes the command line interfaces and the JAVA APIs; also includes a standalone XPath API that doesn't depend on JAXP 1.3.
saxon8sa.jar | Schema-aware XSLT 2.0 and XQuery 1.0 processor, and XML Schema processor. Includes the whole of saxon8.jar, plus additional classes to perform schema processing and schema-aware XSLT and XQuery processing. Provided in the Saxon-SA product only.
saxon8-ant.jar | An early release of an Ant task designed for running XSLT transformations using Saxon, providing more control over Saxon options (for example, schema-aware processing) than the standard `xslt` task in Ant. (This is a completely freestanding component.)
saxon8-dom.jar | Provides additional classes enabling Saxon to be used with the DOM Document Object Model. Supports using a DOM as the input or output of transformations and queries, and calling extension functions that use DOM interfaces to access a Saxon tree structure. Requires DOM level 3 (dom.jar, part of JAXP 1.3) to be on the classpath, if not running under JDK 1.5.
saxon8-xom.jar | Provides additional classes enabling Saxon to be used with XOM trees. Supports using a XOM document as the input or output of transformations and queries. Requires xom-1.1.jar on the classpath.
saxon8-jdom.jar | Provides additional classes enabling Saxon to be used with JDOM trees. Supports using a JDOM document as the input or output of transformations and queries. Requires jdom.jar on the classpath.
saxon8-dom4j.jar | Provides additional classes enabling Saxon to be used with JDOM trees. Supports using a JDOM document as the input or output of transformations and queries. Requires dom4j-1.6.1.jar on the classpath.
saxon8-xpath.jar | Provides support for the JAXP 1.3 XPath API. Requires the JAXP 1.3 version of jaxp-api.jar on the classpath, if not running under JDK 1.5.

saxon8-xqj.jar

Provides support for the early access version of the XQJ interface for XQuery applications. The JAR file includes the XQJ interface definitions, renamed to place them in the package `net.sf.saxon.javax.xml.xquery` to avoid any compatibility problems with other XQJ versions. The JAR file also includes the Saxon classes that implement the XQJ interfaces. This JAR file is needed only if your application is using XQJ interfaces, and it has no additional dependencies. However, Saxon does not include XQJ documentation and you will need to obtain this separately: see the JSR 225 Early Draft Review 2 documentation available from http://jcp.org/en/jsr/detail?id=225. Please note that these interfaces are subject to change.

saxon8sa-jaxp.jar | Part of Saxon-SA only. Provides support for the JAXP 1.3 Validation API. Requires the JAXP 1.3 version of jaxp-api.jar on the classpath, if not running under JDK 1.5.
saxon8sa-qc.jar | Part of Saxon-SA only. Provides support Java code generation: that is, it translates an XQuery query into Java source code, which can then be compiled and executed in the same way as any other Java program.
saxon8-sql.jar | Supports XSLT extensions for accessing and updating a relational database from within a stylesheet.

When running any Java application, Saxon included, all Java classes that are needed must be present on the CLASSPATH. The classpath can be set in the form of an environment variable, or it can be included in the `java` command that invokes the application.

The classpath is written as a list of filenames. These will either be the names of directories (folders) that contain relevant classes, or the names of JAR files containing the classes. On Windows, the names in the list are separated by semicolons.

The table above lists the JAR files provided with Saxon that you may need to include on your classpath. In addition, you may need to include some of the following resources:

Resource | Description
saxon-license.lic | License file. This is needed only for running Saxon-SA. The license file is obtained when you purchase Saxon-SA or when you apply for an evaluation license. Note that the classpath must contain the directory in which the `saxon-license.lic` file is installed; it should not contain the license file itself.

jaxp-api.jar and dom.jar

These two files implement parts of JAXP 1.3 that Saxon uses. They are not needed when you run Saxon under JDK 1.5, as the required classes are then included in the standard Java run-time. They are needed, however, if you run Saxon under JDK 1.4. These two JAR files are not included in the Saxon distribution because of licensing restrictions. Instead, they must be downloaded from https://jaxp.dev.java.net/. The jaxp-api.jar file is needed when you use the JAXP XPath API or the JAXP schema validation API. The file dom.jar is needed if your application uses DOM interfaces. Neither is needed for running straightforward queries or transformations.

From Saxon 8.7 onwards, source code and documentation is no longer included in the same download file as the executable code and sample files. Instead, it can be downloaded separately. The documentation is also available online.

The source code for Saxon-B (on both the Java and .NET platforms) is available in the package `saxon-resources-8.x` from either the SourceForge or the Saxonica sites. Note that it is not necessary to download or recompile the source code unless you need to make changes. The modules included in the source code are also used, without modification, in the schema-aware product. Source code for the additional components of the schema-aware Saxon-SA product is not provided. The source code is the same between the Java and .NET platforms: both products are generated from the same source, though there are some modules that apply only to one platform or the other. There are no build scripts provided for rebuilding the product from source code, because most users find it convenient to use their Java IDE for this purpose.

User documentation (this documentation, together with API specifications for the Java and .NET products) is also available for download from the SourceForge site. The download package contains exactly the same information as the documentation section of the Saxonica website. It also contains this documentation in its original XML form, together with the schemas and stylesheets used to publish it. Note that online documentation is available only for the current Saxon version; older versions can be downloaded from SourceForge.

Next