|
Subject: RE: question about call-template From: Kay Michael <Michael.Kay@xxxxxxx> Date: Mon, 31 Jan 2000 09:43:56 -0000 |
> I can't find a way to pass the *name* of a template to
> another template, and then call that template by that name.
Can't be done with call-template, except by an xsl:choose instruction that
lists all the possibilities.
You could achieve the effect with apply-templates with a bit of deviousness.
Change your named template from
<xsl:template name="xyz">
to
<xsl:template name="xyz" match="xsl:template[@name='xyz']"/>
and call it like this:
<xsl:variable name="tname" select="'xyz'"/>
<xsl:apply-templates select="document('')/*/xsl:template[@name=$tname]"/>
However, this will change the current node and node list; if the named
template needs these, they'll have to be passed as parameters.
I suspect if you go back to the original problem, there is a better solution
than this.
Mike Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: question about call-template, Reid M. Pinchback | Thread | Re: question about call-template, Eric van der Vlist |
| RE: how to influence dtd processing, Kay Michael | Date | transform each character of a strin, Frederic Schwebel |
| Month |