Like Share Discussion Bookmark Smile

J.J. Huang   2022-11-04   XML 1.基本教學   瀏覽次數:次   DMCA.com Protection Status

XML教學 | 結構

XML結構

XML檔形成了一種樹狀結構(Tree structure),它從「根部」開始,然後擴展到「枝葉」。

註:一定要有根的節點,而且只能有一個。

XML檔的範例說明

1
2
3
4
5
6
7
<?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>

擷取於:w3schools View a simple XML file (note.xml)

  • 第一行,必須是XML宣告
    • XML宣告說明XML文件的基本資訊,包括版本(1.0)號與字元集編碼(UTF-8:萬國碼,可顯示各種語言)。
      1
      <?xml version="1.0" encoding="UTF-8"?>
  • 第二行,為一個根節點的開始
    • 必須要有,而且只能有一個。
    • 該元素是所有其他元素的父元素。
      1
      <note>

      注意:note這個名稱是自定義的,並不是預定義的。
      註:XML標籤的書寫規則與HTML相同。

  • 第三至行第六行,為<note>的子元素。
    • 所有的元素都可以有子元素。
      1
      2
      3
      4
      <to>Tove</to>
      <from>Jani</from>
      <heading>Reminder</heading>
      <body>Don't forget me this weekend!</body>
  • 最後一行,為根節點的結束
    • 標籤必須成對出現。
      1
      </note>

從上面這個範例中,XML檔包含了一張Jani寫給Tove的便條紙或稱備忘錄(memo)。
藉此可以說XML具有出色的自我描述性。

註:更詳細的XML檔的語法規則和說明將會放在下一章節教學。


XML檔的樹結構說明

上圖表示下面的XML中的第二本書的結構:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="web">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>

擷取於:w3schools XML Tree (xml_tree.xml)

範例說明:

  • 根元素是<bookstore>
  • 所有<book>元素都被包含在<bookstore>中。
  • <book>元素有4個子元素:<title><author><year><price>

結語

在此將XML的結構提供範例和簡單的說明,後面一章節將會針對XML的語法規則做更詳細的教學。


註:以上參考了
w3schools - XML樹
RUNOOB.COM - XML 树结构
維基百科-XML
Family with 220 icons by inipagi