/** * loads namespaces from file or rewrites from configuration model */ function loadNamespaces($url) { if ($url) { $nmsp_m = new MemModel(); $nmsp_m->load($url); $this->ns = $nmsp_m->getParsedNamespaces(); if (!$this->ns) { trigger_error("The file:" . $url . "does not contain any namespace declarations." . "The prefixes from the configuration model will be used instead"); } } else { $nmsp = $this->m->getParsedNamespaces(); if ($nmsp) { $this->ns = RAPpubbyURIrewriter::rewrNamespaces($nmsp); } } }
/** * parser overwrites the prefixes defined in the default_prefixes array */ function testOverwritingDefaultParser() { $_SESSION['test'] = 'Overwriting default parser test'; $string = "<?xml version='1.0'?>\n \t\t\t\t<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'\n \t\t\txmlns:exterms='http://www.example.org/terms/'>\n\t\t\t\t\t<rdf:Description rdf:about='http://www.example.org/index.html'>\n\t\t\t\t\t\t<exterms:creation-date>August 16, 1999</exterms:creation-date>\n\t\t\t\t\t</rdf:Description>\n\t\t\t\t</rdf:RDF>"; // delete default prefixes global $default_prefixes; $backup = $default_prefixes; foreach ($default_prefixes as $name => $pref) { unset($default_prefixes[$name]); } $default_prefixes = array('foo' => RDF_NAMESPACE_URI); $model = new MemModel(); $model->load($string); $nmsp = $model->getParsedNamespaces(); $this->assertEqual($nmsp[RDF_NAMESPACE_URI], 'rdf'); $default_prefixes = $backup; }