@ignore
protected function parseNtriplesObject($obj) {
if (preg_match('/"(.+)"\\^\\^<([^<>]+)>/', $obj, $matches)) {
return array(
'type' => 'literal',
'value' => $this
->unescapeString($matches[1]),
'datatype' => $this
->unescapeString($matches[2]),
);
}
elseif (preg_match('/"(.+)"@([\\w\\-]+)/', $obj, $matches)) {
return array(
'type' => 'literal',
'value' => $this
->unescapeString($matches[1]),
'lang' => $this
->unescapeString($matches[2]),
);
}
elseif (preg_match('/"(.*)"/', $obj, $matches)) {
return array(
'type' => 'literal',
'value' => $this
->unescapeString($matches[1]),
);
}
elseif (preg_match('/<([^<>]+)>/', $obj, $matches)) {
return array(
'type' => 'uri',
'value' => $matches[1],
);
}
elseif (preg_match('/_:([A-Za-z0-9]*)/', $obj, $matches)) {
if (empty($matches[1])) {
return array(
'type' => 'bnode',
'value' => $this->graph
->newBNodeId(),
);
}
else {
$nodeid = $this
->unescapeString($matches[1]);
return array(
'type' => 'bnode',
'value' => $this
->remapBnode($nodeid),
);
}
}
else {
throw new EasyRdf_Exception("Failed to parse object: {$obj}");
}
}