[
Lists Home |
Date Index |
Thread Index
]
> Template rules are just syntactic sugar for a recursive
> function call and a
> case statement, both of which XQuery has (doesn't it?).
Technically true, but there are many cases where you would naturally use
template rules in XSLT where you wouldn't naturally use a recursive function
call and a case statement in XQuery. I guess the open question is, can
template rules be optimized if you have sufficient a priori knowledge of the
schema?
> I would be inclined
> to nominate some of the axes (almost everything but children and
> descendants) as the prime things to exclude from XQuery, both
> because they
> are hard to optimize and hard to statically type in any sort
> of useful way.
Now I can reverse the argument: surely most of the axes are just syntactic
sugar for a recursive function call? And using the ancestor axis (for
example) explicitly is surely both more convenient for the user, and easier
to optimize, than a recursive call on a getParent() function?
Also, I've never understood why the descendant axis is supposedly easier to
statically type than the ancestor axis.
Mike Kay
|