[Zope] Zope Integrated Library System

Tim Chase Tim Chase" <chase@iac.net
Tue, 11 Jun 2002 15:08:50 +0000

This post is a long introduction to the concept of an Integrated
Library System (ILS). I will gloss over many historical points. Feel
free to correct or supplement any of the information below.

Some major components of an ILS are
   (1) a catalog system with an online public access interface (OPAC)
   and a cataloging interface for adding and changing bibliographic
   records; can import and export MARC records; Z39.50 interface;
   authority control (see below)
   (2) a patron (or member) system, which holds information about
   patrons, their level of access, current materials borrowed, etc.
   (3) a circulation system, which tracks the location and status of
   items as they are borrowed, returned, sent for repair, etc.
   Historical data, such as total circulation and circulation by period
   is important. Should also include a reserve and request system (see
   (4) serials control. Serials are a different beast from monographs
   (books). A library may have subscriptions to thousands of serials
   titles, each with a different rate of issue, claiming procedure,
   binding needs, etc.
   (5) Acquisitions system. Libraries use vendors or jobbers to buy
   dozens (hundreds) of copies of books in bulk, possibly before the
   items are released for sale. A good acquisitions system automates
   various steps in the process of selecting materials, paying for
   them, tracking them prior to cataloging, etc. 

That said, a useful first step would be a system that has 
   (1) a basic idea of a class of items (a catalog record, also
   referred to as a "title") with searchable metadata for that class.
   The metadata could possibly be based on the output from the MARC to
   Dublin Core translator from OCLC (http://alcme.oclc.org/marc2dc/). 
   (2) an OPAC with a pretty interface (see
   http://sunsite.berkeley.edu/Libweb/ for every web interface known to
   mankind) that can search the catalog records with some indication of
   item availability.
   (3) inventory tracking for individual items. The ability to assign
   an item to a specific user (ckeck it out) for a specified period
   (loan period). The availability of items for circulation should be
   reflected in the OPAC. 
   (4) a patron system so that items can be checked out to a specific
   user. Of course, ZOPE and CMF already have powerful user mechanisms

I will finally get to Joachim Schmitz's last question: how is an ILS
related to ISIS? 

In 1967, the United States Library of Congress (LC), with the help of
industry experts developed the MARC format for machine readable
bibliographic data. I was trained as a librarian in the United States
and have not had much exposure to ISIS, so see
http://www.unesco.org/webworld/isis/art1999_unimarc.htm for an article
on MARC and ISIS. But, it appears that the MARC format is essentially a
standardized ISIS Field Definition Table (FDT).

Here is some more information on some ILS components (long).

MARC format (bibliographic).

Today MARC is used as a data exchange format. Official formats are
still promulgated by LC (see MARC Lite at
http://www.loc.gov/marc/bibliographic/lite/). Most, if not all, ILS
break the MARC elements into their constituent components and map them
onto a relational database. If they need to send a record to OCLC
(http:www.oclc.org), they put all the pieces into a MARC record and
send it off.

MARC also provides the structure upon which we hang an elaborate set of
cataloging rules, the Anglo-American Cataloguing Rules, 2nd ed.
(AACR2). The AACR2 is a multi-volume set that sets out what information
goes into a MARC field (tag) and subfield. Here is an example from

Tag 245 -- Title of the Work
"Transcribe the title proper exactly as to wording, order, and
spelling, but not necessarily as to punctuation and
"If the title proper is not taken from the chief source of information,
give the source of the title in a note"--1.1B1.

Parallel titles
Parallel titles are titles in other languages
"Transcribe parallel titles in the order indicated by their sequence
on, or by the layout of, the chief source of information."--1.1D1.
For example: 
     245:10: |a Wood Cree = |b Les cris des forets

You can even go one step further with the rules with The Library of
Congress Rule Interpretations, which give examples and descriptions of
how LC interpret the rules.

All of this is to get consistent information in a catalog system. There
are also MARC formats for holdings (used in a circulation system) and
other types of information.

Circulation System:

At heart, a circulation system is an inventory tracking system. Reports
and statistics are very important. Libraries generally do not generate
revenue. They must justify their existence by their service to the
community. We generally do this by showing tons of statistics related
to the amount of circulation, circulation per item, circulation per
capita, etc. Circulation is the capital by which libraries measure

(I'll now start using the abbreviation "circ" in library jargon as both
a noun and a verb to describe various aspects of circulation systems)

Most circ systems allow for renewals (counted as more circ) with a
limit of 2 or 3 renewals. Libraries do not charge fines to make money.
They charge fines to get the materials back so they can continue to
circ. So, a good circulation system includes automated letters and
reports alerting patrons of overdue materials and fines. Since some
people eventually pay fines, there should be some cash drawer
capability (hopefully with some type of interface to the back-end
accounting system)


None of the Open Source library projects (see http://www.oss4lib.org)
have a request/reserve system (also known as booking or hold systems). 

I work for several years at a large metropolitan library system with a
locally developed library. Development ended about 5 years ago, but the
system is still in use, while the library chooses a commercial ILS. The
local system has no web interface and was a bear to tweak (coded in RPG
on an IBM AS/400). However, not even the commercial vendors have shown
as an efficient and flexible reserve/request system.

A reserve is a patron order for a title with no copies (items)
currently available for circulation. From the OPAC, the patron places
the order. When a copy of the title is discharged (checked in) at any
of the 40+ library branches, a routing slip is generated and the items
is shipped to the patron's "pick-up location". When the item arrives at
the pick-up location, it is scanned and made available to the patron
(on the "reserve shelf"). A post card is generated overnight alerting
the patron that the item is waiting at the pick-up location. 

A request is more proactive than a reserve. The patron searches the
OPAC and discovers that some copies of the desired title are available,
but not at the location in which the search was performed (requests are
also available for internet and dial-in patrons). Based on the patron's
pick-up location and on item availabilty, the system places the order
on a branch's "request list". 

The determination of the branch is based on the branch's location in
the library's truck routes. It is possible that a request will be
filled at one branch and the pick-up location is only 1, 2, or 3 stops
away on the truck route. Requests can be filled in as little as half a
day and at most two days (if no items are available in the preceding
route segment, the items is shipped from any available branch to the
central library and then back out to the pick-up location). 

Twice a day, staff print out their request list, pull the items, and
ship them to the pick-up location. Notification is then the same as for

Authority Control

Authority Control is another advanced feature only available in the
very expensive ILS. This is a completely inadequate explanation, but
here goes. Unfortunately, all of the people in the history of the world
who have produced intellectual output worthy of cataloging have not
made things as tidy as librarians would like.

For example, a woman writes several books prior to her marriage. She
changes her name and writes several more books. We want a search for
either of her names to return ALL of the books written by her,
regardless of what her name was at the time or what it is now. This is
where name authority comes in. There is a MARC standard for authority
records. Through some type of magic (I am not a cataloger and I don't
understand well how authority control works), the bibliographic MARC
records are related to the authority MARC records and the OPAC gives
the proper list of items. (Of course there are more exotic examples of
pseudonyms and name changes brought on by gender changes, but you get
the idea). There is also the idea of subject authority control. For
example, the preferred subject heading (in the Library of Congress
Subject Headings) for "Areoplane" became "Airplane". We want to return
all records for the proper subject heading regardless of what term was
used at the time the item was originally cataloged. This is subject
authority control.

Because authority information is constantly changing, big libraries
subscribe to a service, which sends them authority records (via tape or
Internet) that must be overlaid onto the running system.

There are many other aspects of library automation that have not
generally been "integrated" into the commercial ILS. These include
patron portals, inter-library loan, reader services, and automatic
login and interface to online resources. These features have been left
to the resources of in-house programmers and staff. Of course, Zope is
perfect for many of these functions and is probably used at some
libraries already.

Thanks for listening,

--Tim Chase

Other resources:

University cataloging department manual -

Big name ILS vendors - http://www.sdln.net/about/ils-vendors.html

Library Automation vendors (including smaller libraries) -