Open-source java XSLT 2.0 implementation?
I'm currently looking into using XSLT 2.0, but I cannot find any open-source java implementations (Saxon-B seems to fit the bill, but isn't schema-aware).
Am I missing something?
The only one is Saxon-HE:
The W3C hosts an online version of it for testing:
There's also an App Engine project which uses it:
Other than that, there's an incomplete Xerces extension which implements XPath 2.0:
An Eclipse extension which implements XPath 2.0:
An incomplete Xalan-J branch which partially implements XSLT 2.0:
Some prototype work for XSLT 2.0 support in the Xalan-J Interpretive processor went on in 2003, but then trailed off. That prototype work is still available on the xslt20 branch http://svn.apache.org/repos/asf/xalan/java/branches/xslt20/, but since then nobdy has stepped forward to carry on that initial prototyping, and the Xalan PMC hasn't put in place any plans for XSLT 2.0 support.
Yes, I'm answering my own question from 2.5 years ago:
I haven't tried it yet, but I just stumbled upon Eclipse PsychoPath, which is (according to the docs) a XPath 2.0 XML Schema Aware processor that passes 96% of the XPath 2.0 test suite (version 1.1M1).
For the archive, there's also AltovaXML, the free-as-in-beer, schema-aware XSLT 2.0 engine used in XMLSpy etc.
Unfortunately, like XMLSpy, it's Windows only.
Are you sure you really need a schema aware processor? It might help find errors in the stylesheets quicker but the cost might outweigh the benefit (both in terms of money, and license-wise).
Saxon-SA is the schema-aware version of Saxon B. It includes the open source Saxon B in full (published under the Mozilla Public License). It's only the "schema-aware" stuff which is closed source, so most of it is still free software (though only as in free speech..).