On 28.03.2018 18:22, Rick Quatro rick(_at_)rickquatro(_dot_)com wrote:
OK, I think I get it. You are grouping on a string derived from the node
name instead of the node itself. This doesn't work for my general
intent, because the other elements may not all be the same. For example,
I might have this:
<steps>
<step>
<para>Intro stuff</para>
<para>More intro stuff</para>
<figure/>
<figure/>
<para>Conclusion stuff</para>
<table>More conclusion stuff</table>
<para>More conclusion stuff</para>
</step>
</steps>
and I would want the three elements following the last figure to be in a
single group.
<xsl:template match="step">
<xsl:copy>
<xsl:for-each-group select="*" group-adjacent="if
(not(boolean(self::figure))) then true() else (position() - 1 idiv 1)">
<group>
<xsl:apply-templates select="current-group()"/>
</group>
</xsl:for-each-group>
</xsl:copy>
</xsl:template>
might do
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--