protected function _importFromManifest($filename, &$queryResultArray) { require_once 'Erfurt/Syntax/RdfParser.php'; $parser = new Erfurt_Syntax_RdfParser(); $parser->initializeWithFormat('turtle'); $manifestResult = $parser->parse($filename, Erfurt_Syntax_RdfParser::LOCATOR_FILE); $mfAction = 'http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#action'; // file auslesen... foreach ($manifestResult as $s => $pArray) { if (isset($pArray[EF_RDF_TYPE]) && $pArray[EF_RDF_TYPE][0]['value'] === 'http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#PositiveSyntaxTest') { $queryFileName = substr(urldecode($pArray[$mfAction][0]['value']), 7); $queryArray = array(); $queryArray['name'] = $s; $queryArray['file_name'] = $queryFileName; $queryArray['group'] = 'Positive syntax tests'; $queryArray['type'] = 'positive'; $handle = fopen($queryFileName, "r"); if ($handle) { $queryArray['query'] = fread($handle, filesize($queryFileName)); fclose($handle); } $queryResultArray[] = array($queryArray); } else { if (isset($pArray[EF_RDF_TYPE]) && $pArray[EF_RDF_TYPE][0]['value'] === 'http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#NegativeSyntaxTest') { $queryFileName = substr($filename, 0, strrpos($filename, '/') + 1) . substr($pArray["{$mfAction}"][0]['value'], strrpos($pArray["{$mfAction}"][0]['value'], '/')); $queryArray = array(); $queryArray['name'] = $s; $queryArray['file_name'] = $queryFileName; $queryArray['group'] = 'Negative syntax tests'; $queryArray['type'] = 'negative'; $handle = fopen($queryFileName, "r"); $queryArray['query'] = fread($handle, filesize($queryFileName)); fclose($handle); $queryResultArray[] = array($queryArray); } else { continue; } } } }
public static function rdfParserWithFormat($format) { $parser = new Erfurt_Syntax_RdfParser(); $parser->initializeWithFormat($format); return $parser; }