1、XML主要用來傳輸和儲存資料,是一種可擴充套件的標記語言。
2、XML具有自我描述性,標籤沒有被預定義,需要使用者自定義,所有的標籤都必須關閉。
3、XML文件是一種樹形結構,必須包含根元素:父元素擁有子元素;
<root> <child> <subchild>...</subchild> </child> </root>
4、宣告。如果需要可以在第一行加如下格式的宣告:<?xml version="1.0" encoding="utf-8"?>
5、XML區分大小寫字母;
6、屬性值必須加引號;
7、五個預定義實體:<(<),>(>),&(&),&apos('),"(")
8、所有的空格都會被保留,而不像HTML會刪除連續空格只保留一個;
9、XML以LF儲存換行;
10、XML元素指從開始標籤直到結束標籤的部分,其中可以包含屬性、文字、其他元素;
11、命名 規則:
可以包含字母、數字及其他字元;
不能以數字或標點符號開始;
不能以字母xml(無論大小寫或大小寫組合)開始;
12、XML應儘量避免使用屬性,因為屬性不能包含多個值,屬性不能包含樹結構且不容易擴充套件;
13、語法錯誤的XML不會被讀取,可使用DTD來驗證XML的正確性;
例:
<!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]>
或使用<!DOCTYPE note SYSTEM "Note.dtd">來引入外部dtd檔案;
14、使用<?xml-stylesheet type="text/css" href="cd_catalog.css"?>引入css格式來顯示XML文件;
15、使用名稱字首來避免命名衝突,例:<h:root></h:root>
但字首必須通過xmlns屬性來定義名稱空間,例:<h:root xmlns:h="http://url"></h:root>,一次也可用多個xmlns來宣告多個名稱空間;
16、<![CDATA[註釋]]> XML的註釋部分不會被解析,不會被檢查語法錯誤等;