XML 文檔包含 XML 元素。
什麼是 XML 元素?
XML 元素指的是從(且包括)開始標簽直到(且包括)結束標簽的部分。
元素可包含其他元素、文本或者兩者的混合物。元素也可以擁有屬性。
<bookstore>
<book category="CHILDREN">
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title>Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
在上例中,<bookstore> 和 <book> 都擁有元素內容,因為它們包含了其他元素。<author> 只有文本內容,因為它僅包含文本。
在上例中,只有 <book> 元素擁有屬性 (category="CHILDREN")。
XML 命名規則
XML 元素必須遵循以下命名規則:
名稱可以含字母、數字以及其他的字符 名稱不能以數字或者標點符號開始 名稱不能以字符 “xml”(或者 XML、XML)開始 名稱不能包含空格
可使用任何名稱,沒有保留的字詞。
最佳命名習慣
使名稱具有描述性。使用下劃線的名稱也很不錯。
名稱應當比較簡短,比如:<book_title>,而不是:<the_title_of_the_book>。
避免 "-" 字符。如果您按照這樣的方式進行命名:"first-name",一些軟件會認為你需要提取第一個單詞。
避免 "." 字符。如果您按照這樣的方式進行命名:"first.name",一些軟件會認為 "name" 是對象 "first" 的屬性。
避免 ":" 字符。冒號會被轉換為命名空間來使用(稍後介紹)。
XML 文檔經常有一個對應的數據庫,其中的字段會對應 XML 文檔中的元素。有一個實用的經驗,即使用數據庫的名稱規則來命名 XML 文檔中的元素。
非英語的字母比如 éòá 也是合法的 XML 元素名,不過需要留意當軟件開發商不支持這些字符時可能出現的問題。
XML 元素是可擴展的
XML 元素是可擴展,以攜帶更多的信息。
請看下面這個 XML 例子:
<note>
<to>George</to>
<from>John</from>
<body>Don't forget the meeting this weekend!</body>
</note>
讓我們設想一下,我們創建了一個應用程序,可將 <to>、<from> 以及 <body> 元素提取出來,並產生以下的輸出:
MESSAGE
To: George
From: John
Don't forget the meeting this weekend!
想象一下,之後這個 XML 文檔作者又向這個文檔添加了一些額外的信息:
<note>
<date>2008-08-08</date>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting this weekend!</body>
</note>
那麼這個應用程序會中斷或崩潰嗎?
不會。這個應用程序仍然可以找到 XML 文檔中的 <to>、<from> 以及 <body> 元素,並產生同樣的輸出。
XML 的優勢之一,就是可以經常在不中斷應用程序的情況進行擴展。