Bonjour,
Je voudrais faire un compteur en XQuery, impossible de faire 2 increment de suite
Exemple de fichier test.xml :
---------------------------
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <X> <a>A</a> <a>A</a> <a>A</a> </X>
Requete XQuery :
----------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 declare function local:increment($value as xs:integer) as xs:integer { $value+1 }; <hello> { let $compteur := 0 for $i in doc("test.xml")//a let $compteur := local:increment($compteur) return <cpt>{local:increment($compteur)}</cpt> } </hello>
J'obtient le resultat suivant :
---------------------------
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version="1.0" encoding="UTF-8"?> <abonnes> <cpt>2</cpt> <cpt>2</cpt> <cpt>2</cpt> </abonnes>
Alors que j'attends plutôt le resultat suivant :
----------------------------
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version="1.0" encoding="UTF-8"?> <abonnes> <cpt>2</cpt> <cpt>3</cpt> <cpt>4</cpt> </abonnes>
Je ne trouve pas le problème
Partager