[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RELAX NG and W3C XML Schema



> I would hope that the IETF could look past claims from vendors and
> organizations who piled half-coherent features into a specification to
> create an enormously overgrown check list of odd bits and pieces that
could
> be sold to a public supposedly more interested in the parts than in the
whole.
>
> It seems that XML Schema is chock-full of "features" (gMonthDay, etc.)
that
> were seen as "maximizing market acceptance", but painfully short of
> features (support for a wide variety of element and attribute structures,
> useful mixed content declarations, implementation simplicity, general
> clarity) which might have produced a flexible, nimble, and coherent
> specification.
>

There were specific use cases that came from customers that caused the
Schema WG to add things like gMonthDay.  That one, in particular, was added
for SQL compatibility, a goal that shouldn't be dismissed out of hand.

You are not supporting most of your assertions--why is mixed not "useful"?
Why, if implementation is so difficult, are there so many available?

Most of the XML Schema features were not put in to sell the public as a
whole, but to satisfy all of the contributors to the spec.  The ones that
were easy to bring to a high level of quality made it in, and the ones that
had too many problems with the proposals didn't make it.

> I don't believe that "XML Schema is a better language for IETF standards"
> under any circumstances, even accounting for W3C XML Schema's more
explicit
> attempt to be a data-oriented language.  I'm afraid that greater market
> acceptance and work on optimizing an initially grotesque set of structures
> doesn't seem likely to produce better technical results than a
> specification with a clean formal base and an accessible notation.
>
> Privileging a specfication whose creators are selling it without much
> regard for its overall quality does not seem prudent.  Scott Hollenbeck's
> latest proposal appears to address this situation very well, avoiding
> privilege issues altogether while still discussing what these tools have
to
> offer.
>

Asserting that the creators of XML Schema are "selling it without much
regard for its overall quality" is another wildly exaggerated, unsupported
accusation.  XML Schema has had an extremely lengthy period of review,
implementation experience & feedback, with a very large group of individuals
& vendors, unlike the other attempts such as RELAX NG.  The quality of XML
Schema (and its limitations) are pretty well understood, which doesn't apply
to other XML structure definition languages.

There is an excellent comparison of XML Schema & Relax NG on the xml.com
website, written by Eric van der Vliest, at
http://www.xml.com/pub/a/2002/01/23/relaxng.html that I recommend.  His
conclusion is very illustrative:

"Throughout this comparison, we have seen that one of the main differences
between the two languages is a matter of style: while RELAX NG focuses on
generic "patterns", W3C XML Schema has differentiated these patterns into a
set of distinct components (elements, attributes, groups, complex and simple
types). The result is on one side a language which is lightweight and
flexible (RELAX NG) and on the other side a language which gives more
"meaning" or "semantic" to the components that it manipulates (W3C XML
Schema). The question of whether the added features are worth the price in
terms of complexity and rigidity is open, and the answer probably depends on
the applications.

Independently of this first difference between the two, the different
positions regarding "non-determinism" between RELAX NG, which accepts most
of the constructs a designer can imagine, and W3C XML Schema, which is very
strict, mean that a number of vocabularies which can be described by RELAX
NG cannot be described by W3C XML Schema."


One of our goals with XML Schema is to use it as a replacement for SQL DDL
when creating tables in databases, and compiling it for faster validation.
One of the reasons that XML Schema is more constrained is that it allows for
more efficient implementation of this type of technology.  If you can't
describe the document structure in XML Schema, it will probably not form a
data structure that can be efficiently searched and updated using a database
(whether it is object-oriented or relational at its foundational layers).

I agree that there is no need to privilege a particular XML structure
definition spec at this time.  These same battles will be fought out in the
individual IETF working groups anyway regardless of what this document says
anyways.  I just felt that there were a number of accusations about XML
Schema on this that were poorly supported that needed to be answered.

--Eric