《XML基礎(chǔ)知識》課件_第1頁
《XML基礎(chǔ)知識》課件_第2頁
《XML基礎(chǔ)知識》課件_第3頁
《XML基礎(chǔ)知識》課件_第4頁
《XML基礎(chǔ)知識》課件_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

XML基礎(chǔ)知識

可擴(kuò)展標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言的子集,簡稱XML。是一種用于標(biāo)記

電子文件使其具有結(jié)構(gòu)性的標(biāo)記語言。

在電子計(jì)算機(jī)中,標(biāo)記指計(jì)算機(jī)所能理解的信息符號,通過此種標(biāo)記,計(jì)篁

機(jī)之間可以處理包含各種的信息比如文章等。它可以用來標(biāo)記數(shù)據(jù)、定義數(shù)據(jù)類

型,是一種允許用戶對自己的標(biāo)記語言進(jìn)行定義的源語言。它非常適合萬維網(wǎng)

傳輸,提供統(tǒng)一的方法來描述和交換獨(dú)立于應(yīng)用程序或供應(yīng)商的結(jié)構(gòu)化數(shù)據(jù)。是

Internet環(huán)境中跨平臺(tái)的、依賴于內(nèi)容的技術(shù),也是當(dāng)今處理分布式結(jié)構(gòu)信息的

有效工具。早在1998年,W3C就發(fā)布了XML1.0規(guī)范,使用它來簡化Internet

的文檔信息傳輸。

1.簡介

可擴(kuò)展標(biāo)記語言與Access,Oracle和SQLServer等數(shù)據(jù)庫不同,數(shù)據(jù)庫

提供了更強(qiáng)有力的數(shù)據(jù)存儲(chǔ)和分析能力,例如:數(shù)據(jù)索引、排序、查找、相關(guān)一

致性等,可擴(kuò)展標(biāo)記語言僅僅是存儲(chǔ)數(shù)據(jù)。事實(shí)上它與其他數(shù)據(jù)表現(xiàn)形式最大的

不同是:可擴(kuò)展標(biāo)記語言極其簡單,這是一個(gè)看上去有點(diǎn)瑣細(xì)的優(yōu)點(diǎn),但正是這

點(diǎn)使它與眾不同。

XML的簡單易于在任何應(yīng)用程序中讀/寫數(shù)據(jù),這使XML很快成為數(shù)據(jù)交

換的唯一公共語言,雖然K同的應(yīng)用軟件也支持其他的數(shù)據(jù)交換格式,但不久之

后它們都將支持XML,那就意味著程序可以更容易的與Windows.MacOS、

Linux以及其他平臺(tái)下產(chǎn)生的信息結(jié)合,然后可以很容易加載XML數(shù)據(jù)到程序

中并分析它,并以XML格式輸出結(jié)果。

2.發(fā)展歷史

XML有兩個(gè)先3區(qū):SGML和HTML這兩個(gè)語言都是非常成功的標(biāo)記語言,

但是都有一些與生俱來的缺陷。XML正是為了解決它們的不足而誕生的。

2.1.SGML

早在Web未發(fā)明之前,SGML(StandardGeneralizedMarkupLanguage,

標(biāo)準(zhǔn)通用標(biāo)記語言)就已存在,正如它的名稱所言,SGML是國際上定義電子文

件結(jié)構(gòu)和內(nèi)容描述的標(biāo)準(zhǔn)。SGML具有非常復(fù)雜的文愧構(gòu),主要用于大量高度

結(jié)構(gòu)化數(shù)據(jù)的訪問和其他各種工業(yè)領(lǐng)域,在分類和索弓數(shù)據(jù)中非常有用。

雖然SGML的功能很強(qiáng)大,但是它不適用于Web數(shù)據(jù)描述,而且SGML

軟件的價(jià)格非常昂貴;另外,SGML十分龐大,既不容易學(xué),又不容易使用,在

計(jì)算機(jī)上實(shí)現(xiàn)也十分困難:不僅如此,幾個(gè)主要的瀏覽器廠商都明確拒絕支持

SGML,這無疑是SGML在網(wǎng)上傳播遇到的最大障礙。鑒于這些因素,Web的

發(fā)明者——?dú)W洲核子物理講究中心的研究人員,根據(jù)當(dāng)時(shí)(1989年)的計(jì)算機(jī)

技術(shù),發(fā)明并推出了

HTML0

2.2.HTML

1989年,HTML誕生,它拋棄了SGML復(fù)雜龐大的缺點(diǎn),繼承了SGML

的很多優(yōu)點(diǎn)。HTML最大的特點(diǎn)是簡單性和跨平臺(tái)性。[4]

HTML是一種界面技術(shù),它只使用了SGML中很少的一部分標(biāo)記,例如

HTML4.0中只定義了70余種標(biāo)記。為了便于在計(jì)算機(jī)上實(shí)現(xiàn),HTML規(guī)定的

標(biāo)記是固定的,即HTML語法是不可擴(kuò)展的。HTML這種固定的語法使它易學(xué)

易用在計(jì)算機(jī)上開發(fā)HTML的瀏覽器也十分容易。正是由于HTML的簡單性,

使得基于HTML的Web應(yīng)用得到了極大的發(fā)展。

2.3.XML的產(chǎn)生

隨著Web應(yīng)用的不斷發(fā)展,HTML的局限性也越來越明顯地顯現(xiàn)了出來,

如HTML無法描述數(shù)據(jù)、可讀性差、搜索時(shí)間長等。人們又把目光轉(zhuǎn)向SGML,

再次改造SGML使之適應(yīng)現(xiàn)在的網(wǎng)絡(luò)需求。隨著先輩的努力,1998年2月10

日,W3C(WorldWideWebConsortium,萬維網(wǎng)聯(lián)盟)公布XML1.0標(biāo)準(zhǔn),

XML誕生了。

XML最初的設(shè)計(jì)目的是為了EDI(日ectronicDataInterchange,電子數(shù)據(jù)

交換),確切地說是為EDI提供一個(gè)標(biāo)準(zhǔn)數(shù)據(jù)格式。[4]

當(dāng)前的一些網(wǎng)站內(nèi)容建設(shè)者們已經(jīng)開始開發(fā)各種各樣的XML擴(kuò)展,比如數(shù)

學(xué)標(biāo)記語言MathML、化學(xué)標(biāo)記語言CML等。此外,一些著名的IT公司,如

Oracle.IBM以及微軟等都積極地投入人力與財(cái)力研發(fā)XML相關(guān)軟件與服務(wù)支

持,這無疑確定了XML在IT產(chǎn)業(yè)的重要地位。

3.特征

XML具有以下特點(diǎn):

(1)XML可以從HTML中分離數(shù)據(jù)。即能夠在HTML文件之外將數(shù)據(jù)存儲(chǔ)

在XML文檔中這樣可以使開發(fā)者集中精力使用HTML做好數(shù)據(jù)的顯示和布局,

并確保數(shù)據(jù)改動(dòng)時(shí)不會(huì)導(dǎo)致HTML文件也需要改動(dòng),從而方便維護(hù)頁面。XML

也能夠?qū)?shù)據(jù)以"數(shù)據(jù)島”的形式存儲(chǔ)在HTML頁面中,開發(fā)者依然可以把精

力集中到使用HTML格式化和顯示數(shù)據(jù)上。

(2)XML可用于交換數(shù)據(jù)?;赬ML可以在不兼容的系統(tǒng)之間交換數(shù)據(jù),

計(jì)算機(jī)系統(tǒng)和數(shù)據(jù)庫系統(tǒng)所存儲(chǔ)的數(shù)據(jù)有多種形式,對于開發(fā)者來說,最耗時(shí)間

的工作就是在遍布網(wǎng)絡(luò)的系統(tǒng)之間交換數(shù)據(jù).把數(shù)據(jù)轉(zhuǎn)換為XML格式存儲(chǔ)將大

