Reputation: 144
<NETCAST>
<ACTION NParam="7" ShortName="shot" Quarter="1" Position="27">
<PARAM Data="2" Name="Team"/>
<PARAM Data="2" Name="Player"/>
<PARAM Data="0" Name="Made"/>
<PARAM Data="2" Name="Points"/>
<PARAM Data="1" Name="AddFlags"/>
</ACTION>
<ACTION NParam="2" ShortName="assist" Quarter="1" Position="28">
<PARAM Data="2" Name="Team"/>
<PARAM Data="21" Name="Player"/>
</ACTION>
<ACTION NParam="7" ShortName="shot" Quarter="1" Position="29">
<PARAM Data="1" Name="Team"/>
<PARAM Data="21" Name="Player"/>
<PARAM Data="0" Name="Made"/>
<PARAM Data="3" Name="Points"/>
<PARAM Data="0" Name="AddFlags"/>
</ACTION>
<ACTION NParam="7" ShortName="shot" Quarter="1" Position="30">
<PARAM Data="2" Name="Team"/>
<PARAM Data="32" Name="Player"/>
<PARAM Data="0" Name="Made"/>
<PARAM Data="3" Name="Points"/>
<PARAM Data="4" Name="AddFlags"/>
</ACTION>
<ACTION NParam="3" ShortName="reb" Quarter="1" Position="31">
<PARAM Data="1" Name="Team"/>
<PARAM Data="-2" Name="Player"/>
<PARAM Data="1" Name="Type"/>
</ACTION>
<ACTION NParam="7" ShortName="shot" Quarter="1" Position="32">
<PARAM Data="1" Name="Team"/>
<PARAM Data="15" Name="Player"/>
<PARAM Data="1" Name="Made"/>
<PARAM Data="2" Name="Points"/>
<PARAM Data="3" Name="AddFlags"/>
</ACTION>
</NETCAST>
I need help with the XPATH query in order to select
ACTION/PARAM[@Name="Points"]/Data (in order todo SUM)
Where
ACTION[NParam="7"] AND
ACTION/PARAM[@Name="Team"][Data="1"] AND
ACTION/PARAM[@Name="Made"][Data="0"] AND
ACTION/PARAM[@Name="AddFlags"][Data="1" or "3" or "4"]
I know how to select but using only one child!!!
/NETCAST/ACTION[NParam=7]/PARAM[@Name="Points"]/@Data
Thanks in advance for your help.
Upvotes: 0
Views: 139
Reputation: 89285
It isn't clear what is the expected output exactly. Assuming you want to find ACTION
that match multiple criteria based on multiple PARAM
's attributes, you may want to follow XPath example below :
/NETCAST
/ACTION[
@NParam=7 and
PARAM[@Name="Team" and @Data="1"] and
PARAM[@Name="Made" and @Data="0"] and
PARAM[@Name="AddFlags"][@Data="0" or @Data="3" or @Data="4"]
]
Given the XML in this question as input, the output would be :
<ACTION NParam="7" ShortName="shot" Quarter="1" Position="29">
<PARAM Data="1" Name="Team"/>
<PARAM Data="21" Name="Player"/>
<PARAM Data="0" Name="Made"/>
<PARAM Data="3" Name="Points"/>
<PARAM Data="0" Name="AddFlags"/>
</ACTION>
Upvotes: 1