XSLT 2 - for-each-group group中的变量值 -

时间:2017-02-27 08:58:55

标签: xml xslt xpath xslt-1.0 xslt-2.0

在将一些XSLT 1代码移植到XSLT 2的过程中,我遇到了这个小片段:

generate-id( ) = generate-id(key('key_name', concat($variable, '+', ../../@property_name, '+', node_name)))

我以前见过这个,发现它被称为Muenchian Grouping - 一种在XSLT 1中对节点进行分组的方法,因为当时每个组都不可用。

在XSLT 2中,这可以写成如下:

<xsl:for-each-group select="xpath_here" group-by="concat($variable, '+', ../../@property_name, '+', node_name)">

令我感到奇怪的是,在分组语法中使用了$variable$variable先前已声明,并包含一个带有值的节点。

我的问题是 - $variable实际上是出于某种目的,还是仅仅是多余的?或者更确切地说,为了简化,指向分组元素范围之外的静态值的变量是否会以任何方式影响分组?

0 个答案:

没有答案