xsl-list
[Top] [All Lists]

Re: [xsl] Xpath question with processing-instruction()

2010-08-19 13:00:43
Ylvisaker, Steve wrote:
I know I can do this but I'm stumped.

Please consider the following XML:

<section>
<?ModuleStart ShowIDs="yes"?>
<title>Text of a title</title>
<para>para in the section</para>
</section>



I am current to the text() node of <title/>

I need to test to see if my parent has an immediate preceding sibling of 
processing-instruction named "ModuleStart"

If so I need to know the content of that PI.


I need to be sure that the test will NOT be true if I am current with the text() node 
of <para/>

Well if we take white space text nodes into account then the title element is not immediately preceded by a processing instruction, rather by a text node. So maye <xsl:variable name="n" select="../preceding-node()[not(self:text(normalize-space()))][1][self::processing-instruction()]"/>
  <xsl:if test="$n">
     <xsl:value-of select="$n"/>
  </xsl:if>
--

        Martin Honnen
        http://msmvps.com/blogs/martin_honnen/

--~------------------------------------------------------------------
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>
--~--