首先給出範例程式碼
<!-- filename test.xml-->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book SYSTEM "book.dtd">
<booklist>
<top>
<bookname>《悲慘世界》</bookname>
<bookauthor>雨果</bookauthor>
</top>
<top>
<bookname>《人間失格》</bookname>
<bookauthor>太宰治</bookauthor>
</top>
</booklist>
<!--filename book.dtd -->
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT book(booklist,top*,bookname+,bookauthor+)>
<!ELEMENT booklist (#ANY)>
<!ELEMENT top (#ANY)>
<!ELEMENT bookname (#PCDATA)>
<!ELEMENT bookauthor (#PCDATA)>
在上述程式碼中,<?xml version="1.0" encoding="UTF-8"?>
是XML的一個宣告,表示檔案遵循的是XML1.0規範。
一個有效的XML檔案第一行必須進行宣告。
完整的宣告格式如下:<?xml version="1.0" standalone="yes/no" encoding="UTF-8"?>
其中 standalone="yes/no"
定義了是否可以在不讀取其他檔案的情況下處理該檔案。例如,standalone="yes"
表示XML沒有與其他任何檔案關聯。不寫表示預設,即standalone="no"
其中encoding="UTF-8"
是檔案的編碼方式。其他編碼方式:簡體中文:encoding="GB2312
,繁體中文:BIG5
。
<DOCTYPE book SYSTEM "book.dtd">
屬於檔案的序言部分。說明此檔案使用的是這個檔案來定義檔案型別的。瀏覽器預設使用Unicode編碼來解析,所以上述宣告在當下情況也可以簡單寫成<?xml version="1.0">
。
在上述程式碼中,<booklist>
,<top>
,<bookname>
等這些tags是使用者自定義的。其中<booklist>
是根元素。其他元素為子元素,其中最內層的是葉子元素。(XML是基於樹形結構的,所有的元素構成了一個簡單的層次樹,所以元素與元素之間唯一的直接關係就是父子關係)。
<book></book>
或<book/>
<book>《悲慘世界》<book>
<top><book>《悲慘世界》<book><top>
,其中top
是父級元素,book
是子元素。<top>暢銷榜單<book>《悲慘世界》<book><top>
,既包含文字元素也包含子元素。XML的屬性部分
<author sex="man">雨果</author>
.<!-- 在這裡寫註釋資訊--->
<Book>
,<BOOK>
,<book>
這是三種不同的標識。<booklist>
.<font color="red">
,不能寫成<font color=red>
<title/>
(以/>
結尾)。<title></title>
<title>
,(這個沒有結束標識)。<author>雨果</author>
和
<author>
雨果
</author>
會不同的執行結果。
特殊字元 | 替換字元 |
---|---|
< | < |
> | > |
and(&) | & |
雙引號(") | " |
單引號(’) | &apos |
<fruit:table>
<fruit:tr>apple<fruit:tr>
<fruit:table>
<furniture:table>
<furniture:tr>HongMu<furniture:tr>
<furniture:table>
可以將程式碼直接拖入瀏覽器中,或者在瀏覽器的位址列中輸入本地檔案的位置資訊,即可顯示。
文首的test.xml檔案在chrome瀏覽器中的顯示效果如圖:
點選左側的三角符號可以將程式碼進行摺疊隱藏。