溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

XML相關(guān)知識(shí)匯總

發(fā)布時(shí)間:2020-07-09 14:05:27 來源:億速云 閱讀:162 作者:Leah 欄目:編程語言

本篇文章給大家分享的是有關(guān)XML相關(guān)知識(shí)匯總,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

                                                           前言

XML越來越熱,關(guān)于XML的基礎(chǔ)教程網(wǎng)絡(luò)上也隨處可見。可是一大堆的概念和術(shù)語往往讓人望而生畏,很多朋友問我:XML到底有什么用,我們是否需要學(xué)習(xí)它?我想就我個(gè)人學(xué)習(xí)過程的心得和經(jīng)驗(yàn),寫一篇比較全面的介紹文章。首先有兩點(diǎn)是需要肯定的:

第一:XML肯定是未來的發(fā)展趨勢,不論是網(wǎng)頁設(shè)計(jì)師還是網(wǎng)絡(luò)程序員,都應(yīng)該及時(shí)學(xué)習(xí)和了解,等待只會(huì)讓你失去機(jī)會(huì);

第二:新知識(shí)肯定會(huì)有很多新概念,嘗試?yán)斫夂徒邮埽趴赡芴岣?。不要害怕和逃避,畢竟我們還年輕。

提綱

本文共分五大部分。分別是XML快速入門,XML的概念,XML的術(shù)語,XML的實(shí)現(xiàn),XML的實(shí)例分析。最后附錄介紹了XML的相關(guān)資源。作者站在普通網(wǎng)頁設(shè)計(jì)人員的角度,用平實(shí)生動(dòng)的語言,向您講述XML的方方面面,幫助你撥開XML的神秘面紗,快速步入XML的新領(lǐng)域。

第一章:XML快速入門

一. 什么是XML?

二. XML是新概念嗎?

三. 使用XML有什么好處?

四. XML很難學(xué)嗎?

五. XML和HTML的區(qū)別

六. XML的嚴(yán)格格式

七. 關(guān)于XML的更多

一. 什么是XML?


這往往是第一個(gè)問題,也往往在第一個(gè)問題上你就會(huì)搞不明白,因?yàn)榇蠖嗟慕滩纳线@樣回答:

XML是Extensible Markup Language的簡寫,一種擴(kuò)展性標(biāo)識(shí)語言。 這是標(biāo)準(zhǔn)的定義。那么什么是標(biāo)志語言,為什么叫擴(kuò)展性?已經(jīng)讓人有些糊涂。我想我們這樣來理解會(huì)好一些:

對HTML你已經(jīng)非常熟悉了吧,它就是一種標(biāo)記語言,記得它的全稱嗎:"Hypertext Markup Language" 超文本標(biāo)記語言。明白了?同時(shí),HTML里面有很多標(biāo)簽,類似,等,都是在HTML
4.0里規(guī)范和定義,而XML里允許你自己創(chuàng)建這樣的標(biāo)簽,所以叫做可擴(kuò)展性。

這里有幾個(gè)容易混淆的概念要提醒大家:

1.XML并不是標(biāo)記語言。它只是用來創(chuàng)造標(biāo)記語言(比如HTML)的元語言。天,又糊涂了!不要緊,你只要知道這一點(diǎn):XML和HTML是不一樣的,它的用處途比HTML廣泛得多,我們將在后面仔細(xì)介紹。

2.XML并不是HTML的替代產(chǎn)品。XML不是HTML的升級(jí),它只是HTML的補(bǔ)充,為HTML擴(kuò)展更多功能。我們?nèi)詫⒃谳^長的一段時(shí)間里繼續(xù)使用HTML。(但值得注意的是HTML的升級(jí)版本XHTML的確正在向適應(yīng)XML靠攏。)

3.不能用XML來直接寫網(wǎng)頁。即便是包含了XML數(shù)據(jù),依然要轉(zhuǎn)換成HTML格式才能在瀏覽器上顯示。

下面就是一段XML示例文檔(例1),用來表示本文的信息:

<myfile><br><br>

<title>XML Quick Start</title><br><br>

<author>ajie</author><br><br>

<email>ajie@aolhoo.com</email><br><br>

<date>20010115</date><br><br>

</myfile>


注意:


1.這段代碼僅僅是代碼,讓你初步感性認(rèn)識(shí)一下XML,并不能實(shí)現(xiàn)什么具體應(yīng)用;

2.其中類似< title>,< author>的語句就是自己創(chuàng)建的標(biāo)記(tags),它們和HTML標(biāo)記不一樣,例如這里的< title>是文章標(biāo)題的意思,HTML里的< title>是頁面標(biāo)題。

二. XML是新概念嗎?

不是。XML來源于SGML,一種比HTML更早的標(biāo)志語言標(biāo)準(zhǔn)。

關(guān)于SGML,我們來簡單了解一下,你只需要有個(gè)大致概念就可以。

