Subject: Re: [xsl] xsl grouping problem From: David Carlisle <davidc@xxxxxxxxx> Date: Fri, 9 Sep 2005 15:14:41 +0100 |
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output indent="yes"/> <xsl:template match="*"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates/> </xsl:copy> </xsl:template> <xsl:template match="*[line]"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:for-each-group select="*" group-adjacent="exists(self::line|self::line_first|self::line_last)"> <xsl:choose> <xsl:when test="current-grouping-key()"> <stanza> <xsl:apply-templates select="current-group()"/> </stanza> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="current-group()"/> </xsl:otherwise> </xsl:choose> </xsl:for-each-group> </xsl:copy> </xsl:template> </xsl:stylesheet> $ saxon8 stanza.xml stanza.xsl <?xml version="1.0" encoding="UTF-8"?> <chapter> <para>This is a paragraph in the chapter</para> <stanza> <line_first>This is first line of a stanza of poetry</line_first> <line>This is line of poetry</line> <line>This is line of poetry</line> <line>This is line of poetry</line> <line_last>This is last line of a stanza of poetry</line_last> </stanza> <para>This is a paragraph in the chapter</para> </chapter> ________________________________________________________________________ This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] xsl grouping problem, Jeff Hatch | Thread | Re: [xsl] xsl grouping problem, Mukul Gandhi |
Re: [xsl] unwanted xmlns and shape , David Carlisle | Date | Re: [xsl] unwanted xmlns and shape , Manfred Staudinger |
Month |