<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>25446</bug_id>
          
          <creation_ts>2014-04-24 22:25:34 +0000</creation_ts>
          <short_desc>[F+O 3.1] ordered collation keys</short_desc>
          <delta_ts>2014-09-15 09:15:07 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>XPath / XQuery / XSLT</product>
          <component>Functions and Operators 3.1</component>
          <version>Working drafts</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Kay">mike</reporter>
          <assigned_to name="Michael Kay">mike</assigned_to>
          <cc>josh.spiegel</cc>
          
          <qa_contact name="Mailing list for public feedback on specs from XSL and XML Query WGs">public-qt-comments</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>104378</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2014-04-24 22:25:34 +0000</bug_when>
    <thetext>The new collation-key() function states:

This specification does not mandate that collation keys should retain ordering. This is partly because the primary use case is for maps, where only equality comparisons are required, and partly to allow the use of binary data types (which are currently unordered types) for the result. The specification may be revised in a future release to specify that ordering is preserved.

However, we have introduced support for ordering in hexBinary and base64Binary, and UCA defines an algorithm for generating binary collation keys that respect ordering. So we should review this decision.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104696</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2014-04-29 17:30:58 +0000</bug_when>
    <thetext>This proposal was accepted in principle by the WG on 2014-04-29, subject to approval of detailed wording. 

The substantive change proposed is to replace the second paragraph of the rules of fn:collation-key() with:

The function returns an ·implementation-defined· value with the property that for all pairs of strings ($K1, $K2):

(a) collation-key($K1, $C) eq collation-key($K2, $C) if and only if compare($K1, $K2, $C) = 0, and 
(b) collation-key($K1, $C) lt collation-key($K2, $C) if and only if compare($K1, $K2, $C) &lt; 0

The remaining changes are purely editorial, e.g. changing the summary, deleting the last paragraph of the Notes, adding examples.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104791</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2014-04-30 08:20:33 +0000</bug_when>
    <thetext>I have anticipated acceptance by updating the master text (the changes are all tagged  at=&quot;B-bug25446&quot; so they can be rolled back if necessary).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105080</commentid>
    <comment_count>3</comment_count>
    <who name="Josh Spiegel">josh.spiegel</who>
    <bug_when>2014-05-05 21:19:55 +0000</bug_when>
    <thetext>I don&apos;t see the change.  Did you check in yet?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105092</commentid>
    <comment_count>4</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2014-05-05 21:37:57 +0000</bug_when>
    <thetext>I&apos;ve committed the XML but haven&apos;t yet rebuilt the HTML.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105202</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2014-05-06 16:58:21 +0000</bug_when>
    <thetext>The proposal in comment 1 was accepted, noting also that collation keys should be implementation-dependent rather than implementation-defined.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>