Subject: Re: repetition using for-each (and generating "attributes")
From: David Carlisle <davidc@xxxxxxxxx>
Date: Mon, 23 Jul 2001 16:08:39 +0100
|
<POINT>
<xsl:for-each select="//Polygon">
<xsl:attribute name="x">
this makes a single POINT element and then repeatedly sets it x
attribute for every Polygon element in the source. Each time it sets it
to <xsl:value-of select="Point/@x"/> which selects all the x
attributes of Point children of the current node and then discards all
but the first, and takes its value.
So the end result is that POINTS gets an x attribute which comes from
the first Point child of the last Polygon in the document.
I think you just want:
<xsl:template match="Polygon">
<RING>
<xsl:copy-of selct="Point"/>
</RING>
</xsl:template>
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|