The DSD processing model
A DSD processor performs a single top-down traversal of the
application document tree.
- During this traversal, each element node is assigned an element ID.
- An element ID determines an element name and a constraint.
- A constraint imposes requirements on the element attributes and content.
The DSD assigns a fixed element ID to the root element;
when checking the contents of an element, its sub-elements are
assigned element IDs.
Terminology: the current element is the node currently being
visited during the traversal.
The IDs function as grammar nonterminals.
(Other schema languages refer to e.g. element descriptions by
element name, prohibiting multiple uses of the same element name.)
(Note: an element ID denotes a particular kind of element - the term
"element ID" does not imply that two application document nodes cannot
be assigned the same element ID.)