XML News from Monday, January 22, 2007

Rick Jelliffe has posted a beta implementation of ISO Schematron. Schematron is an XPath based schema language that focuses on assertions rather than grammars. It is liberal (anything not forbidden is permitted) where other languages are conservative (everything not permitted is forbidden). According to Jelliffe, this release:

is the successor to the "skeleton" XSLT meta-stylesheet implementation used widely for Schematron 1.5 and 1.6. It implements all of ISO Schematron (http://www.schematron.com) except "abstract patterns", which will be folded in this month or added using a pre-processor.

Oliver Becker's skeleton design provides an XSLT API for the output templates. So it is very easy to override the default templates and make your own customized validator, if you are an experienced XSLT programmer. Existing validators built using the old skeleton API will probably work unchanged with the new one.

The site also contains two new (beta) validators built on the skeleton. Schematron SVRL generates XML output, using the Schematron Validation Report Language that is Annex D of ISO Schematron. Schematron Terminator will terminate after the first error is found. Example scripts are on the site to show how you can validate a document using SVRL output, then use a further "testing" Schematron schema to look at the validation results and report their significance or set error codes.

Comments and testers are very welcome. The code is early beta (not recommended for republishing or commercial use:) and is being revised daily in response to feedback from the Schematron-love-in mail list

It is open source, with a non-viral license.

I expect it will be tested enough for serious use by the beginning of February, but it will stay in beta status until: