溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

XML屬性的示例分析

發(fā)布時間:2021-09-17 15:16:58 來源:億速云 閱讀:122 作者:小新 欄目:編程語言

這篇文章主要介紹了XML屬性的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

跟HTML一樣,XML元素再開始標記處可以由元素屬性。
屬性通常包含一些關于元素的額外信息。
XML屬性
XML元素可以擁有屬性。
你一定還記得這樣的HTML代碼吧: <IMG SRC="computer.gif">。src是img元素的屬性,提供了關于img元素的額外信息。
在HTML中 (在XML中也一樣)元素的屬性提供了元素的額外信息。

<img src="computer.gif"> 
<a href="demo.asp">

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

<file type="gif">computer.gif</file>

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

<person sex="female">

也可以這樣寫:  

<person sex='female'>

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

<gangster name='George "Shotgun" Ziegler'>

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

<person sex="female"> 
<firstname>Anna</firstname> 
<lastname>Smith</lastname> 
</person> 
<person> 
<sex>female</sex> 
<firstname>Anna</firstname> 
<lastname>Smith</lastname> 
</person>

在第一個例子中,sex是一個屬性,在第二個例子中,sex則是一個子元素。這兩個例子都提供了相同的信息。
什么時候用屬性,什么時候用子元素沒有一個現(xiàn)成的規(guī)則可以遵循。我的經(jīng)驗是屬性在HTML中可能相當便利,但在XML中,你最好避免使用。
我喜歡的風格
我更愿意把數(shù)據(jù)存儲到子元素中。
下面的三個XML文檔包含了相同的信息:
第一個例子使用了data屬性:

<note date="12/11/99"> 
<to>Tove</to> 
<from>Jani</from> 
<heading>Reminder</heading> 
<body>Don't forget me this weekend!</body> 
</note>

第二個例子使用了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>

第三個例子使用了擴展的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>

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

<note day="12" month="11" year="99" 
to="Tove" from="Jani" heading="Reminder"  
body="Don't forget me this weekend!"> 
</note>

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

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

感謝你能夠認真閱讀完這篇文章,希望小編分享的“XML屬性的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業(yè)資訊頻道,更多相關知識等著你來學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

xml
AI