On 31/10/2007, Sascha Mantscheff <922492(_at_)gmx(_dot_)de> wrote:
How can I test if there is a text node following and restrict the test
to a certain parent element?
In the example I'd like to test if there is text following after the
<s/> element up to the enclosing end tag of the <b> element.
This test should fire at the first s element because of the following
BBB text, but not at the second s element in spite of the following AAA
text.
The structure below the b element may contain any number of nesting
levels and element.
I'd like to include the test in a template which tackles the s element,
like <xsl:template match="s[some-test]">
--- Example -------------------------
<a>
aaa
<b>
bbb
<c>
ccc
</s>
</c>
BBB
</b>
AAA
<b>
bbb
<c>
ccc
<s/>
</c>
</b>
AAA
</a>
--- /Example -------------------------
well if you want it purely in the template match for <s> then you can do:
match="s[(ancestor::b[1]//text())[last()] >> .]"
...but there's probably a neater solution where you work it out at the
<b> level and then pass down a boolean as a tunnelled parameter.
cheers
--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
--~------------------------------------------------------------------
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>
--~--