XML 2000 Focuses on Schemas

December 6, 2000

Eric van der Vlist

XML 2000 dedicated the first afternoon of its "XML Leading Edge" track to W3C XML Schema. The sessions highlighted XML Schema's application for validating documents, showed its extensibility, and presented applications that separate logic and presentation from the structure of the document.

The first presentation was a rapid overview of the specification, currently a Candidate Recommendation, by Michael C. Sperberg-McQueen, co-chair of the W3C XML Schema Working Group. Sperberg-McQueen began with an introduction in which he explained that error detection, even at a purely syntactic level, may be very beneficial by showing flaws in the expression of what a programmer writes. To illustrate this, he gave an example of a hypothetical language in which every sequence of characters would have a meaning and that, though very concise, would be almost impossible to debug since no errors would be detected. Keeping a constant parallel between DTDs and W3C XML Schema, Sperberg-McQueen gave an overview of the new features that XML Schema offers, emphasizing the fact that a schema is an abstract data model that needs to be distinguished from the syntax that is used to express it.

Matthew Fuchs, from Commerce One, in his presentation entitled "The Role of an Extensible, Polymorphic Schema Language for Electronic Commerce Communities", talked about the possibilities created by the object-oriented features of W3C XML Schema for defining the extensible vocabularies needed in global marketplaces. Starting from the fact that e-commerce applications need to be polymorphic to manage many flavors of a document type, he actually showed how this can be achieved through the use of the W3C XML Schema extension mechanism. This allows the addition of elements or attributes to a previously defined data type, and through the use of the xsi:type attribute in the instance documents. In support, he compared the way to achieve the same effect using DTDs and parameter entities.

Interestingly, the two other presentations focused on extensions and applications of W3C XML Schema for other purposes than validation.

Lee Buck, from TIBCO, presented the Schema Adjunct Framework, an initiative to define a common vocabulary to extend W3C XML Schema for different purposes, such as database mappings or business rules validation. This vocabulary adds metadata to schemas, integrating into W3C XML Schema either through the xsd:annotation/xsd:appinfo elements, or by keeping the metadata in separate documents in a format that is neutral to the type of schema language that is being used. In both cases, the functionality remains the same, the main objective being to avoid applications locked-in to specific document formats, yet providing enough metadata to be coded in a generic fashion. The Schema Adjunct Framework is intended to become an open standard.

Matthew Gertner, from Schemantix, went further down the extensibility path by showing how schema-based development might be "A New Paradigm for Web Applications". He begain by saying that rich data types and inheritance are the features that categorize modern computing, going so far as to present W3C XML Schema and its extensions as a "Universal Data Model" that can be used to define database mappings and to generate the classes of an application. Gertner shows how W3C XML Schema, complemented by the semantics added with the Schema Adjunct Framework, could also be used in the UI domain to generate the user interface for different devices. He said that his company, formerly known as Praxis, has changed its name to Schemantix, the name of their flagship product which implements such a UI generation from W3C XML Schema and Schema Adjunct Framework metadata.