Salut à tous
voici ma requête (la partie qui pose le problème est en rouge):

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
21
22
declare variable $Qc as xs:integer := 0;
declare variable $Pc as xs:integer := 0; 
  
 for $c in doc('project.xml')/project/classe[@nom="classe1"]
 let $n := count(doc('project.xml')/project/classe[@nom="classe1"]/methodes/methode)
 return 
 
 <LCOM>{for $i in (1 to $n)
        for $j in (1 to $n)
        let $r:= $n
  let $mi := $c/methodes/methode[$i]
  let $mii := $c/methodes/methode[$j]
  
  where ($i != $j) 
  return
  
  if ($mi/attributs_utilises/attribut/@nom = $mii/attributs_utilises/attribut/@nom)
               then  let $Qc := $Qc + 1
                     return <Qc> {$Qc} </Qc>
               else  let $Pc := $Pc + 1 
                     return <Pc> {$Pc} </Pc> }
              </LCOM>
voici les résultats obtenues:
MXQuery 0.6.0
<?xml version='1.0' encoding='UTF-8' ?>
<LCOM><Pc>1</Pc><Pc>1</Pc><Pc>1</Pc><Pc>1</Pc><Qc>1</Qc><Qc>1</Qc><Pc>1</Pc><Qc>1</Qc><Qc>1</Qc><Pc>1</Pc><Qc>1</Qc><Qc>1</Qc></LCOM>
mais j'ai besoin de la somme totale des valeurs de Pc et Qc
Merci de m'aider.