我有一个XML文档,我想从XPath中提取一些数据。这是我感兴趣的xml块:
<SalesPrice ElementId="719304324">
<CountryCodeA2>DE</CountryCodeA2>
<CurrencyISOCode>EUR</CurrencyISOCode>
<ValidFrom>2016-10-21T09:39:16.000+02:00</ValidFrom>
<CancelDate>2016-10-25T09:39:16.000+02:00</CancelDate>
<Amount>3595</Amount>
</SalesPrice>
我试图根据它们的
<SalesPrice>
和<ValidFrom>
值获取所有有效的<CancelDate>
节点。但是,问题在于,并非所有<SalesPrice>
节点都具有<CancelDate>
标记,并且我的以下查询无法正常工作:/SalesPrice[ValidFrom > 2016-10-23T11:15:50+00:00 and CancelDate < 2016-10-23T11:15:50+00:00]
那么,哪怕缺少CancelDate来获取所有SalesPrice的正确查询是什么?
最佳答案
假设以下XML:
<root>
<a>
<b>1</b>
</a>
<a/>
</root>
以下XPath表达式将选择两个
a
节点://a[not(b) or b = 1]