XSD 仅含元素
"仅含元素"的复合类型元素是只能包含其他元素的元素。
复合类型仅包含元素
XML 元素,"person",仅包含其他的元素:
<person>
? <firstname>John</firstname>
? <lastname>Smith</lastname>
</person>
? <firstname>John</firstname>
? <lastname>Smith</lastname>
</person>
您可在 schema 中这样定义 "person" 元素:
<xs:element name="person">
? <xs:complexType>
??? <xs:sequence>
????? <xs:element name="firstname" type="xs:string"/>
????? <xs:element name="lastname" type="xs:string"/>
??? </xs:sequence>
? </xs:complexType>
</xs:element>
? <xs:complexType>
??? <xs:sequence>
????? <xs:element name="firstname" type="xs:string"/>
????? <xs:element name="lastname" type="xs:string"/>
??? </xs:sequence>
? </xs:complexType>
</xs:element>
请留意这个
或者您可以为 complexType 元素设定一个名称,并让 "person" 元素的 type 属性来引用此名称(如使用此方法,若干元素均可引用相同的复合类型):
<xs:element name="person" type="persontype"/>
<xs:complexType name="persontype">
? <xs:sequence>
??? <xs:element name="firstname" type="xs:string"/>
??? <xs:element name="lastname" type="xs:string"/>
? </xs:sequence>
</xs:complexType>
<xs:complexType name="persontype">
? <xs:sequence>
??? <xs:element name="firstname" type="xs:string"/>
??? <xs:element name="lastname" type="xs:string"/>
? </xs:sequence>
</xs:complexType>