. in for

The expression in the return clause of a for expression is evaluated
with the focus being the same as the focus at the start of the for
expression.

In particular this means that . (and relative path expressions)
work in a rather unexpected way. 

given an expression such as

for $i in widget return exp

then 99 times out of 100, this will be a user-error and what was intended
was

for $i in widget return $i/exp

with exp being evaluated relative to the innermost bound variable from
the for expression. 

Is there a technical issue preventing for changing the context in which
the return expression is evaluated?

This would make the behaviour of for more like that of / and xsl's
for-each.

David

_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.

Received on Friday, 4 January 2002 12:10:23 UTC