HOME DOCUMENTATION DOWNLOADS

Condition evaluation not working on Boolean value, if it is passed to transformation as DataConstant parameter

If you have the following simple condition test

<xsl:param name="billingRepeat" />
<xsl:choose>
	<xsl:when test="not($billingRepeat)">
		<xsl:apply-templates select="Document" />
	</xsl:when>
	<xsl:otherwise>
		<xsl:apply-templates select="Document"  mode="Empty"/>
	</xsl:otherwise>
</xsl:choose>

and the parameter billingRepeat is defined as Boolean in Context Store and value is passed as DataConstant reference to false,
image
the condition test is wrongly evaluated as false (not(false)) should be true. We tried with @washi several modifications of the condition and the only working way was to modify it like this <xsl:when test="$billingRepeat='false'">
If you modify the condition like this <xsl:when test="$billingRepeat"> and no matter if $billingRepeat takes value true or false, it is evaluated always as true.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.