Update: documentation for the Talis Platform
(Library 2.0) API is now starting to appear on the Talis Developer Network at Talis Platform API.
A week or so ago, a public draft of the Talis Community Licence appeared in this blog post.
It came with the following claim:
[This licence] is going to play a key role in [the Talis Silkworm] technology platform. It gives users and contributors of all kinds of platform data some fundamental rights with one important restriction. Basically it:* Grants the freedom to use the data for any purpose
* Grants the freedom to modify and mix the data
* Grants the freedom to redistribute copies
* Prevents any attempt to deny those freedoms to othersWe're expecting the Talis platform to manage and make available under this licence a huge variety of data ranging from MARC to RDF and everything in-between - that's 4 decades of data formats!
The licence has its roots in the GPL and includes the same sort of redistribution...
I mailed this announcement to a select few, with the comment that it seemed to signal the imminent arrival of an open APIs to the Silkworm platform, something that had been hinted at when Paul Miller, the Talis technology evangelist spoke at the OU a couple of weeks ago.
Well - you'll be glad to know the first phase of the Talis Library 2.0 platform duly arrived in the form of the Silkworm directory last week (blogged about here).
A few of us had had a sneak preview (much appreciated, thanks) beforehand, which is partly why I've held off blogging about it - I'm a little guilty that I haven't found the time to knock up some sort of OU/Silkworm mashup (I was hoping to find an hour (that may have turned into four - you know how it goes!) to put something together, but other things are afoot at the moment that have got in the way of anything that might turn into open ended play time...)
Anyway, the first Silkworm Direcroty interface is now open to play with, and I'm assured API details are on the way.
As some details are out now, and more due any time, I think it's probably ok to pass on some of the details that Ian Davies originally mailed out:
Technically the directory runs off an RDF store using Jena and Joseki, fronted by a thin web app written in ASP.NET and XSLT. The directory stores descriptions of collections, physical locations and electronic services. [e.g. here's a description of the Open University collection] We'll be introducing grouping of resources, descriptions of organisations and relationships between collections soon. The services are described in detail as RDF so we can programatically build queries into them. ... There are a number of other RDF-based services .... Each primary resource in the directory links to its RDF representation via a little blue icon beside its title. These point to our sparql endpointFor the sparql service we plan on not allowing GRAPH/FROM queries
either, certainly not from day one. As we scale the service out we might
enable it.We're using Joseki for the Sparql stuff. All the pages you see at http://directory.talis.com/ui/ are generated using XSLT on RDF/XML coming out of Joseki.
Collection information is alo published as HTML as this page describing the OU Library OPAC demonstrates (the enabled search over the catalogue even works, too:-)
Some of the URLs look as if they are going to be hackable, generatable(?), which is handy. For example, this URL: http://api.talis.com/1/node/items/ad9.sw/bib?title=rdf is described as follows:
We have a public service that uses the service information to automatically link into the OPAC. For example, on that page above you can see the generated identifier for Bath University is "ad9.sw". You can plug that into a URL like this and search for RDF.The [URL] syntax is a custom one based on what we know we can support for the majority of our service descriptions. It currently supports isbn, title and author parameters. Full documentation is coming :) We plan to support "real" protocols like SRU and OAI and map them to the capabilities of the target OPAC. These will have URLs like:
http://api.talis.com/1/node/items/ad9.sw/sru
An RDF returning search is also supported, taking the form http://api.talis.com/1/dir/collections?api_key=?????&search=open:
One thing I'm keen to explore is how the library location lookup service can be used to augment the OU 'Libraries Near You' service which provides an ugly interface to a 'library by postcode' lookup service augmented with information about lending rights for OU students, as well as library opening times and other administrative information.
In contrast, the Silkworm version goes for a Google maps mashup:
At the moment though, the OU data is far more reliable (and maintained). The Talis approach appears to be appealing to community support/maintenance of the library information database, something the OU has done centrally (by phoning people up and hassling them, I guess!)
One thing I'm keen to explore is how we can work with Talis on maintaining this sort of information, and guaranteeing its correctness, for mutual benefit. (I should qualify that - I am 'outside the system' and so restricted to buolding proof of concept demonstrators that othe people would have to decide to adopt...)
If you want to keep up with what Talis are doing, I believe more announcements are due throughout May on the Talis Developer Network.
Posted by ajh59 at May 4, 2006 12:52 AM