我很難匹配另一個元素的後續兄弟元素。XSLT錯誤,當試圖匹配另一個元素的兄弟後跟一個元素
<w:p>
<w:r>
<w:rPr>
<w:color w:val="002D56"/>
<w:sz w:val="44"/>
<w:szCs w:val="44"/>
</w:rPr>
<w:t>I want to match this...</w:t>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:cstheme="minorHAnsi"/>
<w:sz w:val="28"/>
<w:szCs w:val="28"/>
</w:rPr>
<w:t>...but I don't want to match this.</w:t>
</w:r>
</w:p>
隨着
<xsl:template match="w:rPr[w:sz[@w:val='44']]"> ...
我發現前面的兄弟(第1W:在上面的示例中RPR元素),但如果我嘗試
<xsl:template match="w:rPr[w:sz[@w:val='44']]/following-sibling::w:t"> ...
我得到一個錯誤該模式未能編譯(XSLTParseError: xsltCompilePattern : failed to compile
)。
我假設問題與我的XPath,但我無法弄清楚什麼。建議?
你的兩個xpaths似乎很好。你能發佈完整的錯誤嗎?你是否定義了命名空間'w'? – SomeDude
XSLT模式語法是XPath表達式語法的子集。您不能使用以下兄弟軸(除了在允許完整XPath的謂詞中) –