XML Schema Processing Diagrams

During my brief tenure as editor of the XML Schema 1.1 Primer, I added a general description of schema processing and a couple of explanatory diagrams. Though I made them in the vector-based drawing program, OmniGraffle, I could only provide bitmap versions since the program’s vector format was proprietary. The latest version, however, adds an SVG export feature, and I’ve finally gotten around to posting the diagrams to the Schema comments list, in case the Working Group has any interest in using them.

The first diagram shows the common view of schema processing: one xml instance document validated against a schema to produce a true/false result, valid or invalid.

SVG Image



The second diagram shows the schema processing model more fully, where the schema is really a composition of zero or more schema documents and schema information from other sources, such as a repository, and the result is a “Post-Schema-Validation-Infoset” (PSVI). This PSVI is just an augmented version of the original XML instance document (its Infoset actually) so that most every tag now has metadata indicating its type and validity, among other things. Taking the whole PSVI into consideration, a true/false flag is not really enough to describe the outcome of validation—it is possible for a document to be partially valid, even.
SVG Image

I haven’t been following the XML Schema WG lately, and I’m not even sure if the next version of the specification will have a Primer.

Leave a Reply