1
我有下面的XML:XPath轴 - 如何选择子节点的属性
<ArrayOfStationStatus xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autopagerMatchedRules="1">
<StationStatus ID="20" StatusDetails="To the platform due to planned maintenance work.">
<Station ID="20" Name="Bermondsey"/>
<Status ID="NS" CssClass="Closed" Description="No Step Free Access" IsActive="true">
<StatusType ID="2" Description="Station"/>
</Status>
</StationStatus>
</ArrayOfStationStatus>
,并想选择包含在名称属性的特定短语StationStatus节点。选择SationStatus节点非常重要。
这是XPath我想出了,但它不是正确的:
/ArrayOfStationStatus/StationStatus[contains(lower-case(child::Station/@Name),lower-case('phrase'))]
编辑::::::::
我刚刚解决了!这是我需要的代码:
/ArrayOfStationStatus/StationStatus[child::Station[contains(lower-case(attribute::Name),lower-case("Ac"))]]
你的意思是'name'属性而不是'node'属性? – 2012-03-06 21:29:33
对不起意思Name属性 - Sir Crispalot – 2012-03-06 23:18:31
请注意''lower-case()'函数仅在XPath 2.0中可用。 – 2012-03-07 03:15:19