Bonjour,
J'essaye de réaliser une opération très simple dans la traduction d'un fichier XML
Voilà la structure simplifiée de mon arbre XML :

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
16
17
18
19
20
<round no="0">
<action no="1" sum="$0.01"/>
<action no="2" sum="$0.02"/>
</round>
<round no="1">
<action no="7" sum="$0.07"/>
<action no="8" sum="$0"/>
<action no="3" sum="$0"/>
<action no="4" sum="$0"/>
<action no="5" sum="$0.08"/>
<action no="6" sum="$0"/>
</round>
<round no="2">
<action no="9" sum="$0"/>
<action no="10" sum="$0"/>
</round>
<round no="3">
<action no="11" sum="$0.10"/>
<action no="12" sum="$0"/>
</round>
Je traites dans des templates chaque noeuds "round" puis chaque noeud "action", classées par leur attribut "no". Un truc du style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<xsl:for-each select="action">
<xsl:sort data-type="number" select="attribute::no"/>
<xsl:call-template name="DisplayAction">
<xsl:with-param name="ActionNode">
<xsl:value-of select="."/>
</xsl:with-param>
</xsl:call-template>
<xsl:for-each/>
A l'intérieur du template "DisplayAction", j'aimerais calculer la somme des attributs "sum" de toute les actions précédentes (avec un "no" inférieur au noeud courant) de tous les rounds précédents.


J'imagine que c'est une action simple, mais je ne vois pas comment la réaliser.


Merci si qqn a des infos.