<xsl:key> 元素
<xsl:key>
元素声明一个命名的键 — 即为 XML 文档中指定的元素分配的名值对。 该键与 XPath 表达式中的 key()
函数组合使用,帮助您有效地在复杂 XML 文档中访问分配的元素。
<xsl:key
name = QName
match = Pattern
use = Expression
</xsl:key>
特性
- name
指定该键的限定名。
- match
指定标识持有该键的节点的模式。
- use
指定要作为该键的值使用的表达式。 键值可以是以下各项之一:特性、子元素或匹配元素的内容。
元素信息
出现次数 |
无限制 |
父元素 |
|
子元素 |
(无子元素) |
备注
可以使用键作为通用的 ID,用于在 XML 文档中引用元素。 要这样做,先使用 <xsl:key>
为节点声明一个键。 然后调用 key() 函数检索节点,作为函数参数提供键的名称和值。 有关更多信息,请参见下面的示例。
一个节点上可以声明多个键。 这样可以通过多种方式查询节点。
在处理相对较大的 XML 文档时,键通常是查询元素的一种比较快的方式。 这是因为键本身就会提前为所需节点的位置编制索引。 但是,在编译 <xsl:key>
元素时,XSLT 处理器不会创建此类索引,除非对键调用 key()
函数。 这样可以确保只在需要时才执行耗时比较长的索引操作。
在样式表中,<xsl:key>
元素是顶级元素,不能出现在模板中。 为了避免循环引用,不能使用参数或变量引用作为 <xsl:key>
匹配的一部分。
示例
以下主题提供 <xsl:key>
元素的示例。