key 元素指定属性或元素值(或一组值)必须是指定范围内的键。键的范围为实例文档中的包含 element。键意味着数据在指定范围内应是唯一的、不为零的并且始终存在的。
key 元素必须按顺序包含下列元素:
必须有一个且只有一个 selector 元素。
selector 元素包含一个 XPath 表达式,该表达式指定一个元素集,在元素集中,field 指定的值必须是唯一的。
必须有一个或多个 field 元素。
每一个 field 元素均包含一个 XPath 表达式,该表达式指定对于由 selector 元素指定的元素集而言必须唯一的值(属性或元素值)。
如果有多个 field 元素,则 field 元素的组合必须是唯一的。 在此情况下,单个 field 元素的值对于选定元素不一定是唯一的,但所有字段的组合必须是唯一的。
出现次数 | 无限制 |
父元素 | element |
内容 | annotation、field、selector |
<key id=ID name=NCName any attributes > (annotation?,(selector,field+)) </key>
(? 符号声明在 key 元素中,元素可出现零次或一次,+ 符号声明元素必须出现一次或多次。)
属性 | 描述 |
---|---|
id | 可选。规定该元素的唯一的 ID。 |
name | 必需。规定 key 元素的名称。 |
any attributes | 可选。规定带有 non-schema 命名空间的任何其他属性。 |