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

RE: passing a variable to call-template

Subject: RE: passing a variable to call-template
From: "David White" <davidw@xxxxxxxxxxx>
Date: Fri, 11 Aug 2006 08:03:12 -0500
xsl call template pass variable
Thanks to everyone for the quick replies!

Ya, after looking over the FXSL materials my head is spinning.
I'm going to stick with the simple choose statement you mention below.

I have XML which looks like this:
<warning conformance="alert_hand_in_gears">


<xsl:variable name="this.warning">
		<xsl:when test="string-length($list) = 0">
		<!-- We are done -->
		<xsl:when test="contains($list, ' ')">
		<xsl:value-of select="substring-before($list, ' ')"/>
		<xsl:value-of select="$list"/>
<xsl:if test="string-length($this.warning) &gt; 0">
		<xsl:when test="$this.warning = 'alert_hand_in_gears'"><xsl:call-template

		<xsl:otherwise><fo:inline color="red" font-size="6pt" width="38pt"
font-weight="bold">ART NOT FOUND <xsl:value-of

So, I'm hoping to be able to dynamically pull templates based upon the
conformance attribute in the XML.  This.warning is a template that contains
only an SVG.  It would be nice to do this dynamically from the XML but looks
like its just easier to hard code the values.

David White

-----Original Message-----
From: andrew welch [mailto:andrew.j.welch@xxxxxxxxx]
Sent: Friday, August 11, 2006 7:54 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re:  passing a variable to call-template

On 8/11/06, David White <davidw@xxxxxxxxxxx> wrote:
> Is this possible?
> <xsl:call-template name="{$this.warning}"/>
> I would like to pass a variable into call-template but haven't had any

No this isn't possible as the name attribute must contain a qname,
which means it must be known at compile time... the usual way is:

  <xsl:when test="$this.warning = 'red'">
    <xsl:call-template name="red"/>
  <xsl:when test="$this.warning = 'green'>
    <xsl:call-template name="green"/>

etc... although it's highly likely you can achieve what you are trying
to do another way, maybe post some examples showing your requirements
and see if there's a better solution...


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.