What's up with XML schemas
Most XML-literate individuals understand that an XML Schema represents metadata that describes some particular set of XML markup. That is, XML Schemas are intended to provide an alternative to those SGML documents called Document Type Definitions, or DTDs, that have traditionally been used to describe markup languages like HTML, XHTML, and even XML itself. The advantage that XML Schemas bring to this environment is that they are XML documents themselves, and thus don't require mastery of another syntax and means of expression to create and describe markup metadata, as is the case with DTDs.
That said, in the wake of the promotion of various components of the XML Schema specification to "Proposed Recommendation" status on 3/16/2001 at the W3C, some interesting controversy on the subject of XML Schemas is raging. Since a Proposed Recommendation is just one approval step shy of reaching full Recommendation status, which means that a W3C specification has more or less reached "standard" status, this is an important topic that's generating some heated discussion at present, both pro and con.
Where things get interesting is that there are two vocal groups on the subject of XML Schemas. One group claims that the specifications are too difficult to understand, yet too vague and diffuse to provide a sufficient degree of structure for defining document metadata. Chief among this gang is James Clark, a technical lead for the XML 1.0 specifications, and well-known provider of interesting and useful XML parsers and other related software tools (www.jclark.com/xml/). Clark has gone so far as to create TREX, an alternate schema definition language that is finding its adherents in the XML community as well.
On the other hand, Henry S. Thompson (an editor of the XML Schema Part 1: Structures specification) voices his surprise at how widespread and well-deployed XML Schemas already are within certain sectors of the XML development community. He agrees that this first implementation is less than perfect, but uses input from numerous others to justify his belief that XML Schemas are usable and worth developing further. Obviously, there's considerable room for disagreement here!
One phenomenon is inarguable, however: the W3C is becoming increasingly insistent that not only new and emerging XML-related specifications take cognizance of XML Schemas, but also that revisions to existing XML specifications consider Schemas as well. For example, the emerging XForms specification leans heavily on XML Schemas, as does XML Query. But numerous revisions to other XML specifications depend on XML Schema Datatypes and the post-Schema validation Infoset, including XPath 2.0 and XSLT 2.0. Thus, there's no avoiding XML Schemas entirely going forward with XML, be it in newly-minted XML applications, or in revisions to existing XML specifications.
That's why I recommend you take a look at the XML Schema specifications yourself, and make of them what you can. You'll find this document in three parts, including:
Although they can be hard to follow, there's plenty of explication available at sites like www.xmlhack.com, www.xml.com, www.devx.com, and here at www.searchmiddleware.com, among many others. There are also numerous books now underway on XML Schemas, so more comprehensive sources of information and examples should be available soon. No matter how you slice your XML, there's bound to be an XML Schema somewhere in your mix some time soon!
Send Ed an e-mail at firstname.lastname@example.org if you have questions on this or other XML topics. Please see http://www.xmlhack.com/read.php?item=1121 for more coverage on these developments, including pointers to the newest W3C specifications, and plenty of surrounding discussions.
Ed Tittel is a principal at LANWrights, Inc., a wholly owned subsidiary of LeapIt.com. LANWrights offers training, writing, and consulting services on Internet, networking, and Web topics (including XML and XHTML), plus various IT certifications (Microsoft, Sun/Java, and Prosoft/CIW).
Did you like this tip? If so, why not let us know? Email to sound off, or to submit a tip of your own.
XML Developer's Guide
Author : Fabio Arciniegas
Publisher : Osborne
ISBN/CODE : 0072126485
Cover Type : Soft Cover
Pages : 704
Published : Dec 2000
A complete resource for developing applications using XML. Create powerful and efficient XML applications and highly flexible document structures with help from this comprehensive guidebook. Ideal for intermediate to advanced professional Web developers, this hands-on resource covers Web publishing and data exchange with XML, emerging XML standards--including Schemas, XSLT, XPath, and XLink--and much more.