Re: [xsl] A beef with XSLT Sometimes too complicated

Subject: Re: [xsl] A beef with XSLT Sometimes too complicated
From: James Fuller <jim.fuller@xxxxxxxxxxxxxx>
Date: Fri, 14 Jul 2006 12:23:30 +0200
andrew welch wrote:
On 7/14/06, Nic James Ferrier <nferrier@xxxxxxxxxxxxxxxxxxxx> wrote:

David Carlisle <davidc@xxxxxxxxx> writes:

>> Is there a cleaner / simpler way to do this?  Any chance you can do
>> this in one line?
>
> In xslt2:
>
> <xsl:variable name="bg_img" select="if(normalize-space($all_vars))
>  then 'background_bright' else 'background_faded'"/>

I hate the idea of 2 'if's in a language.


I disliked it too when I first saw it... It always looks a complete
mess to the untrained eye, possibly because traditional indentation is
not usually applied, possibly because double quotes get split over
multiple lines.

However once you've used a few if-then-else's and a couple
for-in-return's you quickly learn to love them and life without them
just seems so long winded, as pointed out by the OP with a
choose-when-otherwise in a variable.

There are many great features of 2.0, and this is definitely one of them, IMHO.

completely echo this statement,


I was skeptical during the early speccing/development of XSLT 2.0 esp with dependency on XML Schema, etc..

The stuff I dont like thankfully stays out of one's way enough; though there are still some non-intuitive type castings...it really isnt a problem compared with some of the black magic we perform in XSLT 1.0.

All in all I feel that XSLT 2.0 has removed all the voodoo (grouping anyone) that we had to do in XSLT 1.0 and given some very expressive and powerful mechanisms with which to get real work done.

I think that it must be a record for a v1 and v2 of a specification to get things so right; congrats to all who made it possible.

Now all we need is microsoft to push getting a XSLT 2.0 built and integrated with their browser/.NET platform; then we would be cooking with gas.

cheers, Jim Fuller

Current Thread