| Subject: RE: [xsl] passing external parameter to template match From: "Andrew Welch" <AWelch@xxxxxxxxxxxxxxx> Date: Wed, 30 Jul 2003 09:21:35 +0100 | 
> Hi,
>     I wanted to send an external paramater to the the template to
create
> dynamic matching
> 
>         <xsl:param name="element" select="'default'"/>
>         <xsl:template match="{$element}">
> 
> but I get a TransformerException Error : illegal tokens $
> 
> is there a better way to dynamically populate the 'match' attribute of
> template??
All template matches are fixed and cannot be constructed at runtime.  If
you want to have truly dynamic template matching check out Demtire's
FXSL (http://fxsl.sourceforge.net/).
The usual way of handling cases when the number of possible outcomes for
the variable are known, is to have:
<xsl:template name="foo">
  <xsl:param name="$element"/>
  <xsl:choose>
    <xsl:when test="$element=" ...">...</xsl:when>
    <xsl:when test="$element=" ...">...</xsl:when>
and so on for each possible value of $element.
Other ways include using the vendor:evaluate() extension function, or to
construct a stylesheet from a stylesheet where the match attributes of
the second stylesheet are constructed by the first.
cheers
andrew
 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
| Current Thread | 
|---|
| 
 | 
| <- Previous | Index | Next -> | 
|---|---|---|
| RE: [xsl] passing external paramete, ohmson ampere | Thread | Re: [xsl] passing external paramete, Joseph Kesselman | 
| [xsl] Re: XSL-List Digest V4 #1511, James Cummings | Date | [xsl] Re: testing which files have , James Cummings | 
| Month |