This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 11897 - Invalid particle restriction in all237
Summary: Invalid particle restriction in all237
Status: CLOSED FIXED
Alias: None
Product: XML Schema Test Suite
Classification: Unclassified
Component: Saxon tests (show other bugs)
Version: 2006-11-06
Hardware: PC Windows XP
: P2 normal
Target Milestone: ---
Assignee: C. M. Sperberg-McQueen
QA Contact: XML Schema Test Suite mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-27 20:07 UTC by Sandy Gao
Modified: 2011-10-21 16:38 UTC (History)
1 user (show)

See Also:


Attachments

Description Sandy Gao 2011-01-27 20:07:09 UTC
saxonData/All/all237.xsd is meant to be a test for valid particle restriction.

The type "b" has ("one", "two", and "three" are wildcard namespaces):

( (one|two){5,U} & three{0,2} )

and the restriction type "r" has

( one{3,U} & (two|three){2,2} )

Now it seems a sequence of 3 "one"s and 2 "three"s is allowed by "r" but not "b". Suggest to change "one" in "r" to {5,U}.

Attached below is the offending fragment:

    <xs:complexType name="b">
       <xs:all>     
         <xs:any namespace="http://one.uri/ http://two.uri/" minOccurs="5" maxOccurs="unbounded"/>
         <xs:any namespace="http://three.uri/" minOccurs="0" maxOccurs="2"/>
       </xs:all>
    </xs:complexType>
    
    <xs:complexType name="r">
      <xs:complexContent>
        <xs:restriction base="b">
         <xs:all>     
           <xs:any namespace="http://one.uri/" minOccurs="3" maxOccurs="unbounded"/>
           <xs:any namespace="http://two.uri/ http://three.uri/" minOccurs="2" maxOccurs="2"/>
         </xs:all>
        </xs:restriction>
      </xs:complexContent>
    </xs:complexType>
Comment 1 Michael Kay 2011-02-07 10:58:22 UTC
Agreed.

The existing test has been renumbered all244.n.xsd and classified as invalid; a corrected version of all237.xsd is now registered as valid.