generate-id() 函数是XSLT中的一个用于生成唯一标识符的函数。它返回一个字符串,该字符串在当前XSLT转换中是唯一的,可用于标识文档中的某个节点。

以下是 generate-id() 函数的基本语法:
generate-id([node-set])

  •  node-set(可选): 要生成唯一标识符的节点集合。如果省略此参数,则生成整个文档的唯一标识符。


以下是一个简单的示例,演示如何在XSLT中使用 generate-id() 函数:
<!-- 输入 XML -->
<root>
  <item>Item 1</item>
  <item>Item 2</item>
  <item>Item 3</item>
</root>

<!-- XSLT 转换 -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:template match="item">
    <output>
      <!-- 使用 generate-id() 函数生成唯一标识符 -->
      <id>
        <xsl:value-of select="generate-id()" />
      </id>
      <!-- 使用 generate-id() 函数生成特定节点的唯一标识符 -->
      <id-for-node>
        <xsl:value-of select="generate-id(.)" />
      </id-for-node>
    </output>
  </xsl:template>

</xsl:stylesheet>

在这个例子中,对于每个 <item> 元素,使用 generate-id() 函数生成一个唯一标识符,并在输出中显示。通过传递节点 generate-id(.),也可以生成特定节点的唯一标识符。

生成的唯一标识符是字符串,其形式不可预测,通常是带有前缀的一组字符,确保在当前文档中的唯一性。


转载请注明出处:http://www.pingtaimeng.com/article/detail/12252/XML