XML中的屬性學習教程

屬性是 XML 元素的一部分。一個元素可以有多個唯一屬性。屬性提供了 XML 元素的更多信息。更準確地說,它們定義了元素的屬性(property)。XML 屬性始終是一個_名-值_對。
語法
XML 屬性語法如下:
- <element-name attribute1 attribute2 >
- ....content..
- </element-name>
其中 attribute1 和 attribute2 具有以下形式:
- name = "value"
value 必須使用雙引號(" ")或單引號(' ')包裹。這里 attribute1 和 attribute2 都是唯一的屬性標簽。
屬性被用來給元素添加一個唯一標簽,分類標簽,添加布爾值屬性或者關聯(lián)一些字符串數(shù)據(jù)。下面的示例演示了如何使用屬性:
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE garden [
- <!ELEMENT garden (plants)*>
- <!ELEMENT plants (#PCDATA)>
- <!ATTLIST plants category CDATA #REQUIRED>
- ]>
- <garden>
- <plants category="flowers" />
- <plants category="shrubs">
- </plants>
- </garden>
屬性被用來區(qū)分同名元素。當我們不希望為每種情況都創(chuàng)建一個新元素時。我們可以使用屬性添加更多的細節(jié)以區(qū)分兩個或多個類似的元素。
在上面的例子中,我們通過包含 category 屬性分類了植物,并且給每個元素分配了不同的值。因此我們就有了兩個 plants 類別,一個是 flowers,另一個是 color。這樣我們都得到了兩個帶有不同屬性的 plants 元素。
你還可以看到我們在 XML 的開頭定義了這個屬性。
屬性類型
下表列出了屬性的類型:
屬性類型 | 描述 |
---|---|
StringType | 接受字符串值作為值。CDATA 是一個 StringType。CDATA 也是字符數(shù)據(jù)。這也意味著任何非標記字符都是合法的屬性。 |
TokenizedType |
這是一個限制類型。語法中指出的有效性約束會在屬性值規(guī)范化之后應用。下面是 TokenizedType 屬性:
|
EnumeratedType |
在它的聲明中包含一個預定義的值列表。在這里,它必須分配一個值。有兩種類型的枚舉屬性:
|
元素屬性規(guī)則
以下是定義屬性需要遵循的規(guī)則:
同一起始標簽或者空元素標簽中屬性名只能出現(xiàn)一次。
屬性必須使用屬性屬性列表聲明(Attribute-List Declaration)定義在文檔類型定義(DTD)中。
屬性值中不能直接或者間接引用包含外部實體。
屬性值中被直接或間接提及的任何實體的替代文本都不能包含小于號(<)。
將數(shù)據(jù)存儲在子元素中
一個案例中使用了日期屬性:
- <note date="12/11/2002">
- <to>Tove</to>
- <from>Jani</from>
- <heading>Reminder</heading>
- <body>Don't forget me this weekend!</body>
- </note>
第二個案例中使用了日期元素:
- <note>
- <date>12/11/2002</date>
- <to>Tove</to>
- <from>Jani</from>
- <heading>Reminder</heading>
- <body>Don't forget me this weekend!</body>
- </note>
第三個案例中使用了擴展日期元素(這是我們常用的方法):
- <note>
- <date>
- <day>12</day>
- <month>11</month>
- <year>2002</year>
- </date>
- <to>Tove</to>
- <from>Jani</from>
- <heading>Reminder</heading>
- <body>Don't forget me this weekend!</body>
- </note>
相關文章
XML實例教程:nodeName、nodeValue和nodeType屬性
本文詳細介紹了nodeName、nodeValue和nodeType屬性2012-06-24XML入門教程:屬性聲明-XML/XSLT-網(wǎng)頁制作-網(wǎng)頁教學網(wǎng)
一個有效的XML文檔,必須對元素的屬性進行聲明。使用ATTLIST聲明來完成,一個ATTLIST可以為一個元素類型聲明多個屬性。 一個有效的XML文檔,必須對元素的2009-04-02