SGML全稱是"Standard Generalized Markup Language"(通用標(biāo)識(shí)語言標(biāo)準(zhǔn))。看名稱就知道:它是標(biāo)志語言的標(biāo)準(zhǔn),也就是說所有標(biāo)志語言都是依照SGML制定的,當(dāng)然包括HTML。SGML的覆蓋面很廣,凡是有一定格式的文件都屬于SGML,比如報(bào)告,樂譜等等,HTML是SGML在網(wǎng)絡(luò)上最常見的文件格式。因此,人們戲稱SGML是HTML的"媽媽"。


而XML就是SGML的簡化版,只不過省略了其中復(fù)雜和不常用的部分。(哦,明白了!是HTML第二個(gè)"mother",難怪比HTML功能強(qiáng)大呢。),和SGML一樣,XML也可以應(yīng)用在金融,科研等各個(gè)領(lǐng)域,我們這里講的,只是XML在web方面的運(yùn)用而已。


到這里,你應(yīng)該有點(diǎn)明白了:XML是用來創(chuàng)建定義類似HTML的標(biāo)記語言,然后再用這個(gè)標(biāo)記語言來顯示信息。 三. 使用XML有什么好處?

有了HTML,為什么還需要用XML?

因?yàn)楝F(xiàn)在網(wǎng)絡(luò)應(yīng)用越來越廣泛,僅僅靠HTML單一文件類型來處理千變?nèi)f化的文檔和數(shù)據(jù)已經(jīng)力不叢心,而且HTML本身語法十分不嚴(yán)密,嚴(yán)重影響網(wǎng)絡(luò)信息傳送和共享。(想想瀏覽器兼容的問題傷透多少設(shè)計(jì)師的腦細(xì)胞啊。)人們早已經(jīng)開始探討用什么方法來滿足網(wǎng)絡(luò)上各種應(yīng)用的需要。使用SGML是可以的,但SGML太龐大,編程復(fù)雜,于是最終選擇了"減肥"的SGML---XML作為下一代web運(yùn)用的數(shù)據(jù)傳輸和交互的工具。


使用XML有什么好處?來看w3c組織(XML標(biāo)準(zhǔn)制定者)的說明:

XML使得在網(wǎng)絡(luò)上使用SGML語言更加"簡單和直接": 簡化了定義文件類型的過程,簡化了編程和處理SGML文件的過程,簡化了在Web上的傳送和共享。


1.XML可以廣泛的運(yùn)用于web的任何地方;

2.XML可以滿足網(wǎng)絡(luò)應(yīng)用的需求;

3.使用XML將使編程更加簡單;

4.XML便于學(xué)習(xí)和創(chuàng)建;

5.XML代碼將清晰和便于閱讀理解;

還是抽象了些。讓我們在后面的實(shí)例教程中慢滿體會(huì)XML的強(qiáng)大優(yōu)勢吧!

四. XML很難學(xué)嗎?

如果你有興趣學(xué)習(xí)XML,不禁會(huì)問:XML難嗎?學(xué)習(xí)XML需要什么樣的基礎(chǔ)?

XML非常簡單,學(xué)習(xí)容易。如果你熟悉HTML,你會(huì)發(fā)現(xiàn)它的文檔和HTML非常相似,看同樣的示例文檔(例1):

?xml version="1.0"?><br><br>

<myfile><br><br>

<title>XML Quick Start</title><br><br>

<author>ajie</author><br><br>

<email>ajie@aolhoo.com</email><br><br>

<date>20010115</date><br><br>

</myfile>

第一行是一個(gè)XML聲明,表示文檔遵循的是XML的1.0 版的規(guī)范。

第二行定義了文檔里面的第一個(gè)元素(element),也稱為根元素: < myfile>。這個(gè)就類似HTML里的< HTML>開頭標(biāo)記。注意,這個(gè)名稱是自己隨便定義的。

再下面定義了四個(gè)子元素:title,author,email,和date。分別說明文章的標(biāo)題,作者,郵箱和日期。當(dāng)然,你可以用中文來定義這些標(biāo)簽,看上去更便于理解:
<?xml version="1.0" encoding="GB2312"?>

<文章>

<標(biāo)題>XML輕松學(xué)習(xí)手冊</標(biāo)題>

<作者>ajie</作者>

<信箱>ajie@aolhoo.com</信箱>

<日期>20010115</日期>

</文章>


這就是XML的文檔,任何掌握HTML的網(wǎng)友都可以直接寫出這樣簡單的XML文檔。

另外,學(xué)習(xí)XML還必須掌握一種頁面腳本語言,常見的就是javascript和VB script。因?yàn)閄ML數(shù)據(jù)是使用script實(shí)現(xiàn)HTML中調(diào)用和交互的。我們看一個(gè)最簡單的例子(例2):

1.將下面代碼存為myfile.htm


<html>

<head>

<script language="JavaScript" for="window" event="onload">

var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");

xmlDoc.async="false";

xmlDoc.load("myfile.xml");

nodes = xmlDoc.documentElement.childNodes;

title.innerText = nodesitem(0).text;

author.innerText = nodes.item(1).text;

email.innerText = nodes.item(2).text;

