




版權(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 家校共建合同:學(xué)院與家長權(quán)益保障
- 國家機(jī)關(guān)勞動(dòng)合同樣本合同
- 工廠保安用工合同
- 消防課程安全課件
- 智能儀器儀表智能醫(yī)療應(yīng)用考核試卷
- 成人高考地理知識要點(diǎn)專項(xiàng)訓(xùn)練考核試卷
- 斯洛文尼亞網(wǎng)絡(luò)廣告競爭格局洞察考核試卷
- 文化用品租賃業(yè)務(wù)項(xiàng)目管理考核試卷
- 機(jī)場航站樓空氣質(zhì)量控制考核試卷
- 2024信息物理融合智能系統(tǒng)實(shí)施流程
- DB11T 2033-2022 餐廚垃圾源頭減量操作要求
- 1.2 歌曲 《春天來了》 課件(11張)
- 【人教版】pep六年級英語下全冊教案(表格版)
- 護(hù)理培訓(xùn)師競聘
- 北師大版小學(xué)數(shù)學(xué)五年級下冊同步課時(shí)練習(xí)試題含答案(全冊)
- 4《我們的公共生活》第一課時(shí) 教學(xué)設(shè)計(jì)-2023-2024學(xué)年道德與法治五年級下冊統(tǒng)編版
- 2024年放射工作人員放射防護(hù)培訓(xùn)考試題及答案
- SH∕T 3097-2017 石油化工靜電接地設(shè)計(jì)規(guī)范
- 高中英語真題-高考英語語法填空專練(6)及答案
- 倉儲(chǔ)物流中心物業(yè)管理服務(wù)費(fèi)報(bào)價(jià)單
- 室內(nèi)給水管道安裝安全技術(shù)交底
評論
0/150
提交評論