Re: [xsl] Select Deepest Node only in Iteration

Subject: Re: [xsl] Select Deepest Node only in Iteration
From: "J. Zhang" <j.zhang@xxxxxx>
Date: Thu, 12 Jul 2007 21:34:02 +0200
A problem, reversing (descending) works, but selecting the top of the
list does not work. I have been testing by outputting some numbers from
the following 2 functions.


<a><xsl:value-of select="count(ancestor::node())"/></a>

<b><xsl:value-of select="position()"/></b>

This the output I am getting for the first item in the list:

<a>5</a>

<b>74</b>

So the position() function does not work in my case. That is why I think
I need to match in an if statement with count(ancestor::node()), e.g.

<xsl:if test="count(ancestor::node())=5">

Then I am getting the top of the list, a problem is however that I am
reading multiple documents and match with multiple keywords. So I cannot
set it adhoc this way. What I did find out is that the first item in the
reversed list is the highest number for each leaf.

The only question is: is there a function to replace the "5" in the if test?

I hope you understand my problem. Thanks!



David Carlisle wrote:
> xsl:sort has to be the first child of the xsl:for-each, so move it up a
> couple of lines.
> 
> David
> 
> ________________________________________________________________________
> The Numerical Algorithms Group Ltd is a company registered in England
> and Wales with company number 1249803. The registered office is:
> Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
> 
> This e-mail has been scanned for all viruses by Star. The service is
> powered by MessageLabs. 
> ________________________________________________________________________

Current Thread