date.innerText = nodes.item(3).text;

</script>

<title>在HTML中調(diào)用XML數(shù)據(jù)</title>

</head>

<body bgcolor="#FFFFFF">

<b>標(biāo)題: </b>

<span id="title"> </span>

<b>作者: </b>>

<span id="author"></span>

<b>信箱: </b>

<span id="email"></span>

<b>日期:</b>

<span id="date"></span>

</body><br><br>

</html><br><br>
2.將下面代碼存為myfile.xml


<?xml version="1.0" encoding="GB2312"?>

<myfile>

<title>XML輕松學(xué)習(xí)手冊</title>

<author>ajie</author>

<email>ajie@aolhoo.com</email>

<date>20010115</date>

</myfile>


3.將它們放在同一個(gè)目錄下,用IE5以上版本瀏覽器打開,可以看到效果。 學(xué)習(xí)并掌握一種script,你將真正了解到XML無比的強(qiáng)大的功能。

五. XML和HTML的區(qū)別


XML和HTML都來自于SGML,它們都含有標(biāo)記,有著相似的語法,HTML和XML的最大區(qū)別在于:HTML是一個(gè)定型的標(biāo)記語言,它用固有的標(biāo)記來描述,顯示網(wǎng)頁內(nèi)容。比如< H1>表示首行標(biāo)題,有固定的尺寸。相對的,XML則沒有固定的標(biāo)記,XML不能描述網(wǎng)頁具體的外觀,內(nèi)容,它只是描述內(nèi)容的數(shù)據(jù)形式和結(jié)構(gòu)。


這是一個(gè)質(zhì)的區(qū)別:網(wǎng)頁將數(shù)據(jù)和顯示混在一起,而XML則將數(shù)據(jù)和顯示分開來。


我們看上面的例子,在myfile.htm中,我們只關(guān)心頁面的顯示方式,我們可以設(shè)計(jì)不同的界面,用不同的方式來排版頁面,但數(shù)據(jù)是儲(chǔ)存在myfile.xml中,不需要任何改變。


(如果你是程序員,你會(huì)驚訝的發(fā)現(xiàn),這與模塊化面向?qū)ο缶幊痰乃枷霕O其相似!其實(shí)網(wǎng)頁何嘗不是一種程序呢?)


正是這種區(qū)別使得XML在網(wǎng)絡(luò)應(yīng)用和信息共享上方便,高效,可擴(kuò)展。所以我們相信,XML做為一種先進(jìn)的數(shù)據(jù)處理方法,將使網(wǎng)絡(luò)跨越到一個(gè)新的境界。


六. XML的嚴(yán)格格式


吸取HTML松散格式帶來的經(jīng)驗(yàn)教訓(xùn),XML一開始就堅(jiān)持實(shí)行"良好的格式"。

我們先看HTML的一些語句,這些語句在HTML中隨處可見:

1.

sample


2.< b>< i>sample< /b>< /i>


3.< td>sample< /TD>


4.< font color=red>samplar< /font>


在XML文檔中,上述幾種語句的語法都是錯(cuò)誤的。因?yàn)?

1.所有的標(biāo)記都必須要有一個(gè)相應(yīng)的結(jié)束標(biāo)記;

2.所有的XML標(biāo)記都必須合理嵌套;

3.所有XML標(biāo)記都區(qū)分大小寫;

4.所有標(biāo)記的屬性必須用""括起來;

所以上列語句在XML中正確的寫法是

1.

sample


2.< b>< i>sample< /i>< /b>


3.< td>sample< /td>


4.< font color="red">samplar< /font>


  另外,XML標(biāo)記必須遵循下面的命名規(guī)則:

1.名字中可以包含字母、數(shù)字以及其它字母;

2.名字不能以數(shù)字或"_" (下劃線) 開頭;

3.名字不能以字母 xml (或 XML 或 Xml ..) 開頭;

4.名字中不能包含空格。

在XML文檔中任何的差錯(cuò),都會(huì)得到同一個(gè)結(jié)果:網(wǎng)頁不能被顯示。各瀏覽器開發(fā)商已經(jīng)達(dá)成協(xié)議,對XML實(shí)行嚴(yán)格而挑剔的解析,任何細(xì)小的錯(cuò)誤都會(huì)被報(bào)告。你可以將上面的myfile.xml修改一下,比如將< email>改為< Email>,然后用IE5直接打開myfile.xml,會(huì)得到一個(gè)出錯(cuò)信息頁面:


<?xml version="1.0" encoding="GB2312"?>

<myfile>

<title>XML輕松學(xué)習(xí)手冊</title>

<author>ajie</author>

<Email>ajie@aolhoo.com</email>

<date>20010115</date>

</myfile>

七. 關(guān)于XML的更多  

好了,到現(xiàn)在你已經(jīng)知道:  

1.什么是XML;  

2.XML,HTML,SGML之間的關(guān)系和區(qū)別;  

3.XML的簡單應(yīng)用。

以上就是XML相關(guān)知識(shí)匯總,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI