元素有著不同的內容類型。 一個XML元素就是從(包含)元素的起始標記到(包含)元素的結束標記之間的全部內容。
一個元素可以有元素內容、混合內容、簡單內容和空內容。一個元素還可以有屬性。 在上面的例子中, book有元素內容,因為它包含了其它元素。Chapter 有混合內容,因為它包含了文本和其它元素。 Para有簡單內容(或文本內容),因為它只包含文本。 Prod有空內容,因為它沒有攜帶任何信息。 在上面的例子中只有prod 元素有屬性。 屬性id 的值為 "33-657"。屬性media 的值為 "paper"。
元素的命名
XML元素必須遵循下面的命名規則:
名字中可以包含字母、數字以及其它字母
名字不能以數字或"_" (下劃線) 開頭
名字不能以字母 xml (或 XML 或 Xml ..) 開頭
名字中不能包含空格
要注意當你“發明”一個元素名時,要遵守以下簡單的規則:
任何名字都可以使用,沒有什麼字是保留的,但是一定要讓名字具有描述性。帶有一個下劃線分隔符的名字就很好。
比如說: < first_name>, < last_name>。
要避免在名字中使用 "-" 和 "." 。如果你的軟件想用first減去name(first-name),或將 "name" 作為對象 "first" 的屬性(first.name)時就會出現混淆。
你願意讓元素名多長都可以,但是不要太誇張。名字應該簡短,比如 < book_title>,而最好不要這樣:
< the_title_of_the_book>。
XML 文檔通常都有一個相應的數據庫,其中的域與 XML文檔中的元素相對應。最好是將XML文檔中元素的命名規則也應用於數據庫的命名中。
非英文字母如éòá 在XML 元素名中也是合法的,但是要看看你的軟件供應商是不是支持它們。
在元素名中不能使用 ":" ,因為它是為一種成為“名字空間”(namespaces)的東西預留的。在後面將對此進行介紹。
XML屬性
同HTML一樣,XML元素可以在其起始標記中有屬性。屬性是用來提供有關元素的附加信息的。
XML 屬性
XML元素可以有屬性。 在HTML只能感,你可能記得: < IMG SRC="computer.gif">。SRC 屬性提供了有關IMG元素的一些附加信息。 在HTML (和XML)中,屬性提供關於元素的附加信息:
< img src="computer.gif">
< a href="demo.asp">
屬性所提供的信息通常不是數據的一部分。在下面的例子中,文件類型與數據無關,但是它對於想要操作元素的軟件來說很重要:
< file type="gif">computer.gif< /file>
引用形式, "female" 還是 'female'?
屬性值必須總是包含在引號中,但是單引號和雙引號都能用。對於一個人的性別來說,人的標記可以這樣寫:
< person sex="female">
或這樣寫:
< person sex='female'>
雙引號是最常用的,但是有時(如果屬性值本身包含引號的話),必須要使用單引號,就象下面這個例子:
< gangster name='George "Shotgun" Ziegler'>