This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The default value for "nillable" in the schema for schemas can turn good schema documents into bad ones. Consider: <xs:schema ...> <xs:element name="global" .../> <xs:complexType ...> <xs:sequence> <xs:element ref="tns:global"/> After validating against the SD4SD, a default value for "nillable" is added to the element reference: <xs:element maxOccurs="1" minOccurs="1" nillable="false" ref="tns:global"/> But "nillable" isn't allowed on element refs [1]. It seems that we do not depend on the default value of "nillable" in the mapping rules. Section 3.3.2 has: "{nillable} The ·actual value· of the nillable [attribute], if present, otherwise false." Suggest to remove such default value from the SD4SD, in both 1.0 and 1.1. [1] http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/#src-element clause 2.2
The WG today accepted this analysis and instructed the editors to fix it.
Concrete proposal. In Appendix A, remove the default value on the attribute declaration for "nillable" from the complex type definition "element". i.e. remove default="false" from the following: <xs:complexType name="element" abstract="true"> <xs:annotation> ... </xs:annotation> <xs:complexContent> <xs:extension base="xs:annotated"> <xs:sequence> ... </xs:sequence> ... <xs:attribute name="nillable" type="xs:boolean" default="false" use="optional"/> ... </xs:extension> </xs:complexContent> </xs:complexType>
WG accepted proposal in comment #2 on 2009-09-18.