主頁 > 知識(shí)庫(kù) > XML指南——XML 屬性

XML指南——XML 屬性

熱門標(biāo)簽:r語言數(shù)據(jù)可視化地圖標(biāo)注 東營(yíng)電銷 400電話辦理包年 高德地圖地圖標(biāo)注服務(wù)中心 南寧網(wǎng)絡(luò)外呼系統(tǒng)運(yùn)營(yíng)商 本地電話機(jī)器人 隨州外呼調(diào)研系統(tǒng) 如何修改多個(gè)百度地圖標(biāo)注 微信地圖標(biāo)注合并了
  
跟HTML一樣,XML元素再開始標(biāo)記處可以由元素屬性。
屬性通常包含一些關(guān)于元素的額外信息。



XML屬性
XML元素可以擁有屬性。
你一定還記得這樣的HTML代碼吧: IMG SRC="computer.gif">。src是img元素的屬性,提供了關(guān)于img元素的額外信息。
在HTML中 (在XML中也一樣)元素的屬性提供了元素的額外信息。
img src="computer.gif">
a href="demo.asp">


書信提供的信息通常不是數(shù)據(jù)的一部分。在下面的例子中,類型和數(shù)據(jù)毫不相關(guān),但對(duì)于操作這個(gè)元素的軟件來說卻相當(dāng)重要。
file type="gif">computer.gif/file>





引用風(fēng)格"female" 還是 'female'?
屬性值必須用引號(hào)引著。單引號(hào)、雙引號(hào)都可以使用。例如一個(gè)人的性別,person元素可以這樣寫:
person sex="female">


也可以這樣寫: 
person sex='female'>


上面的兩種寫法在一般情況下是沒有區(qū)別的,使用雙引號(hào)的應(yīng)用更普遍一些。但是在某些特殊的情況下就必須使用單引號(hào),比如下面的例子:
gangster name='George "Shotgun" Ziegler'>

  


使用子元素還是使用屬性
數(shù)據(jù)既可以存儲(chǔ)在子元素中也可以存儲(chǔ)在屬性中。
請(qǐng)看下面的例子:
person sex="female">
firstname>Anna/firstname>
lastname>Smith/lastname>
/person>


person>
sex>female/sex>
firstname>Anna/firstname>
lastname>Smith/lastname>
/person>


在第一個(gè)例子中,sex是一個(gè)屬性,在第二個(gè)例子中,sex則是一個(gè)子元素。這兩個(gè)例子都提供了相同的信息。
什么時(shí)候用屬性,什么時(shí)候用子元素沒有一個(gè)現(xiàn)成的規(guī)則可以遵循。我的經(jīng)驗(yàn)是屬性在HTML中可能相當(dāng)便利,但在XML中,你最好避免使用。



我喜歡的風(fēng)格
我更愿意把數(shù)據(jù)存儲(chǔ)到子元素中。
下面的三個(gè)XML文檔包含了相同的信息:
第一個(gè)例子使用了data屬性:
note date="12/11/99">
to>Tove/to>
from>Jani/from>
heading>Reminder/heading>
body>Don't forget me this weekend!/body>
/note>


第二個(gè)例子使用了data元素:
note>
date>12/11/99/date>
to>Tove/to>
from>Jani/from>
heading>Reminder/heading>
body>Don't forget me this weekend!/body>
/note>


第三個(gè)例子使用了擴(kuò)展的data元素: (這就是我推薦的樣式):
note>
date>
day>12/day>
month>11/month>
year>99/year>
/date>
to>Tove/to>
from>Jani/from>
heading>Reminder/heading>
body>Don't forget me this weekend!/body>
/note> 





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





屬性規(guī)則的例外
規(guī)則總是有例外的。
我的關(guān)于屬性的規(guī)則也有一個(gè)例外:
有些時(shí)候應(yīng)該為一個(gè)元素設(shè)計(jì)一個(gè)ID引用,通過這個(gè)ID可以引用存取特定的XML元素,就象HTML中的name和id屬性一樣。請(qǐng)看下面的例子:
messages>
note ID="501">
to>Tove/to>
from>Jani/from>
heading>Reminder/heading>
body>Don't forget me this weekend!/body>
/note>
note ID="502">
to>Jani/to>
from>Tove/from>
heading>Re: Reminder/heading>
body>I will not!/body>
/note> 
/messages>


在上面的例子中,ID屬性就相當(dāng)于一個(gè)計(jì)數(shù)器,或者是一個(gè)唯一的標(biāo)識(shí)符,在XML文檔中標(biāo)識(shí)不同的便條信息,他不是便條信息的一部分。
我們所要盡力向讀者說明的是:元數(shù)據(jù)(與數(shù)據(jù)有關(guān)的數(shù)據(jù))應(yīng)該以屬性的方式存儲(chǔ),而數(shù)據(jù)本身應(yīng)該以元素的形式存儲(chǔ)。

標(biāo)簽:果洛 西雙版納 益陽 寧夏 宿遷 德州 黃石 拉薩

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《XML指南——XML 屬性》,本文關(guān)鍵詞  XML,指南,屬性,XML,指南,屬性,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《XML指南——XML 屬性》相關(guān)的同類信息!
  • 本頁收集關(guān)于XML指南——XML 屬性的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章

    上一篇:XML指南——XML編碼

    下一篇:XML簡(jiǎn)介