xsl-list
[Top] [All Lists]

RE: [xsl] concatenate multiple attribute values and assign it to another attribute

2007-03-29 14:01:13
 
I am trying to concat the value of multiple occurence of an 
attribute output it as an attribute once.

<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" />

In XSLT 2.0 (correcting your XML input)

<testnode>
  <xsl:attribute name="att1" select="testnode/@att1" separator=","/>
  <xsl:attribute name="att2" select="testnode/@att2" separator=","/>
</testnode>

In 1.0

<testnode>
  <xsl:attribute name="att1">
    <xsl:for-each select="testnode">
      <xsl:value-of select="@att1"/>
      <xsl:if test="position()!=last()">,</xsl:if>
etc.

Michael Kay
http://www.saxonica.com/


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--