Mega Code Archive

 
Categories / XML Tutorial / Xpath
 

Get current node with current() function

File: Data.xml <?xml version="1.0" encoding="utf-8"?> <RESPONSE>   <PRODUCT>     <ID>ABC</ID>     <NAME>SQL server</NAME>   </PRODUCT>   <PRODUCT>     <ID>DEF</ID>     <NAME>Black cat</NAME>   </PRODUCT>   <PRODUCT>     <ID>API</ID>     <NAME>Swing</NAME>   </PRODUCT>   <PRODUCT>     <ID>JKL</ID>     <NAME>Oracle</NAME>   </PRODUCT>   <SELECTEDPRODUCT>ABC</SELECTEDPRODUCT>   <SELECTEDPRODUCT>API</SELECTEDPRODUCT> </RESPONSE> File: Transform.xslt <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet       version="1.0"       xmlns:xsl="http://www.w3.org/1999/XSL/Transform">     <xsl:template match="/">       <xsl:for-each select="//SELECTEDPRODUCT">         <Paragraph>           <xsl:text>NAME: </xsl:text>           <xsl:value-of select="//PRODUCT/NAME[../ID=current()]"/>         </Paragraph>       </xsl:for-each>     </xsl:template> </xsl:stylesheet> Output: <?xml version="1.0" encoding="UTF-8"?><Paragraph>NAME: SQL server</Paragraph><Paragraph>NAME: Swing</Paragraph>