[xsl] top ancestor value

Subject: [xsl] top ancestor value
From: Joelle Tegwen <tegwe002@xxxxxxx>
Date: Fri, 20 Oct 2006 16:36:58 -0500
I've been searching on this and I can't find an example that helps. I find the generic examples but I don't get something that does what I want.

My data is structured so that only the top level of the tree has the folder for the url. but I want to include that folder in the url for all of the files (including itself). Based on stuff I've read I thought that would be "ancestor-or-self::section[last()]/folder," but that gives me nothing. (full xsl below)

I tried using youth:ancestor-or-self::section[last()]/folder, but that gives me a validation error.
The data is here: http://rafb.net/paste/results/dyNo4Q36.html for reference


Am I completely misunderstanding ancestor? And in general, how does one debug this kind of thing?

Thanks again
Joelle

I've got this:
<?xml version="1.0" encoding="ISO-8859-1"?>


<xsl:stylesheet version="1.0" xmlns:youth="http://www.youthhood.org"; xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

<xsl:template match="/">
<html>
<body>
<h2>My Sitemap</h2>
<ul>
<xsl:for-each select="youth:sitemap//youth:section">
<li><xsl:value-of select="youth:id" />: <a>
<xsl:attribute name="href">
<xsl:value-of select="concat('../', ancestor-or-self::section[last()]/folder,'/', youth:url)"/>
</xsl:attribute>
<xsl:value-of select="youth:title" /></a></li>
</xsl:for-each>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>


Current Thread