select="res[entrydata/text='main title']"
Michael Kay
-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
james walker
Sent: 01 October 2003 15:32
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] apply templates which have a child node
containing specific text
Given this xml:
<t>
<res position="1">
<entrydata columnnumber="0">
<text>main title</text>
</entrydata>
<rol position="1.1">
<entrydata columnnumber="1">
<text>some more text here</text>
</entrydata>
<prod position="1.1.1">
<entrydata columnnumber="2">
<text>text here</text>
</entrydata>
<entrydata columnnumber="3">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="4">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="5">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="6">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="7">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="8">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="9">
<text/>
</entrydata>
</prod>
<prod position="1.1.2">
<entrydata columnnumber="2">
<text>text here</text>
</entrydata>
<entrydata columnnumber="3">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="4">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="5">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="6">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="7">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="8">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="9">
<text/>
</entrydata>
</prod>
</rol>
</res>
<res position="2">
<entrydata columnnumber="0">
<text>some more text here</text>
</entrydata>
<rol position="2.1">
<entrydata columnnumber="1">
<text>some more text here</text>
</entrydata>
<prod position="2.1.1">
<entrydata columnnumber="2">
<text>text here</text>
</entrydata>
<entrydata columnnumber="3">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="4">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="5">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="6">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="7">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="8">
<text>more text here</text>
</entrydata>
<entrydata columnnumber="9">
<text/>
</entrydata>
</prod>
</rol>
</res>
</t>
I would like to select (apply templates) those <res> elements
which have
<text> tag (1 level down from <entrydata columnnumber="0">)
containing a
specific string. I am not sure how to go about selecting 2
children down
from the res element as a predicate (which would go in the
select statement
of apply-templates).
e.g. I would like to select a <res> element which has a
<text> element
containing "main title" in it. The example above includes
this string in one
of the res tags.
_________________________________________________________________
Tired of 56k? Get a FREE BT Broadband connection
http://www.msn.co.uk/specials/btbroadband
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list