目录

XSD 纯文本元素


复杂的纯文本元素可以包含文本和属性。


复杂的纯文本元素

此类型仅包含简单内容(文本和属性),因此我们在内容周围添加一个 simpleContent 元素。使用简单内容时,您必须在 simpleContent 元素中定义扩展或限制,如下所示:

<xs:element name="somename">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="basetype">
        ....
        ....
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

OR

<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>

我们还可以给complexType元素一个名称,并让"shoesize"元素有一个引用complexType名称的type属性(如果使用此方法,多个元素可以引用相同的复杂类型):

<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>