Michael Doran Home Page
Contact | Site Map | Search  
  Home > MARC.pm & Prebulk > Tools

MARC.pm & Prebulk

Tools

Introduction | Process | Tools

Perl

Perl is an interpreted high-level programming language. It has many wondrous and varied uses, but for the immediate task at hand (preprocessing netLibrary records), it is enough to know that it must be present on your system in order to invoke and use the MARC.pm module. All Voyager sites that have been upgraded to either Solaris 8 or Voyager 2000.1.x should already have Perl installed.

MARC.pm

This is the tool that allows you to have your way with MARC records. It is a Perl 5 module for reading, manipulating, outputting, and converting bibliographic records in the MARC format. SourceForge maintains an informative MARC/Perl site that includes documentation in various formats. [Apparently only the MARC::Record documentation remains -- see note below.] This module is not part of the default Perl distribution, so will need to be installed on your system. SourceForge has a download page or you can get it from CPAN (Comprehensive Perl Archive Network).

Even if you do a fair amount of Perl programming, you will probably find that MARC.pm (like many a Perl module) is best understood by referring to copious examples. The documentation only provides four, so I was pleased to find a relevant script in a VUGM session handout (see: "Delivering on eBooks" VUGM 2001 by David Bennett and Jackie Corinth of Robert Morris College).

[Note: Because MARC.pm is being deprecated in favor of the MARC::Record module, I recommend that you use that one instead. -- mdd, June 18, 2002]

Prebulk

Prebulk is designed to preprocess bibliographic records for the creation of MFHDs, resulting in an interleaved file of bib and holdings records that can then be imported into Voyager. Documentation for Prebulk is covered on pages 52.1 through 52.19 of the the Voyager Technical Manual. If you lack those pages, they can be downloaded as "Pre-Bulk Manual" from SupportWeb.

Most of the Prebulk documentation deals with configuration file settings. An initial reading of this section left me somewhat baffled, an impression that was to survive subsequent re-readings. My confusion had as much to do, I believe, with the nature of the Prebulk program itself as it did with any deficiency of the documentation to limn Prebulk's capabilities.

It seems to me (and I may be grossly mistaken), that the config file must contain misinformation in order to get Prebulk to do what we want. Our netLibrary prebulk.cfg file directs Prebulk to look for call numbers in a non-existent tag in order for it to use the default call number and indicator in the OVERRIDES stanza. In another example, we must include an 852b entry in the MAPPING stanza (otherwise Prebulk aborts with an error message), despite the fact that we were neither mapping to nor from an 852 tag.

Apparently, Prebulk is limited to mapping a single bib tag to the MFHD, since only one entry is allowed in the MFHDTAG stanza. Prebulk would be more useful if the MAPPING stanza could map to multiple MFHD fields (currently possible) from multiple bib record fields (not currently possible from what I can determine). Prebulk got the job done for our netLibrary records, but I can envision occasions when it might not.

We are novices at using Prebulk, so I have not ruled out the possibility that the difficulties encountered may stem from my ignorance rather than from any shortcomings of the program.

Bulk Import

Since the topic is preprocessing, Bulk Import won't be covered other than to mention that documentation is available in the Voyager Technical Manual and System Administration User's Guide.