<?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>29931</bug_id>
          
          <creation_ts>2016-10-11 18:36:11 +0000</creation_ts>
          <short_desc>collation tests allow fallback behavior but the expected results do not</short_desc>
          <delta_ts>2016-10-25 14:10:28 +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>XQuery 3 &amp; XPath 3 Test Suite</component>
          <version>Candidate Recommendation</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</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="Josh Spiegel">josh.spiegel</reporter>
          <assigned_to name="O&apos;Neil Delpratt">oneil</assigned_to>
          <cc>andrew_coleman</cc>
    
    <cc>mike</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>127737</commentid>
    <comment_count>0</comment_count>
    <who name="Josh Spiegel">josh.spiegel</who>
    <bug_when>2016-10-11 18:36:11 +0000</bug_when>
    <thetext>A number of recently submitted UCA collation tests assume the implementation is not using the fallback behavior.  For example consider this test:

&lt;test-case name=&quot;compare-031&quot; covers=&quot;uca-collation&quot; xmlns=&quot;http://www.w3.org/2010/09/qt-fots-catalog&quot;&gt;
      &lt;created by=&quot;Michael Kay&quot; on=&quot;2016-09-23&quot;/&gt;
      &lt;test&gt;&lt;![CDATA[fn:compare(&quot;database&quot;, &quot;Database&quot;, &quot;http://www.w3.org/2013/collation/UCA?lang=en;strength=tertiary;caseFirst=upper&quot;)]]&gt;&lt;/test&gt;
      &lt;result&gt;
         &lt;assert-eq&gt;1&lt;/assert-eq&gt;
      &lt;/result&gt;
&lt;/test-case&gt;

The default value of fallback is &quot;yes&quot; but the expected results do not account for this:

&lt;quote&gt;
If the fallback parameter is present with the value no, then the implementation must either use a collation that conforms with the rules in the Unicode specifications for the requested tailoring, or fail with a static or dynamic error indicating that it does not provide the collation (the error code should be the same as if the collation URI were not recognized). If the fallback parameter is omitted or takes the value yes, and if the collation URI is well-formed according to the rules in this section, then the implementation must accept the collation URI, and should use the available collation that most closely reflects the user&apos;s intentions.
...
if it does not recognize the keyword or value then if the fallback parameter is present with the value no it should reject the collation as unsupported, otherwise it should ignore the unrecognized parameter.
&lt;/quote&gt;

The following tests are affected:

compare-031
compare-034
compare-035
compare-037
compare-039
compare-040
compare-041
compare-043
fn-contains-32
fn-contains-33
fn-contains-34
fn-contains-36
fn-contains-38
fn-starts-with-32
fn-starts-with-33
fn-substring-after-42
fn-substring-after-43
fn-ends-with-32
fn-substring-before-42
fo-test-d3e6934
fo-test-d3e6940
fo-test-d3e6946
fo-test-d3e7085
fo-test-d3e7091
fo-test-d3e7097
fo-test-d3e7246
fo-test-d3e7252
fo-test-d3e7258
fo-test-d3e7405
fo-test-d3e7546
fo-test-d3e7552
fo-test-d3e7558 

One solution would be to set fallback=no and then allow the error as an alternate result.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127745</commentid>
    <comment_count>1</comment_count>
    <who name="Josh Spiegel">josh.spiegel</who>
    <bug_when>2016-10-11 21:19:00 +0000</bug_when>
    <thetext>Also:
collation-key-009u</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127841</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2016-10-18 16:41:47 +0000</bug_when>
    <thetext>MK suggested that a better resolution might be to mark these tests with a dependency.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127888</commentid>
    <comment_count>3</comment_count>
    <who name="Andrew Coleman">andrew_coleman</who>
    <bug_when>2016-10-20 18:34:19 +0000</bug_when>
    <thetext>The WG agreed the following resolution:

ACTION A-657-14: O&apos;Neil to look at bug 29931 on collations to add dependencies for these tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127954</commentid>
    <comment_count>4</comment_count>
    <who name="O&apos;Neil Delpratt">oneil</who>
    <bug_when>2016-10-25 14:10:28 +0000</bug_when>
    <thetext>created new dependency feature= advanced-uca-fallback.

Updated text in the test-suite documentation (see running.html):

&quot;Indicates that the test uses a UCA collation URI with the option fallback=yes (or fallback omitted), and the test results assume that the implementation has a reasonably high level of support for uca collation semantics even if it is not 100% conformant.

Unlike simple-uca-fallback these tests assume support for a wider range of uca collation features: including different collation strengths, different case ordering options and other options, such as numeric collations.&quot;

tests cases highlighted in comment #0 and #1 updated with the new dependency feature.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>