|
Subject: Re: Xpath AndExpr on attribute values? From: Mike Brown <mike@xxxxxxxx> Date: Tue, 6 Jun 2000 08:07:37 -0600 (MDT) |
> Where I have stuff like
> <text>
> <saying language="en" topic="morals">blah blah blah</saying>
> ...
> </text>
>
> I want to do something like
> <xsl:apply-templates select="text/saying[@language='en'] and
> text/saying[@topic='morals']"/>
If you change language="en" to xml:lang="en", you'll be able to use the
lang() XPath function, I believe like this:
<xsl:apply-templates select="text/saying[lang('en') and @topic='morals')]"/>
As mentioned by others, the "and" operator forces the terms on both sides
to be evaluated as booleans, and returns a boolean. However, the problem
isn't that the node-sets are evaluated as booleans, because node-sets can
be considered true or false based on whether or not they are empty. The
problem is that select="foo" requires that foo be a node-set, not a
boolean. When you say select="foo and bar", it is the same as saying
select="true()" or select="false()"; no nodes are identified by that
expression.
- Mike
____________________________________________________________________
Mike J. Brown, software engineer at My XML/XSL resources:
webb.net in Denver, Colorado, USA http://www.skew.org/xml/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Xpath AndExpr on attribute values?, Michael Beddow | Thread | RE: Xpath AndExpr on attribute valu, Kay Michael |
| Re: Null Attributes Break xsl:key?, Myriam_Midy | Date | Re: Best way to handle multiple str, Warren Hedley |
| Month |