|
Subject: RE: [xsl] HELP! The XSLT may be easy, but I could not figure it out From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Mon, 7 Feb 2005 15:41:34 -0000 |
In 2.0, that's
<xsl:for-each-group select="data"
group-starting-with="data[ends-with(., 'A')]">
<group>
<xsl:apply-templates select="current-group()"/>
</group>
</xsl:for-each>
<xsl:template match="data">
<amount><xsl:value-of select="."/></amount>
</xsl:template>
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: piming.kuo@xxxxxxxxxxxxx [mailto:piming.kuo@xxxxxxxxxxxxx]
> Sent: 07 February 2005 14:39
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] HELP! The XSLT may be easy, but I could not
> figure it out
>
> Can anyone help? Thanks in advance.
>
> I have the xml document like:
>
> <response>
> <all>
> <data>12345A</data>
> <data>22345B</data>
> <data>32345A</data>
> <data>42345B</data>
> <data>52345B</data>
> <data>62345A</data>
> <data>72345A</data>
> <all>
> </response>
>
> And like to transform it to another xml document. For all
> <data> under the
> <all>, Start a new group
> with the <group> following with <amount> when the last
> character of context
> of the <data> is A; otherwise add the <amount> with the context when
> the last character of the context of the <data> is "B".
>
> I had tried with for-each and following, but could not get
> what I want.
>
> <response>
> <group>
> <amount>12345A</amount>
> <amount>22345B</amount>
> </group>
> <group>
> <amount>32345A</amount>
> <amount>42345B</amount>
> <amount>52345B</amount>
> </group>
> <group>
> <amount>62345A</amount>
> <amount>72345B</amount>
> </group>
> </response>
>
> Have a nice day!
>
> Piming Kuo
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] HELP! The XSLT may be eas, David Carlisle | Thread | [xsl] Move one node in xml down one, SianMace |
| Re: [xsl] Problem:Counting specific, Joris Gillis | Date | RE: [xsl] Decimal precision, Michael Kay |
| Month |