Subject: Re: [xsl] What is exciting in XSLT 2.0 (Was: Re: [xsl] parameters in XSLT 2.0)|
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Thu, 9 Jun 2005 06:11:13 +1000
On 6/8/05, Michael Kay <mike@xxxxxxxxxxxx> wrote: > > Yes, I know this, and use them quite a bit in my stylesheets. I was > > referring to the higher-order functions that Dmitre is > > interested in. > > The FXSL docs assume a fairly specific audience that is not me. > > Consider two important bits of functionality that are present in XSLT 2.0 > but not in XQuery 1.0: analyze-string and for-each-group. These needed > custom syntax in XSLT 2.0: they couldn't be implemented as standard > functions, because they are higher-order - they take functions (or > instructions) as their arguments. It's difficult to define custom syntax in > XQuery, which is why these facilities were omitted. But with higher-order > functions, you can implement these facilities without any new syntax, and > indeed I have done so for the benefit of XQuery users: see > > http://www.saxonica.com/documentation/extensions/functions/analyze-string.ht > ml > > http://www.saxonica.com/documentation/extensions/functions/for-each-group.ht > ml > > Michael Kay > http://www.saxonica.com/ Excelent idea Mike! As I have already implemented some XSLT instructions and even XPath features (the f:xsltSort() and f:attributes() functions), I'll look into the possibilities of defining functions based on xsl:for-each-group and xsl:analyze-string Cheers, Dimitre Novatchev.