五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 建站教程 > Schema 教程 > XSD 復(fù)合元素

XSD 復(fù)合元素

此節(jié)有 179 人學(xué)習(xí)過     參與評(píng)論

復(fù)合元素包含了其他的元素及/或?qū)傩浴?/strong>

什么是復(fù)合元素?

復(fù)合元素指包含其他元素及/或?qū)傩缘?XML 元素。

有四種類型的復(fù)合元素:

  • 空元素
  • 包含其他元素的元素
  • 僅包含文本的元素
  • 包含元素和文本的元素

注釋:上述元素均可包含屬性!

復(fù)合元素的例子

復(fù)合元素,"product",是空的:

<product pid="1345"/>

復(fù)合元素,"employee",僅包含其他元素:

<employee>
<firstname>John</firstname>
<lastname>Smith</lastname>
</employee>

復(fù)合元素,"food",僅包含文本:

<food type="dessert">Ice cream</food>

復(fù)合元素,"description",包含元素和文本:

<description>
It happened on <date lang="norwegian">03.03.99</date> ....
</description>

如何定義復(fù)合元素?

請(qǐng)看這個(gè)復(fù)合 XML 元素,"employee",僅包含其他元素:

<employee>
<firstname>John</firstname>
<lastname>Smith</lastname>
</employee>

在 XML Schema 中,我們有兩種方式來定義復(fù)合元素:

1. 通過命名此元素,可直接對(duì)"employee"元素進(jìn)行聲明,就像這樣:

<xs:element name="employee">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

假如您使用上面所描述的方法,那么僅有 "employee" 可使用所規(guī)定的復(fù)合類型。請(qǐng)注意其子元素,"firstname" 以及 "lastname",被包圍在指示器 <sequence>中。這意味著子元素必須以它們被聲明的次序出現(xiàn)。您會(huì)在 XSD 指示器 這一節(jié)學(xué)習(xí)更多有關(guān)指示器的知識(shí)。

2. "employee" 元素可以使用 type 屬性,這個(gè)屬性的作用是引用要使用的復(fù)合類型的名稱:

<xs:element name="employee" type="personinfo"/>

<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

如果您使用了上面所描述的方法,那么若干元素均可以使用相同的復(fù)合類型,比如這樣:

<xs:element name="employee" type="personinfo"/>
<xs:element name="student" type="personinfo"/>
<xs:element name="member" type="personinfo"/>

<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

您也可以在已有的復(fù)合元素之上以某個(gè)復(fù)合元素為基礎(chǔ),然后添加一些元素,就像這樣:

<xs:element name="employee" type="fullpersoninfo"/>

<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

<xs:complexType name="fullpersoninfo">
  <xs:complexContent>
    <xs:extension base="personinfo">
      <xs:sequence>
        <xs:element name="address" type="xs:string"/>
        <xs:element name="city" type="xs:string"/>
        <xs:element name="country" type="xs:string"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>

如對(duì)本文有疑問,請(qǐng)?zhí)峤坏浇涣髡搲瑥V大熱心網(wǎng)友會(huì)為你解答??! 點(diǎn)擊進(jìn)入論壇

您可能感興趣的文章:

發(fā)表評(píng)論 (179人查看,0條評(píng)論)
請(qǐng)自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
昵稱:
最新評(píng)論
------分隔線----------------------------
Schema 教程目錄

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時(shí)間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)