示例#1
0
$uri = librdf_new_uri($world, 'file:../data/dc.rdf');
print "Parsing...\n";
librdf_parser_parse_into_model($parser, $uri, $uri, $model);
print "Done...\n";
librdf_free_uri($uri);
librdf_free_parser($parser);
$query = librdf_new_query($world, 'sparql', null, "PREFIX dc: <http://purl.org/dc/elements/1.1/> SELECT ?a ?c ?d WHERE { ?a dc:title ?c . OPTIONAL { ?a dc:related ?d } }", null);
print "Querying for dc:titles:\n";
$results = librdf_model_query_execute($model, $query);
$count = 1;
while ($results && !librdf_query_results_finished($results)) {
    print "result {$count}: {\n";
    for ($i = 0; $i < librdf_query_results_get_bindings_count($results); $i++) {
        $val = librdf_query_results_get_binding_value($results, $i);
        if ($val) {
            $nval = librdf_node_to_string($val);
        } else {
            $nval = '(unbound)';
        }
        print "  " . librdf_query_results_get_binding_name($results, $i) . "=" . $nval . "\n";
    }
    print "}\n";
    librdf_query_results_next($results);
    $count++;
}
if ($results) {
    print "Returned {$count} results\n";
}
$results = null;
print "\nExecuting query again\n";
$results = librdf_model_query_execute($model, $query);
示例#2
0
文件: Node.php 项目: bakulf/raop
 /**
  * Return a string representation of the node.
  *
  * @return  string  A string representation of the node
  * @access  public
  */
 public function __toString()
 {
     $rs = librdf_node_to_string($this->node);
     if ("1.0.11" > librdf_version_string_get()) {
         if (librdf_node_is_resource($this->node)) {
             $rs = '<' . substr($rs, 1, -1) . '>';
         } elseif (librdf_node_is_literal($this->node)) {
             $rs = '"' . $rs . '"';
         } elseif (librdf_node_is_blank($this->node)) {
             $rs = '_:' . substr($rs, 1, -1);
         }
     }
     return $rs;
 }