RE: Change the value of a parameter in a template

Subject: RE: Change the value of a parameter in a template
From: Kay Michael <Michael.Kay@xxxxxxx>
Date: Tue, 14 Nov 2000 09:33:15 -0000
You are trying to write a template as a function that returns a selected
node. Templates don't do that: they write output to trees.

To find a node, use an XPath expression, something like

You have to write this inline.

If you don't like this you might like to look at Saxon's <saxon:function>
which allows you to write extension functions in XSLT.

Mike Kay

> In the template "findRelation" I compare the parameter 
> "article" with the
> XML-data in a loop ("for-each").
> When an element, <Left>, is equal to the parameter "article" 
> I store the
> <Right> element in the parameter "find ": 
> <xsl:template name="findRelation">
> 	<xsl:param name="article"/>
> 	<xsl:param name="find"/>
> 	<xsl:for-each select="//wc:INSTANCE"> 
> 		<xsl:if test="Left=$article">
> 			<xsl:param name="find" select='Right'/>	
> 		</xsl:if>
> 	</xsl:for-each>
> </xsl:template>			 
> Then I want to access the parameter "find", with its new 
> value, from the
> calling template "Relation". 
> Does anybody know how to do that? 
> Regards
> Fredric
>  XSL-List info and archive:

 XSL-List info and archive:

Current Thread