RE: [xsl] Function arguments (was regexps once)

Subject: RE: [xsl] Function arguments (was regexps once)
From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx>
Date: Wed, 16 Jan 2002 11:04:27 -0000
> Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> wrote:
> > > IMHO user defined functions should not depent implicitely of the
> > > context where they are called...
> > It also undermines the equality between: [ calling named templates
>   and  <xsl:copy-of select="my:foo()" /> ]
>
> That's a valid point. I didn't remember that named templates
> inherit the context from where they were called, probably
> because i've been bitten a few times by this feature and i
> now prefer to pass everything through parameters, even ".".
>
Allowing functions to access the context implicitly (especially when you
don't know statically whether they access the context or not, as happens
with extension functions) is certainly bad news for optimizers, and XQuery
almost certainly won't allow it. In the past we've taken the view in XSL WG
that user-defined functions should be able to do anything that system
functions can do, which includes taking "." as an implicit default argument,
but I can see us wanting to tighten the rules on this.

Mike Kay


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread