This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 10570 - [XPath30] ItemType-subtype judgement [sic] needs to account for QName equality
Summary: [XPath30] ItemType-subtype judgement [sic] needs to account for QName equality
Status: RESOLVED FIXED
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XPath 3.0 (show other bugs)
Version: Member-only Editors Drafts
Hardware: All All
: P5 trivial
Target Milestone: ---
Assignee: Jonathan Robie
QA Contact: Jonathan Robie
URL: http://www.w3.org/XML/Group/qtspecs/s...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-09-07 18:57 UTC by Henry Zongaro
Modified: 2011-09-11 20:45 UTC (History)
1 user (show)

See Also:


Attachments

Description Henry Zongaro 2010-09-07 18:57:43 UTC
Section 2.5.5.2 "The ItemType Subtype Judgement" does not always account for the fact that equal QNames might have different prefixes, one might rely on the default element/type namespace while the other does not, or one might be specified using the URILiteral:NCName syntax while the other is not.

I believe this affects bullets 13 through 15, 

. Bi is either element(Bn) or element(Bn, xs:anyType), and Ai is either element(Bn), or element(Bn, T) for any type T.
. Bi is element(Bn, Bt), Ai is element(Bn, At), and derives-from(At, Bt) returns true.
. Bi is element(Bn, Bt?), Ai is either element(Bn, At), or element(Bn, At?), and derives-from(At, Bt) returns true.

bullets 20 and 21

. Bi is either attribute(Bn) or attribute(Bn, xs:anyType), and Ai is either attribute(Bn), or attribute(Bn, T) for any type T.
. Bi is attribute(Bn, Bt), Ai is attribute(Bn, At), and derives-from(At, Bt) returns true.

and bullet 23

. Bi is schema-attribute(Bn) and Ai is also schema-attribute(Bn).

Compare those with bullet 18, which does compare the names in the node tests.

. Bi is schema-element(Bn), Ai is schema-element(An), and either the expanded QName An equals the expanded QName Bn or the element declaration named An is in the substitution group of the element declaration named Bn.


[1] http://www.w3.org/XML/Group/qtspecs/specifications/xquery-11/html/xpath-21.html#id-itemtype-subtype
Comment 1 Jonathan Robie 2011-09-11 20:45:24 UTC
Thanks - fixed now.