} else if (groupAdjacent != null) {
algorithm = ForEachGroup.GROUP_ADJACENT;
key = groupAdjacent;
} else if (starting != null) {
algorithm = ForEachGroup.GROUP_STARTING;
key = new PatternSponsor(starting);
} else if (ending != null) {
algorithm = ForEachGroup.GROUP_ENDING;
key = new PatternSponsor(ending);
}
// Block action = new Block();
// compileChildren(exec, action, true);
Expression action = compileSequenceConstructor(exec, decl, iterateAxis(Axis.CHILD));