位置:首頁 > Web開發 > XML教學 > XML語法

XML語法

本章將帶您通過簡單的語法規則來編寫一個XML文檔。以下是一個完整的XML文檔:

<?xml version="1.0"?>
<contact-info>
<name>Tanmay Patil</name>
<company>YiiBai</company>
<phone>(011) 123-4567</phone>
</contact-info>

你可以注意在上述的例子上有兩種類型的信息:

  • markup, like <contact-info> and

  • 該 文字, 或 該 性格 數據, Tutorials Point and (040) 123-4567.

下圖描述了語法規則的XML文檔中編寫不同類型的標記和文字.

XML語法規則

讓我們來看看詳細上圖中的每個組成部分:

XML聲明

XML文檔可以有一個XML聲明。它可寫為以下:

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

這裡 版本是 XML版本和 編碼 指定文檔中的字符編碼.

XML聲明的句法規則

  • XML聲明是區分大小寫的,並且必須以“&LT;?XML和GT;”與“XML”是用小寫寫入.

  • 如果文檔中包含的XML聲明,它應該是XML文檔的第一條語句.

  • XML聲明應該是XML文檔的第一條語句.

  • 一個HTTP協議可以覆蓋的值 編碼 你在XML聲明中使用.

標記和元素

XML文件是由幾個XML元素,也稱為XML節點或XML的標記結構。 XML元素的名稱是由三角支架&LT封閉;與GT;如下所示:

<element>

標簽和元素的句法規則

元素句法 : 每個XML元素需要被關閉或者與起始或結尾的元素,如下所示:

<element>....</element>

或者在簡單的情況下,僅僅是這樣:

<element/>

元素的嵌套 : 一個XML元素可以包含多個XML元素作為它的孩子,但孩子們的元素不能重疊。例如,一個元件的端標簽必須具有相同的名字而最近匹配的開始標記.

下麵的例子顯示不正確的嵌套標簽:

<?xml version="1.0"?>
<contact-info>
<company>YiiBai
<contact-info>
</company>

下麵的示例演示正確的嵌套標簽:

<?xml version="1.0"?>
<contact-info>
<company>YiiBai</company>
<contact-info>

根元素 : 一個XML文檔隻能有一個根元素。例如,下麵是不是一個正確的XML文檔,因為無論是X和Y的元素出現在頂層冇有一個根元素:

<x>...</x>
<y>...</y>

下麵的例子展示了一個正確的XML文檔:

<root>
   <x>...</x>
   <y>...</y>
</root>

區分大小寫 : XML的元素名稱是區分大小寫的。這意味著在啟動的名稱和端元件必須在同樣的巨細寫.

例如 <contact-info> 這是不同於 <Contact-Info>.

屬性

一個屬性指定元素的單個屬性。使用名稱/值對的XML元素可以具有一個或多個屬性。例如:

<a href="http://www.gitbook.net/">Yiibai!</a>

在這裡 href 是該屬性的名稱和 http://www.gitbook.net/ 是屬性值

XML屬性的句法規則

<a b="x" c="y" b="z">....</a>
<a b=x>....</a>

在上麵的語法,屬性值不會下引號定義.

  • 屬性名稱以XML(不像HTML)是大小寫敏感的. HREF and href 這被認為是兩個不同的XML屬性.

  • 相同的屬性不能有一個語法兩個值。下麵的例子顯示,因為該屬性指定了兩次不正確的句法:

  • 屬性名稱定義不帶引號,而屬性值必須始終出現在引號中。下麵的例子演示了不正確XML句法:

XML的參考資料

參考 通常允許您添加或包含在XML文檔中其他文字或標記 "&" ,參考資料總是以符號的放大器,這是一個保留字符和符號的”結尾 ";". XML有兩種類型參考:

實體參考 : 實體引用包含起始和結束定界符之間的名稱.例如 &amp; 在這裡 amp 是 名稱. 這個名字指一個預定義的字符串文字或標記.

字符參 : 這些包含參考,如 &#65;,包含一個hash符號(“#”) 後麵跟一個數字. 數總是指一個字符的Unicode代碼。在這種情況下,65指的是字母 "A".

XML文本

  • XML的元素和XML的屬性的名稱是區分大小寫的,這意味著開始和結束元素的名稱必須寫在相同的大小寫.

  • 為了避免字符編碼的問題,所有的XML文件保存為Unicode UTF-8或UTF-16文件.

  • 空白字符,如空格,製表符和XML元素之間和XML的屬性之間的換行符將被忽略.

  • 有些字符由XML語法本身保留。因此,它們不能被直接使用。要使用它們,一些更換,實體使用,這在下麵列出:

不允許的字符 替代實體 字符描述
< &lt; 小於
> &gt; 大於
& &amp; 符號
' &apos; 撇號
" &quot; 引號