Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

For-each select=child

File: Data.xml <winelist>   <wine grape="Chardonnay">     <winery>shop 2</winery>     <product>product 2</product>     <year>1997</year>     <prices>       <list>10.99</list>       <discounted>9.50</discounted>     </prices>   </wine>   <wine grape="Cabernet">     <winery>shop 1</winery>     <product>product 1</product>     <year>1998</year>     <prices>       <list>6.99</list>       <discounted>5.99</discounted>     </prices>   </wine> </winelist> File: Transform.xslt <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   version="1.0">   <xsl:output method="xml" omit-xml-declaration="yes" indent="no" />      <xsl:template match="winelist">     <xsl:for-each select="child::wine[@grape='Cabernet']">       <xsl:value-of select="winery" />     </xsl:for-each>   </xsl:template>    </xsl:stylesheet> Output: shop 1