This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Q: XPath Expression for Multiple Attribute testing in the same sub-element
- From: Peter Davis <pdavis152 at attbi dot com>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Wed, 20 Mar 2002 18:42:09 -0800
- Subject: Re: [xsl] Q: XPath Expression for Multiple Attribute testing in the same sub-element
- References: <20020321022417.39083.qmail@web20303.mail.yahoo.com>
- Reply-to: xsl-list at lists dot mulberrytech dot com
On Wednesday 20 March 2002 18:24, Peter Bray wrote:
> Greetings,
>
> Given an XML document like the following except with multiple
> products, I wish to select all products of a given classification but
> only if that is their primary classification.
>
> <document>
> <product name="gdbm">
> <classificationlist>
> <classification class="GNUVersion" primary="true"/>
> <classification class="Library" primary="false"/>
> </classificationlist>
> </product>
> ....
> </document>
>
> So in <xsl:apply-templates select=""> I what to say
> SELECT ALL <product>
> SUCH THAT classificationlist/classification/@class = $class
> AND classificationlist/classification/@primary = 'true'
>
<xsl:template match="document">
<xsl:apply-templates
select="product[classificationlist/classification[@class = $class and
@primary = 'true']]"/>
</xsl:template>
should do the trick. The trick is to make the @class and @primary evaluate
relative to the same <classification> -- using two layers of predicates will
allow that.
--
Peter Davis
It is wrong always, everywhere and for everyone to believe anything upon
insufficient evidence.
- W. K. Clifford, British philosopher, circa 1876
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list