Subject: Re: use choose in call-templates not possble
From: Michael Kay <mike@xxxxxxxxxxxx>
Date: Thu, 10 May 2012 14:20:21 +0100
|
On 10/05/2012 13:39, Jakub Mal} wrote:
You can also use if-then-else in select (XPath/XSLT 2.0).
<xsl:call-template name="translateDcml">
<xsl:with-param name="factor" select="if (FCDecimalPlace != '')
then FCDecimalPlace else LCDecimalPlace"/>
</xsl:call-template>
And even in 1.0, this is a case where the "Carlisle conditional" may be
useful:
<xsl:variable name="f" select="boolean(FCDecimalPlace != '')"/>
<xsl:call-template name="translateDcml">
<xsl:with-param name="factor"
select="FCDecimalPlace[$f] | LCDecimalPlace[not($f)]"/>
</xsl:call-template>
Michael Kay
Saxonica
|