documentElement; $k = 0; //number of students/marks $s = 0; //total $eleves = $start->getElementsByTagNameNS($nsRdf, "Description"); foreach( $eleves as $eleve ){ // foreach works with a NodeList ! $name = substr($eleve->getAttributeNS($nsRdf,"about"), 1); // suppress '#' $mark = $eleve->getElementsByTagNameNS($nsEpita, "mark")->item(0)->firstChild->wholeText;; echo "$name 's mark is $mark\n"; $s += $mark; $k++; } if( $k == 0 ){ die("empty data"); }else{ return $s/$k; } }// average_R function reading ($fichIn, $schmFich){ $doc = new DOMDocument(); $doc->load($fichIn); if( !$doc->schemaValidate($schmFich) ){ foreach( libxml_get_errors() as $error ){ echo "\t$error->message"; } die("Invalid document\n"); } $rdfUri = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"; $epitaUri = "http://epita/masters/international/"; $moy = average_R($doc, $rdfUri, $epitaUri); echo "\nAverage : $moy\n"; }//reading reading($argv[1], $argv[2]); ?>