在XSLT2中的for-each-group语句内,焦点变为一组代表性元素,每个组中有一个元素。这意味着,例如,last()返回组的数量(因为它等于代表元素的数量,因此是焦点的“大小”)。 Position()返回(基本上)组号,因为它是代表元素序列中讨论组的代表元素的位置等。
我的问题是,是否可以在Xpath2语句中引用这些代表性元素的集合。类似于current-group()的东西,除了包含所有代表性元素的集合(每组中有一个),而不是当前组中所有元素的集合。
答案 0 :(得分:2)
在for-each-groups内部,您可以处理每个组而不是所有组。因此,要找到所有组中的第一项,您需要
<xsl:variable name="reps" as="node()*">
<xsl:for-each-group select="foo" group-by="bar">
<xsl:sequence select="."/>
</xsl:for-each-group>
</xsl:variable>
在我的理解中。
答案 1 :(得分:2)
使用强>:
current-group()[1]
或:
current-group()[last()]