At its core, CLOCK is a project to link open bibliographic datasets. That’s the philosophy behind it. Where things start to get really exciting is what we could build with this data. I’m not going to stand up and say the concept of linked open data is new; it’s not. But we’ve certainly got some interesting ideas of where we could take it from the point of view of bibliographic data…
Paul Stanthorp has already written a post discussing the three target tiers for these applications.
So, an update! Things have sprinted forward with CLOCK this week and, as well as some interesting theoretical study which my cohort Trevor Jones will shortly be blogging about, we’ve started looking at both potential high level applications (so that we’ve got something to strive for) and started building some basic search apps (so that we’ve got something real to play with).
The first app we’ve cobbled together is kind of a “Hello World” of open data querying. Using the Cambridge Uni endpoint, we’ve hacked together a really simple app which takes user input in the form of a publication title, author and the number of records to limit the search to. The app takes this criteria, cobbles together a SPARQL query and, using the sparqllib php library, we fire that query at the endpoint and display the results. Publication titles then link back to the URI from Cambridge. We’ve wrapped the Skeleton HTML boilerplate round this for pretties.
While this might seem pretty trivial to some, it’s a good starting point for where we want to go with CLOCK which is, ultimately, delivering “consumer level” applications that run on simple user input rather than relying on users being au fait with complex query languages.
Where next? Well, we want to expand on this basic app and introduce:
- Multiple data sources
- Local data caching
- Better handling of search criteria
- Highlighting of search terms
- User accounts (possible cross login from existing uni accounts) which will instruct the default library searched
- Favourites and saved searches
This proof of concept development also sits alongside the theoretical work we’re doing.