属性是 XML 元素的一部分。一个元素可以有多个唯一属性。属性提供了 XML 元素的更多信息。更准确地说,它们定义了元素的属性(property)。XML 属性始终是一个_名-值_对。
语法
XML 属性语法如下:
<element-name attribute1 attribute2 > ....content.. </element-name>
其中 attribute1 和 attribute2 具有以下形式:
name = value
value 必须使用双引号( )或单引号(' ')包裹。这里 attribute1 和 attribute2 都是唯一的属性标签。
属性被用来给元素添加一个唯一标签,分类标签,添加布尔值属性或者关联一些字符串数据。下面的示例演示了如何使用属性:
<?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>
属性被用来区分同名元素。当我们不希望为每种情况都创建一个新元素时。我们可以使用属性添加更多的细节以区分两个或多个类似的元素。
在上面的例子中,我们通过包含 category 属性分类了植物,并且给每个元素分配了不同的值。因此我们就有了两个 plants 类别,一个是 flowers,另一个是 color。这样我们都得到了两个带有不同属性的 plants 元素。
你还可以看到我们在 XML 的开头定义了这个属性。
属性类型 | 描述 |
---|---|
StringType | 接受字符串值作为值。CDATA 是一个 StringType。CDATA 也是字符数据。这也意味着任何非标记字符都是合法的属性。 |
TokenizedType | |
EnumeratedType |
同一起始标签或者空元素标签中属性名只能出现一次。
属性必须使用属性属性列表声明(Attribute-List Declaration)定义在文档类型定义(DTD)中。
属性值中不能直接或者间接引用包含外部实体。
属性值中被直接或间接提及的任何实体的替代文本都不能包含小于号(<)。
<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>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。