大減少交換數(shù)據(jù)時(shí)的復(fù)雜性,還可以使這些數(shù)據(jù)能被不同的程序讀取。

(3)XML可應(yīng)用于B2B中。例如在網(wǎng)絡(luò)中交換金融信息,目前XML正成

為遍布網(wǎng)絡(luò)的商業(yè)系統(tǒng)之間交換信息所使用的主要語言,許多與B2B有關(guān)的完

全基于XML的應(yīng)用程序正在開發(fā)中。

(4)利用XML可以共享數(shù)據(jù)。XML數(shù)據(jù)以純文本格式存儲(chǔ),這使得XML更

易讀、更便于記錄、更便不調(diào)試,使不同系統(tǒng)、不同程序之間的數(shù)據(jù)共享變得更

加簡單。

(5)XML可以充分利用數(shù)據(jù)。XML是與軟件、硬件和應(yīng)用程序無關(guān)的,數(shù)

據(jù)可以被更多的用戶、設(shè)備所利用,而不僅僅限于基于HTML標(biāo)準(zhǔn)的瀏覽器。

其他客戶端和應(yīng)用程序可以把XML文檔作為數(shù)據(jù)源來處理,就像操作數(shù)據(jù)庫一

樣,XML的數(shù)據(jù)可以被各種各樣的“閱讀器"處理。

(6)XML可以用于創(chuàng)建新的語言。比如,WAP和WML語言都是由XML

發(fā)展來的。WML(WirelessMarkupLanguage,無線標(biāo)記語言)是用于標(biāo)識運(yùn)

行于手持設(shè)備上(比如手機(jī)泊勺Internet程序的工具,它就采用了XML的標(biāo)準(zhǔn)。

總之,XML使用一個(gè)簡單而又靈活的標(biāo)準(zhǔn)格式,為基于Web的應(yīng)用提供了

一個(gè)描述數(shù)據(jù)和交換數(shù)據(jù)的有效手段。但是,XML并非是用來取代HTML的。

HTML著重如何描述將文件顯示在瀏覽器中,而XML與SGML相近,它著重描

述如何將數(shù)據(jù)以結(jié)構(gòu)化方式表示。

4.格式

XML文件格式是純文本格式,在許多方面類似于HTML,XML由XML元

素組成,每個(gè)XML元素包括一個(gè)開始標(biāo)記(),一個(gè)結(jié)束標(biāo)記()以及兩個(gè)標(biāo)

記之間的內(nèi)容,例如,可以將XML元素標(biāo)記為價(jià)格、訂單編號或名稱。標(biāo)記是

對文檔存儲(chǔ)格式和邏輯結(jié)構(gòu)的描述。在形式上,標(biāo)i己中可能包括注釋、引用、字

符數(shù)據(jù)段、起始標(biāo)記、結(jié)束標(biāo)記、空元素、文檔類型聲明(DTD)和序言。[5]

具體規(guī)則如下:

1、必須有聲明語句。

XML聲明是XML文檔的第一句,其格式如下:

<?xmlversion="1.0"encoding="utf-8"?>

2、注意大小寫

在XML文檔中,大小寫是有區(qū)別的。"A"和是不同的標(biāo)記。注意在

寫元素時(shí),前后標(biāo)記的大小寫要保持一致。最好養(yǎng)成一種習(xí)慣,或者全部大寫,

或者全部小寫,或者大寫第一個(gè)字母,這樣可以減少因?yàn)榇笮懖黄ヅ涠a(chǎn)生的

文檔錯(cuò)誤。

3、XML文檔有且只有一個(gè)根元素

良好格式的XML文檔必須有一個(gè)根元素,就是緊接著聲明后面建立的第一

個(gè)元素,其他元素都是這個(gè)根元素的子元素,根元素完全包括文檔中其他所有的

元素。根元素的起始標(biāo)記要放在所有其他元素的起始標(biāo)記之前;根元素的結(jié)束標(biāo)

記要放在所有其他元素的結(jié)束標(biāo)記之后。

4、屬性值使用引號

