XML元素是可擴展的,它們之間是存在著某些關系。
XML元素須遵守一些簡單的命名規則。
XML元素是可被擴展,來攜帶更多的信息。
請看下面這個XML標簽例子:
<note><to>Tove</to><from>Jani</from><body>Don't forget me this weekend!</body></note>
讓我們設想一下,我們創建了一個應用程序,可將<to>、<from>以及<body>元素提取出來,并產生以下的輸出:
MESSAGE T ToveFrom: JaniDon't forget me this weekend!
想象一下,之后這個XML文檔作者又向這個文檔添加了一些額外的信息:
<note><date>2002-08-01</date><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don't forget me this weekend!</body></note>
那么這個應用程序會中斷或崩潰嗎?
不會。這個應用程序仍然可以找到XML文檔中的<to>、<from>以及<body>元素,并產生同樣的輸出:
XML文檔是可擴展的。
元素之間有父與子的關系。
為了理解XML的術語,我們需要了解XML之間的關系是如何命名的,以及元素的內容是如何被描述的。
想象一下,關于某本書的描述:
我的第一個XMLXML 簡介HTML 的概念XML 的概念 XML 的語法元素必須擁有關閉標簽元素必須被正確地嵌套
想象一下,XML文檔是如何描述這本書的:
<book><title>我的第一個XML</title><prod id="33-657" media="paper"></prod><chapter>XML 簡介<para>HTML 的概念</para><para>XML 的概念</para></chapter><chapter>XML 的語法<para>元素必須擁有關閉標簽</para><para>元素必須被正確地嵌套</para></chapter></book>
book(書)是根元素。Title、prod以及chapter是book的子元素。book是Title、prod以及chapter的父元素。Title、prod以及chapter是兄弟元素或者姐妹元素,這是因為它們都擁有相同的父母。
元素可以擁有不同的內容類型。
一個XML元素由(且包括)元素的開始標簽起始,到(且包括)元素的結束標簽終止。
一個元素可以擁有元素內容、混合型內容、簡易內容或者空內容。元素也可以擁有屬性。
在上面的例子中,book有元素內容,因為它包含了其他的元素。chapter擁有混合型內容,因為即包含文本,也包含其他的元素。para擁有簡易內容(或文本內容),因為它僅包含文本。prod擁有空內容,因為它沒有攜帶信息。
在上面的例子中,僅有prod元素擁有屬性。名為id的屬性的值為"33-657"。名為medea的屬性的值為"paper"。
當您“發明創造”元素名稱時,請留意并遵循下面的簡單的規則:
您可以使用任何名稱,沒有保留字,但是理想的做法是使名稱具有描述性。使用下劃線的名稱也是不錯的。
例子: <first_name>,<last_name>
應該在名稱中避免"-"和"."。比方說,如果您將某個元素命名為"first-name",那么當您的軟件試圖從first段來提取名稱時可能會出現混亂的局面。或者如果您將某個元素命名為"first.name",您的軟件也許會認為"name"是"first"對象的一個屬性。
元素名稱可以是你希望的任何長度,但是也不要太夸張。名稱應當比較簡短,比如:<book_title>,而不是:<the_title_of_the_book>。
XML文檔經常有一個對應的數據庫,其中的域會對應XML文檔中的某個元素。有一個實用的經驗,即使用數據庫的名稱規則命名XML文檔中的元素。
非英語的字母比如éòá也是合法的XML元素名,不過需要注意當軟件開發商不支持字母時出現的問題。
不應在XML元素名稱中使用":",這是由于它是用于被稱作命名空間(namespaces)的保留字。
新聞熱點
疑難解答