一、文檔規則
1.區分大小寫。
2.屬性值必須加引號(單引號、雙引號都可以),一般情況下建議使用使用雙引號。
3.所有標記必須有結束符號。
4.所有空標記必須關閉。
5.必須有且僅有一根元素。
6.解析空白字符時,會按照實際內容輸出,不會縮略。
7.特殊字符處理:
字符 替換字符
< <
> >
& &
" &quto;
' '
8.標記名稱約定:
a.可以包含字母、數字、其他字符。
b.不能以數字和下劃線開頭。
c.不能以xml或者Xml之類的字符開頭。
d.不能包含空格
二、xml聲明
xml聲明標准語句:<?xml version="1.0" encoding="GB2312" standalone="yes"?>
強調:
1.“<?xml” 中的"<?"和"xml"中間不能有空格。
2.”?>"之前可以有空格,也可以沒有。
3.enconding和standalone是可選屬性,encoding默認值是"UTF-8",standalone默認值是"no"。
4.常見的編碼方式有:
簡體中文:GB2312
繁體中文 :BIG5
西歐字符:UTF-8,UTF-16
5.standalone表示文檔是否附帶DTD文件。
三、xml屬性
因為數據既可以存儲在子元素中也可以存儲在屬性中,那麼何時用屬性,何時用子元素,沒有固定規則,但是建議:元數據應該以屬性的方式存儲,而數據本身應該以元素的形式存儲。
使用屬性會引發以下問題:
1.屬性不能包含多個值(子元素可以)。
2.屬性不容易擴展。
3.屬性不能描述結構(子元素可以)。
4.屬性很難通過DTD進行測試。
四、命名空間
聲明命名空間倆種方式:
1.默認聲明,所有元素不需要指定前綴,如:
<schema xmlns="http://www.w3.org/2001/XMLschema">
<element name="diguonianzhu" type="string"/>
……
</schema>
2.明確聲明,xmlns關鍵字與一個命名空間的URI的前綴相關聯,所有元素都需要指定前綴,如:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLschema">
<xsd:element name="diguonianzhu" type="string"/>
……
<xsd:/schema>
強調:用來表示命名空間的URI並不被XML解析器調用,實際上並不去訪問這個URI,它只是表示一個標識名字而已。
五、XML專用標記:CDATA
CDATA的全稱是Character DATA,即字符數據,它主要用來顯示特殊字符,比如"<"。
CDATA的語法格式為:
<![CDATA[要顯示的字符]]> 如:
<?xml version="1.0"?>
<data>
<![CDATA[
<ok alma!> by a&b!
]]>
</data>
強調:CDATA不能嵌套;要顯示的字符中不能包含"]]>"。