Subject: RE: [xsl] Determine position in node sequence based on criteria From: "Houghton,Andrew" <houghtoa@xxxxxxxx> Date: Wed, 30 Jun 2010 09:39:43 -0400 |
> From: Michael Kay [mailto:mike@xxxxxxxxxxxx] > Sent: Wednesday, June 30, 2010 05:40 AM > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re: [xsl] Determine position in node sequence based on > criteria > > In XQuery you could do > > for $s at $p in ../s where matches($s/@c, '^[ab]$') and matches($s, > $re) > return $p > > The nearest equivalent in XPath 2.0 is > > for $p in 1 to count(../s), $s in (../s)[$p] return > if (matches($s/@c, '^[ab]$') and matches($s, $re)) then $p else () > > But I agree it's rather cumbersome. Agreed. It seems like it would be real handy to have position() take an argument: position(../s[]) and return the position of the matching items... or loosen the restrictions on position() in a for expression, or have a different function where you could get the position in a for expression: for $i in ../s if (...) then $i/position() else () Thanks, Andy.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Determine position in nod, Michael Kay | Thread | Re: [xsl] Determine position in nod, Andrew Welch |
Re: [xsl] Populating keys with valu, Ashton, Andrew | Date | Re: [xsl] Determine position in nod, Andrew Welch |
Month |