Uit een (deel van) een XML bestand:
Nu wil ik met behulp van een XPATH 1.0 query er achter komen op welke plaats in de lijst de player met ID 76289 staat. Dit zou in dit geval 3 zijn. Speler 61354 staat op de 1e plaats, en 59896 op de 2e plaats, etc.
Klinkt niet moeilijk en ik heb zelfs een werkende XPATH 2.0 query hiervoor, maar in 1.0 werkt deze niet:
Het moet echter in XPATH 1.0 werken omdat ik het in JavaScript wil gebruiken, die alleen 1.0 aan kan.
Probleem lijkt te maken te hebben dat in xpath 1.0 count(/players/player) wel werkt, maar /players/count(player) niet.
XML:
1
2
3
4
5
6
7
8
| <players> <player state="Lost">61354</player> <player state="Lost">59896</player> <player state="Lost">76289</player> <player state="Won">16183</player> <player state="Lost">78109</player> <player state="Lost">71110</player> </players> |
Nu wil ik met behulp van een XPATH 1.0 query er achter komen op welke plaats in de lijst de player met ID 76289 staat. Dit zou in dit geval 3 zijn. Speler 61354 staat op de 1e plaats, en 59896 op de 2e plaats, etc.
Klinkt niet moeilijk en ik heb zelfs een werkende XPATH 2.0 query hiervoor, maar in 1.0 werkt deze niet:
code:
1
| players/player[.=76289]/(count(preceding-sibling::*)+1) |
Het moet echter in XPATH 1.0 werken omdat ik het in JavaScript wil gebruiken, die alleen 1.0 aan kan.
Probleem lijkt te maken te hebben dat in xpath 1.0 count(/players/player) wel werkt, maar /players/count(player) niet.
The one who says it cannot be done, should never interrupt the one who is doing it.