[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Using Variable in Template Matching....


Subject: Re: [xsl] Using Variable in Template Matching....
From: Joerg Heinicke <joerg.heinicke@xxxxxx>
Date: Sat, 22 Jun 2002 12:25:50 +0200

>>> Can i do
>>>    <xsl:apply-templates match="$param"/>
>>>
>>> and....
>>>
>>>     <xsl:template match="$param"/>
>>>
> On Sat, 22 Jun 2002 Michael Kay wrote :
>
>> What is the value of the parameter? A node-set? An element name? A
>> general XPath expression?
>>
Prince Ohilip wrote:

It is an Element Name

That's worst case. Because you can write


<xsl:apply-templates select="*[name() = $param]"/>

but not

<xsl:template match="*[name() = $param]"/>

Either you have a limited count of possibilities for $param and have a template for each possibility:

<xsl:template match="foo"/>

<xsl:template match="bar"/>

and so on.

Or you have a common template and switch in it to different processings:

<xsl:template match="*">
  <xsl:choose>
    <xsl:when test="name() = $param">
    </xsl:when>
    <xsl:otherwise>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>

It's dependent on what you want to do with the different param values.

Regards,

Joerg


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list




Current Thread
Keywords