- From: Sandy Gao <sandygao@ca.ibm.com>
- Date: Fri, 6 Jun 2003 14:06:09 -0400
- To: www-xml-schema-comments@w3.org
The constraint is quoted below. - It's not mentioned what's B and what's R. The first sentence should be modified to something similar to "For an element declaration particle R to be a valid restriction of another element declaration particle R all of the following must be true:". - Since B and R are particles, bullets 2 and 7 are not correct in saying B's {nillable} or R's {type definition}. I think the first sentence can be further modified to "For a particle R whose {term} is an element declaration RE to be a valid restriction of another particle B whose {term} is an element declaration BE all of the following must be true:", then use RE and BE in the proper places. Schema Component Constraint: Particle Restriction OK (Elt:Elt -- NameAndTypeOK) For an element declaration particle to be a ·valid restriction· of another element declaration particle all of the following must be true: 1 The declarations' {name}s and {target namespace}s are the same. 2 Either B's {nillable} is true or R's {nillable} is false. 3 R's occurrence range is a valid restriction of B's occurrence range as defined by Occurrence Range OK (§3.9.6). 4 either B's declaration's {value constraint} is absent, or is not fixed, or R's declaration's {value constraint} is fixed with the same value. 5 R's declaration's {identity-constraint definitions} is a subset of B's declaration's {identity-constraint definitions}, if any. 6 R's declaration's {disallowed substitutions} is a superset of B's declaration's {disallowed substitutions}. 7 R's {type definition} is validly derived given {extension, list, union} from B's {type definition} as defined by Type Derivation OK (Complex) (§3.4.6) or Type Derivation OK (Simple) (§3.14.6), as appropriate. Note: The above constraint on {type definition} means that in deriving a type by restriction, any contained type definitions must themselves be explicitly derived by restriction from the corresponding type definitions in the base definition, or be one of the member types of a corresponding union. Proposed text: Schema Component Constraint: Particle Restriction OK (Elt:Elt -- NameAndTypeOK) For a particle R whose {term} is an element declaration RE to be a valid restriction of another particle B whose {term} is an element declaration BE all of the following must be true: 1 RE and BE have the same {name}s and {target namespace}s. 2 Either BE's {nillable} is true or RE's {nillable} is false. 3 R's occurrence range is a valid restriction of B's occurrence range as defined by Occurrence Range OK (§3.9.6). 4 Either BE's {value constraint} is absent, or is not fixed, or RE's {value constraint} is fixed with the same value. 5 RE's {identity-constraint definitions} is a subset of BE's {identity-constraint definitions}, if any. 6 RE's {disallowed substitutions} is a superset of BE's {disallowed substitutions}. 7 RE's {type definition} is validly derived given {extension, list, union} from BE's {type definition} as defined by Type Derivation OK (Complex) (§3.4.6) or Type Derivation OK (Simple) (§3.14.6), as appropriate. Note: The above constraint on {type definition} means that in deriving a type by restriction, any contained type definitions must themselves be explicitly derived by restriction from the corresponding type definitions in the base definition, or be one of the member types of a corresponding union. Thanks, Sandy Gao Software Developer, IBM Canada (1-905) 413-3255 sandygao@ca.ibm.com
Received on Friday, 6 June 2003 14:06:26 UTC