《XML技術(shù)及應(yīng)用》課件第3章-XML模式(schema)_第1頁(yè)
《XML技術(shù)及應(yīng)用》課件第3章-XML模式(schema)_第2頁(yè)
《XML技術(shù)及應(yīng)用》課件第3章-XML模式(schema)_第3頁(yè)
《XML技術(shù)及應(yīng)用》課件第3章-XML模式(schema)_第4頁(yè)
《XML技術(shù)及應(yīng)用》課件第3章-XML模式(schema)_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

知識(shí)要點(diǎn)XML模式與DTD的比較XML模式中的簡(jiǎn)單和復(fù)雜數(shù)據(jù)類(lèi)型創(chuàng)建XML模式文檔XML模式的復(fù)用3.1XLM的簡(jiǎn)單應(yīng)用XML模式介紹

XML模式是由微軟公司開(kāi)發(fā),2001年5月成為W3C的推薦規(guī)范,用于創(chuàng)建有效的XML文檔。創(chuàng)建XML模式的語(yǔ)言被稱(chēng)為XML模式定義語(yǔ)言(XSD)。與DTD相比較,XML模式的特點(diǎn):使用與XML相同的語(yǔ)法支持多種數(shù)據(jù)類(lèi)型支持用戶(hù)自定義數(shù)據(jù)類(lèi)型支持名稱(chēng)空間3.1XLM的簡(jiǎn)單應(yīng)用XML模式介紹

XML模式的基本元素:element:描述一個(gè)非根元素。attribute:描述XML文檔中某元素的屬性。simpleType:描述自定義簡(jiǎn)單數(shù)據(jù)類(lèi)型complexType:描述復(fù)雜數(shù)據(jù)類(lèi)型restriction:用于指定元素內(nèi)容的某些約束3.1XLM的簡(jiǎn)單應(yīng)用XML模式介紹XML模式的基本元素:element:描述一個(gè)非根元素。attribute:描述XML文檔中某元素的屬性。simpleType:描述自定義簡(jiǎn)單數(shù)據(jù)類(lèi)型complexType:描述復(fù)雜數(shù)據(jù)類(lèi)型restriction:用于指定元素內(nèi)容的某些約束3.1XLM的簡(jiǎn)單應(yīng)用實(shí)例:按需要定義圖書(shū)信息格式問(wèn)題:

為了便于各部門(mén)、分店處理或存儲(chǔ)書(shū)籍詳細(xì)資料,要求書(shū)籍詳細(xì)資料按照一定的規(guī)則存儲(chǔ),以保證書(shū)籍信息格式的一致性。書(shū)籍的詳細(xì)資料包括:ISBN、書(shū)名、作者(最多為四人)、出版社、價(jià)格、關(guān)鍵字、供書(shū)商、庫(kù)存量、庫(kù)存位置。 對(duì)書(shū)籍詳細(xì)資料的一些約束: 書(shū)籍共有三類(lèi):計(jì)算機(jī)類(lèi)、經(jīng)濟(jì)類(lèi)、文學(xué)類(lèi),書(shū)庫(kù)中存放書(shū)籍的區(qū)域也相應(yīng)有三個(gè):計(jì)算機(jī)類(lèi)架柜、經(jīng)濟(jì)類(lèi)架柜、文學(xué)類(lèi)架柜;ISBN的格式為“d-ddd-ddddd-d”,其中d表示為數(shù)字;價(jià)格為浮點(diǎn)數(shù),必須大于0;庫(kù)存量為正整數(shù);關(guān)鍵字為字符串,長(zhǎng)度不可大于10個(gè);其它皆為字符類(lèi)型3.1XLM的簡(jiǎn)單應(yīng)用分析確定保證數(shù)據(jù)一致性的方法列出存儲(chǔ)書(shū)籍詳細(xì)資料所需要的元素、屬性及其類(lèi)型聲明元素聲明屬性編寫(xiě)XML文檔,引用XML模式3.1XLM的簡(jiǎn)單應(yīng)用解決確定保證數(shù)據(jù)一致性的方法采用XML模式對(duì)書(shū)籍?dāng)?shù)據(jù)的XML文檔進(jìn)行定義列出存儲(chǔ)書(shū)籍詳細(xì)資料所需要的元素、屬性及其類(lèi)型3.1XLM的簡(jiǎn)單應(yīng)用XML模式提供的主要預(yù)定義數(shù)據(jù)類(lèi)型:數(shù)據(jù)類(lèi)型描述String表示字符串類(lèi)型Number表示數(shù)字類(lèi)型Int表示范圍在-2147483648~2147483647之間的整數(shù)NonNegativeInteger表示大于或等于零的整數(shù)PositiveInteger表示大于零的整數(shù)Float表示單精度32位的浮點(diǎn)數(shù)Boolean表示布爾類(lèi)型Date表示日期類(lèi)型Time表示時(shí)間類(lèi)型TimeDuration表示一段持續(xù)時(shí)間Uri表示通用資源標(biāo)識(shí)符(URI)uuid表示通用用戶(hù)標(biāo)識(shí)符(組件注冊(cè)后系統(tǒng)分配的唯一標(biāo)識(shí)序列)3.1XLM的簡(jiǎn)單應(yīng)用XML模式支持的用戶(hù)自定義數(shù)據(jù)類(lèi)型:簡(jiǎn)單數(shù)據(jù)類(lèi)型:只包含值(如字符串、數(shù)字等)的數(shù)據(jù)類(lèi)型(如前表中所示);復(fù)雜數(shù)據(jù)類(lèi)型:包含子元素、屬性和混合內(nèi)容的數(shù)據(jù)類(lèi)型;3.1XLM的簡(jiǎn)單應(yīng)用例如,包含簡(jiǎn)單和復(fù)雜數(shù)據(jù)類(lèi)型的一段代碼:<music> <title>春天</title> <publisher>天籟之聲音像公司</publisher> <shop>流行風(fēng)</shop> <pricepricetype="RMB">26.00</price></music>其中,shop元素內(nèi)容是簡(jiǎn)單數(shù)據(jù)類(lèi)型,而price元素的內(nèi)容類(lèi)型為復(fù)雜數(shù)據(jù)類(lèi)型3.1XLM的簡(jiǎn)單應(yīng)用書(shū)籍詳細(xì)資料所需要的元素、屬性及其數(shù)據(jù)類(lèi)型

:

元素/屬性名稱(chēng)描述數(shù)據(jù)類(lèi)型元素BOOKLIBRARY根元素,存儲(chǔ)的所有書(shū)籍?dāng)?shù)據(jù)復(fù)雜數(shù)據(jù)類(lèi)型BOOK表示每一本書(shū)的詳細(xì)資料復(fù)雜數(shù)據(jù)類(lèi)型BOOKNAME表示每一本書(shū)的書(shū)名string,為簡(jiǎn)單類(lèi)型AUTHOR表示每一本書(shū)的作者string,為簡(jiǎn)單類(lèi)型PUBLISHER表示每一本書(shū)的出版社string,為簡(jiǎn)單類(lèi)型PRICE表示每一本書(shū)的價(jià)格float,為簡(jiǎn)單類(lèi)型KEYWORD表示每一本書(shū)的關(guān)鍵定string,為簡(jiǎn)單類(lèi)型PROVIDERID表示每一本書(shū)的供應(yīng)商ID,對(duì)于供應(yīng)商資料是唯一的string,為簡(jiǎn)單類(lèi)型QUANTITY表示每一本書(shū)的庫(kù)存數(shù)量nonNegativeInteger,為簡(jiǎn)單類(lèi)型屬性ISBN表示每一本書(shū)的出版號(hào),對(duì)于每本書(shū)是唯一的string,為簡(jiǎn)單類(lèi)型PLACE表示每一本書(shū)的存放位置,有三個(gè)存放區(qū)string,為簡(jiǎn)單類(lèi)型3.1XLM的簡(jiǎn)單應(yīng)用聲明元素:簡(jiǎn)單元素:聲明語(yǔ)法:<elementname=”元素名”

type=”元素的數(shù)據(jù)類(lèi)型”

[default=”元素的缺省值”]minOccurs=”{0|1}”maxOccurs=”{1|*}”/>簡(jiǎn)單元素:聲明語(yǔ)法:<complexTypename=”數(shù)據(jù)類(lèi)型名”> [內(nèi)容模型定義]</complexType>3.1XLM的簡(jiǎn)單應(yīng)用聲明屬性的語(yǔ)法:

<attributename=”屬性名”

default=”缺省值”

fixed=”固定值”ref=”已存在的屬性名”

type=”數(shù)據(jù)類(lèi)型”

use=”屬性的出現(xiàn)方式”

/>3.1XLM的簡(jiǎn)單應(yīng)用參數(shù)說(shuō)明:name:指定聲明的屬性名default:指定該屬性的缺省值,以保證屬性在任何情況下,都被分配一個(gè)值。該參數(shù)為可選項(xiàng)fixed:指定該屬性的固定值,當(dāng)為屬性定義了一個(gè)固定值,則XML文檔中不可對(duì)該屬性的值改變,該參數(shù)不可與default參數(shù)同時(shí)使用。ref:表示引用一個(gè)已存在的屬性,被引用的屬性可以是同一個(gè)或其它XSD文件中所聲明的屬性,要注意的是不能定義一個(gè)屬性的同時(shí)引用該屬性本身。type:指定屬性的數(shù)據(jù)類(lèi)型,可以是XML模式所預(yù)定義的,也可以是自定義的數(shù)據(jù)類(lèi)型。use:指定屬性在XML文檔是強(qiáng)制還是可選出現(xiàn)。出現(xiàn)的方式:1)required——表明該屬性在XML文檔中必須出現(xiàn),否則XML文檔是一個(gè)無(wú)效的文檔。2)optional——表示該屬性的出現(xiàn)是可選的,optional是use參數(shù)項(xiàng)的缺省值。3.1XLM的簡(jiǎn)單應(yīng)用編寫(xiě)XML文檔,引用XML模式了解XML解析器非確認(rèn)解析器確認(rèn)解析器編寫(xiě)XML文檔3.1XLM的簡(jiǎn)單應(yīng)用單元練習(xí)

酒店管理系統(tǒng)需要對(duì)存儲(chǔ)數(shù)據(jù)的格式統(tǒng)一??蛻?hù)信息包括客房編號(hào)、客房標(biāo)準(zhǔn)編號(hào)、客房狀態(tài)、備注。對(duì)于客戶(hù)信息的約束有:客戶(hù)編號(hào)格式****(*表示數(shù)字)客戶(hù)標(biāo)準(zhǔn)編號(hào)格式R**(*表示數(shù)字)客戶(hù)狀態(tài)有三種:在住、未清潔、已清潔3.2XML模式之間的調(diào)用XML名稱(chēng)空間W3C在1999年1月頒布了名稱(chēng)空間(namespace)標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)對(duì)名稱(chēng)空間的定義:XML名稱(chēng)空間提供一套簡(jiǎn)單的方法,將XML文檔和URI引用標(biāo)識(shí)的名稱(chēng)相結(jié)合,標(biāo)識(shí)一個(gè)虛擬的空間,來(lái)限定其中的元素和屬性。名稱(chēng)空間在使用之前必須先聲明,聲明的語(yǔ)法:

<xmlns:prefix=”RUI”>。元素聲明名稱(chēng)空間的格式:

<elementxmlns:prefix=”URI”>XML模式中聲明名稱(chēng)空間的格式:

<schemaxmlns:prefix=”URI”>3.2XML模式之間的調(diào)用實(shí)例:實(shí)現(xiàn)各分店圖書(shū)信息格式的統(tǒng)一問(wèn)題:

書(shū)店需要定期匯總各分店的銷(xiāo)售數(shù)據(jù),要求各分店使用統(tǒng)一的數(shù)據(jù)存儲(chǔ)格式,將總店指定的信息送到中心數(shù)據(jù)庫(kù)。銷(xiāo)售資料包括銷(xiāo)售ID、書(shū)的ISBN、書(shū)名、書(shū)的價(jià)格、銷(xiāo)售數(shù)量。書(shū)的ISBN格式為“d-ddd-ddddd-d”,其中d表示為數(shù)字。書(shū)店的業(yè)務(wù)流程中,ISBN出現(xiàn)在許多XML文檔中,如書(shū)籍詳細(xì)資料、采購(gòu)詳細(xì)資料、銷(xiāo)售詳細(xì)資料等,應(yīng)使ISBN的定義可重復(fù)使用,以提高代碼的效率。3.2XML模式之間的調(diào)用分析確定所需的元素和屬性確定模式可重用的方法聲明可重用的數(shù)據(jù)類(lèi)型創(chuàng)建XML模式、XML文檔驗(yàn)證XML文檔的有效性3.2XML模式之間的調(diào)用解決確定所需的元素和屬性元素/屬性名稱(chēng)描述元素SELLDETAILXML文檔的根元素SELL表示每個(gè)銷(xiāo)售單的詳細(xì)資料(包括銷(xiāo)售ID、書(shū)的ISBN等)BOOKNAMEPRICE表示每一本書(shū)的價(jià)格QUANTITY表示每一本書(shū)的銷(xiāo)售數(shù)量屬性SELLNO表示銷(xiāo)售序列號(hào),對(duì)于每張銷(xiāo)售單是唯一的ISBN表示每一本書(shū)的出版號(hào),對(duì)于每本書(shū)是唯一的3.2XML模式之間的調(diào)用確定模式可重用的方法通過(guò)XML模式提供的include、import元素來(lái)實(shí)現(xiàn)重用性include元素允許引用同一個(gè)名稱(chēng)空間的外部模式。引用的語(yǔ)法:<includeid=”ID”schemaLocation=”filename”/>3.2XML模式之間的調(diào)用import元素可訪問(wèn)來(lái)自多個(gè)目標(biāo)名稱(chēng)空間的模式組件,引用的語(yǔ)法:

