top
Loading...
XML Schema 復合類型 – 混合內容

XSD 混合內容


混合的復合類型可包含屬性、元素以及文本。


帶有混合內容的復合類型

XML 元素,"letter",含有文本以及其他元素:

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

下面這個 schema 聲明了這個 "letter" 元素:

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

注意: 為了使字符數據可以出現在 "letter" 的子元素之間,mixed 屬性必須被設置為 "true"。<xs:sequence> 標籤 (name、orderid 以及 shipdate ) 意味著被定義的元素必須依次出現在 "letter" 元素內部。

我們也可以為 complexType 元素起一個名字,併讓 "letter" 元素的 type 屬性引用 complexType 的這個名稱(通過這個方法,若干元素均可引用同一個復合類型):

<xs:element name="letter" type="lettertype"/>

<xs:complexType name="lettertype" 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>
北斗有巢氏 有巢氏北斗