No need for an xsl:if there. also, your second template copies the
current node to the result tree as well, from your question, I think you
don't want this. Here's a way to do it (not tested):
<!-- capture filter1 and filter10 -->
<xsl:template match="*[@filter = 'filter1' or @filter = 'filter10']">
<xsl:copy-of select="." />
</xsl:template>
<!-- ignore the rest -->
<xsl:template match="* | @*">
<xsl:apply-templates />
</xsl:template>
Kind regards,
Abel
On 22-2-2011 20:19, russurquhart1(_at_)verizon(_dot_)net wrote:
I am trying to extract only elements having a filter attribute value of
'filter10', 'filter1' or has no filter attributes at all. I would have thought
this would do it:
But other filter values are making it into the result file.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="*[@filter]">
<xsl:if test="contains(@filter, 'filter10') or contains(@filter,
'filter1')">
<xsl:copy-of select="." />
</xsl:if>
</xsl:template>
<xsl:template match="*[not(@filter)]">
<xsl:copy-of select="." />
</xsl:template>
</xsl:stylesheet>
Can someone provide some help on this!
Thanks so much!
Russ
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--