XSD 仅文本元素
复杂的仅文本元素可以包含文本和属性。
复杂的仅文本元素
这种类型只包含简单内容(文本和属性),因此我们在内容周围添加一个 simpleContent 元素。使用简单内容时,您必须在 simpleContent 元素内定义扩展或限制,如下所示
<xs:element name="somename">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="basetype">
....
....
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
或
<xs:element name="somename">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="basetype">
....
....
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
提示: 使用扩展/限制元素来扩展或限制元素的基本简单类型。
这是一个包含仅文本的 XML 元素“shoesize”的示例
<shoesize country="france">35</shoesize>
以下示例声明了一个复杂类型“shoesize”。内容定义为整数值,“shoesize”元素还包含一个名为“country”的属性
<xs:element name="shoesize">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:integer">
<xs:attribute name="country" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
我们也可以给复杂类型元素命名,并让“shoesize”元素具有一个类型属性,该属性引用复杂类型的名称(如果使用此方法,则多个元素可以引用相同的复杂类型)
<xs:element name="shoesize" type="shoetype"/>
<xs:complexType name="shoetype">
<xs:simpleContent>
<xs:extension base="xs:integer">
<xs:attribute name="country" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>