Proposed process for DTDs in XML

Paul Prescod papresco at
Sun May 24 20:47:09 BST 1998

Simon St.Laurent wrote:
> - Name of Project: Peter has referred to the project as DTDXML; at one point
> Paul Prescod referred to this type of DTD with the identifer xdtd.  I avoided
> naming it it in my original proposal.  Suggestions?

I'm concerned about the fact that DTDs as we know them are already in XML.
I also think that the term "DTD" has too much historical baggage. The main
point I have been trying to make this week is that DTDs do a lot more than
people commonly think of them doing. If we're only interested in data
validation then calling the new concept a "DTD" is misleading. Henry
Thompson speaks of "Document Structure Descriptions", and a more common
word is schema. I prefer something that does NOT use the term "DTD".
> - Scope of Project: Are the schemas defined by this project intended to map a
> subset of current XML practice?  No one seems interested in making parameter
> entities, for instance, a part of this project. I suggested in my original
> proposal that parameter entities might in fact be unnecessary in this type of
> project.  Tim also brought up the question of "obscure" attribute types. (Data
> typing in general is a key issue, but one I'd like to avoid for right now.)
> There are always the internal/external battles as well. We'll need to figure
> out exactly what parts of XML are worth including.  Eventually, it may prove
> possible to map everything, but I think we'll be better off starting with less
> and building a firm base.  We need to define an achievable set of goals early.

I don't think that entities and notations should be in the scope of this
project. Element type and attribute descriptions should cover it for
version 1.0. Beyond that, (for version 2.0) there are interesting issues
of link target typing, namespaces, context-sensitivity, "code reuse", and
data content notations.

> - Linking to XML Documents: Tim asked "How do we associate the new schemas
> with document instances?" Current XML DTD's are defined/linked with the
> DOCTYPE declaration.  

Not entirely. DTDs can also be inline. This is another reason to not
bother really trying to replace DTDs. Documents with XML-instance schemata
inline would strike me as incredibly ugly and miles away from SGML 98 or
XML 1.0 compatibility.

> - Document Creation: We also need to decide how to create this document.  My
> original proposal (at has been chewed on
> fairly well.  It might still serve as a base (_minus_ all the specific syntax
> I proposed) for further development.  Do people want to proceed this way, or
> should we start from a clean outline?

As you may have figured out, I would rather start again with a completely
different premise. You say:

"While this achieves compatibility with SGML, it makes it impossible to
extend the capacities of a DTD beyond those provided in SGML, and requires
developers to understand two different syntaxes for documents and DTDs.
This proposal offers an XML document representation for DTDs."

I don't like the last sentence. Here is how I woud finish that paragraph:

"In addition, DTDs have other flaws: 

1. They combine too many diverse types of declarations. For instance, it
is not intuitive that text substitution entities should be part of a
'document type definition'.

2. They are completely under the control of the document, not the system.
It is essentially impossible for an application to verify that a document
conforms to a particular DTD based entirely on the output of a parser.

3. They have no well defined external representation. For example, the
'HTML DTD' is not really a DTD in any sense that is defined in the SGML or
XML specifications."

This proposal describes a simple new new schema language that will subsume
the structure verification responsibilities of XML DTDs without inheriting
these flaws."

To be honest with you, I think that correcting these flaws is a much more
interesting project than merely rewriting the notation. The nice thing is
that these problems can be fixed merely by *simplifying* and slightly
redefining DTDs, not by extending them or making them more complex.

 Paul Prescod  -

Guns don't kill people. Children kill people.

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as:
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