- From: choi jongwon <jwchoi@digiweb21.com>
- Date: Wed, 4 Jul 2001 11:21:36 +0900
- To: <www-xml-schema-comments@w3.org>
can i give you my opinion...?
i think that, both of it available because phrase 3.2 below says {name} and {target namespace} needs only.
3.4.2 ComplexType definition.
{attribute uses} A union of sets of attribute uses as follows
1 The set of attribute uses corresponding to the <attribute> [children], if any.
2 The {attribute uses} of the attribute groups ,resolved, to by the ,actual value,s
of the ref [attribute] of the <attributeGroup> [children], if any.
3 if the type definition ,resolved, to by the ,actual value, of the base [attribute] is a complex type definition,
the {attribute uses} of that type definition, unless the <restriction> alternative is chosen,
"in which case" some members of that type definition's {attribute uses} may not be included,
namely those whose {attribute declaration}'s {name} and {target namespace} are the same as one of the following:
3.1 the {name} and {target namespace} of the {attribute declaration}
of an attribute use in the set per clause 1 or clause 2 above;
3.2 what would have been the {name} and {target namespace} of the {attribute declaration}
of an attribute use in the set per clause 1 above but for the ,actual value, of the use [attribute]
of the relevant <attribute> among the [children] of <restriction> being prohibited.
and there is a good example in XMLSchema structure schema in appendix A.
<xs:complexType name="attribute">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
</xs:sequence>
<xs:attributeGroup ref="xs:defRef"/>
<xs:attribute name="type" type="xs:QName"/>
<xs:attribute name="use" use="optional" default="optional">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="prohibited"/>
<xs:enumeration value="optional"/>
<xs:enumeration value="required"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="default" type="xs:string"/>
<xs:attribute name="fixed" type="xs:string"/>
<xs:attribute name="form" type="xs:formChoice"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="topLevelAttribute">
<xs:complexContent>
<xs:restriction base="xs:attribute">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
</xs:sequence>
<xs:attribute name="ref" use="prohibited"/>
<xs:attribute name="form" use="prohibited"/>
<xs:attribute name="use" use="prohibited"/>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
thank you for your question.
it derives me more deep understand of attribute... ^ ^;
Received on Tuesday, 3 July 2001 22:11:08 UTC