function extractLinkedData($link, $origin) { global $ep; // Wenn es die URL im Graph schon gibt, nichts machen, TODO besser updaten? if (graphContainsUrl($link)) { $res = new Response(null, "URL {$link} already visited, skip indexing"); return res; } else { $parser = ARC2::getTurtleParser(); //$data = $_POST['turtle']; $parser->parse($link); $triples = $parser->getTriples(); // print_r($triples); // Wenn keine Tripel gefunden wurden if (count($triples) < 1) { $res = new Response(null, "URL {$link} contains no triples"); } else { // in Datenbank einfügen $ep->insert($triples, $origin); //echo "<pre>"; //print_r($triples); //echo "</pre>"; $res = new Response(null, "URL {$link}: added " . count($triples) . " triples"); } return $res; } }
/** * Extrahiert eingebettetes rdfa aus einer beliebigen HTML Seite und * speichert es im triple store * @param string $url * @return Response Ein Responseobjekt */ function extractOAI($rdf, $url) { global $ep; // Wenn es die URL im Graph schon gibt, nichts machen if (graphContainsUrl($url)) { $res = new Response(null, "URL {$url} already visited, skip indexing"); return $res; } else { $parser = ARC2::getRDFXMLParser(); $parser->parse($url, $rdf); // triple Darstellung $triples = $parser->getTriples(); // Wenn kein OAI gefunden wurde if (count($triples) < 1) { $res = new Response(null, "URL {$url} contains no OAI-RDF"); return $res; } // in Datenbank einfuegen $ep->insert($triples, ""); $res = new Response(null, "URL {$url}: added " . count($triples) . " triples"); return $res; } }
error_reporting(E_ALL ^ E_NOTICE); /* ARC2 static class inclusion */ include_once 'arc2/ARC2.php'; include_once 'response.php'; require_once './config/config.php'; /* instantiation */ $ep = ARC2::getStoreEndpoint($config); if (!$ep->isSetUp()) { $ep->setUp(); /* create MySQL tables */ } // Empfängt RDF Daten im Turtle Format und speichert diese im Triplestore. if (!empty($_POST['url']) && !empty($_POST['turtle'])) { $url = $_POST['url']; // Wenn es die URL im Graph schon gibt, nichts machen, TODO besser updaten? if (graphContainsUrl($url)) { $res = new Response(null, "URL {$url} already visited, skip indexing"); } else { $parser = ARC2::getTurtleParser(); $data = $_POST['turtle']; $parser->parse($url, $data); $triples = $parser->getTriples(); // print_r($triples); // Wenn keine Tripel gefunden wurden if (count($triples) < 1) { $res = new Response(null, "URL {$url} contains no triples"); } else { // in Datenbank einfügen mit URL als Graph Identifier $ep->insert($triples, $url); $res = new Response(null, "URL {$url}: added " . count($triples) . " triples" . $triples); }