По счастливой случайности я активно занимаюсь разработкой на SharePoint 2010. Для отображения данных в нем использует XSTL 1.0 в котором отсутствует оператор for-each-group. Вот чтобы сделать группировку надо написать такой код:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:key name="имя-индекса" match="элементы-для-друппировки" use="ключ-для-группировки" />
<xsl:template>
<xsl:for-each
select="элементы-для-друппировки[count(. | key('имя-индекса', ключ-для-группировки)[1]) = 1]">
<!--преобразование для группы-->
<xsl:for-each select="key('имя-индекса', ключ-для-группировки)">
<!--преобразование для элементов группы-->
</xsl:for-each>
<!--преобразование для группы-->
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
