I have a RTF with following declaration
<xsl:variable name="professionLevel">
<xsl:for-each select="//profession">
<xsl:variable name="nameval" select="@name"/>
<xsl:variable name="parentval" select="@parent"/>
<xsl:for-each
select="exslt:node-set($leverreference)/*">
<xsl:variable name="referid" select="@levelref"/>
<xsl:if test="$referid=$parentval">
<xsl:copy>
<xsl:copy-of select="$nameval"/>
</xsl:copy>
</xsl:if>
</xsl:for-each>
</xsl:for-each>
</xsl:variable>
That looks a very strange definition. The select expression on your
inner fo-each doesn't depend on the current node so you will iterate
over all of $leverreference)/* repeatedly, as many times as you have
profession elements in your original source, is that really what you
want?
The above is euivalent to
<xsl:variable name="professionLevel">
<xsl:for-each select="//profession">
<xsl:variable name="nameval" select="@name"/>
<xsl:variable name="parentval" select="@parent"/>
<xsl:for-each
select="exslt:node-set($leverreference)/*[(_at_)levelref=$parentval]">
<xsl:copy>
<xsl:copy-of select="$nameval"/>
</xsl:copy>
</xsl:for-each>
</xsl:for-each>
</xsl:variable>
Note that although the variable is called nameval it does not store an
attribute value, but the attribute node so
<xsl:copy>
<xsl:copy-of select="$nameval"/>
</xsl:copy>
generates an empty element )with name the same as the element in
$leverreference) with a name attribute.
So
<xsl:for-each
select="exslt:node-set($professionLevel)/*">
<xsl:value-of select="."/>
</xsl:for-each>
will select a set of empty elements, <xsl:value-of select="."/> on each
of them will be the empty string.
You need to use <xsl:value-of select="@name"/> here in order to get any
output, but that will just concatemate all the values, so probably you
will need to add spaces or commas in between.
David
________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
--~------------------------------------------------------------------
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>
--~--