Source code, samples, and other resources

Source code, sample files, and documentation are not included in the same download file as the executable code. Instead, the samples and documentation are available in a separate resources file, which can be downloaded from either the GitHub Saxon-HE repository or the site. The documentation is also available online.

Source code

It is not necessary to download or recompile the source code unless you need to make changes (and it is rarely necessary to make changes, because Saxon provides extensive system programming hooks to enable customization). The exception to this is that in SaxonJ-HE, adapters for external object models, and localization code for non-English languages, are provided in source form only.

The original source code (the code that Saxonica's developers work with) contains preprocessor directives that mark some of the code to be included only in some Saxonica products and not others. Saxonica makes this original source code available, as required by the terms of an open source license. However, for many users it is simpler to work with the version of the code that has been preprocessed for SaxonJ-HE. The preprocessed code can be dropped directly into an IDE such as Eclipse or IntelliJ.

The modules included in the original source code of SaxonJ-HE are also used, with different preprocessing, in SaxonJ-PE and SaxonJ-EE. Source code for the additional components of the commercial editions 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.

Source code for SaxonCS is not available. (The bulk of the C# code is generated from Java using proprietary tools, so it would not be useful.)

User documentation

User documentation (this documentation, together with API specifications for the Java and C# products) is also available for download from the Saxonica Saxon-HE GitHub repository. The resources download contains exactly the same information as the documentation section of the Saxonica website. It also contains the SaxonC documentation.

Sample applications

The resources download contains a number of sample applications, found in the directory /samples. They are described in the Samples section of the documentation.