Very easily and you don't even need namespaces (except to avoid possible
clashes which is all I thought namespaces were for anyway).
This is particularly possible using the common technique of content model
extension via parameter entities.
The following example doesn't use namespaces.
Say my book DTD has:
<!ELEMENT div (%base.div.content;|%extended.div.content;)>
Then I can have (either in the internal subset of a document or some
external DTD entity that gets read before the book DTD):
<!ENTITY % mathml.dtd SYSTEM "mathml.dtd">
<!ENTITY % pgml.dtd SYSTEM "pgml.dtd">
%mathml.dtd
%pgml.dtd
<!ENTITY % extended.div.content "math|pgml">
And bingo!, I can use MathML and PGML in my Book.
James
-- James Tauber / jtauber@jtauber.com http://www.jtauber.com/ Lecturer and Associate Researcher Electronic Commerce Network ( http://www.xmlinfo.com/ Curtin Business School ( http://www.xmlsoftware.com/ Perth, Western Australia ( http://www.schema.net/