<?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>16182</bug_id>
          
          <creation_ts>2012-03-01 17:27:00 +0000</creation_ts>
          <short_desc>wildC035 and wildC036 valid for XSD 1.1?</short_desc>
          <delta_ts>2012-10-22 09:46:22 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>XML Schema Test Suite</product>
          <component>Microsoft tests</component>
          <version>2006-11-06</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>resolved</keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Meissl">am_spamfaenger</reporter>
          <assigned_to name="C. M. Sperberg-McQueen">cmsmcq</assigned_to>
          <cc>cmsmcq</cc>
    
    <cc>mike</cc>
    
    <cc>xml.dev</cc>
          
          <qa_contact name="XML Schema Test Suite mailing list">public-xml-schema-testsuite</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>64834</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Meissl">am_spamfaenger</who>
    <bug_when>2012-03-01 17:27:00 +0000</bug_when>
    <thetext>In my opinion the test cases wildC035 and wildC036 of set MS-Wildcards2006-07-15 are valid for XSD 1.1. wildC035 specifies a wildcard with namespace=&quot;##target&quot; and wildC036 with namespace=&quot;##all&quot;.

The XML representation for the namespace attribute of xs:any is as follows:
   namespace = ((##any | ##other) | List of (anyURI | (##targetNamespace | ##local)) )

So the two testcases don&apos;t use one of the special values &quot;##any&quot;, &quot;##other&quot;, &quot;##targetNamespace&quot; and &quot;##local&quot;. But the definition of anyURI in XSD 1.1 doesn&apos;t prohibit values starting with &quot;##&quot;. So &quot;##target&quot; and &quot;##all&quot; are valid values for anyURI and therefore the two test cases should have expected result valid for XSD 1.1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64886</commentid>
    <comment_count>1</comment_count>
    <who name="Andreas Meissl">am_spamfaenger</who>
    <bug_when>2012-03-02 07:07:15 +0000</bug_when>
    <thetext>There are similar problems with the test cases wildC049-53. In each of these cases one of the special values ##any and ##other is combined with one of the special values ##targetNamespace, ##local or ##other. 
In XSD 1.0 these cases were invalid because all of these special values were invalid anyURIs. In XSD 1.1 all these values are valid anyURIs, and so these test cases get valid via list of anyURI.
Maybe this is not a testsuite bug but more a specification bug. A solution would be to add some schema representation constraint which prohibits the use of URIs starting with ## in the namespace attribute of wildcards. 
Another solution would be to change the S4S to use a restriction of anyURI which prohibits values starting with ## in basicNamespaceList.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64887</commentid>
    <comment_count>2</comment_count>
    <who name="Andreas Meissl">am_spamfaenger</who>
    <bug_when>2012-03-02 07:34:11 +0000</bug_when>
    <thetext>The same for:
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildC055&apos; test=&apos;wildC055&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildC056&apos; test=&apos;wildC056&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildC057&apos; test=&apos;wildC057&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildC058&apos; test=&apos;wildC058&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildC066&apos; test=&apos;wildC066&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildC067&apos; test=&apos;wildC067&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF006&apos; test=&apos;wildF006&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF007&apos; test=&apos;wildF007&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF008&apos; test=&apos;wildF008&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF009&apos; test=&apos;wildF009&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF010&apos; test=&apos;wildF010&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF012&apos; test=&apos;wildF012&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF013&apos; test=&apos;wildF013&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF014&apos; test=&apos;wildF014&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF015&apos; test=&apos;wildF015&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF016&apos; test=&apos;wildF016&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildF018&apos; test=&apos;wildF018&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK002&apos; test=&apos;wildK002&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK006&apos; test=&apos;wildK006&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK007&apos; test=&apos;wildK007&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK020&apos; test=&apos;wildK020&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK021&apos; test=&apos;wildK021&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK022&apos; test=&apos;wildK022&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK023&apos; test=&apos;wildK023&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK024&apos; test=&apos;wildK024&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK026&apos; test=&apos;wildK026&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK027&apos; test=&apos;wildK027&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK028&apos; test=&apos;wildK028&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK029&apos; test=&apos;wildK029&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildK038&apos; test=&apos;wildK038&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN006&apos; test=&apos;wildN006&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN007&apos; test=&apos;wildN007&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN008&apos; test=&apos;wildN008&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN009&apos; test=&apos;wildN009&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN010&apos; test=&apos;wildN010&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN012&apos; test=&apos;wildN012&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN013&apos; test=&apos;wildN013&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN014&apos; test=&apos;wildN014&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN015&apos; test=&apos;wildN015&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN016&apos; test=&apos;wildN016&apos;
set=&apos;MS-Wildcards2006-07-15&apos; group=&apos;wildN018&apos; test=&apos;wildN018&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64888</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2012-03-02 08:57:37 +0000</bug_when>
    <thetext>The relevant types (basicNamespaceList and specialNamespaceList) are defined like this: 

       &lt;xs:union memberTypes=&quot;xs:anyURI&quot;&gt;
          &lt;xs:simpleType&gt;
            &lt;xs:restriction base=&quot;xs:token&quot;&gt;
              &lt;xs:enumeration value=&quot;##targetNamespace&quot;/&gt;
              &lt;xs:enumeration value=&quot;##local&quot;/&gt;
            &lt;/xs:restriction&gt;
          &lt;/xs:simpleType&gt;
        &lt;/xs:union&gt;

I think what is needed is for the order of the union to be reversed, so the token comes before the anyURI.

I&apos;m reclassifying this as a spec bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64890</commentid>
    <comment_count>4</comment_count>
    <who name="Andreas Meissl">am_spamfaenger</who>
    <bug_when>2012-03-02 09:18:31 +0000</bug_when>
    <thetext>I think simply changing the order doesn&apos;t help. It will still allow values like &quot;##target&quot; which are now valid anyURIs but are not listed in the enumerations - and have no special meaning.
Also changing the order doesn&apos;t prohibit something like: &quot;##any ##other&quot; which will not match any of the enumerations of the &quot;specialNamespaceList&quot; but is in XSD 1.1 a valid list of anyURIs.
I suggest to use a restriction of anyURI which prohibits values starting with &quot;##&quot; (using a pattern) instead of anyURI as memberType in basicNamespaceList.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65210</commentid>
    <comment_count>5</comment_count>
    <who name="David Ezell">David_E3</who>
    <bug_when>2012-03-09 16:56:07 +0000</bug_when>
    <thetext>Tentatively resolved: editorial, and add a note of clarification advising you not to use &apos;##&apos;, that an implementation may produce a warning.
And:  change the test outcomes to match.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65211</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2012-03-09 16:57:38 +0000</bug_when>
    <thetext>To expand on the resolution: we agree these tests are now valid according to the spec as written, and we have decided not to change the spec, except by adding a note warning users not to do this, and reminding implementors that they have the right to issue a warning.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66277</commentid>
    <comment_count>7</comment_count>
    <who name="C. M. Sperberg-McQueen">cmsmcq</who>
    <bug_when>2012-03-30 01:16:26 +0000</bug_when>
    <thetext>A note has been added to the spec as described in comment 6.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76708</commentid>
    <comment_count>8</comment_count>
    <who name="C. M. Sperberg-McQueen">cmsmcq</who>
    <bug_when>2012-10-19 16:42:41 +0000</bug_when>
    <thetext>The note mentioned in comment 7 is included in the XSD 1.1 Recommendation at http://www.w3.org/TR/xmlschema11-1/#declare-openness so I am marking this bug as resolved.

I believe we ought in principle to have asked Andreas Meissl earlier to confirm that this resolution of the issue is acceptable, but the comments here don&apos;t show that we did, so I will do so now.  Mr. Meissl, if you are content with this resolution of the issue, please indicate so by closing the bug.  If you are not content, please reopen the bug with an explanation of why you are not satisfied and of what changes would be satisfactory.  If we don&apos;t hear from you in the next two weeks, we&apos;ll assume you are content and may then close the bug ourselves.  Thank you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76710</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2012-10-19 17:03:16 +0000</bug_when>
    <thetext>I&apos;m reopening as a bug against the test suite, because it appears that we agreed in the course of discussion that the schemas in these tests are now valid, but we have not marked them as such.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76895</commentid>
    <comment_count>10</comment_count>
    <who name="Altova XML Developers">xml.dev</who>
    <bug_when>2012-10-22 09:46:22 +0000</bug_when>
    <thetext>The resolution is okay for me. I&apos;m just waiting for the changed expected results in the test suite.

Best regards,
Andreas Meissl</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>