XSD 纯文本元素

创建于 2024-12-03 / 32
字体: [默认] [大] [更大]

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


纯文本复杂元素

这种类型只包含简单的内容(文本和属性),因此我们在内容周围添加一个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>

Tip: 使用扩展/限制元素来扩展或限制元素的基简单类型。

以下是仅包含文本的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>

0 人点赞过