如何检查第一个前一个兄弟是xslt 2.0中上下文节点的w:tbl?

Sar*_*nan 0 xml xslt xpath xslt-2.0 xpath-2.0

这是XML文档.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"
                    xmlns:v="urn:schemas-microsoft-com:vml">
        <w:body>

          <w:p>para1</w:p>
          <w:tbl>table data 1</w:tbl>
          <w:p>para2</w:p>   <!-- have to check whether this node is w:tbl or not  with respect to the context node below-->
          <w:tbl>table data 2</w:tbl> <!-- Assume this is context node -->

       </w:body>
      </w:document>
Run Code Online (Sandbox Code Playgroud)

所以,我想要查询的第一前同辈[ <w:p>para2</w:p>]所述的上下文节点[ <w:tbl>table data 2</w:tbl>]<w:tbl>或没有.

请指导我摆脱这个问题......

小智 6

我想你是要求的

<xsl:if test="preceding-sibling::*[1]/self::w:p">....</xsl:if>
Run Code Online (Sandbox Code Playgroud)