This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
Currently the spec defines in section 6.3.1 how a complex type inherits schematron constraints from its base type definition. However, the spec does not define how an element declaration inherits schematron constraints from a substitution group head. This makes it inconsistent with the behavior of other SML constraints. All other SML constraints are inherited through substitution. Proposal: Update bullet# 2 in 6.3.1 as follows: --- The value of {rules} property of a schema component is computed as follows: 1. The value of {rules} for xs:anyType is the empty set. 2. If the schema component is a global element declaration, then the value of its {rules} is the union of its local-rules and the appropriate case from the following: a. If the element declaration has a {substitution group affiliation}, then the value of {rules} of the {substitution group affiliation}. b. Otherwise (the element declaration has no {substitution group affiliation}), the empty set. 3. If the schema component is a complex type definition, then the value of its {rules} is the union of its local-rules and the appropriate case from the following: a. If {base type definition} is a complex type definition, then {rules} of the {base type definition}. This is true for derivation by extension as well as for derivation by restriction. b. Otherwise ({base type definition} is a simple type definition), the empty set. --- Note: bullets 1 & 3 are unchanged. They are shown above only to provide context.
Agree with Kumar's proposal
Resolution on 2/21 call is to fix per proposal; no needsReview.
fixed as proposed.