What is XML? (Was: Re: What Clean Specs Achieve)

Clark Evans clark.evans at manhattanproject.com
Sat Feb 6 20:48:50 GMT 1999


Tyler Baker wrote:
> If XML is not going to be simple, why use XML at all when there
> supposedly are much more powerful and well-established standardized 
> alternatives like SGML in existence that get the job done.

This is my understanding:

* XML is for information interchange on a large international scale.
* SGML was primarily created for internal manuals and specifications.

Computationally, SGML has irregular structures that *require* the 
DTD to be known before the file can be parsed.  XML does not have
this restriction, it's syntax is independent of the "architecture"
or DTD.  More than that, this change has had only minimal "reduction"
of it's usefulness, i.e., it is harder for harder for humans to 
diectly author in the language.  

This simplification has drastically reduced its computational 
complexity, thus enabling it to be applied in many more contexts.

Namespaces is the mechanism to keep all of those contexts from
colliding with each other.  Architectures is the mechanism that
provides the mapping between those contexts.

It is this greater applicability that is driving the need for
namespaces.  This *is* new.  No existing document interchange 
"syntax" has gotten this far, I would say that the INI file format
and the CVS file format would have been the runners-up to XML.
The complexity to which a computer program express itself using
the XML syntax is far greater than CVS or INI syntax.  Think
of XML as a better "CVS" or "INI" format, not as a weakened SGML.
This is the better metaphor.

See, SGML and most other "exchange" mechanisms in the past 
have tied the "syntax" and the "semantics" together.  
XML is different.  It clearly defines the syntax and leaves 
the "semantics" to the application of the technology.  
The "DTD" is optional.  And Architectures allows you to
have more than one DTD.  This way each party to the 
communication can  have their own interpretation of 
the exchange.  Seperating these two is a _hudge_ leap
forward in software systems. 

Anyway, this is my view of things.  I hope it helps.

:) Clark Evans

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/ and on CD-ROM/ISBN 981-02-3594-1
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