- From: Jeni Tennison <jeni@jenitennison.com>
- Date: Wed, 16 Jan 2002 16:10:06 +0000
- To: sylvain.devillers@philips.com
- CC: xmlschema-dev@w3.org
Hi Sylvain, > Apparently, the "name" attribute of a type definition is optional, > even if the type is defined under <schema>. Admittedly it takes a bit of trawling to find out, but I don't think the name attribute is optional on top-level xs:complexType elements. Under the Schema Representation Constraint: Complex Type Definition Representation OK in Section 3.4.3 it says: "In addition to the conditions imposed on <complexType> element information items by the schema for schemas, all of the following must be true:..." Looking at the schema-for-schemas, you find that xs:complexType elements directly under xs:schema elements are declared with: <xs:element name="complexType" type="xs:topLevelComplexType" id="complexType"> <xs:annotation> <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexType"/> </xs:annotation> </xs:element> And the xs:topLevelComplexType is defined as: <xs:complexType name="topLevelComplexType"> <xs:complexContent> <xs:restriction base="xs:complexType"> <xs:sequence> <xs:element ref="xs:annotation" minOccurs="0"/> <xs:group ref="xs:complexTypeModel"/> </xs:sequence> <xs:attribute name="name" type="xs:NCName" use="required"/> </xs:restriction> </xs:complexContent> </xs:complexType> As you can see, the name attribute is *required* on these xs:complexType elements. Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/
Received on Wednesday, 16 January 2002 11:10:13 UTC