How about over 1,000,000 XHTML Namespace URIs?

Marc.McDonald at Marc.McDonald at
Thu Sep 2 03:32:03 BST 1999

I took a look at the XHTML DTDs and basically wonder why there is a need for
3 of them at all or their corresponding namespaces. The major difference in
structure is a frameset element instead of a body element inside the HTML
element. There are additional attributes for color, alignment, and a target
frame. There are a few added elements. The DTDs map as follows:
	strict		No alignment, colors, framesets
	frameset	Alignment, colors, framesets
		transitional	Alignment, colors, no framesets

	An HTML processor is supposed to handle unexpected elements
gracefully, so why not have one DTD and namespace? The use of any elements
or attributes not expected by the processor need to be handled anyway. 

	Just always use the frameset DTD with the change of:
		<!ELEMENT html (head, (body | frameset))>
	so either frameset or non-frameset structure is valid.

	The single DTD should be modified to have conditionals to restrict
it to the given subset DTDs if desired for restrictive validation. So many
parameter entites are used and no one thought of using them for the
		<!ENTITY a.targeting % "target %FrameTarget; #IMPLIED">
		<!ENTITY a.align % "align %imgAlign; #IMPLIED">
		<!ENTITY a.spacing % "hspace %pixels; #IMPLIED vspace
%pixels; #IMPLIED">

	Besides eliminating the problem, it's a lot easier to maintain one
DTD instead of three with 95% commonality.

> Marc B. McDonald
> Principal Software Scientist
> Design Intelligence, Inc.
> 1111 Third Avenue, Suite 1500
> Seattle, WA  98101
> marc.mcdonald at
> Ph: 206.343-7797
> Fax: 206.343.7750

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list