00001 <?php
00026 class reportXml extends quailReporter {
00027
00032 function getReport() {
00033 $output = "<?xml version='1.0' encoding='utf-8'?>
00034 <feed xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
00035 xsi:quail='http://schemas.quail-lib.org/results/2010.xsd'>";
00036 $results = $this->guideline->getReport();
00037 if(!is_array($results))
00038 return null;
00039 foreach($results as $testname => $test) {
00040 $translation = $this->guideline->getTranslation($testname);
00041 $output .= "\n\t<quail:test quail:testname='$testname' quail:severity='".
00042 $this->guideline->getSeverity($testname) ."'>
00043 <updated>". date('c') ."</updated>";
00044 $output .= "\n\t<quail:title>". $translation['title'] ."</quail:title>";
00045 $output .= "\n\t<quail:description><![CDATA[". $translation['description'] ."]]></quail:description>";
00046 $output .= "\n\t<quail:problems>";
00047 foreach($test as $k => $problem) {
00048 if(is_object($problem)) {
00049 $output .= "\n\t<quail:entities><![CDATA[". htmlentities($problem->getHtml()) ."]]></quail:entities>";
00050 $output .= "\n\t<quail:line>". $problem->getLine() ."</quail:line>";
00051 if($problem->message) {
00052 $output .= "\n\t<quail:message>$problem->message</quail:message>";
00053 }
00054 $output .= "\n\t<quail:pass>$problem->pass</quail:pass>";
00055 }
00056 }
00057 $output .= "\n\t</quail:problems>";
00058 $output .= "</quail:test>";
00059 }
00060 $output .= "</feed>";
00061 return $output;
00062 }
00063 }