Subject: Re: [xsl] Xpath3 method for concisely getting position of ranging variable in FOR expression?|
From: Michael Kay <mike@xxxxxxxxxxxx>
Date: Fri, 14 Mar 2014 16:16:52 +0000
In many cases "for" expressions can now be written with the "!" operator, and in this case you can use position(). For example for $i in 1 to count($seq)) return $i * seq[$i] can now be written as $seq ! (. * position()) Michael Kay Saxonica On 14 Mar 2014, at 15:53, David Rudel <fwqhgads@xxxxxxxxx> wrote: > In Xpath2, there was no super-concise method of extracting the > position of a ranging variable in a for expression. > > For example, in the expression "for $i in $seq return [expression]", > you could not use $i/position() to give you the position of $i. > > Instead you had to rewrite as "for $n in 1 to count($seq)"... and then > use $n or $seq[$n] as needed. > > I'm writing to ask whether there is any new method in Xpath3 that > provides a more concise method of referencing the position of a bound > range variable. > > -David > > -- > > "A false conclusion, once arrived at and widely accepted is not > dislodged easily, and the less it is understood, the more tenaciously > it is held." - Cantor's Law of Preservation of Ignorance.