Re: Generating rdfs:seeAlso links for Tabulator with SPARQL CONSTRUCT

URL encoded full queries, are certainly useful, but one has to wonder
however how long can they last outside our happy experimentation
In the real world they're the "no no" of web programming.. but we'll see
how it develops of course.

Responding to your request for comments, i feel that the technique is
interesting and will certainly fit some use cases.
I don't see it however much less hardcoded than a link to what appears
to be a static RDF file but could be a dump of the whole db or a generic
construct query which dumps all off a sparql endpoint (which, i fear..
will be what people would be tempted to do).

The cool factor is probably in the URI rewriting.
But then again, maybe that is not a good idea? I wonder if  putting
instead in your foaf file a triple that says yourpage#cris sameAs
bigtimedb/id12345 would be more useful.. e.g.  if the tabulator found
other graphs where you are mentioned as the OTHER URI then such triple
would do the mapping , the query wouldn't.

What in reality we would like to see on the SW is visiting somebody's
homepage and see somehow the publications in all the major site
regardless of which ones the author decided (or remembered) to point to.
But this is impossible in these "direct HTTP link" scenarios, which
however are inspiringly simple and demonstrable.

Lets throw in the pic some sort of lightweight inverse URI/URL index to
find the unexpected stuff?

Something to support the vision of the Semantic Web as a collection of
URI each of which can be freely annotated  and there is some good
chances that these annotations are automatically discovered, rather than
a collection of endpoints each of which must me known in advance and
hardwired to the point where you think it might be useful.
This would give such "semantic web" the ability to fulfill expectations
similar to what the user has today the web, that is, in the powerful
search engine era. (rather than a "web of the old days" made of direct
links with bookmarks being really important)

In RDFGrowth as implemented in DBin (new version coming out in days to
support the ISWC :-) ) the use of a DHT such inverse scenario, as well
as collecting knowledge locally which is something we like a lot. But
then again is a completely different system than HTTP and the usual web
and instead supports a new scenario (Semantic Web Communities or
Newsgroups , that is people that want to collaboratively create and
browse a common RDF graph, yet replicated at each peer) rather than a
"lightweight" extension of the current web.

Looking forward to discuss this live at ISWC. A BOF maybe?


> Hi all,
> in a recent talk about Tabulator and linked data on the Web
> (, Tim says that "The
> biggest challenge is links to other systems."
>, meaning that the Web
> of Data can only be browsed or queried
> (, if
> there are enough links connecting the RDF documents on different servers.
> So how to we get these links?
> One approach is to set them manually, by including rdf:seeAlso triples
> and by using dereferencable URIs from different servers in RDF
> documents. For instance, by FOAF profile
> ( contains lots
> of seeAlso links to other profiles and the triple:
> <> foaf:based_near
> <>
> which is a link to data about Berlin, that people can follow by
> dereferencing the object of the triple.
> An alternative to manually set links is to generate them with a SPARQL
> CONSTRUCT query.
> We are currently setting up a D2R Server
> ( which will
> publish the DBLP bibliographic database (800000 articles, 200000
> authors) as linked data on the Web. The server will go live some time
> next week and will allow you to query the DBLP database with SPARQL
> and to dereference all generated URIs.
> So let's assume, I want to set links from my FOAF profile to my papers
> in the DBLP database
> (
> I could do the following:
> 1. Ask the server for his URI identifying me.
> SELECT ?me
> WHERE {?me foaf:name "Chris Bizer"}
> This will return a URI like
> http://[DBLPServerRoot]/persons/person15437. Our server will for
> example return
> 2. Then I could add a rdfs:seeAlso link to my foaf profile that
> contains the following SPARQL CONSTRUCT query as target:
> CONSTRUCT   { ?paper dc:author <> }
> WHERE       { ?paper dc:author
> <> }
> encoded into a seeAlso link the query would look like
> <> rdfs:seeAlso
> <>
> When an RDF browser like Tabulator dereferences the object of the
> triple, it gets an RDF document like:
> <> dc:author
> <> .
> <> dc:author
> <> .
> <> dc:author
> <> .
> <> dc:author
> <> .
> and the user can browse to my papers in the database by dereferencing
> the subjects of the triples.
> Thus, combining rdfs:seeAlso with SPARQL CONSTRUCT allows you to set
> dynamic links in the Web of Data, that reflect changes in the target
> data source (If a new paper I have authored is added to the DBLP
> database, there will also be a new link in my FOAF profile).
> Any comments on this idea?
> We will demo this kind of links at our poster presentation about D2R
> Server at ISWC in two weeks. So if you think this is interresting,
> just drop by.
> Cheers
> Chris

Received on Saturday, 28 October 2006 14:19:34 UTC