I have an xml like:
<TransactionData>
<Tag1>abc</Tag1>
<Tag2>cde</Tag2>
<EnhancedDataIndicator>true</EnhancedDataIndicator>
<EmailAddress>bob.smith@email.com</EmailAddress>
<PassengerName>SMITH/BOB</PassengerName>
</TransactionData>
and a corresponding XSLT like:
...
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="EnhancedDataIndicator">
<xsl:choose>
<xsl:when test = "EnhancedDataIndicator = 'true'">
<EnhancedDataIndicator>Y</EnhancedDataIndicator>
</xsl:when>
<xsl:otherwise>
<EnhancedDataIndicator><xsl:text>N</xsl:text></EnhancedDataIndicator>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
I am trying to put in a logic which can make EnhancedDataIndicator value as 'Y' when it is 'true' and 'N' when it is 'false'. Currently the XSLT doesn't achieve that. It always shows 'N' for EnhancedDataIndicator. Current xml after transformation looks like:
<TransactionData>
<Tag1>abc</Tag1>
<Tag2>cde</Tag2>
<EnhancedDataIndicator>true</EnhancedDataIndicator>
<EmailAddress>bob.smith@email.com</EmailAddress>
<PassengerName>SMITH/BOB</PassengerName>
</TransactionData>
Kindly advise.