How to use Turtle sparql php

I am trying to filter out this database written in Turtle

@prefix : <http://www.essepuntato.it/resource/> . @prefix vcard: <http://www.w3.org/2006/vcard/ns#> . @prefix cs: <http://cs.unibo.it/ontology/> . :pt0001 vcard:category "Poste e Telegrafi" ; vcard:fn "Ufficio Bologna 1" ; vcard:extended-address "Via Cairoli 9, Bologna BO, Italy" ; vcard:latitude "44.504192" ; vcard:longitude "11.338661" ; vcard:tel "051 243425" ; vcard:fax "051 244459" ; cs:opening "Mon, Tue, Wed, Thu, Fri: 0800-1330. Sat: 0800-1230." ; cs:closing "01-01, 01-06, P, LA, 04-25, 05-01, 06-02, 08-15, 11-01, 12-08, 12-25, 12-26: .". 

I am using arc2 api beacause since RAP is not working. I wrote this code, but it will not work:

 <?php /* ARC2 static class inclusion */ include_once('./arc2/ARC2.php'); /* MySQL and endpoint configuration */ $config = array( /* db */ 'db_host' => 'localhost', /* optional, default is localhost */ 'db_name' => 'my_db', 'db_user' => 'user', 'db_pwd' => 'secret', /* store name */ 'store_name' => 'my_endpoint_store', /* endpoint */ 'endpoint_features' => array( 'select', 'construct', 'ask', 'describe', 'load', 'insert', 'delete', 'dump' /* dump is a special command for streaming SPOG export */ ), 'endpoint_timeout' => 60, /* not implemented in ARC2 preview */ 'endpoint_read_key' => '', /* optional */ 'endpoint_write_key' => 'somekey', /* optional */ 'endpoint_max_limit' => 250, /* optional */ ); /* instantiation */ /* instantiation */ $ssp = ARC2::getSPARQLScriptProcessor($config); /* script evaluation */ $scr = ' PREFIX vcard: <http://www.w3.org/2006/vcard/ns#> PREFIX dbpedia2: <http://dbpedia.org/property/> ENDPOINT "database.ttl" $rows = SELECT ?x ?y WHERE { ?x vcard: ?y. } '; $ssp->processScript($scr); echo $ssp->env['output']; ?> 

The script does not return an error, not a result.

+7
source share
1 answer

There seems to be no predicate in the WHERE {} statement.

For example, did you mean vcard:latitude ?

Currently

 $rows = SELECT ?x ?y WHERE { ?x vcard: ?y. } 

What about:

 $rows = SELECT ?x ?y WHERE { ?x vcard:latitude ?y . } 

And there may be problems if the space symbol does not exist before the period. Notice I added this above. At least this is what I experienced when using Python's RDF libraries.

+2
source

All Articles