[Bug 19504] [QT3TS] instanceof139

https://www.w3.org/Bugs/Public/show_bug.cgi?id=19504

Michael Kay <mike@saxonica.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mike@saxonica.com

--- Comment #1 from Michael Kay <mike@saxonica.com> ---
You say:

<quote>
s:dateOrDateTime = xs:date | xs:dateTime
s:approximateDate = xs:date | xs:dateTime | xs:gYear | xs:gYearMonth

So derives-from(s:dateOrDateTime, s:approximateDate) must hold and thus the
expected result must be true.
</quote>

But the essence of this test is to show that although it's obvious to you and
me that the set of instances of union(A,B) is a subset of the instances of
union(A, B, C, D), there is no subtype derivation relationship between the two:
neither is derived from the other. In XSD terms, union(A,B) is not validly
derived from union(A,B,C,D).

Whether this is something that could be changed is another matter. I don't
think it would be wise for our specs to diverge from the XSD definition here.

In XSD 1.1, there are some parts of the spec where the subsumption test is now
essentially "A is a valid restriction of B if the set of valid instances of A
is a subset of the valid instances of B". That's the rule used when a complex
type is derived by restriction. But there are other parts of the spec, notably
subsitutability in substitution groups, where it is necessary to show a
derivation relationship between the types; here, for example, if you have one
type T restricting string with the facet minLength="3", and another type U
restricting string with minLength="4", then U is not substitutable for T, even
though its instances are a subset. The same applies to these two union types.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Friday, 12 October 2012 14:32:48 UTC