LibraryFind Fun
Two weeks ago I had the privilege to get to work with Terry Reese from OSU Libraries on getting LibraryFind implemented here at the University of Houston Libraries. This collaboration has been quite a while in the making. Discussions started at code4lib, but between busyness and bureaucracy it has taken until now to make it happen.
One thing that surprised me the most about LibraryFind is just how easy it is to get installed. Granted, Terry made our production instance work (mongrel clusters and all), but I got our test instance up and running all by my lonesome. Most of the stuff that I needed I could install from rpm, but a few things like YAZ I needed to install from source because the rpm wasn’t compiled with the necessary switches. One nice thing in SUSE is that you can tell how an rpm is compiled if you search around a little. So basically, I checked to see if the rpm had what I needed. If it did I used it; if it didn’t I installed from source (not my favorite thing to do). The biggest thing I didn’t get setup on the test server was SVN so that I can pull new versions (a little updates) of LibraryFind down when they are available. I’m sure I’ll get to that sometime. In the meantime, I’m just working though getting the production instance completely configured that way I want.
The biggest thing with LibraryFind is getting your Collections (Databases) setup to be searched. This requires the collection of massive amounts of info from the database vendors and time tinkering. Some vendors make this easier than others. I had no trouble setting up Ebsco, OCLC, or WilsonWeb databases. Other such as those from Proquest and Silverplatter, are giving me fits. Then there are the vendors who don’t provide a z39.50 interface or worse yet have an XML API (thanks for nothing Elsevier) and won’t share it (at least not with lowly open source folks).
The other thing that is time consuming is setting up the OpenURL resolver stuff which includes your holdings and providers. Honestly as I’m working on this I’m wishing more and more that we had an OpenURL resolver with an API. Because we don’t I have a lot of duplicate work to do. However, I think the users’ reactions to the final product will make it all worthwhile when I get it done. In the meantime, there is just an awful lot of info entry to do.
Karen,
I have an OpenURL implementation with a relatively intuitive API (viz. OpenURL itself). Here is the JavaDoc for it: http://pubserv.oclc.org/oom-j/jars/docs/docs/api/index.html . You should recognize most of the classnames from the standard itself. A brief description can be found here: http://q6.oclc.org/2006/08/openurl_object.html . I haven’t publicized this implementation much because we’re so busy using it internally. If you’re interested, though, let me know and I can help you get started.
Jeff