在HTML代碼里面,屬性值可以加引號,也可以不加。但是XML規(guī)定,所

有屬性值必須加引號(可以是單引號,也可以是雙引號,建議使用雙引號),否

則將被視為錯(cuò)誤。

5、所有的標(biāo)記必須有相應(yīng)的結(jié)束標(biāo)記

在HTML中標(biāo)記可以不成對出現(xiàn)而在XML中所有標(biāo)記必須成對出現(xiàn),

有一個(gè)開始標(biāo)記,就必須有一個(gè)結(jié)束標(biāo)記,否則將被視為錯(cuò)誤。

6、所有的空標(biāo)記也必須被關(guān)閉

空標(biāo)記是指標(biāo)記對之間沒有內(nèi)容的標(biāo)記,比如""等標(biāo)記。在XML中,規(guī)

定所有的標(biāo)記必須有結(jié)束標(biāo)記。

示例:

<?xmlversion="1.0"encoding="utf-8"?>

i

(manifestxmlns:android="http:〃schemas.andro

2

/apk/res/android”

3

package="osg.AndroidExample"

4android:installLocation="preferExternal

II

5

6android:versionCode="l"

7android:versionName="1.0">

8<uses-sdkandroid:targetSdkVersion="8"

android:minSdkVersion=n8"></uses-sdk>

9

<uses-featureandroid:glEsVersion="OxO

10

0020000"/><!—OpenGLminrequierements(2

11.0)->

12

<uses-permissionandroid:name="andro

13id.permission.INTERNET7>

14

15opplicationandroid:label="@string/ap

n

16p_name"android:icon=@drawable/osg">

17<activityandroid:name=".osgViewer"

n

18android:label=@string/app_na

me"android:screenOrientation="landscape'^<

19

!—Forcescreentolandscape—>

20

<intent-filter>

2i<actionandroid:name="android.i

ntent.action.MAIN"/>

<categoryandroid:name="androi

ent.category.LAUNCHER"/>

</intent-filter>

</activity>

</application>

</manifest>

5.與HTML區(qū)別

(1)可擴(kuò)展性方面:HTML不允許用戶自行定義他們自己的標(biāo)識或?qū)傩?而

在XML中,用戶能夠根據(jù)需要自行定義新的標(biāo)識及屬性名,以便審好地從語義

上修飾數(shù)據(jù)。

(2)結(jié)構(gòu)性方面:HTML不支持深層的結(jié)構(gòu)描述,XML的文件結(jié)構(gòu)嵌套可以

復(fù)雜到任意程度,能表示面向?qū)ο蟮牡燃墝哟?。?/p>

(3)可校驗(yàn)性方面:HTML沒有提供規(guī)范文件以支持應(yīng)用軟件對HTML文件

進(jìn)行結(jié)構(gòu)校驗(yàn),而XML文件可以包括一個(gè)語法描述,使應(yīng)用程序可以對此文件

進(jìn)行結(jié)構(gòu)校驗(yàn)。

6.標(biāo)準(zhǔn)體系

雖然XML標(biāo)準(zhǔn)本身簡單,但與XML相關(guān)的標(biāo)準(zhǔn)卻種類繁多,W3C制定的

相關(guān)標(biāo)準(zhǔn)就有二十多個(gè),采用XML制定的重要的電子商務(wù)標(biāo)準(zhǔn)就有十多個(gè)。這

一方面說明XML確實(shí)是一種非常實(shí)用的結(jié)構(gòu)化通用標(biāo)記語言,并且已經(jīng)得到廣

泛應(yīng)用另一方面,這又為了解這些標(biāo)準(zhǔn)帶來一定的困難,除了標(biāo)準(zhǔn)種類繁多外,

標(biāo)準(zhǔn)之間通常還互相引用,特別是應(yīng)用標(biāo)準(zhǔn),它們的制定不僅僅使用的是XML

標(biāo)準(zhǔn)本身,還常常用到了其他很多標(biāo)準(zhǔn)。XM

溫馨提示

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

評論

0/150

提交評論