0
我有这样的XML,获取最遥远的祖先节点-Xpath,XSLT
<doc>
<chap>
<sec originator="ABC">
<app originator="body">
<sec originator="body">
<p>text</p>
</sec>
</app>
</sec>
</chap>
<chap>
<chap>
<app originator="DEF">
<sec originator="body">
<sec>
<p>text2</p>
</sec>
</sec>
</app>
</chap>
</chap>
<sec originator="GHI">
<sec originator="body">
<p>text</p>
</sec>
</sec>
<app originator="KLM">
<sec>
<sec>
<p>text2</p>
</sec>
</sec>
</app>
</doc>
我已经模板<p>
节点,从写,我需要得到最远距离祖先<sec>
或<app>
节点originator
属性值。
我的XPath是
//p/(ancestor::app[@originator][last()] | ancestor::sec[@originator][last()])/@originator
这将选择originator
属性值ABC, body, DEF, body, GHI, KLM
..但是,我需要的是ABC, DEF, GHI, KLM
。
我怎样才能改变我的XPath来获得最远距离<sec>
或<app>
节点originator
属性值