XML 2000 Focuses on Schemas
December 6, 2000
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.