[Bug 26865] CastableAs653 and CastableAs654 should expect false instead of true

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

--- Comment #6 from Michael Kay <mike@saxonica.com> ---
I think this calls into question the results of CastableAs653 and
CastableAs654.

Concentrating on CastableAs653 (shown above), the result seems to hinge on
whether xs:integer is considered a primitive type for the purposes of section
18.3.1: specifically, do we regard xs:integer and canonicalDecimal as being
derived from the same primitive type?

If they are, then Josh's reasoning in comment #0 is correct.

Section 18.1 says that for the purposes of "this section" xs:integer is treated
as a primitive type. It's ambiguous whether 18.3.1 is part of "this section".
If we take the view that "this section" refers to the whole of section 18, then
18.3.1 takes us to 18.3.4 Casting across the type hierarchy, and the logic of
comment #4 applies. In particular, this means we test the pattern facet against
the value considered as an xs:decimal, not against the value considered as an
xs:integer, which means the pattern is satisfied and the test returns true. I
will raise this as a spec issue.

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

Received on Saturday, 3 January 2015 22:24:19 UTC