OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

relax-ng message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Subject: Re: Issue: overlapping with XML Schema Part 2

James Clark wrote:
> I strongly believe we should *not* tie ourselves to XML Schema Part 2.
> Schema Part 2 has a number of separable aspects:
> a) the repertoire of primitive types
> b) derivation by restriction and the repertoire of facets
> c) derivation by union
> d) derivation by list
> e) the concrete syntax for representing all of the above
> In the long run, I think I would want probably a subset of a) and b).  I
> view the anonymous datatypes mechanism in TREX at the moment as a stop-gap.

I agree and, for the record, I'd like to mention a point of b) that I
find very confusing.

With W3C XML Schema after a derivation "by restriction" you can end up
with a derived datatype that allows a wider range of values that the
datatype you've been deriving from.

That's because, for most of the facets, each derivation is resetting the
value of the facet if you use it again in a new derivation.

For instance, if I define a numeric type as being greater than 5 and if
I apply a new "restriction" to create a new datatype that is greater
than 4, the resulting datatype is greater than 4.

I find this behavior both confusing and dangerous. If I have specified
that the value should be greater than 5, I may have designed
applications to assume that it will be the case and if someone changes
this by defining a "subset", he shouldn't be able to break my rule. 

> As for c), I don't think derivation by union should be in the datatype
> system.  Putting it in the datatype system forces you to have two ways to do
> essentially the same thing. Note that XML Schema Formal Description (aka
> MSL) uses the same mechanism to represent choice amongst datatypes and
> choice amongst complex types.  I think d) is similar, though less clear-cut.

Don't you think that it datatypes could be seen as sets of possible
values ? 

In this case, wouldn't it make sense to use basic operators such as
intersection (for restriction), union and negation ?


> James

See you in Hong Kong for www10:
Eric van der Vlist       http://xmlfr.org            http://dyomedea.com
http://xsltunit.org      http://4xt.org           http://examplotron.org

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Powered by eList eXpress LLC