六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

一個容易的XML Schema的例子

[摘要]  我們可以看到,DTD的語法相當復雜,并且它不符合XML文件的標準,自成一個體系。也就是說DTD文檔本身并不是一個良好形式的XML文檔,上面的關于DTD的介紹也僅僅是作了一個簡介,目的是幫助大家能讀懂DTD文件以及在必要時創建簡單的DTD文件,因為現在很多的XML應用是建立在DTD之上的。   ...
  我們可以看到,DTD的語法相當復雜,并且它不符合XML文件的標準,自成一個體系。也就是說DTD文檔本身并不是一個良好形式的XML文檔,上面的關于DTD的介紹也僅僅是作了一個簡介,目的是幫助大家能讀懂DTD文件以及在必要時創建簡單的DTD文件,因為現在很多的XML應用是建立在DTD之上的。

  另外一個代替DTD的就是W3C定義的Schema,Schema從字面意義上來說,可以翻譯成模式、大綱、計劃、規劃等等。它的基本意思就是說為XML文檔制定一種模式。

  Schema相對于DTD的明顯好處是XML Schema文檔本身也是XML文檔,而不是像DTD一樣使用自成一體的語法。這就方便了用戶和開發者,因為可以使用相同的工具來處理XML Schema和其他XML信息,而不必專門為Schema使用特殊工具。Schema簡單易懂,懂得XML語法、規則的人都可以立刻理解它。Schema的概念提出已久,但W3C的標準最近才出來,相應的應用支持尚未完善,但采用Schema已成為XML發展的一個趨勢。


  首先我們還是從最簡單的例子著手來學習Schema的語法結構:

  比如一個簡單的XML文檔如下:

  <書本>
  <名稱>天涯明月刀
  <作者>古龍
  

  如果用DTD的形式來定義該XML文檔結構的話,可以如下所示:


  <!ELEMENT 書本 (名稱, 作者)>
  <!ELEMENT 名稱 (#PCDATA)>
  <!ELEMENT 作者 (#PCDATA)>

  那么用Schema形式如何定義呢?見下面的代碼:

  <element name='書本' type='書本類型'/>
  <complexType name='書本類型'>
  <element name='名稱' type='string'/>
  <element name='作者' type='string'/>
  </complexType>

  可以注意的一點是,在Schema中,也是通過對元素的定義和元素關系的定義來實現對整個文檔性質和內容的定義。同時需要注意的是,在Schema中,元素是通過它的名字和內容模型來確定,名稱就是該元素的名字,這個大家都可以理解,而內容模型實際上就是表示元素的類型。就象在C++中,我們可以隨便定義一個變量,但是必須定義變量的類型,變量的類型就可能有多種形式,它可以是一個簡單的變量(如C++內部指定的類型,bool,int,double,char等等),也可以是很復雜的類型(比如是一個struct或者是class),在Schema中也是一樣,類型(type)可以分為兩種形式,一種是非常簡單的類型,被稱為simple,一種是復雜的類型,被稱為complex。簡單類型不能包含元素和屬性(注意在Schema中和DTD中一樣,都有元素屬性的說法,大道相同)。而復雜類型不僅可以包含屬性,而且可以在其中嵌套其他的元素,或者可以和其他元素中的屬性相關聯。




主站蜘蛛池模板: 在线天堂中文在线网 | 视频一区二区精品的福利 | 亚州三级 | 日日夜夜免费视频 | 在线亚洲日产一区二区 | 欧美专区第一页 | 三级视频欧美 | 午夜在线观看视频在线播放版 | 视频一区日韩 | 三级黄色免费观看 | 天天草夜夜 | 日韩色综合 | 日本zzzwww| 中国与黑人xxxx视频 | 亚洲国产天堂在线观看 | 日本一道dvd在线播放 | 日本免费观看网站 | 日韩特黄特色大片免费视频 | 日韩 欧美 综合 在线 制服 | 深夜福利影院在线观看 | 色成人亚洲 | 最新韩国理论片30页 | 欧美一区二区三区精品影视 | 五月天堂婷婷 | 中文字幕一区在线观看视频 | 色黄网站成年女人色毛片 | 中文字幕第99页 | 亚洲欧美在线视频 | 天天干天天干天天色 | 午夜tv影院 | 日韩三级在线免费观看 | 天天综合天天添夜夜添狠狠添 | 亚洲成人精品久久 | 日韩精品一区二区三区中文精品 | 亚洲国产精品一区二区久久hs | 婷婷中文在线 | 青青青久97在线观看香蕉 | 日本妞欧洲 | 日韩精品一区二区三区中文字幕 | 视频二区 调教中字 知名国产 | 亚洲xx视频 |