Van een selectie waarmee meerdere elementen worden geselecteerd, wil ik maar 1 element hebben. Welk element is onbelangrijk. Ik weet niet waar het element zich in de structuur bevind.
geeft terug:
- Groep2/Level1
- Groep2/Level2
maar ik wil maar 1 element terug krijgen:
- Groep2/Level1 (of Groep2/Level2, dat maakt niet uit)
De volgende variaties werken niet, want dan zou code='8' niet te vinden zijn.
Volgens mij heb ik alle variaties geprobeerd, maar ik hoop dat iemand een oplossing heeft.
XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| <?xml version="1.0" ?> <blok> <groep code='1'>Groep1/Level1 <groep code='2'>Groep2/Level2 <groep code='7'>Groep7/Level3</groep> <groep code='8'>Groep8/Level3</groep> <groep code='9'>Groep9/Level3</groep> </groep> <groep code='3'>Groep3/Level2</groep> </groep> <groep code='2'>Groep2/Level1 <groep code='5'>Groep5/Level2</groep> <groep code='6'>Groep6/Level2 <groep code='7'>Groep7/Level3</groep> </groep> <groep code='8'>Groep8/Level2</groep> <groep code='10'>Groep10/Level2</groep> </groep> <groep code='4'>Groep4/Level1</groep> </blok> |
code:
1
| //groep[@code='2'] |
geeft terug:
- Groep2/Level1
- Groep2/Level2
maar ik wil maar 1 element terug krijgen:
- Groep2/Level1 (of Groep2/Level2, dat maakt niet uit)
De volgende variaties werken niet, want dan zou code='8' niet te vinden zijn.
code:
1
| //groep[@code='2' and last()] |
code:
1
| //groep[@code='2' and position() = 1] |
code:
1
| //groep[@code='2'][0] |
Volgens mij heb ik alle variaties geprobeerd, maar ik hoop dat iemand een oplossing heeft.
offtopic:
Sorry voor de belachelijke titel. Ik kan er geen duidelijker omschrijving vinden
. Iemand die een betere titel weet
.
Sorry voor de belachelijke titel. Ik kan er geen duidelijker omschrijving vinden

Northing.nl