[英]Avoiding using “ancestor::” Xpath axis
我正試圖找到一種方法來重新編譯這個轉換到我不必在我的Xpath中使用ancestor::
axis的地方:
<xsl:template match="p[ancestor::p]">
<xsl:apply-templates select="node() except ppr" />
</xsl:template>
來源示例:
<root>
<p>
<p/>
<section>
<p/>
</section>
<ppr/>
<content/>
<p/>
<picture/>
</p>
</root>
期望的輸出:
<root>
<p>
<section>
</section>
<ppr/>
<content/>
<picture/>
</p>
</root>
我不能使用顯式Xpath或定位來抓取這些<p>
元素,因為它們的位置是隨機的,並且在原始源文檔中沒有模式。
我試圖不使用ancestor::
的原因是因為我正在使用的XSLT處理器正在花費30-50秒來評估Xpath表達式。 我不希望這個問題是關於我正在使用哪個XSLT處理器或者我的設置的其他實現,而是關注手頭的問題:有沒有辦法在我的上面的轉換中不使用ancestor::
?
提前致謝。
結果如此簡單:
//p//p
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.