<?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>29456</bug_id>
          
          <creation_ts>2016-02-14 14:57:34 +0000</creation_ts>
          <short_desc>initial-function-100a et seq: param/@as in test catalog</short_desc>
          <delta_ts>2016-10-19 19:16:51 +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>XSLT 3.0 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="Michael Kay">mike</reporter>
          <assigned_to name="Abel Braaksma">abel.online</assigned_to>
          
          
          <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>125015</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2016-02-14 14:57:34 +0000</bug_when>
    <thetext>In the sequence of tests starting initial-function-100a, we see things like

&lt;param select=&quot;&apos;sometoken&apos;&quot; as=&quot;xs:token&quot;/&gt;

Now, the semantics of the param/@as attribute are not actually described in the test catalog documentation, but I would have expected them to follow similar principles to the XSLT rules. Under those rules the above is an error: the function conversion rules will not convert an xs:string to an xs:token. If we want the casting rules to apply, we should say so. However, I think it would be a lot simpler to write

&lt;param select=&quot;xs:token(&apos;sometoken&apos;)&quot;/&gt;

rather than relying on the test driver to do something as complex as applying the function conversion rules.

We have 3 choices for the semantics:

(a) the as attribute is merely an assertion about the type
(b) use function conversion rules
(c) use a cast

The last option would not actually work for all existing cases, e.g. where we have as=&quot;xs:string*&quot;. I would be inclined to go for (a).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125123</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2016-02-17 11:11:53 +0000</bug_when>
    <thetext>Decided that the &quot;as&quot; attribute, if present, is an assertion that the value of the &quot;select&quot; attribute is an instance of the relevant type; it does not trigger any conversion. (If the assertion is incorrect, then the test is incorrect, something which the test driver may or may not detect.)

Abel will fix the metadata schema to say this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127871</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2016-10-19 19:16:51 +0000</bug_when>
    <thetext>The changes to test suite documentation appear to have been made.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>