XML的元素和屬性

2021-09-29 06:01:53 字數 3969 閱讀 7612

xml 文件包含 xml 元素。

xml 元素指的是從(且包括)開始標籤直到(且包括)結束標籤的部分。

元素可包含其他元素、文字或者兩者的混合物。元素也可以擁有屬性。

>

category

="children"

>

>

harry pottertitle

>

>

j k. rowlingauthor

>

>

2005year

>

>

29.99price

>

book

>

category

="web"

>

>

learning xmltitle

>

>

erik t. rayauthor

>

>

2003year

>

>

39.95price

>

book

>

bookstore

>

在上例中,都擁有元素內容,因為它們包含了其他元素。

只有文字內容,因為它僅包含文字。

在上例中,只有元素擁有屬性(category="children")

xml 元素必須遵循以下命名規則:

可使用任何名稱,沒有保留的字詞。

使名稱具有描述性。使用下劃線的名稱也很不錯。

名稱應當比較簡短,比如:,而不是:

避免"-"字元。如果您按照這樣的方式進行命名:"first-name",一些軟體會認為你需要提取第乙個單詞。

避免"."字元。如果您按照這樣的方式進行命名:"first.name",一些軟體會認為"name"是物件"first"的屬性。

避免":"字元。冒號會被轉換為命名空間來使用(稍後介紹)。

xml 文件經常有乙個對應的資料庫,其中的字段會對應 xml 文件中的元素。有乙個實用的經驗,即使用資料庫的名稱規則來命名 xml 文件中的元素。

非英語的字母比如éòá也是合法的 xml 元素名,不過需要留意當軟體開發商不支援這些字元時可能出現的問題。

>

>

georgeto

>

>

johnfrom

>

>

don't forget the meeting!body

>

note

>

讓我們設想一下,我們建立了乙個應用程式,可將以及元素提取出來,並產生以下的輸出:

message

to: george

from: john

don't forget the meeting!

想象一下,之後這個 xml 文件作者又向這個文件新增了一些額外的資訊:

>

>

2008-08-08date

>

>

georgeto

>

>

johnfrom

>

>

reminderheading

>

>

don't forget the meeting!body

>

note

>

那麼這個應用程式會中斷或崩潰嗎?

**不會。**這個應用程式仍然可以找到 xml 文件中的以及元素,並產生同樣的輸出。

xml 的優勢之一,就是可以經常在不中斷應用程式的情況進行擴充套件。

xml 元素可以在開始標籤中包含屬性,類似 html。

xml 屬性 (attribute) 提供關於元素的額外資訊

xml 屬性必須加引號(單/雙引號,如果屬性值本身包含雙引號,那麼使用實體引用,或者可以使用單引號包圍它)屬性值必須被引號包圍,不過單引號和雙引號均可使用。比如乙個人的性別,person 標籤可以這樣寫:

***=

"female"

>

或者這樣也可以:

***=

'female'

>

注釋:如果屬性值本身包含雙引號,那麼有必要使用單引號包圍它,就像這個例子:

name

='george "shotgun" ziegler'

>

或者可以使用實體引用:

name

="george "shotgun" ziegler"

>

因使用屬性而引起的一些問題:

盡量使用元素來描述資料。而僅僅使用屬性來提供與資料無關的資訊。

不要做這樣的蠢事(這不是 xml 應該被使用的方式):

day=

"08"

month

="08"

year

="2008"

to="george"

from

="john"

heading

="reminder"

body

="don't forget the meeting!"

>

note

>

有時候會向元素分配 id引用。這些id 索引可用於標識 xml 元素,它起作用的方式與 html 中 id 屬性是一樣的。這個例子向我們演示了這種情況:

>

"501"

>

>

georgeto

>

>

johnfrom

>

>

reminderheading

>

>

don't forget the meeting!body

>

note

>

"502"

>

>

johnto

>

>

georgefrom

>

>

re: reminderheading

>

>

i will notbody

>

note

>

messages

>

上面的 id 僅僅是乙個識別符號,用於標識不同的便簽。它並不是便簽資料的組成部分。

在此我們極力向您傳遞的理念是:元資料(有關資料的資料)應當儲存為屬性,而資料本身應當儲存為元素。

XML元素和屬性

元素定義 在dtd文件中使用element宣告乙個xml元素,語法格式如下所示 元素型別可以是元素內容 或型別 如為元素內容 則需要使用 括起來,如 如為元素型別,則直接書寫,dtd規範定義了如下幾種型別 empty 用於定義空元素,例如 any 表示元素內容為任意型別。元素內容中可以使用如下方式,...

讀取Xml文件的元素和屬性

1001張三男 1987 1 12 1002李四女 1986 5 12 1003王二男 1985 1 15 看看上面的文件,當我們把它載入到記憶體中之後,各個節點都有自己的型別,首先整個xml都是document文件 它則是xmldeclaration型別的 下面的stuinfo,student,i...

4XML 元素和屬性

1xml元素 xml 元素指的是從 且包括 開始標籤直到 且包括 結束標籤的部分。乙個元素可以包含 在上面的例項中,和 都有元素內容,因為他們包含其他元素。元素也有屬性 category children 和 有文字內容,因為他們包含文字。2.xml 元素必須遵循以下命名規則 3.xml屬性 屬性 ...