SPARQL LOAD SERVICE <http://example.com/sparql> DATA
, it can execute the appropriate LOAD SERVICE ...
DATA
by itself and retry the failed query.Adding SPARQL Endpoint Capabilities Interrogation to Virtuoso SPARQL-FED functionality can be achieved by:
Grant the SPARQL_LOAD_SERVICE_DATA
ROLE privilege to the SPARQL
user to enable the capabilities of external Virtuoso SPARQL endpoint to be determined by executing the following command from the Conductor or command line iSQL interfaces:
GRANT SPARQL_LOAD_SERVICE_DATA to "SPARQL" ;
Once executed when running SPARQL-FED queries the source SPARQL endpoint will interrogate the remote source en route to best understanding its capabilities for optimum execution of the SPARQL-FED queries. The "best effort" determination of capabilities is done by a combination of the following:
The following curl command can be used to obtain the service description for a given SPARQL endpoint:
curl -iLH "Accept: text/turtle" http://linkeddata.uriburner.com/sparql
Example usage:
SQL> grant SPARQL_LOAD_SERVICE_DATA to "SPARQL"; Done. -- 3 msec. SQL> grant SPARQL_SPONGE to "SPARQL"; Done. -- 3 msec.
SELECT DISTINCT ?Entity WHERE {SERVICE <http://dbmi-icode-01.dbmi.pitt.edu:8080/sparql> {SELECT * WHERE { ?Entity ?Relation ?EntityType} limit 50 } }