[Bug 3433] Comparing xs:anyURI values

http://www.w3.org/Bugs/Public/show_bug.cgi?id=3433





------- Comment #6 from mike@saxonica.com  2006-08-24 17:41 -------
I was actioned to propose detailed textual changes to resolve this (action
A-304-01, aka A-304-1).

1. [XPath/XQuery] In 3.5.1 Value Comparisons, change this paragraph:

Next, if possible, the two operands are converted to their least common type by
a combination of type promotion and subtype substitution. For example, if the
operands are of type hatsize (derived from xs:integer) and shoesize (derived
from xs:float), their least common type is xs:float.

to read:

Next, if there is no entry in the operator mapping table for the types of the
two operands, then the operands are converted (if possible) to the least common
type for which there is such an entry. For example, (a) if the operands are of
type hatsize (derived from xs:integer) and shoesize (derived from xs:float),
their least common type is xs:float; (b) if the operands are both of type
xs:anyURI, the least common type that has a suitable entry is xs:string.

2. [XQuery] "order by" requires no change. The existing text is adequate: "The
ordering is performed in the least common type that has a gt operator."

3. [XSLT] (sorting) requires no change. The existing text is adequate: "To
ensure a total ordering, the same implementation of the lt operator must be
used for all the comparisons: the one that is chosen is the one appropriate to
the most specific type to which all the values can be converted by subtype
substitution and/or type promotion". 

4. [F+O] min()/max(). I believe that we previously agreed a change in this area
to talk about converting all the values to their least common type. I'm not
sure of the exact wording. We need to change it to say "the least common type
that has a gt operator".

Michael Kay

Received on Thursday, 24 August 2006 17:41:29 UTC