1
我想獲得第一個銷售和下一個銷售之間的所有元素。 初始XMLXSLT跟隨 - 兄弟姐妹輸出不如預期
<Parent>
<Sale SeqNo="1"/>
<Discount SeqNo="2"/>
<Coupon SeqNo="4"/>
<CouponDetail SeqNo="5"/>
<Sale SeqNo="6"/>
<Sale SeqNo="7"/>
<Sale SeqNo="8"/>
<Payment SeqNo="9"/>
</Parent>
期望中的XML:
<Discount SeqNo="2"/>
<Coupon SeqNo="4"/>
<CouponDetail SeqNo="5"/>
我公司目前有以下申請模板
following-sibling::*[(number(@SeqNo) < number(following::Sale[1]/@SeqNo))]
輸出我目前得到:
<Discount SeqNo="2"/>
<Coupon SeqNo="4"/>
<CouponDetail SeqNo="5"/>
<Sale SeqNo="6"/>
<Sale SeqNo="7"/>
<Sale SeqNo="8"/>
<Payment SeqNo="9"/>
我F I在未來的銷售項目的序列號硬編碼,我得到正確的輸出
following-sibling::*[(number(@SeqNo) < number(6))]
輸出:
<Discount SeqNo="2"/>
<Coupon SeqNo="4"/>
<CouponDetail SeqNo="5"/>
我在想什麼? 任何幫助表示讚賞。
或者,如果你不想讓變量,使用'電流()'從以下謂詞中訪問外部上下文:'following-sibling :: * [@ SeqNo < current()/ following-sibling :: Sale [1]/@ SeqNo]' –
@IanRoberts我甚至無法看到該函數在[XPath 3]中(http://www.w3.org/TR/xpath-functions-30/)。它在哪裏定義? – Jonathan
'current()'函數是XSLT規範的一部分,而不是xpath規範。 –