DTD invented by Microsoft?!

Matthew Fuchs matt at wdi.disney.com
Thu Jun 26 18:12:18 BST 1997

On Jun 26, 10:12am, Giovanni Flammia wrote:
> Subject: Re: DTD invented by Microsoft?!
> As someone who is not used to write DTDs, I appreciate the
> simplifications
> proposed by Henry Thompson. With XML, less is more. So, for example, I
> can see
> why constraining XML documents to be trees is better than allowing
> people to encode
> arbitrary object graphs.
You can't constrain them to be trees.  However the element structure has to be
a tree because that is the only graph structure which can be linearized to a
text document.  A major use of attributes is to indicate the back and cross
edges in the original graph.

> Isn't XML and its extensions to become "SGML for the masses, without
> DTDs"?
No.  DTDs were not created just to cause pain and suffering.  They are actually
not hard to create.  Well-formedness was to allow useful processing to occur
without the parser requiring the DTD and to make parsers easier to write, not
to inspire tag salad.

> If you keep a gentle learning curve for people to create new tags, I am
> sure
> the popularity of XML will spread like wildfire. I apologize if this
> comment
> might seem misplaced, but if one has to learn
> full-blown SGML syntax and how to write DTDs, then most people who
> are afraid to get into SGML now (and are currently occasional users of
> SGML w/o dwelling into
> DTDs) will be also afraid to work with XML.
Lack of XML has not prevented people from introducing new tags.  But tag salad
is like spaghetti code.  Tags (elements) are not independent of each other if
they have any semantics.  DTDs help keep this under control.

> I am a little bit confused about how much power of expression should XML
> have.

I have an acquaintance who loves to say that ASCII is computationally complete.
 You can express arbitrary computations in ASCII.  Why should XML be less?

> If an XML document encodes detailed semantics about how to process its
> elements, like a full blown programming language, and you have to use an
> IDL for it, isn't XML competing with distributed object communication
> (e.g., CORBA), and distributed object databases (e.g., ObjectStore) but
> much less efficient (requiring parsing to communicate with objects,
> rather than calling the objects' methods directly)? How does all this
> fit together?
No.  The document doesn't encode these semantics, but you need an API to allow
semantics to be applied to the document.  Your contrast with distributed
objects is also false.  Look at CORBA under the hood, and you'll see there's
parsing going on.  Also, one of the points of mobile agent technology is that
distributed invocation is not necessarily cheap.  Sending a document can be
very much like sending an agent.  (Check out my paper "Let's Talk" at

> Shouldn't XML be specialized to expose just enough of the semantics
> necessary to improve
> indexing, searching, and multi-modal display of Web documents?
Then it's just HTML++ Yuck!  :-(

Matthew Fuchs
matt at wdi.disney.com


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

More information about the Xml-dev mailing list