> I have not suggested a solution for
> how to solve the *hard* problem, namely how to go about making a
> compound DTD, and would like to hear input on that. -Tim
As far as I can see, such a thing is not possible even in principle,
except through the promiscuous use of ANY content models. Given
that you want to combine two separate DTDs, {A} and {B}, with or without
prefixes, initially only {A} elements will be permissible content
for other {A} elements, and likewise for {B} elements. So whatever
the root element of a document may be will dictate what elements
are to be used within it.
In order to make this otherwise, someone must decide exactly which
elements from {A} can have {B} content and vice versa. That is
inherently beyond the ability of an algorithmic process unless it
has detailed semantic information on the elements, *far* beyond
what any DTD provides.
IBTWSH uses a trick, a parameter entity that a containing DTD may
define in order to specify elements from the containing DTD that
can appear within IBTWSH elements. But average DTDs don't have
such a mechanism, and it may not even be possible. (Nonetheless,
this trick suggests how DCD/XML-Data elements with "open" content
might be translated back into DTD element declarations.
-- John Cowan http://www.ccil.org/~cowan cowan@ccil.org You tollerday donsk? N. You tolkatiff scowegian? Nn. You spigotty anglease? Nnn. You phonio saxo? Nnnn. Clear all so! 'Tis a Jute.... (Finnegans Wake 16.5)