源代碼下載:?learnxml-cn.xml
XML是一種標記語言,被設(shè)計用來存儲數(shù)據(jù)和傳輸數(shù)據(jù)。
不像HTML, XML不指定怎樣顯示或格式化數(shù)據(jù),只是攜帶它。
<!-- XML中的注解像這樣 -->
<?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>
<!-- 上面是一個典型的XML文件。
它以一個聲明開始,通知一些元數(shù)據(jù)(自選的)
XML使用一個樹的結(jié)構(gòu)。上面的文件中,根節(jié)點是'bookstore',它有三個孩子節(jié)點,
所有的'books'。那些節(jié)點有更多的孩子節(jié)點,等等。。。
節(jié)點用開放/關(guān)閉標簽創(chuàng)建, 并且孩子就是在開發(fā)和關(guān)閉標簽之間的節(jié)點。-->
<!-- XML 攜帶兩類信息:
1 - 屬性 -> 那是關(guān)于一個元素的元數(shù)據(jù)。
通常,XML解析器使用這些信息去正確地存儲數(shù)據(jù)。
它通過在開放標簽里出現(xiàn)在插入語中來表示。
2 - 元素 -> 那是純數(shù)據(jù)。
那就是解析器將從XML文件提取的東西。
元素出現(xiàn)在開放和關(guān)閉標簽之間,沒插入語。-->
<!-- 下面, 一個有兩個屬性的元素-->
<file type="gif" id="4293">computer.gif</file>
一個XML文件是良好格式的如果它是語法正確的。 但是, 使用文件定義,比如DTD和XML概要,在文件中插入更多的限制是可能的。
一個遵守一個文件定義的XML文件被叫做有效的,對于那個文件來說。
有了這個工具,你能夠在應(yīng)用邏輯之外檢查XML數(shù)據(jù)。
<!-- 下面, 你能夠看到一個簡化版本的增加了DTD定義的bookstore文件。-->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note SYSTEM "Bookstore.dtd">
<bookstore>
<book category="COOKING">
<title >Everyday Italian</title>
<price>30.00</price>
</book>
</bookstore>
<!-- 這個DTD可能是像這樣的:-->
<!DOCTYPE note
[
<!ELEMENT bookstore (book+)>
<!ELEMENT book (title,price)>
<!ATTLIST book category CDATA "Literature">
<!ELEMENT title (#PCDATA)>
<!ELEMENT price (#PCDATA)>
]>
<!-- 這個DTD以一個聲明開始。
接下來, 根節(jié)點被聲明, 它需要一個或多個孩子節(jié)點'book'。
每個 'book' 應(yīng)該準確包含一個 'title' 和 'price' 和
一個被叫做'category'的缺省值為"Literature"的屬性。
這個'title' 和 'price'節(jié)點包含一個解析過的字符數(shù)據(jù)。-->
<!-- 這個DTD可以在XML文件中本身被聲明。-->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note
[
<!ELEMENT bookstore (book+)>
<!ELEMENT book (title,price)>
<!ATTLIST book category CDATA "Literature">
<!ELEMENT title (#PCDATA)>
<!ELEMENT price (#PCDATA)>
]>
<bookstore>
<book category="COOKING">
<title >Everyday Italian</title>
<price>30.00</price>
</book>
</bookstore>
更多建議: