Voyager MARC Exports with a major diversion into

  • Slides: 25
Download presentation
Voyager MARC Exports (with a major diversion into Oracle Stored Functions) Michael Doran, Systems

Voyager MARC Exports (with a major diversion into Oracle Stored Functions) Michael Doran, Systems Librarian University of Texas at Arlington doran@uta. edu Voyager Developer Meeting March 9 -10, 2011 Chicago, IL

Typical use cases: ü MARC dumps for discovery layer products ü data dumps for

Typical use cases: ü MARC dumps for discovery layer products ü data dumps for ILS migrations ü special projects Voyager Discovery Layer Product ? ? ?

Pmarcexport Voyager --------export utilities

Pmarcexport Voyager --------export utilities

syntax: marcexport -o <marc output file> -r <record type> [A]uthority or [S]ubject or [M]ain

syntax: marcexport -o <marc output file> -r <record type> [A]uthority or [S]ubject or [M]ain or s[E]ries or [H]oldings or [B]ib or Bib-MFHD [G]roups -c <003 identifier> -s <040 d identifier> -m <export mode> [M]ARC ID Input File or [I]SBN Input File or [R]ange of Marc Ids or [C]reated - Date Range or [U]pdated - Date Range or [B]oth Dates - Date Range or O[K] to Export - Date Range or [S]uppressed - Date Range or [E]xcluded - Date Range or e[X]cluded and suppressed - Date Range -t <target records for export based on export mode selected> beaucoup parameters

beaucoup parameters … continued -l -L -O -E -X -R -i -n -q -w

beaucoup parameters … continued -l -L -O -E -X -R -i -n -q -w -a export only records with this NUC code export only records with holdings for this location code export only OCLC <operator id> excluded records created by this operator id <fileexclude file> ignore suppressed records change LCCN to Control quiet/no prompts update holdings 852$a on export assign character mapping. . one of [R]LIN Legacy Encoding, [O]CLC, [M]ARC 21 MARC-8, [L]ATIN 1, or [V]oyager RLIN. -v version information] -y <USEMARCON bib marc translation> must specify ini file with this option. -h help

Pmarcexport is excellent… Pm arc exp ort if it does what you need …and

Pmarcexport is excellent… Pm arc exp ort if it does what you need …and all of what you need

Wouldn’t it be nice to have… 1) more fine-grained control over selection criteria of

Wouldn’t it be nice to have… 1) more fine-grained control over selection criteria of records to be exported 2) the ability to parse, modify and/or transform records on -the-fly as they are being exported

Pmarcexport sandwich (non-programmer edition) Access report bib IDs Pmarcexport MARC Marc. Edit

Pmarcexport sandwich (non-programmer edition) Access report bib IDs Pmarcexport MARC Marc. Edit

Pmarcexport sandwich (programmer edition) Perl + DBI/DBD + SQL bib IDs Pmarcexport MARC Perl

Pmarcexport sandwich (programmer edition) Perl + DBI/DBD + SQL bib IDs Pmarcexport MARC Perl + MARC: : Record

That works, but… …it’s neither elegant, nor efficient.

That works, but… …it’s neither elegant, nor efficient.

You could wrap it all into a single script Perl + DBI/DBD + SQL

You could wrap it all into a single script Perl + DBI/DBD + SQL bib IDs Pmarcexport MARC Perl + MARC: : Record

Perl + DBI/DBD + SQL bib IDs Pmarcexport MARC Perl + MARC: : Record

Perl + DBI/DBD + SQL bib IDs Pmarcexport MARC Perl + MARC: : Record

Oracle Stored Functions • MARC Functions • Advanced MARC Functions Get. Auth. Blob(Auth_ID) Get.

Oracle Stored Functions • MARC Functions • Advanced MARC Functions Get. Auth. Blob(Auth_ID) Get. Bib. Blob(Bib_ID) Get. MFHDBlob(MFHD_ID) • Miscellaneous Functions

Analogous to the VB MARC functions in reports. mdb first available with Voyager 99.

Analogous to the VB MARC functions in reports. mdb first available with Voyager 99. 1 release …but better!

Documented in the… Main MARC functions created in 1998/1999 (by James L. Godwin at

Documented in the… Main MARC functions created in 1998/1999 (by James L. Godwin at the Library of Congress). Voyager releases • Voyager 99 • Voyager 2001 • Voyager Unicode • Voyager 5 • Voyager 6 6. 1 6. 2 6. 3 6. 4 6. 5 • Voyager 7 7. 1 7. 2

37 Voyager Oracle functions

37 Voyager Oracle functions

37 Voyager Oracle functions 25 documented in 6. 5 Technical User’s Guide

37 Voyager Oracle functions 25 documented in 6. 5 Technical User’s Guide

Bib Data Record Segment Concatenator

Bib Data Record Segment Concatenator

37 Voyager Oracle functions 25 documented in 6. 5 Technical User’s Guide

37 Voyager Oracle functions 25 documented in 6. 5 Technical User’s Guide

For an Oracle Stored Function to be used by the read-only Oracle user, it

For an Oracle Stored Function to be used by the read-only Oracle user, it must be prefixed with the DB name.

http: //rocky. uta. edu/doran/voyager/export/

http: //rocky. uta. edu/doran/voyager/export/

Leverage

Leverage

Historical Manuscripts Collection Project Voyager Oracle ü ü Bib blob MARC object MARC XML

Historical Manuscripts Collection Project Voyager Oracle ü ü Bib blob MARC object MARC XML output file 852 SQL MFHD blob MARC object Extract Bib records and their associated MFHDs Convert Bib and MFHD “blobs” into MARC Record objects Parse MFHD; get 852 and add to MARC Bib Transform MARC records to marcxml and output to file