Voyager (library program)
Lua error in package.lua at line 80: module 'strict' not found.
Voyager is an integrated library system used by more than 1,300 libraries around the world.[1] The biggest user is the Library of Congress and many universities, museums, and community colleges use it. Voyager was developed by Endeavor Information Systems Inc., which was merged into Ex Libris Group in December 2006.
Contents
Modules
The modules are the main way that library workers interact with the system. Voyager is broken down into different modules that are focused on helping with certain tasks commonly done in a library. They are implemented as custom Microsoft Windows programs that talk to a centralized server and database.
The modules are as follows:
- Circulation - The primary use of this module is charge and discharge items to library patrons. It allows for the creation and maintenance of patron records, fine processing and request processing of library items.
- Media Scheduling - (optional) lets people reserve videos and media equipment ahead of time as well as equipment maintenance. The types of items allowed to be reserved are only limited by what library staff have added to it.
- Web Voyage - This is the web based interface for use by patrons to search, renew items, and request items from the libraries collection.
- Access Reports - Not officially a module, Voyager does allows for an ODBC connection to its main database. This allows library staff to create custom Statistic and usage reports.
- Reporter - One of the purposes of this module is to generate email and print notifications to patrons informing them of, recalls, overdue items, courtesy notices and fines. Reporter also generates exception reports, which are violations of system policy, Transaction reports, and some statistics, which are used by library staff.
- Cataloging - This is the main module used by Library Technical Services department. It is used to create and edit records for all the items in a libraries collection.
- Acquisitions - Lets staff track orders and assign money to funds and ledgers.
- Call Slip - (optional) Allows patrons to request items to be transferred between different units in a library system.
- Self Check - provides an interface for "Self Check" stations.
- Voyager Inter-library Loan (ILL)- (Optional) Allows library patrons to request items from other institutions.
- System Admin - Used to add system users, set up circulation locations, and policies as well as setting up location calendars.
Internals
Voyager uses Oracle as its database. For the web server side of things, it uses Apache Tomcat. For certain aspects of its reporting, it uses Perl scripts. As stated above, for its modules it uses custom Microsoft Windows programs.
There is no programming API to Voyager as such. The Voyager web server does provide a limited number of XML services and web APIs for integration purposes.
For ordinary workers, the only window into Voyager is via the exposed tables of the Voyager database. The Access Reports frontend to this database provides dozens of pre-built SQL queries written by Endeavor to help library workers. It is also possible to write software that connects directly to the database and reads the tables from there. However none of the indexing that makes Web Voyager so fast is exposed for the ordinary programmer.
The tables of Voyager are shorthand versions of the MARC records of the books. The actual MARC is stored as BLOBs but certain portions of the MARC are actual tables. For example, BIB_TEXT.TITLE is, naturally, the MARC Bibliographic Record field that holds the Title. The Bibliographic Records are stored in tables named BIB*. The Holdings records are in tables named MFHD* (Marc Format for Holdings Data). The Authority Records are in AUTH.
Voyager adds its own record, called the 'Item Record'. This stores the barcode, 'media type', location, and other information. The result of this is that there can be some redundant pieces of information in the database, particularly 'location' and 'media type'.
References
- ↑ Lua error in package.lua at line 80: module 'strict' not found.