XML中的属性学习教程

2023-12-08 0 749

属性XML 元素的一部分。一个元素可以有多个唯一属性。属性提供了 XML 元素的更多信息。更准确地说,它们定义了元素的属性(property)。XML 属性始终是一个_名-值_对。

语法XML 属性语法如下:

XML/HTML Code复制内容到剪贴板

  • <element-nameattribute1attribute2>
  • ….content..
  • </element-name>
  • 其中 attribute1 和 attribute2 具有以下形式:

    XML/HTML Code复制内容到剪贴板

  • name="value"
  • value 必须使用双引号(" ")或单引号(\’ \’)包裹。这里 attribute1 和 attribute2 都是唯一的属性标签。

    属性被用来给元素添加一个唯一标签,分类标签,添加布尔值属性或者关联一些字符串数据。下面的示例演示了如何使用属性:

    XML/HTML Code复制内容到剪贴板

  • <?xmlversion="1.0"encoding="UTF-8"?>
  • <!DOCTYPEgarden[
  • <!ELEMENTgarden(plants)*>
  • <!ELEMENTplants(#PCDATA)>
  • <!ATTLISTplantscategoryCDATA#REQUIRED>
  • ]>
  • <garden>
  • <plantscategory="flowers"/>
  • <plantscategory="shrubs">
  • </plants>
  • </garden>
  • 属性被用来区分同名元素。当我们不希望为每种情况都创建一个新元素时。我们可以使用属性添加更多的细节以区分两个或多个类似的元素。

    在上面的例子中,我们通过包含 category 属性分类了植物,并且给每个元素分配了不同的值。因此我们就有了两个 plants 类别,一个是 flowers,另一个是 color。这样我们都得到了两个带有不同属性的 plants 元素。

    你还可以看到我们在 XML 的开头定义了这个属性。

    属性类型下表列出了属性的类型:

    属性类型
    描述
    StringType
    接受字符串值作为值。CDATA 是一个 StringType。CDATA 也是字符数据。这也意味着任何非标记字符都是合法的属性。
    TokenizedType

    这是一个限制类型。语法中指出的有效性约束会在属性值规范化之后应用。下面是 TokenizedType 属性:

    • ID:用来指定元素是唯一的。
    • IDREF:用来引用一个ID,该ID命名了另一个元素。
    • IDREFS:用来引用一个元素的所有 IDs。
    • ENTITY:指示属性将表示文档中的一个外部实体。
    • ENTITYS:指示属性将表示文档中的一个外部实体。
    • NMTOKEN:类似限制哪些数据可以是属性一部分的CDATA。
    • NMTOKENS:类似限制哪些数据可以是属性一部分的CDATA。
    EnumeratedType

    在它的声明中包含一个预定义的值列表。在这里,它必须分配一个值。有两种类型的枚举属性:

    • NotationType:它声明元素在 XML 文档的某些地方将被引用为一个 NOTATION 声明。
    • Enumeration:枚举允许我们定义一个特定值列表,属性值必须与之匹配。

    元素属性规则以下是定义属性需要遵循的规则:

    同一起始标签或者空元素标签中属性名只能出现一次。属性必须使用属性属性列表声明(Attribute-List Declaration)定义在文档类型定义(DTD)中。属性值中不能直接或者间接引用包含外部实体。属性值中被直接或间接提及的任何实体的替代文本都不能包含小于号(<)。

    将数据存储在子元素中一个案例中使用了日期属性:

    XML/HTML Code复制内容到剪贴板

  • <notedate="12/11/2002">
  • <to>Tove</to>
  • <from>Jani</from>
  • <heading>Reminder</heading>
  • <body>Don\’tforgetmethisweekend!</body>
  • </note>
  • 第二个案例中使用了日期元素:

    XML/HTML Code复制内容到剪贴板

  • <note>
  • <date>12/11/2002</date>
  • <to>Tove</to>
  • <from>Jani</from>
  • <heading>Reminder</heading>
  • <body>Don\’tforgetmethisweekend!</body>
  • </note>
  • 第三个案例中使用了扩展日期元素(这是我们常用的方法):

    XML/HTML Code复制内容到剪贴板

  • <note>
  • <date>
  • <day>12</day>
  • <month>11</month>
  • <year>2002</year>
  • </date>
  • <to>Tove</to>
  • <from>Jani</from>
  • <heading>Reminder</heading>
  • <body>Don\’tforgetmethisweekend!</body>
  • </note>
  • 收藏 (0) 打赏

    感谢您的支持,我会继续努力的!

    打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
    点赞 (0)

    悠久资源 XML/XSLT XML中的属性学习教程 https://www.u-9.cn/sheji/xml/129809.html

    常见问题

    相关文章

    发表评论
    暂无评论
    官方客服团队

    为您解决烦忧 - 24小时在线 专业服务