RE: [xsl] parameter problem

Subject: RE: [xsl] parameter problem
From: "Michael Kay" <mhkay@xxxxxxxxxxxx>
Date: Fri, 3 Aug 2001 10:41:24 +0100
> Now my problem is that I want to take the input regarding
> which element to
> replace & by which element ,from user as parameters.I am
> facing problem as I
> can't assign a parameter value to <xsl:template match> option .
> for eg <xsl:template match="{$foo}">.

Unfortunately you can't use a parameter in the match pattern. So it has to
be:

<xsl:template match="*">
  <xsl:choose>
     <xsl:when test="name()=$p1">
       <xsl:element name="{$p2}">
         <xsl:copy-of select="@*"/>
         <xsl:apply-templates/>
       </xsl:element>
     </xsl:when>
     <xsl:otherwise>
       <xsl:copy>
         <xsl:copy-of select="@*"/>
         <xsl:apply-templates/>
       </xsl:copy>
     </xsl:otherwise>
  </xsl:choose>
</xsl:template>

Take care with namespaces: how do you want the user to specify the parameter
if the element names are namespace-qualified?

Mike Kay
Software AG


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


Current Thread