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