XML 語法規則概述

大雄45發表於2022-06-19
導讀 XML 的語法規則很簡單,且很有邏輯。這些規則很容易學習,也很容易使用。

XML 語法規則概述XML 語法規則概述

XML 文件必須有根元素

XML 必須包含根元素,它是所有其他元素的父元素,比如以下例項中 root 就是根元素:

< root >  < child >  < subchild > ..... </ subchild >  </ child >  </ root >

以下例項中 note 是根元素:

<? xml  version = " 1.0 "  encoding = " UTF-8 " ?>  < note >  < to > Tove </ to >  < from > Jani </ from >  < heading > Reminder </ heading >  < body > Don't forget me this weekend! </ body >  </ note >

XML 宣告

XML 宣告檔案的可選部分,如果存在需要放在文件的第一行,如下所示:

<?xml version="1.0" encoding="utf-8"?>

以上例項包含 XML 版本(<version="1.0"),甚至包含字元編碼(encoding="utf-8")。< p=""></version="1.0"),甚至包含字元編碼(encoding="utf-8")。<>

UTF-8 也是 HTML5, CSS, JavaScript, PHP, 和 SQL 的預設編碼。

所有的 XML 元素都必須有一個關閉標籤

在 HTML 中,某些元素不必有一個關閉標籤:

<p>This is a paragraph.<br>

在 XML 中,省略關閉標籤是非法的。所有元素都必須有關閉標籤:

<p>This is a paragraph.</p><br />

註釋:從上面的例項中,您也許已經注意到 XML 宣告沒有關閉標籤。這不是錯誤。宣告不是 XML 文件本身的一部分,它沒有關閉標籤。

XML 標籤對大小寫敏感

XML 標籤對大小寫敏感。標籤 與標籤 是不同的。

必須使用相同的大小寫來編寫開啟標籤和關閉標籤:

<Message>這是錯誤的</message><message>這是正確的</message>

註釋:開啟標籤和關閉標籤通常被稱為開始標籤和結束標籤。不論您喜歡哪種術語,它們的概念都是相同的。

XML 必須正確巢狀
在 HTML 中,常會看到沒有正確巢狀的元素:

<b><i>This text is bold and italic</b></i>

在 XML 中,所有元素都必須彼此正確地巢狀:

<b><i>This text is bold and italic</i></b>

在上面的例項中,正確巢狀的意思是:由於 <i> 元素是在 <b> 元素內開啟的,那麼它必須在 <b> 元素內關閉。

XML 屬性值必須加引號

與 HTML 類似,XML 元素也可擁有屬性(名稱/值的對)。

在 XML 中,XML 的屬性值必須加引號。

請研究下面的兩個 XML 文件。 第一個是錯誤的,第二個是正確的:

<note date=12/11/2007><to>Tove</to><from>Jani</from></note>
<note date="12/11/2007"><to>Tove</to><from>Jani</from></note>

在第一個文件中的錯誤是,note 元素中的 date 屬性沒有加引號。

實體引用

在 XML 中,一些字元擁有特殊的意義。

如果您把字元 "<" 放在 XML 元素中,會發生錯誤,這是因為解析器會把它當作新元素的開始。

這樣會產生 XML 錯誤:

<message>if salary < 1000 then</message>

為了避免這個錯誤,請用實體引用來代替 "<" 字元:

<message>if salary &lt; 1000 then</message>

在 XML 中,有 5 個預定義的實體引用:

&lt; < less than
&gt; > greater than
&amp; & ampersand
&apos; ' apostrophe
&quot; " quotation mark

註釋:在 XML 中,只有字元 "<" 和 "&" 確實是非法的。大於號是合法的,但是用實體引用來代替它是一個好習慣。

XML 中的註釋

在 XML 中編寫註釋的語法與 HTML 的語法很相似。

<!-- This is a comment -->
在 XML 中,空格會被保留

HTML 會把多個連續的空格字元裁減(合併)為一個:

HTML:
Hello           Tove
輸出結果: Hello Tove

在 XML 中,文件中的空格不會被刪減。

XML 以 LF 儲存換行

在 Windows 應用程式中,換行通常以一對字元來儲存:回車符(CR)和換行符(LF)。

在 Unix 和 Mac OSX 中,使用 LF 來儲存新行。

在舊的 Mac 系統中,使用 CR 來儲存新行。

XML 以 LF 儲存換行。

 

原文來自:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2840718/,如需轉載,請註明出處,否則將追究法律責任。

相關文章