Re: Restpark - Minimal RESTful API for querying RDF triples

On 17/04/13 15:08, Luca Matteis wrote:
> I have realized that Restpark might be duplication of an idea that is 
> already the Linked Data Platform itself.
>
> Just a very basic question: with Linked Data how do I find all of the 
> instances within DBpedia (for example) of type 
> http://dbpedia.org/ontology/Actor? This query would be answered with: 
> ?actor a dbpedia:Actor - but is this possible using simply the Linked 
> Data facilities (without SPARQL say)? I know I could dump all of 
> DBpedia's data and analyze it to find all actors, but there must be an 
> easier way no?

You can say that <[1]> is a URI to a query object. You can pick it up, 
share it, play with it, etc.

Two things.
1) The URL [1] exists at two levels: there's the SPARQL query text and 
there's metadata around it, most notably the way default-graph-uri= and 
format= are specified out of band. Make of this separation, and the way 
RESTpark differs, what you will.

2) Considering the query, currently expressed as SPARQL, for what it 
does in terms of the DBpedia dataset, it's pretty elementary. I can see 
where you're coming from with RESTpark - all that `where 
{<specificSubjectURI ?p ?o}' business looks like overkill if you're a 
newbie and all you want is a slice of the data filtered by subject, 
predicate or object. But try this: give me a list of dbpedia:Actors and 
the average of their foaf:friends' ages. It's quite easy to formulate 
that in SPARQL, but from what I've seen RESTpark doesn't seem to have a 
means of answering it. In other words, we're into a trade-off between 
ease of expression and power of expressibility.

There's an analogue with XPATH: little fragments of expression such as 
*[@style and not @font]   look succinct, and say a lot (you'd read it as 
"any element where there's a style attribute but not a font attribute") 
and you can enjoy flicking-around the English word "where" with mere 
punctuation, etc, but ultimately XPATH's popularity is because it's a 
fair and powerful trade-off between that brevity and the set of queries 
it allows you to express relative to the set of queries the userbase 
*wishes* to express.

Ultimately I think this is a question of the userbase market's demands.

Aside: have you seen 4store's use of HTTP verbs (PUT, POST, DELETE) and 
URL-endpoints such as /data in [2] ?


[1] 
http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=select+distinct+%3Fs+where+%7B+%3Fs+a+%3Chttp%3A%2F%2Fdbpedia.org%2Fontology%2FActor%3E+%7D+LIMIT+50&format=text%2Fhtml&timeout=0&debug=on

[2] http://4store.org/trac/wiki/SparqlServer

~Tim
-- 
Tim Haynes
Product Development Consultant
OpenLink Software
<http://www.openlinksw.com/>
<http://twitter.com/openlink>

Received on Thursday, 18 April 2013 15:01:00 UTC