Thoughts on the State of XML Today
and Plans for Its Use at Autodesk

Autodesk Company Confidential

Ben Harrison
October 4, 1999

Edited and Illustrated by Dan Keller

Microsoft Sets the Pace

The XML specification is still evolving. It's difficult to find printed documentation that is correct/current right now. There is more than one "currently accepted" subset of proposed specification that the community is using, but the most common is Microsoft's (of course) XDR (X-Data Reduced). This is very different from what most books describe as correct XML.

Schemas Not DTDs

Technical books haven't yet caught up with the evolution from XML DTDs to XML Schemas. While both serve to define the structure and members of an XML document, the former is not really "extensible" by nature. Once a DTD is written, it's difficult to add to it. It uses a completely different syntax than the XML document, which makes it unwieldy. It also fails to provide any way to uniquely identify the elements from another DTD. So, many people complained about these and other shortcomings, and the "XML Schema Working Group" was born at the W3C.

No Standard Yet

Schemas seek to supersede DTDs and remedy their shortcomings. There are some proposed schema specifications, but W3C is still deciding which will be included in the its official XML specification.

XDR

Microsoft went ahead on its own, and released its MSXML parser which implements XDR. XDR is a subset of W3C's X-DATA specification. I haven't found a book yet which actually describes this implementation. I refer to http://msdn.microsoft.com/xml for documentation. We'll be using this for our Acad implementation.

Why XML?

XML will be useful to us primarily as a way to communicate information between applications without being platform- or application-specific. The XML vision -- shared, even, by Microsoft -- is to give applications a standard, non-proprietary way to exchange data.

BizTalk

By itself, XML has many uses, but there's more: Microsoft Biztalk. Microsoft recognized XML's strength and its weakness. It:
  1. Enables users to create their own standards, but it
  2. Provides no way to organize those standards.
Chaos would occur unless there was a governing "agency" to keep emerging standards in sync, and in the eyes of the public. So they formed an "organization": http://www.biztalk.org (non-profit?) Its purpose is to organize and publish industry-related schemas and related documentation.

XML in Autodesk Products

Example applications at Autodesk:

In the past, we have relied on combinations of hacked-together procedures to move the information from one place to another. This messy "glue" between applications will no longer be needed once we start using Biztalk XML. It defines the rules for writing valid XML. Microsoft will also be selling a kind of XML server that will deliver XML "messages" between applications.

An interesting related document is Bentley's aecXML specification (aecml.doc), written as a Biztalk schema. It may contain more information than you need, but it includes sample use cases, and an information flow diagram at the end. They did their homework!

The XML features in our own product are two:

A real-world example: