XML程序設(shè)計(jì)第2章_第1頁(yè)
XML程序設(shè)計(jì)第2章_第2頁(yè)
XML程序設(shè)計(jì)第2章_第3頁(yè)
XML程序設(shè)計(jì)第2章_第4頁(yè)
XML程序設(shè)計(jì)第2章_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《XML程序設(shè)計(jì)》第2章配合<XML程序設(shè)計(jì)>例子源代碼一起使用Powerpoint制作:耿祥義張躍平規(guī)范的XML文件

2009-10-201第2章導(dǎo)讀本章主要內(nèi)容規(guī)范性XML聲明標(biāo)記CDATA段標(biāo)記的文本數(shù)據(jù)屬性名稱空間難點(diǎn)名稱空間2009-10-202第2章規(guī)范的XML文件

§2.1規(guī)范性_1

一個(gè)規(guī)范的必須滿足W3C所指定的標(biāo)準(zhǔn)。一個(gè)規(guī)范的XML文件應(yīng)當(dāng)滿足如下語(yǔ)法規(guī)則:★XML文件用“XML聲明”開(kāi)始★XML文件有且僅有一個(gè)根標(biāo)記★XML文件的非根標(biāo)記都必須封裝在根標(biāo)記中★非空標(biāo)記必須由“開(kāi)始標(biāo)記”與“結(jié)束標(biāo)記”組成★空標(biāo)記沒(méi)有“開(kāi)始標(biāo)記”和“結(jié)束標(biāo)記”★XML文件的標(biāo)記必須是樹(shù)型結(jié)構(gòu)2009-10-203§2.1規(guī)范性_2

2009-10-204§2.2XML聲明

XML聲明以

“<?xml”

標(biāo)識(shí)開(kāi)始、

以“?>”

標(biāo)識(shí)結(jié)束。以下是一個(gè)最基本的XML聲明:<?xmlversion=“1.0”?>

version屬性指出該XML文件使用的XML版本,目前該屬性的只可以值可以取1.0.encoding屬性規(guī)定XML文件采用哪種字符集進(jìn)行編碼,該屬性的默認(rèn)值是“UTF-8”.注:

encoding屬性值不同,XML文件保存時(shí)的編碼要與之對(duì)應(yīng)。standalone屬性說(shuō)明XML文件是否是完全自包含的,該屬性的默認(rèn)值是“no”.例題2.1p152009-10-205§2.3.1空標(biāo)記

§2.3標(biāo)記1.語(yǔ)法格式:所謂空標(biāo)記就是不含有任何內(nèi)容的標(biāo)記。由于空標(biāo)記不含有任何內(nèi)容,所以空標(biāo)記不需要開(kāi)始標(biāo)簽和結(jié)束標(biāo)簽,空標(biāo)記以“<”標(biāo)識(shí)開(kāi)始,用“/>”標(biāo)識(shí)結(jié)束,根據(jù)空標(biāo)記是否含有屬性,空標(biāo)記的語(yǔ)法格式分別為:<空標(biāo)記的名稱屬性列表/>

<空標(biāo)記的名稱/>

2.作用:空標(biāo)記的名稱主要用于抽象帶有屬性的數(shù)據(jù),該數(shù)據(jù)本身并不需要用具體文本進(jìn)行描述.

2009-10-206§2.3.2非空標(biāo)記1.語(yǔ)法格式

非空標(biāo)記必須由“開(kāi)始標(biāo)簽”與“結(jié)束標(biāo)簽”組成,“開(kāi)始標(biāo)簽”與“結(jié)束標(biāo)簽”之間是該標(biāo)記所標(biāo)記的內(nèi)容。

<標(biāo)記的名稱屬性列表>

或<標(biāo)記名稱>2.非空標(biāo)記的內(nèi)容

一個(gè)標(biāo)記所包含的內(nèi)容可以有兩部分構(gòu)成:文本數(shù)據(jù)和標(biāo)記,其中的標(biāo)記稱做該標(biāo)記的子標(biāo)記。

3.作用:

非空標(biāo)記包含的內(nèi)容中既可以有文本數(shù)據(jù)也可以有子標(biāo)記,當(dāng)需要用“整體-部分”關(guān)系來(lái)描述數(shù)據(jù)時(shí),就可以使用非空標(biāo)記

2009-10-207§2.3.3標(biāo)記的名稱

標(biāo)記的名稱要滿足的規(guī)則是:名稱可以由字母、數(shù)字、下劃線(“_”)、點(diǎn)(“.”)或連字符(“-”)組成,但必須以字母或下劃線開(kāi)頭。

標(biāo)記名稱區(qū)分大小寫(xiě)。

2009-10-208§2.3.4根標(biāo)記XML文件必須有且僅有一個(gè)根標(biāo)記,其它標(biāo)記都必須封裝在根標(biāo)記中。XML文件的標(biāo)記必須形成樹(shù)型結(jié)構(gòu)。

<root><姓名>張三

<出生日期></姓名>1998年12月28日</出生日期></root>2009-10-209§2.4特殊字符

XML有5種字符屬于特殊字符,左尖括號(hào):“<”、右尖括號(hào):“>”、與符號(hào)“&”

