Schematron is a way to express rules that can be checked against an XML document to produce a report: either the document adheres to the rules or it doesn't.
It supports types of rules and constraints that other schema specification languages (like DTDs and XML schema) do not.
The amazing thing is how schematron uses XML and XSL in a clever, recursive way. All of the processing and validation is done via XSLTs.
A schematron schema is defined in an XML document. A properly formed schematron document can have the schematron XSL template applied to it, and the transformation will result in another XSL template.
This second template can then be used to transform the XML document to be validated. This transformation will result in a report detailing any problems or non-compliance.
schematron basic
tutorial
practical article from XML.com
Dated: 02/19/2003