left up right
Grouping
<xsl:for-each-group group-by="expression"  />
<xsl:for-each-group group-adjacent="expression"  />
<xsl:for-each-group group-starting-with="pattern"  />
<xsl:for-each-group group-ending-with="pattern"  />
current-group()
current-grouping-key()

group-by
Expression gives a value by which items in the population are grouped
group-adjacent
Expression gives a value by which items in the population are grouped but items must be adjacent
group-starting-with
Pattern defines a criteria that starts a group. All items belong to that group until another item matches the pattern
group-ending-with
Pattern defines a criteria that ends a group. All items belong to that group until another item matches the pattern
current-group()
Contains all the nodes in the current group
current-group-key()
Contains the value of the expression used to group in group-by or group-adjacent