RE: [xsl] Add attribute to copied element

Subject: RE: [xsl] Add attribute to copied element
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 2 Feb 2005 17:13:07 -0000
Use 

  xsl:for-each select=""
    xsl:copy
      xsl:attribute
    /xsl:copy
  /xsl:for-each

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

> -----Original Message-----
> From: Robert Soesemann [mailto:rsoesemann@xxxxxxxxxxx] 
> Sent: 02 February 2005 16:50
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] Add attribute to copied element
> 
> How can I copy elements from a key and add an attribute to 
> every copied
> element containing its position in the sequence.
> 
> E.g. The key "contains" 3 my-include tags:
> <my-include src="a"/>
> <my-include src="b"/>
> <my-include src="c"/>
> 
> As output I want
> <my-include src="a" position="1"/>
> <my-include src="b" position="2"/>
> <my-include src="c" position="3"/>
> 
> Right now I have:
> <xsl:copy-of select="key('textItems',generate-id())[name() =
> 'my-include']"/>
> <xsl:attribute name="position">
> 	<xsl:value-of select="position()"/>
> </xsl:attribute>
> 
> But I know its wrong. How could I do this?
> 
> Robert

Current Thread