The "Reference" Implementation of ISO Schematron

This is the home page for Rick Jelliffe's implementation of ISO Schematron using XSLT. Other more sophisticated Schematron validators built using this skeleton code can be found at the Validators page; in particular this includes a validator that generates ISO SVRL.

It is based in part on his original code from 1999 and supercedes all previous versions of Schematron, which can be found at his ASCC (Academia Sinica Computing Centre, Taipei) website. Even though ISO officially does not allow reference implementations, this version is intended to act as a kind of reference implementation for developers seeking better understanding of the ISO Standard.

This software is currently in late beta release, but is fairly mature (in fact, much of the code is over eight years old) and is in wide use. Please send comments to the news group schematron-love-in. Rick Jelliffe would like to express his thanks to everyone who has helped with Schematron over the last nine years.

Design Requirements

The design requirements for this version include:

Due to the variations in XSLT support, in particular differences in XSLT2 and XSLT1 processors, from 2007-10-17 there is now a special version made for use with the SAXON processor. This should ultimately allow each version to be simplified.

Resources