XML文法概述

來源:互聯網
上載者:User

   XML文檔使用的是自描述的和簡單的文法,一個XML文檔最基本的構成包括:聲明,處理指示(可選)和元素。以下是一個簡單的XML文檔:

 1<?xml version ="1.0" encoding ="GB2312" standalone="yes" ?>
 2<?xml-stylesheet type="text/xsl" href="yxfqust.xsl" ?>
 3<!--以下是一個學生名單-->
 4<學生名單>
 5    <學生>
 6      <學號>2003081205</學號>
 7      <姓名>田淋</姓名>
 8      <班級>計03.2班</班級>
 9    </學生>
10    <學生>
11      <學號>2003081232</學號>
12      <姓名>楊雪鋒</姓名>
13      <班級>計03.2班</班級>
14    </學生>
15</學生名單>

第1行是XML聲明,第2行是處理指示,第3行是注釋,4到15就是文檔的各個元素。(註:XML標記都是大小寫敏感的).
一。文檔的聲明:<?xml version="1.0" encoding="GB2312" standalone="yes"?>

xml標記說明它是一個xml文檔,後面兩個屬性值表明了它的版本號碼和編碼通訊協定,standalone取yes表明該檔案未引明其他外部XML檔案。
二。處理指示
   格式:<?處理指示名 處理指示資訊 ?>

<?xml-stylesheet type="text/xsl" href="yxfqust.xsl" ?>

三。注釋:
格式:<!--注釋內容--><!--以下是一個學生名單-->

注釋應注意的問題:
       1.注釋不能出現在xml聲明之前;
       2.注釋不能出現在標記中;
       3.注釋中不能出現連續兩個連字號,即"--"  如:<!--this is  a bad document.--do you know!-->;
       4.注釋中可包含元素,但元素中不能包含"--"包含的元素解析時被忽略;
       5.注釋不能嵌套;
四。元素與標記:
       所有的XML元素必須合理包含,且所有的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>

格式:<標記 屬性名稱1="值1".......>資料內容</標記>
XML元素是可以擴充的,它們之間有關聯,XML元素有簡單的命名規則:

  • Names can contain letters, numbers, and other characters (元素的名字可以包含子母,數字和其他字元。)
  • Names must not start with a number or punctuation character (元素的名字不能以數字或者標點符號開頭。)
  • Names must not start with the letters xml (or XML or Xml ..) (元素的名字不能以XML(或者xml,Xml,xMl...)開頭。)
  • Names cannot contain spaces(元素的名字不能包含空格。)

    元素是XML文檔的靈魂,它構成了文檔的主要內容。XML元素則是由標記來定義的,同時標記分為非空標記和空標記。
           1.非空標記格式:
       <標記>元素內容</標記>    如:

       <學號>2003081205</學號>
       <姓名>田淋</姓名>
       <班級>計03.2班</班級>

          2.空標記格式:
     <標記名 屬性名稱="屬性值", 屬性名稱="屬性值"......> 如:<田淋 學號="2003081205">

    同時元素也支援合理的嵌套,如上面的文檔例子,學生名單與學生就是一層嵌套。嵌套需滿足以下規則:
          1.所有xml文檔都從一個根節點開始,根節點包含了一個根項目;
          2.文檔內所有其他元素必須包含在根項目中;
          3.嵌套在內的為子項目,同一層的互為兄弟元素;
          4.子項目還可以包含子項目;
          5.包含子項目的元素稱為分支,沒有子項目的元素稱為樹葉;
    資料既可以儲存在子項目中也可以儲存在屬性中,應盡量使用子項目而避免使用屬性。原因如下:

  • attributes cannot contain multiple values (child elements can) (屬性不能包含多個值(子項目可以))
  • attributes are not easily expandable (for future changes) (屬性不容易擴充)
  • attributes cannot describe structures (child elements can) (屬性不能夠描述結構(子項目可以))
  • attributes are more difficult to manipulate by program code (屬性很難被程式碼處理)
  • attribute values are not easy to test against a Document Type Definition (DTD) - which is used to define the legal elements of an XML document(屬性值很難通過DTD進行測試)

    上一篇: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.