[TagCommons-WG] SPARQL and query services over tag data

Richard Newman holygoat at gmail.com
Fri Mar 2 23:14:56 PST 2007


> (Group: Here is a good introductory article on SPARQL that explains  
> that it is both a query language and a data access protocol layered  
> on Web Services.
More accurately, the SPARQL query language is a query language; the  
SPARQL Protocol is a data access protocol, conventionally implemented  
using simple HTTP. I have never seen a SOAP, XML-RPC, or WS-*ey  
implementation of the SPARQL Protocol.
>  I would also point people to the tools and services enabled by the  
> Redland RDF Libraries maintained by Dave Beckett, who is on this  
> list).
There is a moderately complete list at

http://esw.w3.org/topic/SparqlImplementations

I say "moderately" because AllegroGraph is not yet listed, because I  
haven't got round to adding it.
> Your example of revyu.com and del.icio.us is instructive.   As you  
> and others have pointed out, the various ontologies for tagging we  
> have looked at all have core concepts that could be mapped to the  
> data that both revyu.com and del.icio.us expose through APIs.
Or, indeed, to each other through ontology mappings.
> The main difference seems to be in the completeness of the  
> inferential/retrieval services exposed.  I don't know whether being  
> a compliant SPARQL endpoint implies returning results for all legal  
> (and computationally tractable) queries in the language (does SQL?   
> I think so).
Being a compliant SPARQL endpoint means that if the endpoint chooses  
to answer a request (rather than returning QueryRequestRefused), it  
must conform to the SPARQL spec. This still allows it some latitude,  
such as what to do with FROM/FROM NAMED, how to treat the default  
dataset, etc.
> The del.icio.us API only answers some kinds of queries, such as  
> "return all the tag assertions by me".
>
>
> If we specified a tag ontology, and showed how it mapped to various  
> APIs (possibly by just writing some of them as in the XSLT example  
> from Marja), then we would have the ability to write brokers and  
> mediators that could query across sources -- with one caveat.  The  
> broker / mediator would have to know the computational capabilities  
> and limitations of each endpoint, and reason about that.  For  
> example, one service might be able to directly return the set of  
> tag labels for a given item by a given person, whereas another  
> could only return the whole row set of tag assertions by any person  
> using any tag label for the item.
Assuming that each endpoint implements SPARQL, and has the data  
available, no such reasoning is necessary. I think that's excessive  
complexity at this stage.



More information about the Wg mailing list