This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: copy nodes as keys
- From: Jarno dot Elovirta at nokia dot com
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Wed, 18 Sep 2002 09:20:25 +0300
- Subject: RE: [xsl] copy nodes as keys
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hi,
> Can I use xsl:key for this?
> I want to copy nodes based on a id-attribute from one
> location in the document to another,
Sure,
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:key name="extrachairstuff" match="extrachairstuff" use="@id" />
<xsl:template match="chair">
<xsl:copy>
<xsl:apply-templates select="@*|node()|key('extrachairstuff', @id)"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Put the key method into it's own apply-templates, if the referenced extrachairstuff elements don't always appear after the refence.
Jarno - Village People: Y.M.C.A.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list