[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] Copy and group XML
Subject: Re: [xsl] Copy and group XML From: Jacobus Reyneke <jacobusreyneke@xxxxxxxxx> Date: Wed, 26 Jan 2011 21:40:47 +0200 |
Thanks Michael, it fixed one problem but introduced another. Input XML: <play> <title>MACBETH</title> <scene act="1"> <stage-direction>A wild open place. Thunder and lightning. Three Witches enter.</stage-direction> <actor>1ST WITCH</actor> <speach>When shall we three meet again</speach> <speach>In thunder, lightning, or in rain?</speach> <actor>2ND WITCH</actor> <speach>When the rough-and-tumble's done,</speach> <speach>When the battle's lost and won.</speach> .... </scene act="1"> .... </play> Transformation: <xsl:template match="play"> <xsl:for-each-group select="*" group-adjacent="(@act, '?')[1]"> <xsl:choose> <xsl:when test="@act"> <act> <xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </act> </xsl:when> <xsl:otherwise> <xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:otherwise> </xsl:choose> </xsl:for-each-group> </xsl:template> <xsl:template match="@*|node()"> <xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:template> Result: Only the first scene of every act grouping is copied. The other scenes are dropped. Why would this be?
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Copy and group XML, Michael Kay | Thread | Re: [xsl] Copy and group XML, David Carlisle |
Re: [xsl] Copy and group XML, Michael Kay | Date | Re: [xsl] Copy and group XML, David Carlisle |
Month |