具有混合内容的xsd复杂类型

时间:2014-06-21 22:41:43

标签: xml xsd

我正在阅读this tutorial,并声明要获得这样的xml:

<letter>
  Dear Mr.<name>John Smith</name>.
  Your order <orderid>1032</orderid>
  will be shipped on <shipdate>2001-07-13</shipdate>.
</letter> 

您需要此xml架构定义:

<xs:element name="letter">
  <xs:complexType mixed="true">
    <xs:sequence>
      <xs:element name="name" type="xs:string"/>
      <xs:element name="orderid" type="xs:positiveInteger"/>
      <xs:element name="shipdate" type="xs:date"/>
    </xs:sequence>
  </xs:complexType>
</xs:element> 

但我发现这并不完全正确。 它定义了name,orderid和shiptdate元素,但它没有定义纯文本,如Dear Mr.Your orderwill be shipped on

唯一的xs:string类型已分配给name元素。

你能帮我理解吗?

非常感谢

1 个答案:

答案 0 :(得分:4)

mixed="true"的作用是什么 - 它允许复杂类型的声明元素周围和之间的任意文本。元素必须以所需的顺序出现,但两者之间可以有任何文本。