<?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>30140</bug_id>
          
          <creation_ts>2017-07-10 15:02:34 +0000</creation_ts>
          <short_desc>[xslt3ts] catalog-005 (validation of test stylesheets)</short_desc>
          <delta_ts>2017-10-10 08:25:18 +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>Proposed 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>128688</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2017-07-10 15:02:34 +0000</bug_when>
    <thetext>Test catalog-005 is designed to validate all stylesheet documents referenced by non-error test cases against the schema for XSLT 3.0 stylesheets.

Two problems:

(a) it only validates documents referenced by a &quot;stylesheet&quot; element in the catalog, not those referenced by a &quot;package&quot; element.

(b) the validation is done using the construct:

&lt;xsl:variable name=&quot;copy&quot;&gt;
            	  &lt;xsl:copy-of select=&quot;$doc&quot; validation=&quot;strict&quot;/&gt;
                &lt;/xsl:variable&gt;

and the value of $copy is never referenced. That is, the validation is a side-effect of a variable binding which an optimizer can optimize to nothing. This is what Saxon has been doing. As a result, Saxon has been failing to report invalidity on the following stylesheets:

   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-A.xsl&quot;
            message=&quot;Eleven validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-A.xsl&quot;
            message=&quot;Eleven validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-B.xsl&quot;
            message=&quot;Ten validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-001.xsl&quot;
            message=&quot;Ten validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-002.xsl&quot;
            message=&quot;Ten validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-005.xsl&quot;
            message=&quot;Five validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-007a.xsl&quot;
            message=&quot;Five validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-008.xsl&quot;
            message=&quot;Two validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-009.xsl&quot;
            message=&quot;Three validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-010.xsl&quot;
            message=&quot;Three validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-022.xsl&quot;
            message=&quot;Four validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-040.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-042.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-044.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accept-046.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accumulator-020.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accumulator-020.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;accumulator-068.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;expose-A.xsl&quot;
            message=&quot;Three validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;expose-001.xsl&quot;
            message=&quot;Four validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;expose-007.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;function-0119.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;function-1025.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;function-1026.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;function-1025.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;function-1026.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;function-1025.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;function-1026.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;output-0701.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;output-0702.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;output-0704.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;output-0707.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;output-0708.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;override-f-002.xsl&quot;
            message=&quot;Two validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;override-f-008.xsl&quot;
            message=&quot;Two validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;override-f-024a.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;override-f-026a.xsl&quot;
            message=&quot;Two validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;override-f-026b.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;override-f-027a.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;override-f-031a.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;package-017.xsl&quot;
            message=&quot;Two validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;xml-to-json-C.xsl&quot;
            message=&quot;Three validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;xml-to-json-D2.xsl&quot;
            message=&quot;Three validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;xml-to-json-D2.xsl&quot;
            message=&quot;Three validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;xml-to-json-D2.xsl&quot;
            message=&quot;Three validation errors were reported&quot;/&gt;
   &lt;invalid code=&quot;err:XTTE1510&quot;
            file=&quot;forwards-104.xsl&quot;
            message=&quot;One validation error was reported&quot;/&gt;

I have fixed the catalog-005 test so that it now reports these invalidities, but will leave the bug open until these invalidaties are all fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128693</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2017-07-10 15:57:12 +0000</bug_when>
    <thetext>The simple type &quot;method&quot; does not allow the values &quot;json&quot; or &quot;adaptive&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128701</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2017-07-10 21:38:39 +0000</bug_when>
    <thetext>All now working after

(a) fixing the schema-for-xslt30 as described in bug 30141

(b) making a couple of tweaks to test case catalog-005 to

(i) avoid validating stylesheets with literal result elements in the fn namespace (will fail if a schema for the fn namespace is available)

(ii) avoid validating stylesheets with //@xsl:version &gt; 3 (will fail because everything is allowed in forwards compatibility mode)

Still need to fix bug 30149, test cases which are invalid because they use visibility=&quot;absent&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128702</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2017-07-10 21:39:38 +0000</bug_when>
    <thetext>s/30149/30139/</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>