This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Referencing nodes from an out-of-scope xsl:for-each loop
- To: "Xsl-List" <xsl-list at lists dot mulberrytech dot com>
- Subject: [xsl] Referencing nodes from an out-of-scope xsl:for-each loop
- From: "Joel P Thornton" <joelt at tlchoices dot com>
- Date: Thu, 17 May 2001 13:59:18 -0700
- Reply-To: xsl-list at lists dot mulberrytech dot com
I have this xml:
--
<sql-recordset>
<row title="Sunshine Home" location="Seattle WA"/>
<row title="Value Village" location="Seattle WA"/>
<row title="Salvation Army" location="Tacoma WA"/>
<display-columns>
<column label="Name"><B><sql-field name="title"/></B></column>
<column label="Location"><sql-field name="location"/></column>
</display-columns>
</sql-recordset>
--
And I want to write an XSL which will transform this into:
--
<table>
<th>Name</th>
<th>Location</th>
<tr>
<td><b>Sunshine Home</b></td><td>Seattle WA</td>
</tr>
<tr>
<td><b>Value Village</b></td><td>Seattle WA</td>
</tr>
<tr>
<td><b>Salvation Army</b></td><td>Tacoma WA</td>
</tr>
</table>
--
Currently, I <xsl:for-each> through the collection of <row> nodes, and then
<xsl:for-each> through each of the <column>s for each row. The problem is,
I have a <xsl:template match="sql-field"> template which matches the
<sql-field> tags within the <column> tags. But I don't know how to get that
template to "know" which row it is currently on. I tried using
<xsl:variable> but I'm being told that, within the sql-field template, the
variable is out of scope.
Ideas?
joel
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list