- From: Melvin Carvalho <melvincarvalho@gmail.com>
- Date: Thu, 8 Apr 2010 10:56:12 +0200
- To: Stephane Corlosquet <scorlosquet@gmail.com>
- Cc: semantic-web@w3.org
- Message-ID: <t2u9178f78c1004080156v1391f08eq497636dabaf0f204@mail.gmail.com>
2010/4/8 Stephane Corlosquet <scorlosquet@gmail.com> > 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)? > I wondered often about this too, but I believe it's on the arc2 todo list to remove the MySQL dependency. Or of someone wanted to submit a pach, I'm sure it would be greatfully received, so the arc2 is likely only a short term issue. I was playing around with the beginnings of a service. http://sparql.me/queries.php This allows you to submit a sparql query and get back the results. If you're logged in (currently need foaf+ssl) you can persist your queries. It was more a chance to build up a library of interesting queries for my own education than anything else, but I could possibly use it a controlled API for proxying queries. Similarly in FOAF+SSL we need to obtain the public key from a WebID, so i built a simple service to do this (eventually it will have caching for better speed) here: http://publickey.info/ Again this style of service has pros and cons: Pros - Good to fallback to, if you dont have a sparql library - Could be optimized for speed ( e.g. caching ) - Could allow verified claim (public key) against an account that is hard to deference (e.g. email, phone, google account etc.) Cons - Any proxy could give you false information - The proxy itself runs the risk of being attacked, it's more secure to go to the source - The caching and revocation problem These were just proof-of-concepts that I put together in a day or two, but my hope is that the Linked Data Cloud has the ability to come together to provide a host of services that allow the whole to become greater than the sum of the parts. > > Steph. > > [1] http://www.sparql.org/sparql > [2] http://demo.openlinksw.com/sparql >
Received on Thursday, 8 April 2010 08:56:44 UTC