whoops. yes, of course.
>and make sure that this is all in the external
>DTD subset (because of the PEs being used in an ELEMENT decl).
>You then also have to put your % extended.div.content decl before
>the ELEMENT div decl.
My example assumed this. Sorry if I didn't make that clearer.
>But assuming all this was done, you'd still have to have full
>control over the mathml and pgml DTDs, to make sure they didn't
>define any of the same elements as each other - or your Book
>DTD.
No, you'd just have to look at mathml and pgml and make sure that they
didn't clash with each other and then write your book dtd to not use any of
their element type names.
But my point was not that you don't need namespaces. In fact, my point was
the exact opposite. You need namespaces to avoid clashes. My point was that
that is what namespaces do: they avoid name clashes. Mixing DTDs is achieved
through a different mechanism, namely parameter entities. Paul Prescod has
since said as much.
James