XML 語法
XML 的語法規則很簡單,而且很有邏輯。這些規則很容易學習,也很容易使用。
所有的XML 元素都必須有一個關閉標籤
在HTML 中,某些元素不必有一個關閉標籤:
<p> ;This is a paragraph.
<br>
<br>
在XML 中,省略關閉標籤是非法的。所有元素都必須有關閉標籤:
<p>This is a paragraph.</p>
<br />
<br />
註解:從上面的實例中,您也許已經注意到XML 宣告沒有關閉標籤。這不是錯誤。聲明不是 XML 文件本身的一部分,它沒有關閉標籤。
XML 標籤對大小寫敏感
XML 標籤對大小寫敏感。標籤 <Letter> 與標籤 <letter> 是不同的。
必須使用相同的大小寫來編寫開啟標籤和關閉標籤:
<Message>This is incorrect</message>
<message>This is correct< ;/message>
<message>This is correct< ;/message>
註解:開啟標籤和關閉標籤通常被稱為開始標籤和結束標籤。不論您喜歡哪一個術語,它們的概念都是相同的。
XML 必須正確巢狀
在HTML 中,常會看到沒有正確巢狀的元素:
<b><i> ;This text is bold and italic</b></i>
在XML 中,所有元素都必須彼此正確地嵌套:
<b><i>This text is bold and italic</i></b>
XML 文件必須有根元素XML 文件必須有一個元素是所有其他元素的
父元素。此元素稱為根元素。
<root>
實體引用在 XML 中,有些字元擁有特殊的意義。 如果您把字元 "<" 放在 XML 元素中,會發生錯誤,這是因為解析器會把它當作新元素的開始。 這樣會產生XML 錯誤:
apostrophe" ;quotation mark
#註解:在XML 中,只有字元"<" 和"&" 確實是非法的。的語法與HTML 的語法很相似。保留
###Hello Tove#############
<child>
<subchild>.....</subchild>
</child>
</root>
<subchild>.....</subchild>
</child>
</root>
XML 屬性值必須加引號
與 HTML 類似,XML 元素也可擁有屬性(名稱/值的對)。
在 XML 中,XML 的屬性值必須加引號。
請研究下面的兩個 XML 文件。 第一個是錯誤的,第二個是正確的:
<note date=12/11/2007>
<to>Tove</to>
<from>Jani</from>
</note>
<to>Tove</to>
<from>Jani</from>
</note>
##<note date="12/11/2007">
在第一個文件中的錯誤是,note 元素中的 date 屬性沒有加引號。
<to>Tove</to>
<from>Jani</from>
</note>
<from>Jani</from>
</note>
實體引用在 XML 中,有些字元擁有特殊的意義。 如果您把字元 "<" 放在 XML 元素中,會發生錯誤,這是因為解析器會把它當作新元素的開始。 這樣會產生XML 錯誤:
<message>if salary < 1000 then</message>
為了避免這個錯誤,請用實體引用來取代"<" 字元:
<message>if salary
在XML 中,有5 個預先定義的實體參考:< 1000 then</message>
< | ##less than | |
> | greater than | |
& | ampersand |
'#'
apostrophe" ;
"
HTML 會裁切多個連續的空格字元(合併)為一個: | |
Hello Tove |
在 XML 中,文件中的空格不會被刪除。
XML 以 LF 儲存換行
在 Windows 應用程式中,換行通常以一對字元來儲存:回車符(CR)和換行符(LF)。
在 Unix 和 Mac OSX 中,使用 LF 來儲存新行。
在舊的 Mac 系統中,使用 CR 來儲存新行。
XML 以 LF 儲存換行。