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

Re: "Higher Order Functions for XQuery" -- static cont

Subject: Re: "Higher Order Functions for XQuery" -- static context and focus
From: John Snelson <john.snelson@xxxxxxxxxx>
Date: Fri, 04 Sep 2009 13:27:54 +0100
Re:  "Higher Order Functions for XQuery" -- static cont
Florent Georges wrote:
Hi,

  I guess this is a good place to discuss John's proposal for
"Higher Order Functions for XQuery."  Sorry if it is not.

  In the section "1.2 Inline Functions", the fifth paragraph is
<http://snelson.org.uk/~jpcs/higher-order-functions.html#inline-func>:

    The static context for the function body is inherited from
    the location of the inline function expression, with the
    exception of the static type of the focus (context item,
    context position, and context size) which is undefined.

  I am not sure to understand what does "the static type of the
focus" mean.  The focus is a component of the dynamic context,
and I am not sure "type" is used here as in the rest of the RECs.

I think this should probably read "static type of the context item".


  BTW, is this restriction really relevant?  A user can anyway
reference those values by using intermediary variables:

    let $i := position()
      return
        function() { $i }

and the processor would be able to detect whether the function
body does use any component of the focus, to see if it has to
save those as well or not.

I guess I missed the point behind this choice. Any idea?

It's for consistency with the rest of XQuery / XSLT 2.0, where the focus (context item, position, and size) are initially undefined in a user defined function. Arguments as to whether that's a good restriction are a different can of worms altogether :-).


John

--
John Snelson, Oracle Corporation            http://snelson.org.uk/john
Berkeley DB XML:            http://oracle.com/database/berkeley-db/xml
XQilla:                                  http://xqilla.sourceforge.net

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-2011 All Rights Reserved.