xsl-list
[Top] [All Lists]

AW: limit count() to nodes with a position() < the posti on of the current node

2003-09-08 23:07:59
Hi,

the position of <lid> is the number of preceding siblings.
In your example should be 4, <loc>, <sub>, <date> sibling before.

Maybe you can use a foreach with select="//lid".
All the lid elements in a node set in document order.
Then you can use position() within the loop.

But I don't understand your questions fully.
What do you want to achieve?

Kind regards,

Juergen

-----Ursprüngliche Nachricht-----
Von: M. David Peterson [mailto:conners_dad(_at_)msn(_dot_)com]
Gesendet am: Dienstag, 9. September 2003 07:23
An: xsl-list
Betreff: [xsl] limit count() to nodes with a position() &lt; the postion
of the current node

Hi all,

Ive got an interesting one for you...

Ive got the following key...

<xsl:key name="linkCount" match="lid" use="."/>

that uses the following xml...

<history>
    <visit>
      <loc>life</loc>
      <subloc>main</subloc>
      <date>9/8/2003 10:49:58 PM</date>
      <lid>AAD001</lid>
    </visit>
</history>

to give me the total count of all nodes that have the value of the current 
context...

<xsl:value-of select="count(key('linkCount', lid))"/>

This works perfectly as it returns the total count of all nodes that have the 
same value as the current context node...

But I want to take this one step further and return the count of all nodes that 
have a position() that is less than the position of the current node. Taking 
the position() of the context node out of the equation I thought it would as 
simple as this (I used 5 as a test parameter)...

<xsl:key name="linkCount" match="lid[position() &lt; 5]" use="."/>

I expected it to return the count of the nodes that matched the current 
context node as long as there postion was less than 5.  But it didn't.  It 
returned the total count for the entire xml tree.

So, my questions are...  1)What do I need to change to get the above example

to work and 2)How could I then take it one step further and use the 
position() of the current context node as the parameter to test against the 
position() of the test nodes?

Your help is much appreciated!

Best Regards,

M.David 

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


*****************************************************************************
Diese E-Mail enthaelt vertrauliche und/oder rechtlich geschuetzte 
Informationen. Wenn Sie nicht der richtige Adressat sind oder diese 
eMail irrtuemlich erhalten haben, informieren Sie bitte sofort den 
Absender und vernichten Sie diese Mail. Das unerlaubte Kopieren 
sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet.

This e-mail may contain confidential and/or privileged information. 
If you are not the intended recipient (or have received this e-mail 
in error) please notify the sender immediately and destroy this e-mail. 
Any unauthorized copying, disclosure or distribution of the material 
in this e-mail is strictly forbidden.
*****************************************************************************


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



<Prev in Thread] Current Thread [Next in Thread>