[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

[xsl] copying raw xml and changing values...


Subject: [xsl] copying raw xml and changing values...
From: "Graham Walsh" <graham_walsh50@xxxxxxxxxxx>
Date: Wed, 16 Feb 2005 07:28:48 -0500

Hi,

I can't seem to get this right... it's buggin me as I'm very new to xsl and I'm under pressure here :(

I've got XML that looks something like this...


<Trades> <Trade> <TradeId>FOO</TradeId> <ExtTradeId>300</TradeId> </Trade>

               <Trade>
	   <TradeId>FOO</TradeId>
                  <ExtTradeId>301</TradeId>
	</Trade>

               <Trade>
	   <TradeId>FOO</TradeId>
                  <ExtTradeId>302</TradeId>
	</Trade>

</Trades>

I want to iterate over all the "Trade" elements and replace the ExtTradeId attribute with the value contained in the TradeId field. In addition I want to use a counter to replace the TradeId with the value of counter , and increment the counter each time.

I can't for the life of me see how to do this. My output is raw XML so I'm using xsl:copy and xsl:for-each but am making a hames of it altogether.


<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
<xsl:for-each select="Trade">
<xsl:value-of select="TradeId"/>
</xsl:for-each>



</xsl:copy> </xsl:template>


Can anybody give me some pointers. I think a script might be better in this case but I'm on the xsl track so I might as well stay on it.


thanks MILLIONS to anybody that can provide help... my boss is givin' me grief over this.... how to be an XSL expert in 12 hours! :( :(

G


Current Thread
Keywords