Using PubSubHubbub with Linked Data
Here we demonstrate how to use Virtuoso's implementation of the draft PubSubHubBub Protocol to handle Linked Data.
We extend the idea of tracking a feed, to track Linked Data resource URIs.
To reveal the hub to subscribers, we suggest that Linked Data resources return the following HTTP header --
Link: <http://cname/psh/subscribe.vsp>; rel="hub"
-- or include the following in an HTML
<head> (or similar) element --
<link rel="hub" uri="http://cname/psh/subscribe.vsp">
pubsubhub_dav.vad PubSubHubBub package on Virtuoso defines the following endpoints:
| subscription endpoint |
| publishing endpoint |
| index to UI of the simple test clients |
| default built-in client callback endpoint |
Using the built-in demo client
- As a very first step, we use a simple client to subscribe to a SIOC document containing data for an ODS-Weblog.
In our tests, we subscribe to the Linked Data document
- The Weblog post looks like this:
- During the subscription process, the client gets the initial state of the SIOC feed.
We can execute the following query to see all post titles:
- The title of the existing Weblog post may be found in the result of that query:
- Next, we add a new blog post to force a change to the SIOC data:
- Using a simple publishing UI, we notify the Hub the data has changed:
- The Hub takes the delta and notifies the subscribers:
- We re-execute the same SPARQL query as in the earlier step, and now we can see the data includes the title of the new blog post: