Public SPARQL endpoints for generic usage

Hi,

Some applications don't have the capability or the resources to run SPARQL
queries themselves and must rely on external services. There exist a few
SPARQL public endpoints which allow generic SPARQL querying [1] [2]. Are
there any policy on using these public endpoints in applications? I
understand these were setup primarily for educational purposes. Obviously
anyone wanting to build a reliable service would host their own SPARQL
endpoints, but how about situations where the user setting up an application
using SPARQL is not able to host such a service. Think of handheld devices,
or situations where no SPARQL library is available for software stack an
application runs on.

The use case which prompted me to write this email is in PHP where ARC2
requires MySQL to run SPARQL queries. During the installation of Drupal,
imagine we want to get all the classes of a vocabulary with:
  select *
  from <http://xmlns.com/foaf/0.1/>
  where {
    {?class rdf:type owl:Class}
    union
    {?class rdf:type rdfs:Class}.
    OPTIONAL {?class rdfs:label ?label}.
  }
(similarly for properties)

Sites running on a database other than MySQL will need to use an external
SPARQL endpoint. I imagine this is not an isolated use case. Do we have
public endpoints available for this sort of (ideally lightweight) querying?
How do they deal with server load (API key, IP based flooding control)?

Steph.

[1] http://www.sparql.org/sparql
[2] http://demo.openlinksw.com/sparql

Received on Thursday, 8 April 2010 01:44:19 UTC