[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: passing template names

Subject: Re: passing template names
From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx>
Date: Fri, 7 Jul 2006 16:47:50 +0530
Re:  passing template names
With Saxon you can do this.

Following is excerpt from Saxon 8.7.3 documentation:

Saxon supports an alternative instruction saxon:call-template. This
has the same effect as xsl:call-template, except that the name
attribute may be written as an attribute value template, allowing the
called template to be decided at run-time. The string result of
evaluating the attribute value template must be a valid QName that
identifies a named template somewhere in the stylesheet.


On 7/7/06, Karl <call14@xxxxxxxxx> wrote:
I am in a situation where in a particular section need to call
different template dynamically based on which template invokes it.
Though I can use <xsl:choose> or <xsl:if> to do that, i wish i pass
the template name as a param value.

<xsl:call-template name="A">
 <xsl:with-param name="TemplateName">xx_template</xsl:with-param>

<xsl:call-template name="A">
 <xsl:with-param name="TemplateName">yy_template</xsl:with-param>

and then

<xsl:template name="A">
 <xsl:param name="TemplateName"/>
 <xsl:call-template name="{$TemplateName}"/>

I doesnt work. Is it valid? If not, are there any better method to
achieve similar result. Currently, iam  passing numbers in param and
use <xsl:choose> to call different templates .


Current Thread


Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
First Name
Last Name
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.