Curt Arnold - 2000-04-21

Of course, subject to change.

Schema "compilation" is a series of transforms that converts the authoring schema language into a optimized packaged for use by validation engines.

preprocessor.xsl - Creates the validation package by expanding all include and import directives. Checks for structural usage errors (using both ref and name, name or ref using in wrong place, etc).

pass1.xsl - replaces qname links with idrefs. Expands complexType derivation. Reports name conflicts and bad links.

Additional passes may be needed.

prune.xsl (to be written) : Removes one layer of unreachable information (simpleTypes declared by not used for instance).

undocument.xsl (to be written) : Removes any documentation elements.

compact.xsl (to be written) : Replaces nested elementRef's (for example) by IDREFS attributes. Produces deployable "compiled" schema.

document.xsl (to be written) : generates HTML (hopefully with embedded SVG) document from the deployable form.

javahelp-***.xsl (to be written) : generates JavaHelp index, topic, etc files from deployable form.

htmlhelp-***.xsl (to be written) : similar for HTMLHelp

descope.xsl - substitutes permissive schema scoped elements for use of locally-scoped elements.  Precursor to:

dtd.xsl - generates a DTD from a compiled, descoped schema.