Subject: Re: [xsl] Sibling text nodes From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Tue, 16 Jul 2002 16:54:20 +0100 |
Hi John, > Given an XML fragment like: > > <outer><inner>blah</inner> following text.</outer> > > Before I can finish processing the "inner" element, I need to > examine the next sibling node (following-sibling::*[1]?) to > determine if it is a text node whose contents begin with a > non-whitespace character. You're close. following-sibling::*[1] gets the next sibling *element*. You want to get the next sibling node: following-sibling::node()[1] then test whether it's a text node: following-sibling::node()[1][self::text()] Having found it, you can then test whether it starts with a whitespace character: contains(' 	

', substring(following-sibling::node()[1][self::text()], 1, 1)) This test will return true if the next sibling node is a text node that starts with a whitespace character, and false if there isn't a following sibling node, it's not a text node, or if it doesn't start with a whitespace character. Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Sibling text nodes, John R. Daily | Thread | Re: [xsl] Sibling text nodes, David Carlisle |
[xsl] Sibling text nodes, John R. Daily | Date | Re: [xsl] Sibling text nodes, David Carlisle |
Month |