file: dir.xsl
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="dir"> <div id="articles"> <ul> <xsl:apply-templates select="records/file[@type='rb']"/> </ul> </div> </xsl:template> <xsl:template match="records/file[@type='rb']"> <li><xsl:value-of select="."/></li> </xsl:template> </xsl:stylesheet>
output:
<div id='articles'> <ul> <li>projxmlhelper.rb</li> <li>feedpopulated.rb</li> <li>squrl_handler.rb</li> <li>password_handler.rb</li> <li>category.rb</li> <li>gwd.rb</li> </ul> </div>
*update 11:58am 26-Feb*
Here's a filter I will be using in my projects
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="dir"> <div id="articles"> <ul> <xsl:apply-templates select="records/file"/> </ul> </div> </xsl:template> <xsl:template match="records/file"> <xsl:if test="@type=$type"> <li><xsl:value-of select="."/></li> </xsl:if> </xsl:template> </xsl:stylesheet>