Loads all XML schemas used by the program and then builds an XML graph containing:
- All types defined in loaded XML schemas.
- The necessary types from the XMLSchema-datatypes namespace.
- The necessary quantified versions of those types (suffixed ?,+, or * accordingly)
Additionally, only
ChoiceNodes can have element and attribute nodes as content, and the contents of each element node will be a
ChoiceNode.
A
quantified type is the name of a type suffixed with ?, + or *, corresponding to the zero-or-one, one-or-more and zero-or-more operators. Quantifiers can appear both inside and outside of gap annotations. For example, these are all types that use quantifiers:
foo+ foo[bar* X] foo*[bar+ Z] foo[bar? X, baz? Y]