国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > XML > 正文

XML指南——XML 屬性

2024-09-05 20:55:13
字體:
來源:轉載
供稿:網友

  
跟HTML一樣,XML元素再開始標記處可以由元素屬性。
屬性通常包含一些關于元素的額外信息。



XML屬性
XML元素可以擁有屬性。
你一定還記得這樣的HTML代碼吧: 。src是img元素的屬性,提供了關于img元素的額外信息。
在HTML中 (在XML中也一樣)元素的屬性提供了元素的額外信息。




書信提供的信息通常不是數據的一部分。在下面的例子中,類型和數據毫不相關,但對于操作這個元素的軟件來說卻相當重要。
computer.gif





引用風格"female" 還是 'female'?
屬性值必須用引號引著。單引號、雙引號都可以使用。例如一個人的性別,person元素可以這樣寫:



也可以這樣寫: 



上面的兩種寫法在一般情況下是沒有區別的,使用雙引號的應用更普遍一些。但是在某些特殊的情況下就必須使用單引號,比如下面的例子:


  


使用子元素還是使用屬性
數據既可以存儲在子元素中也可以存儲在屬性中。
請看下面的例子:

Anna
Smith





female
Anna
Smith




在第一個例子中,sex是一個屬性,在第二個例子中,sex則是一個子元素。這兩個例子都提供了相同的信息。
什么時候用屬性,什么時候用子元素沒有一個現成的規則可以遵循。我的經驗是屬性在HTML中可能相當便利,但在XML中,你最好避免使用。



我喜歡的風格
我更愿意把數據存儲到子元素中。
下面的三個XML文檔包含了相同的信息:
第一個例子使用了data屬性:

Tove
Jani
Reminder
Don't forget me this weekend!




第二個例子使用了data元素:

12/11/99
Tove
Jani
Reminder
Don't forget me this weekend!




第三個例子使用了擴展的data元素: (這就是我推薦的樣式):


12
11
99


Tove
Jani
Reminder
Don't forget me this weekend!

 





避免使用屬性?
應該避免使用屬性么?
這里有一些使用屬性引發的問題: 
屬性不能包含多個值(子元素可以)。 
屬性不容易擴展。 
屬性不能夠描述結構(子元素可以)。 
屬性很難被程序代碼處理。 
屬性值很難通過DTD進行測試。 
如果使用屬性來存儲數據,那么所編寫的XML文檔一定很難閱讀和操作。盡量使用元素來描述數據,僅使用屬性來描述那些與數據關系不大的額外信息。
不要象下面的例子那樣(如果你那么做了說明你還沒有明白上面的觀點)。
to="Tove" from="Jani" heading="Reminder" 
body="Don't forget me this weekend!">

 





屬性規則的例外
規則總是有例外的。
我的關于屬性的規則也有一個例外:
有些時候應該為一個元素設計一個ID引用,通過這個ID可以引用存取特定的XML元素,就象HTML中的name和id屬性一樣。請看下面的例子:


Tove
Jani
Reminder
Don't forget me this weekend!



Jani
Tove
Re: Reminder
I will not!

 




在上面的例子中,ID屬性就相當于一個計數器,或者是一個唯一的標識符,在XML文檔中標識不同的便條信息,他不是便條信息的一部分。
我們所要盡力向讀者說明的是:元數據(與數據有關的數據)應該以屬性的方式存儲,而數據本身應該以元素的形式存儲。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 泸西县| 临安市| 宁河县| 长子县| 云浮市| 犍为县| 西乌珠穆沁旗| 白朗县| 沅江市| 房山区| 贵南县| 孝感市| 陆丰市| 雷波县| 鄢陵县| 惠来县| 宜川县| 大关县| 三明市| 和政县| 双峰县| 洪泽县| 孝昌县| 嘉义市| 宝山区| 德格县| 循化| 耒阳市| 突泉县| 黄山市| 济源市| 阳春市| 阜南县| 高邮市| 宁国市| 远安县| 承德市| 淮滨县| 赤壁市| 大渡口区| 丹东市|