[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] concatenate multiple attribute values and assign it to another attribute
Subject: Re: [xsl] concatenate multiple attribute values and assign it to another attribute
From: Abel Braaksma <abel.online@xxxxxxxxx>
Date: Thu, 29 Mar 2007 22:47:02 +0200
|
Shaikh, Parvez wrote:
<test node att1="1" att2="a" />
<test node att1="2" att2="b" />
<test node att1="3" att2="c" />
<test node att1="4" att2="d" />
I want to output this as
<testnode att1="1,2,3,4" att2="a,b,c,d" />
How do you do this.
Well, that won't change my original answer, here is it applied to your
testdata:
<xsl:template match="/">
<testnode>
<xsl:attribute name="att1">
<xsl:apply-template select="//test/@att1" />
</xsl:attribute>
<xsl:attribute name="att2">
<xsl:apply-template select="//test/@att2" />
</xsl:attribute>
</testnode>
</xsl:template>
<xsl:template match="@att1 | @att2">
<xsl:value-of select="." />
<xsl:text>,</xsl:text>
</xsl:template>
<xsl:template match="@att1[last()] | @att2[last()]">
<xsl:value-of select="." />
</xsl:template>
Good luck with coding,
Cheers,
-- Abel Braaksma
|