Lists Home |
Date Index |
From: Jonathan Robie <email@example.com>
Subject: Re: Who can implement W3C XML Schema ?
Date: Thu, 21 Mar 2002 12:32:31 -0500
> I said that RELAX NG is more graceful and beautiful than XML Schema, but on
> balance, I think that each has advantages.
I think XML Schema has political advantages.
> Here are some of the advantages of XML Schema:
> 1. For most people who use schemas, what they really need is datatypes.
> Otherwise, DTDs would meet most of their needs. Having the same set of
> built-in datatypes across all XML Schema implementations is a very good
> thing, IMHO.
Unfortunately, datatypes and facets of XML Schema are not thoroughly
defined, as you know very well.
BTW, RELAX NG can borrow datatypes and facets of XML Schema. It can
also use other datatype libraries.
> 2. Named typing is very efficient for parameter passing. The fact that
> named typing is used in XML Schema makes it easy to implement efficient
> parameter passing in XQuery. There are fancy ways to do similar things by
> computing tokens with forest automata, but they are not all that easy for
> most people to implement.
Do you have any supporting evidence for the last sentence?
Do you agree on abstract datatypes of XQuery, which are very different
from XML Schema but are quite similar to RELAX NG?
Have you seen "Notes on implementing RELAX NG" by James Clark and my
paper at Extreme 2001? Have you compared implementations of RELAX NG
and those of XML Schema?
> 3. It's established and supported. If I want to solve a problem today with
> a representation that is supported by most of the tools I use, XML Schema
> is the obvious choice.
It appears that quite a few people in this mailing list thinks XML
Schema is not established, at least technically. On the other hand,
Jing and MSV (implementations of RELAX NG) are very reliable.
> As a basis for the XML Query type system, I think that the above factors
> outweigh the advantages of RELAX-NG.
I am wondering how XQuery can use XML Schema as a basis, since the
type system of XQuery is extremely different from XML Schema. XQuery
can capture co-occurrence constraints between elements and attributes.
RELAX NG can. XML Schema can't. XQuery and RELAX NG has
interleaving, but XML Schema has "all" only.
> Since both activities are in the W3C,
> we probably don't have much choice anyway.
If this is the real reason that you stick to XML Schema, please say