M Balaji wrote:
In a "current-group()" I'm getting
<p>Group strats here</p>
<div>testing for division</div>
<p>It seeks to improve upon DTDs...</p>
<p>groupin should be end here</p>
<title>title</title>
<sec>The selection need to be end</sec>
I wand to group the "p" tag until last "p" tag.
<group><p>Group strats here</p>
<div>testing for division</div></group>
<group>
<p>It seeks to improve upon DTDs...</p>
</group>
<group>
<p>groupin should be end here</p>
</group>
<title>title</title>
<sec>The selection need to be end</sec>
Here is a sample stylesheet
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:output indent="yes"/>
<xsl:template match="root">
<xsl:copy>
<xsl:for-each-group select="*" group-starting-with="p">
<group>
<xsl:choose>
<xsl:when test="position() ne last()">
<xsl:copy-of select="current-group()"/>
</xsl:when>
<xsl:otherwise>
<xsl:copy-of select="."/>
</xsl:otherwise>
</xsl:choose>
</group>
<xsl:if test="position() eq last()">
<xsl:copy-of select="current-group() except ."/>
</xsl:if>
</xsl:for-each-group>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
when applied to
<root>
<p>Group strats here</p>
<div>testing for division</div>
<p>It seeks to improve upon DTDs...</p>
<p>groupin should be end here</p>
<title>title</title>
<sec>The selection need to be end</sec>
</root>
it outputs
<root>
<group>
<p>Group strats here</p>
<div>testing for division</div>
</group>
<group>
<p>It seeks to improve upon DTDs...</p>
</group>
<group>
<p>groupin should be end here</p>
</group>
<title>title</title>
<sec>The selection need to be end</sec>
</root>
--
Martin Honnen
http://msmvps.com/blogs/martin_honnen/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--