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:
And there is JSFiddle like version as well:
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.
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..).