Hi,
My sample XML file lok lilke this
<root>
<employees>
<employee hireDate="04/23/1999">
<COLUMN NAME="LAST">Hilllfrist</COLUMN>
<COLUMN NAME="STATUS"><![CDATA[A]]></COLUMN>
</employee>
<employee hireDate="05/23/1999">
<COLUMN NAME="LAST">raj</COLUMN>
<COLUMN NAME="STATUS"><![CDATA[T]]></COLUMN>
</employee>
</employees>
<TABLE NAME="XLATTABLE_EMPL_STATUS">
<ROWS>
<ROW>
<COLUMN NAME="STATUS"><![CDATA[T]]></COLUMN>
<COLUMN NAME="DESCR"><![CDATA[Terminated]]></COLUMN>
</ROW>
<ROW>
<COLUMN NAME="STATUS"><![CDATA[A]]></COLUMN>
<COLUMN NAME="DESCR"><![CDATA[Active]]></COLUMN>
</ROW>
<ROW>
</TABLE >
</root>
I need to Iterate all the Status values and need to fetch the
description from XLATTABLE_EMPL_STATUS.
Example if the status is A, it has to be displayed as Active, if its T ,
it has to be displayed as Terminated.
My xsl code is as below.
xsl:template match="root">
<xsl:for-each select="employees">
<xsl:for-each select="employee">
<xsl:if test="@NAME='STATUS'">
<xsl:variable name="status" select="."/>
<xsl:for-each
select="TABLE[@NAME='XLATTABLE_EMPL_STATUS']/ROWS/ROW/COLUMN[@NAME='STATUS']">
<xsl:value-of
select="TABLE[@NAME='XLATTABLE_EMPL_STATUS']/ROWS/ROW/COLUMN[@NAME='DESCR']"
</xsl:for-each>
</xsl:if>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
looks like
TABLE[@NAME='XLATTABLE_EMPL_STATUS']/ROWS/ROW/COLUMN[@NAME='STATUS']" is
not working.
Approaches I followed.
1) ../TABLE[@NAME='XLATTABLE_EMPL_STATUS']/ROWS/ROW/COLUMN[@NAME='STATUS']"
2)
parent::node()/TABLE[@NAME='XLATTABLE_EMPL_STATUS']/ROWS/ROW/COLUMN[@NAME='DESCR']
Please suggest me on this.
Thanks,
Anil