Re: [xsl] A question of style

Subject: Re: [xsl] A question of style
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Wed, 07 Jul 2010 14:47:10 -0400
At 2010-07-07 11:41 -0700, dvint@xxxxxxxxx wrote:
I just started working with some stylesheets developed by someone else and
was surprised at some things I saw. They aren't wrong, it is a style issue
I believe, but was wondering if there is any advantage or disadvantage to
this approach.

I typically try to write as little code as possible. If I don't have to
use an XSLT element to do something, then why type all the extra code. So
I might do something like this:

<xsl:template match="foo"">
   <newelement att1="a" att2="b">Boilerplate text here</newelement>
</xsl:template>

what I came across today was much more verbose like this:

<xsl:template match="foo">
  <xsl:element anme="newelement">
     <xsl:attribute name="att1">a</xsl:attribute>
     <xsl:attribute name="att2">b</xsl:attribute>
     <xsl:text>boilerplate text here</xsl:text>
  </xsl:element>
</xsl:template>

Any comments on either approach?

The second is agnostic to any namespaces declared in the stylesheet that have not been pruned using exclude-result-prefixes="". The first will copy to the result tree all attached namespaces of the literal result element in the stylesheet, including those not pruned.


I'll use the xsl:element and xsl:text
constructs when I need to compute something or I'm trying to control the
formatting of text (use of whitespce), but those are real reasons for
using these constructs.

Not if one uses exclude-result-prefixes="".


When the content is straight forward why would you go to all the extra work?

When you want to add only the element without any of its baggage it acquires as a literal result element in the stylesheet.


I far prefer using exclude-result-prefixes="" and literal result elements than using the element instruction.

I hope this helps.

. . . . . . . . . . . Ken



--
XSLT/XQuery training:   after http://XMLPrague.cz 2011-03-28/04-01
Vote for your XML training:   http://www.CraneSoftwrights.com/s/i/
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
G. Ken Holman                 mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal

Current Thread