> On Thursday, January 09, 2003 5:51 PM, Jeni Tennison wrote:
>
> > But to answer your more general question, you're correct that in
> > unextended XSLT 1.0 you have to call templates to perform functions
> > and that sometimes this can lead to verbose and ungainly code.
> > However, most XSLT processors have a mechanism for defining
> extension
> > functions. Several support EXSLT's
> func:function/func:result elements,
> > which enable you to do:
> >
>
> Correct me if I'm wrong, or restarting an ancient debate, but it
> strikes me that using XSLT in this way is basically "Wrong" or a Bad
> Thing. I've found that usually there is a fairly simple way to avoid
> procedural techniques ...
Extending XSLT with functions, along the lines of func:function or XSLT
2.0's xsl:function, does not make the language procedural - on the
contrary, it brings it closer to being a pure functional language. The
difference between a function and a named template is that a named
template can only "return" a result tree fragment, while a function can
return any value allowed by the type system.
Michael Kay
Software AG
home: Michael.H.Kay@xxxxxxxxxxxx
work: Michael.Kay@xxxxxxxxxxxxxx
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|