External DTD & namespaces

David Brownell db at Eng.Sun.COM
Sun Dec 20 19:18:35 GMT 1998

Andy Malakov wrote:
> I want to use namespace prefixes in element declarations of the
> external/internal DTDs.
> For example, I want to define namespace "myns" and use with each DTD
> declaration:
> <!ELEMENT myns:point (int, int)>
> Where I should put "myns" namespace declaration?

<!ATTLIST myns:point
	xmlns:myns CDATA #FIXED

Keep in mind that if you put this in some external parameter
entity (e.g. the unnamed one in <!DOCTYPE foo SYSTEM "xyz.dtd">
some nonvalidating parsers will give you a hard time.  So you
may want to consider _also_ putting the declaration into your

	<myns:point xmlns:myns="http://www.ptc.com/..." ...>

Where namespaces and DTDs really clash is when you might want
to change the prefix ("myns") associated with some URI.  But
namespaces actually do something that DTDs can't do -- they tie
individual elements (and attributes, though sadly not PIs) to
a specific entity, so semantics can be tied to something more
useful than an application's convention about what a TITLE is.
(Real estate vs novels, etc.)

- Dave

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)

More information about the Xml-dev mailing list