Access Keys:
Skip to content (Access Key - 0)
My Area (Access Key - 2)


Toggle Sidebar
Your Rating: Results: PatheticBadOKGoodOutstanding! 3 rates
Labels:
sfx sfx Delete
catalog catalog Delete
holdings holdings Delete
elympics elympics Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Chameleon SFX Catalog Integration Plugin

Tags: , , ,
Last Updated: Mar 22, 2010 23:35


  • Description

    Chameleon is an SFX plug-in that provides a more fine-grained look-up of journal and book holdings in your library catalog than the standard SFX Z39.50 plug-in. For journals, Chameleon examines your holdings statements to determine, not just whether you have the journal title, but whether your holdings show you have the year of the article the user is requesting. For books, Chameleon checks to see if the book is available for borrowing as a condition for showing the catalog link. This decreases the number of times users wind-up in a dead-end in your catalog from the SFX menu because you've got incomplete runs for a journal or the book the user is looking for is checked out. You don't need to use both options. You can use Chameleon just for journals or just for books.


  • Author: David Walker
  • Additional author(s):
  • Institution: California State University
  • Year: 2010
  • License: GNU Lesser General Public License version 3, Copyright 2010 California State University
  • Short description: Use, modification and distribution of the code are permitted provided the copyright notice, list of conditions and disclaimer appear in all related material.
  • Link to terms: http://www.gnu.org/licenses/lgpl.html
  • Skill required for using this code:
    basic

State

Stable

Programming language

Perl

Software requirements

Currently only works with Innovative (including INNReach) and Voyager systems.

Download

http://code.google.com/p/sfx-scripts/downloads/list

Working journal example

http://sfx.calstate.edu:9003/sanmarcos?issn=0028-9604&year=1970

In this (simplified) example, the user is looking for an article from Newsweek published in 1970. Although the library at Cal State San Marcos has a Newsweek subscription, it's missing older issues, including those from 1970. The standard SFX Z39.50 plug-in would show a link to the catalog in this scenario, since it's merely doing a title-level search, leaving the user confused as to why the library doesn't actually have the article they want. Chameleon, however, correctly determines this article is not available in print, and so hides the target, leaving display logic to only show Inter-library Loan as an option.

http://sfx.calstate.edu:9003/sanmarcos?issn=0028-9604&year=1974

The second example here is for a year that is covered by the holdings at San Marcos, and so Chameleon correctly shows the link to the catalog.

Working book example

http://sfx.calstate.edu:9003/cpslo?isbn=0672632780

In this example, Cal Poly has the book, and it is available for borrowing.

http://sfx.calstate.edu:9003/cpslo?isbn=0545010225

Cal Poly has the book in this example, too, but (at least at the time these instructions were written) it is checked out. Chameleon therefore hides the catalog target. Several libraries in a regional consortium called Link+ have this book, however. Cal Poly has an SFX Link+ target that uses its own Chameleon plug-in. Since Chameleon finds available copies there, it shows the link.

http://sfx.calstate.edu:9003/cpslo?isbn=0768655102

In this example, the book is not held by Cal Poly. It is held by two libraries in the Link+ consortium (see http://csul.iii.com/search/i0768655102). But since these are both e-books, which Cal Poly students cannot borrow, Chameleon correctly does not show a link to Link+, instead leaving display logic to only show Inter-library Loan as an option.

Using the following Ex Libris open interfaces

SFX plug-in architecture

Installation instructions

Test Script

Before you get started, try this test script. It should give you some sense about whether Chameleon will work with your catalog or not.

http://library.calstate.edu/chameleon

Chameleon's ability to determine book availability is pretty simple, and is almost guaranteed to work.

The journal look-up and holdings parsings, however, requires that your holdings statements follow a reasonably consistent pattern. You do not need MFHD (although that helps), and they don't need to necessary following a specific pattern. Chameleon uses a very generous regular expression pattern to catch a wide array of ways in which libraries enter holdings information. But if you don't have any consistent pattern for how holdings statement were entered, or that pattern has changed significantly over the years, then Chameleon will likely not be able to parse them. A retrospective holdings clean-up project could solve this problem, of course.

Contents

Chameleon consists of two plug-ins:

Chameleon.pm – this is the base Chameleon module. Your SFX targets will not use this plug-in directly. Rather, all Chameleon plug-ins share this module.

Chameleon_Local.pm – this is essentially a configuration file for Chameleon. Here you'll set the various options for the catalog you wish to search. When configuring your catalog target in SFX, you'll actually tell it to use this plug-in.

You can have as many Chameleon_Local.pm plug-ins as you like. Just rename each one something different (make sure to change the 'package' name at the top of the file as well).

In this way, you can have multiple different catalog targets in the SFX menu (for your own catalog, a union catalog, those of nearby libraries, etc.), each with it's own Chameleon plug-in. But, as new versions of Chameleon become available, you'll be able to upgrade all of your Chamelon plug-ins by simply upgrading the base Chameleon.pm module.

Configure Chameleon_Local.pm

Open Chameleon_Local.pm in a text editor and follow the instructions with each configuration option. You'll need to enter the Z39.50 connection information for the catalog, as well as some options for how to parse journal holdings and book availability.

Upload file to the SFX server

Upload both files to the plugin directory (lib/Parsers/PlugIn) of your SFX instance, and then restart the Apache server. Check the SFX documentation on how to do that.

Configure your catalog target

You can now go into your catalog target in the SFX admin target section, and configure it's threshold to use the Chameleon_Local plug-in. Again, consult the SFX documentation on setting thresholds.

If you only want Chameleon to do a book look-up, then you can set an additional threshold parameter to require an ISBN in the OpenURL. If you only want Chameleon to do the journal look-up, then adjust the threshold to also require an ISSN. You can also set this up with separate book and journal targets, if you prefer. That would allow you to also adjust the wording in the menu.

Debugging

You may run into problems during your set-up. Set the 'logging' config option to '1' in order to have Chameleon spit-out it's debugging message (like the one you see in the test script) to the SFX Apache logs. The download also comes with the test script you see above. Simply upload this to the public cgi-bin in your SFX instance (cgi/public), and access it via your browser.

Page Attachments

No files have been attached to this page.

Added by David Walker on Mar 12, 2010 23:26, last edited by David Walker on Mar 22, 2010 23:35

Adaptavist Theme Builder Powered by Atlassian Confluence