You Can Use Undeclared Elements?

What this means is that I can declare that an E1 element can have child elements of type E2, even if I haven't declared element type E2. Mind you, if an E2 actually shows up in the document without having been declared, that would still make the document invalid. This rather contradictory-smelling rule's existence is due to high-intensity demands from co-editor Michael Sperberg-McQueen, who, in another life, has used this underhanded trick to very good effect in the design of large, complex, modular DTDs.

Back-link to spec

Copyright © 1998, Tim Bray. All rights reserved.