Building from Source Code

Source code for Saxon-CE can be downloaded from the github repository at https://github.com/Saxonica/Saxon-CE The repository also includes build files, though you may need to customize these to work in your local environment.

The key tool for building Saxon-CE is the Google Web Toolkit, GWT, which compiles the Java code to Javascript. You will need to become familiar with GWT before attempting to build Saxon from source. GWT is probably easiest to use as an Eclipse plug-in.

The most likely reason for building Saxon-CE from source is that you want to integrate it with other GWT applications. GWT works at the level of Java source code, and needs access to all the Java source of the complete application. It is possible to generate two GWT modules separately but they will then need to communicate with each other using Javascript interfaces.

At the time of writing, the test material we use for testing Saxon-CE is not released, and in some cases Saxonica does not have the right to release it. Bear this in mind if you plan to make modifications to the code.

If you are interested in contributing to the Saxon-CE project as a committer, please contact Saxonica. We will not accept source code submissions unless you (and if appropriate, your employer) agree in writing to license your contributions, and we will insist that test material and documentation is submitted in addition to code changes. Given the initial absence of an open-source test suite, we will need to discuss the best form for test material to be supplied.

Saxonica's priorities in taking the product forward are reliability, conformance, usability, and performance in that order. Conformance means 100% adherence to W3C standards and maximum cross-browser portability. Usability means good APIs, diagnostics, and development tools. Performance demands firm attention to keeping the downloaded code size small. Contributions will only be accepted if they contribute to these objectives.