|
[XQuery Talk Mailing List Archive Home] [By Date] [By Thread] [By Subject] [By Author] [Recent Entries] [Reply To This Message] Using functions in replacement argument withfn:replace()?David Sewell dsewell at virginia.eduThu Jan 12 13:24:56 PST 2006
On Thu, 12 Jan 2006, Michael Kay wrote:
> > and this produces a run-time error:
> >
> > replace("abc", ".", upper-case($0))
>
> It should be a static error: $0 is not a valid XPath expression.
My mistake, I mean to say "static error".
> It can be any expression evaluating to a string.
>
> I think that what you haven't grasped is that the argument is evaluated
> first, and then any $0 in the resulting string is interpreted. So you could
> for example do
>
> replace("123", "2", concat("[$", 1 + 2 - 3, "]"))
>
> and the result would be "1[2]3".
>
> Your examples suggest that you're thinking of $0 as an XPath expression that
> can be evaluated in its own right, that isn't the case.
Thanks (to Martin also), that clarifies things.
--
David Sewell, Editorial and Technical Manager
Electronic Imprint, The University of Virginia Press
PO Box 400318, Charlottesville, VA 22904-4318 USA
Courier: 310 Old Ivy Way, Suite 302, Charlottesville VA 22903
Email: http://xquery.com/mailman/listinfo/talk Tel: +1 434 924 9973
Web: http://www.ei.virginia.edu/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|






