XML Schema keyref 元素

定义和用法

keyref 元素规定属性或元素值(或一组值)对应指定的 key 或 unique 元素的值。

keyref 元素必须按顺序包含下列元素:

selector 元素:

必须有一个且只有一个 selector 元素。

selector 元素包含一个 XPath 表达式,该表达式指定一个元素集,在元素集中,field 指定的值必须是唯一的。

field 元素

必须有一个或多个 field 元素。

每一个 field 元素均包含一个 XPath 表达式,该表达式指定对于由 selector 元素指定的元素集而言必须唯一的值(属性或元素值)。

如果有多个 field 元素,则 field 元素的组合必须是唯一的。 在此情况下,单个 field 元素的值对于选定元素不一定是唯一的,但所有字段的组合必须是唯一的。

元素信息

出现次数 一次
父元素 element
内容 annotation、field、selector

语法

<keyref
id=ID
name=NCName
refer=QName
any attributes
>

(annotation?,(selector,field+))

</include>

(? 符号声明在 key 元素中,元素可出现零次或一次,+ 符号声明元素必须出现一次或多次。)

属性 描述
id 可选。规定该元素的唯一的 ID。
name 必需。规定 key 元素的名称。
refer 必需。规定在该 schema(或由指定的命名空间指示的其他 schema)中定义的 key 或 unique 元素的名称。refer 值必须是限定名 (QName)。 类型可以包括命名空间前缀。
any attributes 可选。规定带有 non-schema 命名空间的任何其他属性。