什麼是找到當前節點是否具有特定屬性的一個節點的路徑,給出這個XML結構的最快方法:檢查節點中的一個節點的路徑具有特定屬性的
<root>
<item>
<item name="x">
<item></item>
<item name="y"></item>
<item></item>
</item>
<item></item>
<item></item>
</item>
<item>
<item name="z"></item>
<item></item>
</item>
我有一個xslt變量來告訴我當前活動節點是什麼。
我想執行一些代碼,如果當前節點是在@name x節點的路徑中。
因此,如果活動節點是帶有@name y的項目,則代碼應該執行,如果當前活動節點是帶有@name z的項目,則不應該執行。
我最好的解決方案迄今:
ancestor-or-self::item[@name = 'x']
但因爲有這個正在採取永遠呈現30K +項目節點,有沒有更快的方法? (XSLT/XPATH 2不是選項)
您的意思是XSLT/XPATH版本2.0不是一個選項,但XSLT/XPATH 1.0還行嗎? – khachik 2010-12-23 12:40:45
@漢斯科夫:「祖先或自我」在表演中不應該那麼沉重。問題必須出現在您的轉換模式中:爲每個節點運行此應用程序應該具有性能成本。 – 2010-12-23 14:08:25