、單引號(hào)“‘”和雙引號(hào)“””。在文本數(shù)據(jù)中通過(guò)實(shí)體引用使用這些特殊字符。

<引用左尖括號(hào):“<”>引用右尖括號(hào)“>”'引用單引號(hào)“'”"引用雙引號(hào)“"”&引用與符號(hào)“&”2009-10-2010§2.5CDATA段CDATA段用“<![CDATA[”做為段的開(kāi)始,用“]]>”作為段的結(jié)束,段開(kāi)始和段結(jié)束之間稱為CDATA段的內(nèi)容,解析器不對(duì)CDATA段的內(nèi)容做分析處理。CDATA段中的內(nèi)容可以包含任意的字符。但是,W3C規(guī)定,CDATA段中不可以嵌套另一個(gè)CDATA段。<![CDATA[booleanboo=true&&false<你好>]]>

2009-10-2011§2.6標(biāo)記的文本數(shù)據(jù)

一個(gè)標(biāo)記的內(nèi)容可以有兩部分構(gòu)成:文本數(shù)據(jù)部分和子標(biāo)記部分。一個(gè)標(biāo)記的文本數(shù)據(jù)中可以有普通字符、CDATA段、和實(shí)體引用。

例題2.2p212009-10-2012§2.7.1屬性的構(gòu)成§2.7屬性屬性是一個(gè)“名-值”對(duì),即屬性必須由名字和值組成。屬性必須在非空標(biāo)記的開(kāi)始標(biāo)簽或空標(biāo)記中聲明,用“=”為屬性指定一個(gè)值。語(yǔ)法如下<標(biāo)記名稱

屬性列表>…</標(biāo)記名稱><標(biāo)記名稱

屬性列表/>例如:<桌子width="300"height="600"length="1000">辦公專用桌</桌子><cloudcolor="white"/>

2009-10-2013§2.7.2使用屬性的原則

屬性不體現(xiàn)數(shù)據(jù)的結(jié)構(gòu),只是數(shù)據(jù)的附加信息。一個(gè)基本的原則:不要因?yàn)閷傩缘念l繁使用破壞XML的數(shù)據(jù)結(jié)構(gòu)。例題2.3p222009-10-2014§2.8注釋

XML文件的注釋和HTML文件相同,注釋以“<!--

”開(kāi)始,以“-->”結(jié)束,XML解析器將忽略注釋的內(nèi)容,不對(duì)它們實(shí)施解析處理。例:<?xmlversion="1.0"encoding="UTF-8"?><!--簡(jiǎn)單的XML文件--><root><speak>你好</speak></root>2009-10-2015§2.9名稱空間

名稱空間的目的是有效的區(qū)分名字相同的標(biāo)記,當(dāng)兩個(gè)標(biāo)記的名字相同時(shí),它們可以通過(guò)隸屬不同的名稱空間來(lái)相互區(qū)分。

例題2.4p232009-10-2016§2.9.1有前綴和無(wú)前綴的名稱空間

名稱空間通過(guò)使用聲明名稱空間來(lái)建立,分為有前綴名稱空間和無(wú)前綴名稱空間.有前綴的名稱空間的語(yǔ)法如下:xmlns:前綴=名稱空間的名字

例如:

xmlns:person="China.dalian"

無(wú)前綴的名稱空間聲明語(yǔ)法如下:

xmlns=名稱空間的名字例如:

xmlns=2009-10-2017§2.9.2標(biāo)記中聲明名稱空間

名稱空間的聲明必須在標(biāo)記的“開(kāi)始標(biāo)記”里面,而且名稱空間的聲明必須放在開(kāi)始標(biāo)記中標(biāo)記名字的后面,例如:

<張三xmlns:p1="liaoning">1986年出生。</張三>2009-10-2018§2.9.3名稱空間的作用域

※一個(gè)標(biāo)記如果使用了名稱空間聲明,那么該名稱空間的作用域是該標(biāo)記及其所有的子孫標(biāo)記。

※如果一個(gè)標(biāo)記中聲明的是有前綴的名稱空間,那么該標(biāo)記及其子孫標(biāo)記如果準(zhǔn)備隸屬該名稱空間,必須通過(guò)名稱空間的前綴引用這個(gè)名稱空間,使得該標(biāo)記隸屬于這個(gè)名稱空間.

※如果一個(gè)標(biāo)記中聲明的是無(wú)前綴的名稱空間,那么該標(biāo)記及其子孫標(biāo)記都默認(rèn)地隸屬于這個(gè)名稱空間?!M管子標(biāo)記可以通過(guò)名稱空間的前綴來(lái)引用父標(biāo)記聲明名稱空間表明自己隸書(shū)該名稱空間,但子標(biāo)記也可以重新聲明名稱空間。例題2.5例題2.6p25例題2.7p262009-10-2019§2.9.4名稱空間的名字

名稱空間的目的是有效的區(qū)分名字相同的標(biāo)記,那么就有涉及到怎樣區(qū)分名稱空間的名字。

W3C推薦使用統(tǒng)一資源標(biāo)識(shí)符URI(UniformResourceIdentifier)作為名稱空間的名字。在實(shí)踐中,大多數(shù)URI實(shí)際上就用統(tǒng)一資源定位符URL(UniformResource

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論