<importid=”ID”namespace=”namespace”

schemaLocation=”filename”/>3.2XML模式之間的調(diào)用聲明可重用的數(shù)據(jù)類(lèi)型 創(chuàng)建XML模式、XML文檔3.2XML模式之間的調(diào)用單元練習(xí)酒店各分店的前臺(tái)每日要提交訂房報(bào)表,總店將各分店的訂房數(shù)據(jù)匯總呈交辦公室,要求各分店必須按總店規(guī)定的數(shù)據(jù)格式及數(shù)據(jù)項(xiàng)制作報(bào)表。訂房信息包括的數(shù)據(jù)項(xiàng)有:訂房編號(hào)、客房編號(hào)、客房備注信息、顧客姓名、顧客身份證號(hào)碼、入住日期、折扣、備注等。訂房編號(hào)、折扣、身份證號(hào)碼在酒店系統(tǒng)的多個(gè)XML文檔中出現(xiàn),應(yīng)將這些數(shù)據(jù)項(xiàng)的定義編寫(xiě)為可重用的模式,避免代碼的重復(fù)編寫(xiě)。3.2XML模式之間的調(diào)用XML模式中的組合元素和屬性機(jī)制用于組合XML元素和屬性的元素sequence:指定XML文檔中元素出現(xiàn)的順序<complexTypename=“數(shù)據(jù)類(lèi)型名”><sequence><elementname=”元素名”

type=”數(shù)據(jù)類(lèi)型”>……</sequence></complexType>3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制all:指定XML文檔中元素可以按任意順序出現(xiàn)<complexTypename=”數(shù)據(jù)類(lèi)型名”><all><elementname=”元素名”

type=”數(shù)據(jù)類(lèi)型”>……</all></complexType>3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制group:將XML文檔中某些元素組合為一組

<groupmaxOccurs=”nonNegetiveInteger|unbounded”

minOccurs=”nonNegetiveInteger”name=”元素組名”

ref=”被引用的元素組名”></group>3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制choice:在指定元素組中選擇某一個(gè)元素呈現(xiàn)在XML文檔

<choiceid=”ID”

maxOccurs=”nonNegetiveInteger|unbounded”

minOccurs=”nonNegetiveInteger”></choice>attributeGroup:對(duì)XML文檔中的屬性進(jìn)行組合<attributeGroupname=”屬性組名”></attributeGroup>3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制實(shí)例:高效實(shí)現(xiàn)圖書(shū)采購(gòu)信息的格式統(tǒng)一問(wèn)題

書(shū)店根據(jù)缺書(shū)登記,定期采購(gòu)所缺書(shū)目,采購(gòu)部門(mén)應(yīng)按照書(shū)店的要求存儲(chǔ)采購(gòu)信息,以保證數(shù)據(jù)格式的一致性。采購(gòu)信息包括:采購(gòu)單號(hào)、書(shū)ISBN、書(shū)名、出版社、供應(yīng)商ID、價(jià)格、數(shù)量、登記日期、采購(gòu)狀態(tài)。ISBN、書(shū)名、出版社是一本書(shū)的基本信息。3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制分析確定XML文檔所需的元素和屬性確定組合元素和屬性的方法,明確需要組合的元素或?qū)傩詣?chuàng)建XML模式創(chuàng)建XML文檔驗(yàn)證XML文檔有效性3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制解決確定XML文檔所需的元素和屬性3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制3.3

應(yīng)用XML模式的組合元素和屬性機(jī)制元素/屬性名稱(chēng)描述元素SELLDETAIL根元素,指明XML文

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論