您好,登錄后才能下訂單哦!
小編給大家分享一下XML入門詳解,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧。
可擴(kuò)展標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言的子集,是一種用于標(biāo)記電子文件使其具有結(jié)構(gòu)性的標(biāo)記語言。在電子計算機(jī)中,標(biāo)記指計算機(jī)所能理解的信息符號,通過此種標(biāo)記,計算機(jī)之間可以處理包含各種的信息比如文章等。它可以用來標(biāo)記數(shù)據(jù)、定義數(shù)據(jù)類型,是一種允許用戶對自己的標(biāo)記語言進(jìn)行定義的源語言。它非常適合萬維網(wǎng)傳輸,提供統(tǒng)一的方法來描述和交換獨立于應(yīng)用程序或供應(yīng)商的結(jié)構(gòu)化數(shù)據(jù)。是Internet環(huán)境中跨平臺的、依賴于內(nèi)容的技術(shù),也是當(dāng)今處理分布式結(jié)構(gòu)信息的有效工具。早在1998年,W3C就發(fā)布了XML1.0規(guī)范,使用它來簡化Internet的文檔信息傳輸。
1969年,GML(Generalized Markup Language通用標(biāo)記語言)---->1985年,SGML(Standard Generalized Markup Language標(biāo)準(zhǔn)通用標(biāo)記語言)--->1993年,HTML(Hypertext Markup Language超文本標(biāo)記語言)--->1998年,XML(Extensible Markup Language可擴(kuò)展標(biāo)記語言)
1、可擴(kuò)展標(biāo)記語言是一種很像超文本標(biāo)記語言的標(biāo)記語言。
2、它的設(shè)計宗旨是傳輸數(shù)據(jù),而不是顯示數(shù)據(jù)。
3、它的標(biāo)簽沒有被預(yù)定義。您需要自行定義標(biāo)簽。
4、它被設(shè)計為具有自我描述性。
5、它是W3C的推薦標(biāo)準(zhǔn)。
1、它不是超文本標(biāo)記語言的替代。
2、它是對超文本標(biāo)記語言的補充。
3、它和超文本標(biāo)記語言為不同的目的而設(shè)計:
4、它被設(shè)計用來傳輸和存儲數(shù)據(jù),其焦點是數(shù)據(jù)的內(nèi)容。
5、超文本標(biāo)記語言被設(shè)計用來顯示數(shù)據(jù),其焦點是數(shù)據(jù)的外觀。
6、超文本標(biāo)記語言旨在顯示信息,而它旨在傳輸信息。
7、對它最好的描述是:它是獨立于軟件和硬件的信息傳輸工具。
1、解決了數(shù)據(jù)傳輸不規(guī)范的問題。
2、可以非常好的描述樹形結(jié)構(gòu)的事物。
3、可以用作配置文件。
PS:現(xiàn)如今很多很多語言,很多技術(shù)都在用XML作為數(shù)據(jù)傳遞的標(biāo)準(zhǔn),所以深刻的理解XML,就相當(dāng)于掌握了一門通用的數(shù)據(jù)傳輸協(xié)議。
案例:
<?xml version="1.0" encoding="UTF-8"?> <class> <stu id="a001"> <name>張三</name> <sex>男</sex> <age>20</age> </stu> <stu id="a002"> <name>李四</name> <sex>女</sex> <age>18</age> </stu> </class>
一個XML文件可分為如下幾部分內(nèi)容:
文檔聲明 、元素、屬性、注釋 、CDATA區(qū) ,特殊字符 、處理指令(processing instruction)
基本語法:
<?xml version="1.0" encoding="UTF-8"?> <!-- 上面是文檔聲明 - -> <?xml-stylesheet type="text/css" href=”XML2.css”?> <!-- 上面是處理指令 - -> <根元素> <!-- 注釋 - -> <![CDATA[ CDATA區(qū),可以是任意字符 ]]> <元素 屬性=”屬性值”> <元素>元素內(nèi)容</元素> <空元素/>> </元素> </class>
<?xml version="1.0" encoding=“編碼方式" standalone="yes|no"?>
XML聲明放在XML文檔的第一行
XML聲明由以下幾個部分組成:
version - -文檔符合XML1.0規(guī)范
encoding - -文檔字符編碼,比如”utf-8”
standalone - -文檔定義是否獨立使用
standalone="yes“
standalone=“no” 默認(rèn)
PS:雖說現(xiàn)在XML出了2.0版了,但是現(xiàn)在大多還是用1.0版。
基本語法:
<元素>元素內(nèi)容</元素> <元素/>
注意事項:
1、每個XML文檔必須有且只有一個根元素。
2、根元素是一個完全包括文檔中其他所有元素的元素。
3、根元素的起始標(biāo)記要放在所有其他元素的起始標(biāo)記之前。
4、根元素的結(jié)束標(biāo)記要放在所有其他元素的結(jié)束標(biāo)記之后。
5、XML元素指XML文件中出現(xiàn)的標(biāo)簽,一個標(biāo)簽分為開始標(biāo)簽和結(jié)束標(biāo)簽,一個標(biāo)簽有如下幾種書寫形式,例如:
包含標(biāo)簽體:<a>123</a>
不含標(biāo)簽體的:<a></a>, 簡寫為:<a/>
6、一個標(biāo)簽中也可以嵌套若干子標(biāo)簽。但所有標(biāo)簽必須合理的嵌套,絕對不允許交叉嵌套 ,例如:
<a>hello <b>world</a></b>
7、對于XML標(biāo)簽中出現(xiàn)的所有空格和換行,XML解析程序都會當(dāng)作標(biāo)簽內(nèi)容進(jìn)行處理。
例如:
<a>123</a>和<a> 123 </a>意義是完全不同的。
8、一個XML元素可以包含字母、數(shù)字以及其它一些可見字符,但必須遵守下面的一些規(guī)范:
1---區(qū)分大小寫,例如,<P>和<p>是兩個不同的標(biāo)記。
2---不能以數(shù)字或"_" (下劃線)開頭。
3---不能包含空格。
4---名稱中間不能包含冒號(:)。
9、元素、標(biāo)簽、節(jié)點意義都是一樣的。
基本語法
<元素 屬性1=”屬性值” 屬性2=”屬性值”>元素內(nèi)容</元素>
注意事項:
1、屬性值用雙引號(")或單引號(')分隔(如果屬性值中有',用"分隔;有",用'分隔)
2、一個元素可以有多個屬性,它的基本格式為:
3、屬性名稱在同一個元素標(biāo)記中只能出現(xiàn)一次
4、屬性值不能包括<, >, &之類的特殊字符,否則需要使用轉(zhuǎn)義字符。
這個和HTML一樣,都是<!-- 注釋 - ->,同樣也不能注釋嵌套,不能放在元素名中間。
有些內(nèi)容可能不想讓解析引擎解析執(zhí)行,而是當(dāng)作原始內(nèi)容處理,用于把整段文本解釋為純字符數(shù)據(jù)而不是標(biāo)記的情況。包含大量<、>、&或者"字符。CDATA區(qū)中的所有字符都會被當(dāng)作元素字符數(shù)據(jù)的常量部分,而不是XML標(biāo)記。
PS:CDATA區(qū)可以用于傳遞特殊字符,傳遞文件數(shù)據(jù)。可以通過將圖片這類二進(jìn)制文件以byte[]的形式放入CDATA區(qū)中,需要使用時在以byte[]的方式讀出。
處理指令,簡稱PI (Processing Instruction)。處理指令用來指揮解析引擎如何解析XML文檔內(nèi)容。
處理指令必須以“<?”作為開頭,以“?>”作為結(jié)尾,XML聲明語句就是最常見的一種處理指令。 例如,在XML文檔中可以使用xml-stylesheet指令,通知XML解析引擎,應(yīng)用css文件顯示xml文檔內(nèi)容。
案例:
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet href="XML2.css" type="text/css"?> <class> <student> <name>張三</name> <sex>男</sex> <age>20</age> </student> <student> <name>李四</name> <sex>女</sex> <age>18</age> </student> </class>
XML2.css
name { font-size: 20px; font-weight: bold; color: red; } sex{ font-size: 30px; font-weight: bolder; color: blue; } age{ font-size: 25px; font-weight: bolder; color: blue; }
1、XML必須有且僅有一個根元素
2、元素大小寫敏感
3、元素不能以數(shù)字,下劃線開頭
4、屬性值用引號
5、屬性值如果有特殊字符要用實體表示
6、同一元素的屬性必須唯一,屬性值可以不唯一
7、非空元素標(biāo)記必須成對
8、空標(biāo)記要寫關(guān)閉符號
9、元素必須正確嵌套
10、元素中可以包含字母、數(shù)字或者其它字符(支持中文)
11、元素中不能含空格
12、元素中不能含冒號(注:冒號留給命名空間使用)
以上是“XML入門詳解”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。