[Bug 5224] [XQuery] Dynamic context in global variable initializers

http://www.w3.org/Bugs/Public/show_bug.cgi?id=5224





------- Comment #8 from jonathan.robie@redhat.com  2008-02-26 15:52 -------
I believe the best solution is to add both the statements Mike Kay asked for
and an amended version of my changes to the description of the dynamic
evaluation phase.

In http://www.w3.org/TR/xquery/#id-dynamic-evaluation:

<old>
[Definition: The dynamic evaluation phase is the phase during which the value
of an expression is computed.] It occurs after completion of the static
analysis phase.
</old>

<new>
[Definition: The dynamic evaluation phase is the phase during which the value
of an expression is computed.] It occurs after completion of the static
analysis phase and after the initial dynamic context has been created. The
dynamic evaluation phase includes evaluation of the prolog, followed by
evaluation of the query body.
</new>

In http://www.w3.org/TR/xquery/#id-variable-declarations

After "The static context for an initializing expression includes all functions
that are declared or imported anywhere in the Prolog, but it includes only
those variables and namespaces that are declared or imported earlier in the
Prolog than the variable that is being initialized." 

Add "The dynamic context for an initializing expression is the same as the
dynamic context for the QueryBody in the main module, except that Variable
Values and Function Implementations are populated only for those variables and
functions that are within the static context of the expression".

Received on Tuesday, 26 February 2008 15:52:42 UTC