Bonjour,

Je voudrais écrire une expression Xpath pour faire la somme d'éléments représentant des nombres décimaux au format français (avec virgule à la place du point donc).

Mon document xml en input ressemble à ceci:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
<document>
	<item>
		<label>A</label>
		<value>10,5</value>
	</item>
	<item>
		<label>B</label>
		<value>9,23</value>
	</item>
	<item>
		<label>C</label>
		<value>20,46</value>
	</item>
</document>

J'ai essayé l'expression suivante, mais ça ne passe pas en Xpath 1.0 alors que ça passe en Xpath 2.0:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
sum(/document/item/value/number(translate(.,',','.')))
J'obtiens cette erreur: Unexpected token - "number(translate(.,',','."

Pourtant les fonctions number et translate sont bien disponibles en Xpath 1.0 non?

Y'a-t-il moyen d'écrire cette expression autrement pour qu'elle puisse passer en Xpath 1.0 ? Malheureusement je suis obligé de me limiter à cette version sachant que j'ai besoin d'utiliser Xalan comme moteur Xslt.

Merci d'avance pour toute aide