[Home] [By Thread] [By Date] [Recent Entries]

  • From: Roger L Costello <costello@m...>
  • To: "xml-dev@l..." <xml-dev@l...>
  • Date: Mon, 9 May 2022 11:16:37 +0000

Hi Folks,

 

The Schematron processor that I use is an XSLT program that takes as input a Schematron schema and the XSLT program transforms the Schematron schema into an XSLT program that is specific to the Schematron schema:

 

Schematron schema --> XSLT --> XSLT for the particular Schematron schema

 

Then the “XSLT for the particular Schematron schema” is run and it inputs the XML document to be validated. The output is the validation results:

 

XML doc to be validated --> XSLT for the particular Schematron schema --> validation results

 

Rick et al chose to implement Schematron validation by generating a stylesheet for the particular Schematron schema.

 

An alternative strategy would have been to create a universal stylesheet that directly performs Schematron validation on the XML doc to be validated:

 

XML doc to be validated --> universal stylesheet --> validation results

 

Interestingly, Michael Kay has a blog post (https://dev.saxonica.com/blog/mike/2018/02/could-we-write-an-xsd-schema-processor-in-xslt.html) in which he discusses the idea of using XSLT to build an XML Schema validator. He explores the idea of whether to write an XSLT program that generates another XSLT program (as Schematron does) or whether to write a universal XSLT program. At the end of his blog, Michael writes:

 

I still have an open mind about whether a universal stylesheet should be used, or a generated stylesheet for a particular schema.

 

A fascinating parallel, I think.

 

/Roger



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member