RE: [xsl] Shorthand.

Subject: RE: [xsl] Shorthand.
From: "Angela Williams" <Angela.Williams@xxxxxxxxxxxxxxxxxx>
Date: Wed, 25 Jul 2007 11:56:27 -0500
Since you are only using passed parameters and not current context, you
could turn this into a function in XSL 2.0.
(That's also one of the considerations for choosing functions over named
templates - verbosity).

(Not tested)
<xsl:function name="my:ajax-link">
  <xsl:param name="href" select="'x'"/>
  <xsl:param name="text" select="'y'"/>
  <a href="{$href}" onClick="showData('{$href}');return
false;"><xsl:value-of select="$text" /></a>

</xsl:function>

<value-of select="my:ajax-link($href, $text)"/>

I'm not very familiar with the ins and outs of 1.0 , but I don't know of
a less verbose way to call a named template in either version....


Thanks!
Angela

-----Original Message-----
From: Steve [mailto:subsume@xxxxxxxxx]
Sent: Wednesday, July 25, 2007 11:41 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] Shorthand.

Hey there, I have a template for creating ajax links:

<xsl:template name="a">
	<xsl:with-param name="href" />
	<xsl:with-param name="text" />
	<a href="{$href}" onClick="showData('{$href}');return
false;"><xsl:value-of select="$text" /></a> </xsl:template>

is there some shorter way to use this (XSL 1.0) template than...

<xsl:call-template name="a">
   <xs:param name="href" select="'x'"/>
   <xs:param name="text" select="'y'"/>
</xsl:call-template>

Current Thread