[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Test processing instruction as first preceding sibling


Subject: Re: [xsl] Test processing instruction as first preceding sibling
From: David Carlisle <davidc@xxxxxxxxx>
Date: Tue, 9 Dec 2008 16:03:51 GMT

> In this case it should return true.

This implies that you wish to ignore white space text nodes, otherwise
the immediately preceding node is a text node not a PI.



> preceding-sibling::*[1]

* matches element nodes, you want


preceding-sibling::node()[1]

then to test if that is a PI, you can do

preceding-sibling::node()[1]/self::processing-instruction('proc')

This wil work for examppl eif you have already removed the white space
with 
<xsl:strip-space elements="*"/>
if you can not remove the white space as it is needed elsewhere the test
needs to be

preceding-sibling::node()[not(text()[not(normalize-space())])][1]/self::processing-instruction('proc')

David

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________


Current Thread