xsl-list
[Top] [All Lists]

Re: Recursive walk up tree

2003-11-25 14:56:56
Dinesh,

The axis you want is the ancestor axis:

<xsl:for-each select="ancestor::*">
  <td>spacer</td>
</xsl:for-each>
<td><xsl:value-of select="@name"/></td>

The ancestor nodes are traversed by the for-each in document order (top-down), but since you're only putting out spacers that's okay here.

You can find more about the ancestor and ancestor-or-self axes in any decent introduction to XPath location paths (and you should really do this before asking hundreds of people on the list).

Good luck,
Wendell

At 01:52 PM 11/25/2003, you wrote:
Hi folks,

Can somebody please let me know of an XPATH expression on how to recursively
walk up a tree.

I have a tree of directories in an XML
<directories>
  <directory name=blah>
    <directory name="blee">
      ... to arbitrary depth
    </directory>
  </directory>
</directories>

I need to put each element into a <tr> and a <td> for each level.
<table>
<tr><td>blah</td></tr>
<tr><td>spacer</td><td>blee</td></tr>
<tr><td>spacer</td><td>spacer</td><td>...</td></tr>

</table>
TIA,
Dinesh

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


======================================================================
Wendell Piez                            
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
  Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list