- From: Daniel Barclay <daniel@fgm.com>
- Date: Mon, 09 Oct 2006 14:18:58 -0400
- To: www-xml-schema-comments@w3.org
Regarding _XML_Schema_Part_1:_Structures_Second_Edition at http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/: In section 3.3.1, the specification says: The explicit values of {substitution group exclusions} rule out element declarations having types which are extensions or restrictions respectively of {type definition}. If both values are specified, then the declaration may not be nominated as the {substitution group affiliation} of any other declaration. Is that last sentence correct? Considering just the first quoted sentence, a substitution group exclusions property that contains both 'restriction' and 'extension' excludes any element declarations of a datatype that is an extension or restriction of the original datatype, but it leaves open the possibility of an element declaration whose datatype is the _same_ datatype. The last sentence rules out the possibility of substituting a element declaration having the same datatype. It also seems to mean that there is no way to exclude elements of extended and restricted types but still allow different elements of the same type (e.g., elements validated by element declarations with different names but the same datatype). Was that last sentence meant as a further restriction that was intended by the designers? (Or was is meant just as a summary of the result of the combination of the two things addressed by the first sentence?) If the last sentences does not reflect an intended restriction, it should be removed or corrected. (If it _does_ reflect an intended restriction, its wording should be adjusted to make that clear, perhaps by starting: In addition, if both values are specified ... Additionally, what happens if 'restriction' and 'extension' are specified on different element declarations in a chain? Are other parts of the specification worded such that substitution of same-datatype elements is excluded consistently (regardless of whether 'restriction' and 'extension' are specified on different element declarations in a chain or on the same element declaration)?) Daniel Barclay P.S. The use of "respectively" in: The explicit values of {substitution group exclusions} rule out element declarations having types which are extensions or restrictions respectively of {type definition}. appears to be broken. The sentence does not contain (the words identifying) the pair of things that "extensions" and "restrictions" correspond to respectively (i.e., according to their order in the sentence). Daniel Barclay
Received on Monday, 9 October 2006 18:19:39 UTC