[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Getting first child node postion with condition

Subject: RE: Getting first child node postion with condition
From: Julien Flotté <julien_flotte3@xxxxxxxxxxx>
Date: Fri, 08 Jun 2007 10:16:32 +0000
RE:  Getting first child node postion with condition
Thanks for your response, it works perfectly.

Cordially,
julien Flotti.

From: "Michael Kay" <mike@xxxxxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE:  Getting first child node postion with condition
Date: Fri, 8 Jun 2007 10:19:31 +0100

position() does not return the position of a selected node in the tree, it
returns the position of the current node within the list of nodes that are
currently being processed. You want either count() or xsl:number.

The simplest solution here is XSLT 2.0:

<xsl:number select="leaf[@attrib='true'][1]"/>

The equivalent in 1.0 is:

<xsl:for-each select="leaf[@attrib='true'][1]">
  <xsl:number/>
</xsl:for-each>

Or you can use count():

count(leaf[@attrib='true'][1]/preceding-sibling::leaf)+1

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Julien Flotti [mailto:julien_flotte3@xxxxxxxxxxx]
> Sent: 08 June 2007 10:09
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject:  Getting first child node postion with condition
>
> Hi,
> I'm a french student in training course.
> I make development in xslt and I encounter the following problem :
>
> My xml file :
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <tree>
> <leaf attrib = 'false'>Leaf1</leaf>
> <leaf attrib = 'true'>Leaf2</leaf>
> <leaf attrib = 'true'>Leaf3</leaf>
> </tree>
>
> When I'm in the "tree" template, I want to get the position
> of the first child node with the attribute "attrib" equals
> "true" but I don't succeed.
>
> I attempt to use the postion function but it doesn't work :
> leaf[@attrib = 'true'][postion()] returns the value of the first child
> (Leaf2) but not its position.
>
> Is there a way to to that correctly ?
> Cordially,
> Julien Flotti.
>
> _________________________________________________________________
> Gagnez des pc Windows Vista avec Live.com http://www.image-addict.fr/


_________________________________________________________________
Windows Live Spaces : criez votre blog ` votre image ! http://www.windowslive.fr/spaces


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.