XML(Extensible Markup Language),即可擴展的標記語言,它是 SGML(標準通用標記語言)的一個子集,xml文件的主要作用是在於作為程式的配置文件來時用,其他還包括作為不同語言間的數據傳遞以及可以作為一個小型的資料庫存在,XML文件作為一種標記語言,和HTML(Hyper ...
XML(Extensible Markup Language),即可擴展的標記語言,它是 SGML(標準通用標記語言)的一個子集,xml文件的主要作用是在於作為程式的配置文件來時用,其他還包括作為不同語言間的數據傳遞以及可以作為一個小型的資料庫存在,XML文件作為一種標記語言,和HTML(Hyper Text Markup Language)超文本標記語言一樣,都是一種以元素標簽為基準的樹形結構語言,具有數據層級分明,數據識別通用的特點,不過XML和HTML語言依然存在不同的地方:1.XML語言作為可擴展性的語言,它的標簽名是可以自己命名的,並且中文名稱的標簽名稱也是被允許的(雖然在解析中可能會出現亂碼的問題);2.XML語言的解析是很複雜的,包含了不同的解析方式和解析器,而HTML語言的解析來自瀏覽器,是靜態語言,規範統一,不需要我們編寫代碼進行解析。
XML語言規範:
1.XML文件一定具有一個xml的文檔聲明:
<?xml version="1.0" encoding="UTF-8" standalone="yes?>
version屬性代表當前xml的版本,encoding屬性代表xml文件的編碼方式,standalone屬性代表xml文件是否是獨立的(是否依賴外部文件,預設yes)
文檔聲明一定在xml文件的第一行第一列開始,否則會無效
2.XML文件的元素格式:
xml的元素格式和html的格式是基本一樣的,<name>諸葛亮</name>,同樣只能有一個根元素;xml的元素和html有一點不同的是,xml中會自動對空格和換行進行解析,而html不會,故在xml中的標簽一定要規範,否則可能會解析出錯
3.XML的元素命名規範:
xml中的元素命名規範:可以包含數字,字母以及一些常見的符號,但必須遵從幾個原則:不能以數字或者下劃線開頭;不能以xml等關鍵字命名;不能包 含空格;不能在命名中間包含“:”。
4.XML的元素屬性聲明:
XML中的元素屬性可以自己定義,屬性名聲明規範同元素名的聲明,元素屬性的聲明格式和html中一樣,都是xx屬性="xx值",一個元素可以有多個屬性,但是同一個屬性不能有多個值。
5.XML中的註釋
同html中一樣,都是<!--註釋內容-->,註釋中不能嵌套註釋
4.XML語言的轉義字元和CDATA區:
xml的轉義字元和html語言一樣,CDATA區是用在當表達式中包含很多的轉義字元時,一個一個去轉義太麻煩了,就出現了一個專門存放這種表達式而不手動去轉義也能成功解析的區域,這個區域就是CDATA區,格式如下:
<![CDATA[表達式]]>
5.PI指令(處理指令)
所謂的PI指令,可以理解為通知解析器處理xml內容的方式,基本格式<?處理指令?>,如按照css樣式來對xml文檔進行解析:
<?xml-stylesheet type="text/css" href="a.css"?>