- From: Zafar Abbas <Zafar.Abbas@microsoft.com>
- Date: Wed, 26 Jul 2006 10:31:14 -0700
- To: <xmlschema-dev@w3.org>
- Cc: <Eduardo.Gutentag@Sun.COM>
I was going through the recent submission in to the Schema test collection by SUN and found this issue worth posting on this forum: Issue: There are two global elements, one in the substitution group of the other. The type of the Head element has block=restriction. The substitution group member has a type derived by restriction from the Head element's type. What is the value of {disallowed substitutions} in this case for the Head element? By reading the spec [1], it seems that it should be EMPTY (and Member1 should be allowed to substitute) since [disallowed substitutions} are only determined by -block- attributes on the element declaration and not its type. <xsd:element name="Head" type="Type"/> <xsd:element name="Member1" type="derivedFromType" substitutionGroup="Head"/> <xsd:complexType name="Type" block="restriction"/> <xsd:complexType name="derivedFromType"> <xsd:complexContent> <xsd:restriction base="Type"/> </xsd:complexContent> </xsd:complexType> [1] http://www.w3.org/TR/2004/PER-xmlschema-1-20040318/structures-with-errata..html#Element_Declaration_details Thanks, Zafar Abbas
Received on Wednesday, 26 July 2006 17:33:28 UTC