Beispiel #1
0
header('Content-type: application/json');
// JSON to RDF
if (isset($_POST['toRDF'])) {
    toRDF($_POST['toRDF']);
    return;
}
// RDF to JSON:
$postdata = file_get_contents("php://input");
if (empty($postdata)) {
    echo '{ "status": "failed", "error": "no input" }';
    return;
}
$store = new LibRDF_Storage();
$model = new LibRDF_Model($store);
try {
    $model->loadStatementsFromString(new LibRDF_Parser('rdfxml'), $postdata);
} catch (LibRDF_Error $e) {
    echo '{ "status": "failed", "error": "parser error" }';
    return;
}
toJSON($model);
function toJSON($model)
{
    $data = array('data' => array());
    $predicate = new LibRDF_URINode(RDF_BASE_URI . "type");
    $object = new LibRDF_URINode(ROAP . "Document");
    $results = $model->findStatements(null, $predicate, $object);
    if ($results->valid()) {
        $document = $results->current()->getSubject();
        $predicate = new LibRDF_URINode(ROAP . "lines");
        $results = $model->findStatements($document, $predicate, null);