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
>
、
以及
元素提取出來,並產生以下的輸出:
想象一下,之後這個 xml 文件作者又向這個文件新增了一些額外的資訊:message
to: george
from: john
don't forget the meeting!
那麼這個應用程式會中斷或崩潰嗎?>
>
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 屬性是一樣的。這個例子向我們演示了這種情況:
上面的 id 僅僅是乙個識別符號,用於標識不同的便簽。它並不是便簽資料的組成部分。>
"501"
>
>
georgeto
>
>
johnfrom
>
>
reminderheading
>
>
don't forget the meeting!body
>
note
>
"502"
>
>
johnto
>
>
georgefrom
>
>
re: reminderheading
>
>
i will notbody
>
note
>
messages
>
在此我們極力向您傳遞的理念是:元資料(有關資料的資料)應當儲存為屬性,而資料本身應當儲存為元素。
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屬性 屬性 ...