學習網頁製作認識XML的文法規則

來源:互聯網
上載者:User
xml|網頁|文法

   XML的文法規則既簡單又嚴格,非常容易學習和使用。正因為如此,編寫讀取和操作XML的軟體也是相對容易的事情。

   一個XML文檔的例子

   XML文檔使用了自描述的和簡單的文法。

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

   文檔的第1行:XML聲明——定義此文檔所遵循的XML標準的版本,在這個例子裡是1.0版本的標準,使用的是ISO-8859-1 (Latin-1/West European)字元集。

   The next line describes the root element of the document (like it was saying: "this document is a note"):
文檔的第2行是根項目(就象是說“這篇文檔是一個便條”):

<note>
文檔的第3--6行描述了根項目的四個子節點(to, from, heading,和 body):
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
文檔的最後一行是根項目的結束
</note>

   你能從這個文檔中看出這是Ordm給Lin留的便條嗎?難道能不承認XML是一種美麗的自描述語言嗎?

   所有的XML文檔必須有一個結束標記

   在XML文檔中, 忽略結束標記是不符合規定的。

   在HTML文檔中,一些元素可以是沒有結束標記的。下面的代碼在HTML中是完全合法的:

<p>This is a paragraph  <p>This is another paragraph

   但是在XML文檔中必須要有結束標記,象下面的例子一樣:

<p>This is a paragraph</p>  <p>This is another paragraph</p> 

   注意: 你可能已經注意到了,上面例子中的第一行並沒有結束標記。這不是一個錯誤。因為XML聲明並不是XML文檔的一部分,他不是XML元素,也就不應該有結束標記。

   XML標記都是大小寫敏感的

   這與HTML不一樣, XML標記是大小寫敏感的。

   在XML中, 標記<Letter>與標記<letter>是兩個不同的標記。

   因此在XML文檔中開始標記和結束標記的大小寫必須保持一致。

<Message>This is incorrect</message>  <message>This is correct</message>

   所有的XML元素必須合理包含

   

   在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文檔中的第一個元素就是根項目。

   所有XML文檔都必須包含一個單獨的標記來定義,所有其他元素的都必須成對的在根項目中嵌套。XML文檔有且只能有一個根項目。

   所有的元素都可以有子項目,子項目必須正確的嵌套在父元素中,下面的代碼可以形象的說明:

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

   屬性值必須使用引號""

   在XML中,元素的屬性值沒有引號引著是不符合規定的。

   如同HTML一樣,XML元素同樣也可以擁有屬性。XML元素的屬性以名字/值成對的出現。XML文法規範要求XML元素屬性值必須用引號引著。請看下面的兩個例子,第一個是錯誤的,第二個是正確的。

<?xml version="1.0" encoding="ISO-8859-1"?>  <note date=12/11/2002>  <to>Tove</to>  <from>Jani</from>  </note>

<?xml version="1.0" encoding="ISO-8859-1"?>  <note date="12/11/2002">  <to>Tove</to>  <from>Jani</from>  </note>

   第一個文檔的錯誤之處是屬性值沒有用引號引著。

   正確的寫法是: date="12/11/99". 不正確的寫法: date=12/11/99.

   使用XML,空白將被保留 

   在XML文檔中,空白部分不會被解析器自動刪除。

   
這一點與HTML是不同的。在HTML中,這樣的一句話:

   "Hello         my name is Ordm"將會被顯示成:"Hello my name is Ordm",

   因為HTML解析器會自動把句子中的空白部分去掉。

   使用XML, CR / LF 被轉換為 LF

   使用 XML, 新行總是被標識為 LF(Line Feed,換行)。

   你知道打字機是什麼嗎?呵呵,打字機是在上個世紀裡使用的一種專門打字的機器。^&^

   當你用打字機敲完一行字後,你通常不得不再把打字頭移動到紙的左端。

   在Windows應用程式中,文本中的新行通常標識為 CR LF (carriage return, line feed,斷行符號,換行)。在Unix應用程式中,新行通常標識為 LF。還有一些應用程式只使用CR來表示一個新行。

   XML中的注釋

   在XML中注釋的文法基本上和HTML中的一樣。

   <!-- This is a comment -->
<!-- 這是一個注釋 -->

   XML並沒有什麼特別的哦

   XML確實沒有什麼特別的地方。他只是一些用角括弧擴在一起的普通的純文字。編輯普通文本的軟體也可以編輯XML文檔。然而在一個支援XML的應用程式中,XML標記往往對應著特殊的操作,有些標記可能是可見的,而有些標記則可能不會顯示出來,而不會有什麼特殊的操作。



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.