W3C home > Mailing lists > Public > www-xml-schema-comments@w3.org > July to September 2005

[Bug 2232] R-240: Question re: Particle Derivation OK (All/Choice/Sequence:Any -- NSRecurseCheckCardinality)

From: <bugzilla@wiggum.w3.org>
Date: Wed, 14 Sep 2005 19:33:39 +0000
To: www-xml-schema-comments@w3.org
Cc:
Message-Id: <E1EFd0l-0001pp-4D@wiggum.w3.org>

http://www.w3.org/Bugs/Public/show_bug.cgi?id=2232

           Summary: R-240: Question re: Particle Derivation OK
                    (All/Choice/Sequence:Any -- NSRecurseCheckCardinality)
           Product: XML Schema
           Version: 1.0
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: XSD Part 1: Structures
        AssignedTo: ht@w3.org
        ReportedBy: sandygao@ca.ibm.com
         QAContact: www-xml-schema-comments@w3.org


I think the following passage in Part 1 is wrong: 

Schema Component Constraint: Particle Derivation OK (All/Choice/Sequence:Any -- 
NSRecurseCheckCardinality) 

For a group particle to be a valid restriction of a wildcard particle all of 
the following must be true: 

1 Every member of the {particles} of the group is a valid restriction of the 
wildcard as defined by Particle Valid (Restriction) (3.9.6). 

[...] 

If understood literally, this is saying that a particle of a model group can be 
a valid restriction of a wildcard. How can a particle be a valid restriction of 
a **wildcard** (as opposed to a **particle whose term is a wildcard**)? 

If, instead, I interpret it as: 

"1 Every member of the {particles} of the group is a valid restriction of the 
wildcard **particle** as defined by Particle Valid (Restriction) (3.9.6)." it 
becomes clearly wrong, given that the min occurs and max occurs of the "base" 
particle and the min occurs and max occurs of the "restricted" particle have a 
role in determining whether a "restricted" particle (say, an element 
declaration particle) is a valid restriction of a "base" particle (say, a 
wildcard particle). 

For example, suppose I want to restrict a wildcard particle (min occurs=4, max 
occurs=8) with a sequence particle whose term has three element declaration 
particles. The statement above would require that **each** of the element 
declaration particles was a valid restriction of the wildcard particle, which 
in turn implies that **each** of the element declaration particles had to have 
min occurs>=4, max occurs<=8 (see 3.9.6, Schema Component Constraint: Particle 
Derivation OK (Elt:Any -- NSCompat)). This makes no sense. 

A possible correction is rewording the sentence as follows: 

1 Every member of the {particles} of the group is a valid restriction of the 
wildcard particle as defined by Particle Valid (Restriction) (3.9.6), except 
that the min occurs of the wildcard particle must be replaced by 0 before 
applying Particle Valid (Restriction) (3.9.6). 

or perhaps as follows: 

1 Every member of the {particles} of the group is a valid restriction (as 
defined by Particle Valid (Restriction) (3.9.6)) of a particle constructed as 
follows: 
min occurs: 0 
max occurs: the same as the max occurs of the wildcard particle 
term: the wildcard 

See:
http://lists.w3.org/Archives/Public/www-xml-schema-comments/2003OctDec/0031.html
Received on Wednesday, 14 September 2005 19:33:46 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Sunday, 6 December 2009 18:13:09 GMT