[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] how xslt2 affects usage of programming constructs

Subject: Re: [xsl] how xslt2 affects usage of programming constructs
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Mon, 24 Jan 2005 06:03:34 +1100

On Sun, 23 Jan 2005 17:13:23 +0100, Bryan Rasmussen <bry@xxxxxxxxxx> wrote:
> hi
> in any language there are likely to be syntax that is used less or more often by
> experts in the language than other syntax, often syntactical equivalents exist
> for operations and it is preferable to use one instead of the other. in xslt 1
> we can see that people hardly ever use attribute sets instead preferring to call
> templates, or that it is recommended to use an apply-templates template match
> structure for a process that someone less adept at the language might use an
> xsl:for-each for instead.
> for those of you using xslt 2.0 i would like to know
> 1. what do you consider to be the most essential constructs of xslt 2.0

    xsl:function and xsl:sequence, generally the usage of XPath 2.0
> 2. have these constructs caused you to decrease usage of particular syntax from
> 1.0 in favor of the new syntax

   Yes, I do not use xsl:call-template
> 3. has anyone observed the new ability of being able to increase the logic of
> xpath statements has led to a significant decrease in usage of any xslt syntax.

   Probably the combined use of xsl:choose inside of an xsl:variable
is quite less now.

A question that you do not ask:

  What constructs one uses most in XSLT 2.0?

For me the answer is: 

               functional composition. 

And this is a natural result of using FXSL for XSLT 2.0.

So, one big result is that XSLT 2.0 + FXSL is something new, probably
not expected at all by the language designers. This combination makes
XSLT 2.0 a truly functional programming language, where (almost) any
function is a higher-order function. The only problem remains the
inability to specify function signatures for higher-order functions.

Dimitre Novatchev.

Current Thread