I'm following the instructions in page 282 of Bob Ducharme's Learning Sparql (2nd Ed) book to write a program to automatically construct dbpedia queries over the web by sending queries to the http://dbpedia.org/sparql?query= endpoint, appending a URLEncoded query.
I can contact the server and get a 200 response, but the sparql query itself does not succeed and the response includes the following text:
"(Security restrictions of this server do not allow you to retrieve remote RDF data, see details.)"
Is this intentional or have you just upgraded to a new version of the server and not yet enabled this access?
If I want to programmatically wish to make Sparql queries to a remote endpoint, what is the best way to do this programatically in a standards conforming way to be able to query as many different Linked Data sites' endpoints as possible and get RDF data returned back ?
OK. I've resolved this.
can you answer how you did it to help others?
yes, actually I would be very curious how you did that. I am trying to do the same thing with no success.
Among other security settings and "fair use" policies, the DBpedia endpoint is set to not execute Federated SPARQL – that is, queries which include queries over other endpoints.
However, the DBpedia endpoint will permit other endpoints to submit queries – so you can have your own endpoint federate queries over multiple endpoints which include DBpedia.
Alternatively, you can spin up your own mirror of DBpedia in the AWS cloud, with or without live updates based on the Wikipedia firehose, and adjust the security settings and other usage limits on that instance however you like.