A service-able catalogue

osiamazonotheredition.pngDave Pattern continues to do interesting things with the catalog(ue) at the University of Huddersfield.

Check out the two screenshots from Amazon.co.uk. They show a seminal report which is now of great historical interest ;-) Notice that a Greasemonkey script has inserted a line above the title in each.

The top screenshot shows the first edition of this report (which the library does not have). However, it does have the second edition. So it pops up the line: "Other editions of this title are available from the University of Huddersfield". Clicking on this link brings you through to the appropriate page on the Huddersfield catalogue.

I then looked at the second edition in Amazon.co.uk. Notice the line this time: "Due back at the University of Huddersfield Library on 20/01/2006".

Surely some mistake - has somebody really borrowed this ;-)

osiamazondueback.pngThis is pretty neat. Here is what is going on, taken from Dave's own description in an email correspondence.

Dave has adapted the SPL Linky script to displays links to the Huddersfield OPAC from relevant Amazon.co.uk pages. He has integrated our xISBN service to track down other editions - where the ISBN will not appear on the Amazon page.

Here is Dave's description:

The xISBN lookups are handled by a server side Perl script. The Greasemonkey script basically calls the Perl script and asks it to check if the ISBN appears on our OPAC. If it does appear, then the script returns the relevant OPAC page (which is then processed by the Greasemonkey script).
If it doesn't appear, then the Perl script passes the ISBN to xISBN and (if other editions are available), these are cross-referenced with the OPAC. If any of the other editions are found on the OPAC, then the Perl script returns the string "other editions available for ISBN" to the Greasemonkey script.
The same Perl script is used to handle the link from Amazon to the OPAC. If the ISBN appears on our OPAC, then the script simply redirects the browser to the relevant OPAC page. If it doesn't appear, then it uses the ISBNs found by the xISBN lookup to create an OPAC search to display the other editions.
Unfortunately the original SPL Linky script doesn't work with Amazon.co.uk, and mine (currently) doesn't work with Amazon.com -- this is due to the fact that both sites use different HTML and formatting for their pages. However, I'll see if I can come up with a version that works for both sites... failing that, it's a fairly simply modification to change my script to make it work with Amazon.com pages instead of the UK site.
The Greasemonkey script is still being tested and I'll probably make some improvements before making available to our student population.
The script is at http://webcat.hud.ac.uk/firefox/hudamazon.user.js: you need Greasemonkey installed.

A couple of comments. What I like about this is it shows how we can connect a discovery experience which happens completely outside the library environment to a library location and fulfilment service. Again, it is putting the library in the user environment.

This is really nice, so nice that it would be nice to be able to scale it up to work with multiple libraries. To do that, what do we need? It would be good to have a consistent lightweight 'service layer' for the library system in terms of access to circ and catalog data? To set a hold? To ...? It would be good to be able to do 'service routing' (connect a user with a library which he or she is authorized to use) which depends on knowing something about the user and on a registry of libraries and their services, including resolvers. Those are the types of things that come to mind when I think about how one would surface this type of functionality in OpenWorldCat.

So, an instructive implementation, and a direction. One could imagine being able to provide the full range of what a user might want to do (place a hold for example) from within their starting interface, Amazon.co.uk in this case.

Related entries:


Comments: 2

Jan 12, 2006
Michael

This is very interesting, and very cool. Dave doesn't seem to have mentioned this on his blog yet, so I was wondering how it works in practice. Does the user have to be on the Huddersfield campus, or just logged in to their OPAC for Amazon to know who they are?

Jan 12, 2006
Dave Pattern

Hi Michael


It's the Greasemonkey extension for Firefox that's doing all the work:


"Greasemonkey is a Firefox extension which lets you to add bits of DHTML ("user scripts") to any web page to change its behavior. In much the same way that user CSS lets you take control of a web page's style, user scripts let you easily control any aspect of a web page's design or interaction.
(http://greasemonkey.mozdev.org/)


The changes occur at the client end, so the Amazon web page arrives as normal to the web browser and then the Greasemonkey script squeezes in the OPAC link.


http://userscripts.org has large number of scripts to play around with, including many tagged as "library", however I think I might be the first to also make use of xISBN to also find other editions(?)


It would be just as easy to write a script that works the other way around too - i.e. add a link to Amazon from an OPAC that doesn't already do so.


In theory we should be able to get usage stats (from the server side Perl script), so we'd be able to find out if any students ever use it.


regards

Dave