OCLC holdings: setting holdings in batch

Author: smoody
Posted in: Systems

Weekly systems sends files to OCLC to set OCLC holdings. New records are added to OCLC via this process in some circumstances (such as catalog records manufactured and loaded locally for projects such as City Arts and Lectures).

Records are evaluated via a two step process in order to determine if holdings should be set or cancelled and which holdings symbol(s) to set. An overview of what is sent and what is not sent is here, technical details follow in this document.

Step 1:  Create Lists query to select records to send to OCLC – only examines bib fields.  Query runs Sunday mornings to select the previous week’s activity.  Each bib record in Millennium is selected if it meets the criteria below (see also sample query in query language at the end)

  • Is the bib record one that we loaded via the HathiTrust stream?  If so, do not select for OCLC sending
  • Was the bib record updated since the last week’s send to OCLC (updated Monday-Sunday/today)?  If so, then the record goes on to the next bib check
  • Or, if record was updated the previous Sunday, does it have no 957 (cross reference report load acknowledgment) or does the 957 contain a date other than that of the cross reference report load of the past Sunday?  If either of these conditions is met, then the record goes on to the next bib check.
  • Is the record a cataloged bib record (i.e., is there a Cat Date)? If yes, bib record is selected if:

It has an OCLC# in the 001 (example: regular cataloging)


There is no OCLC# in the 001, but it was created after migration from GLADIS (example: record sets we loaded that did not come from OCLC)

  • If the bib record does not have a Cat Date but has an OCLC# in the 001 and there are items/holdings at NRLF (based on bib loc) it is selected (example: minimal records for other campuses) [NOTE: as of 9/1/2012 NRLF is no longer adding records of this sort that lack cat date, and existing records of this type for UCSF, UCSC, and UCD have been upgraded and cat date added]
  • Note:  Determination of which holdings symbols to set and which holdings symbol to “not set”/cancel will be performed in the post-processor program.

Sample query:

BIBLIOGRAPHIC  MARC Tag 956  All Fields don’t have  “hathitrust”    AND (BIBLIOGRAPHIC  Bib Code 3  not equal to  “n”    AND (BIBLIOGRAPHIC  Updated Date  greater than  “06-23-2013”    OR (BIBLIOGRAPHIC  Updated Date  equal to  “06-23-2013”    AND (BIBLIOGRAPHIC  MARC Tag 957  equal to  “”    OR BIBLIOGRAPHIC  MARC Tag 957  All Fields don’t have  “OCLC xref loaded 20130623″)))    AND ((BIBLIOGRAPHIC  Cat. Date  not equal to  ”  –  –  ”    AND BIBLIOGRAPHIC  MARC Tag 001  not equal to  “”)    OR (BIBLIOGRAPHIC  Cat. Date  equal to  ”  –  –  ”    AND BIBLIOGRAPHIC  MARC Tag 001  not equal to  “”    AND (BIBLIOGRAPHIC  Location  not equal to  “none ”    AND BIBLIOGRAPHIC  Location  starts with  “n”))    OR (BIBLIOGRAPHIC  Cat. Date  not equal to  ”  –  –  ”    AND BIBLIOGRAPHIC  MARC Tag 001  equal to  “”    AND BIBLIOGRAPHIC  Created Date  greater than  “05-01-2009”)))

NOTE:  Adding, removing, or changing the location in items or holdings such that the Bib location is updated (by an overnight process) will change the update date, causing the record to be sent to OCLC, meaning that holdings can be added or removed as appropriate based on item/holdings information.

Step 2: Further evaluate the bib record and evaluate locations in holdings/items:

Outside of Millennium, a post-processing script looks at the records exported from Millennium and further decisions are made here about whether the record qualifies to be sent to OCLC, and if it does, which holdings symbol(s) will be set and which holdings symbol(s) will be canceled:

  • Print evaluation: evaluates unsuppressed items and holdings to verify which locations have print.  Print locations result in the appropriate OCLC holdings symbol(s) being set:
    • LLB for Lawrence Berkeley National Laboratory;
    • CBG for Institute of Governmental Studies;
    • CUY for locations other than: LLB, CBG, and non-Millennium NRLF locations (ie, nc*, nd*, nblw [Law], etc); and – ZAP for any NRLF location that is not restricted (location code does not end in r).
    • NOTE: ZAP is an OCLC holdings symbol being set to facilitate Request.
    • NOTE: If the bib record is suppressed but there are unsuppressed items or holdings the record is NOT processed for OCLC but is sent as an error to Systems, then referred to unit for resolution. (process can’t decide if it should cancel or set holdings since bib/attached conflict)
  • Full text web evaluation: If there is an 856 URL field coded as full text (first indicator = 4 and second indicator = 0 or 1), regardless of any print holdings, all holdings symbols will be set except for ZAP.  If our only full text is from SCP, and we hold no print, we are not allowed to send the record to OCLC.  SCP will set CUYER holdings for us.
  • Record removal: Any records which we are not allowed to send (usually sets of records loaded from vendors whose contracts prohibit sharing) are removed from the file to send OCLC. If the Bib 035 field begins with either (MdBeCI) or (Readex), do not send the record; these are Early American Imprints or CIS record sets and, by licensing agreement with the vendors, we are not allowed to send.  We do not need to cancel holdings for any symbols since the record was not sent to OCLC in the first place.
  • If there are no unsuppressed items (icode2 = ‘-‘) or unsuppressed holdings (Mark for Deletion = ‘-‘) records associated with the bib record (i.e., we hold no print), and the only 856 in the record is either SCP(defined as second indicator 9) or non-full-text (defined as anything other than first indicator = 4 and second indicator = 0 or 1), and if there is an OCLC number, then send a cancel request for all holdings symbols:  CUY, CBG, LLB, ZAP  (this is done because the item icode2, the holdings Mark for Deletion code, or the 856 indicators may have changed in the previous week).
  • If the 856 indicators are for full-text and not SCP, count this record as “web access”.  “Web access” qualifies a bib record to have holdings set for CBG, LLB, and CUY.
  • If the record has an item for an NRLF location, make certain that the location does not end in “r”.  These are restricted circulation materials and they don’t qualify for ZAP.  If the location does not end in “r”, (i.e., end with “b” or “u”), then this record qualifies to have holdings set for ZAP.
  • If the bib record has unsuppressed items (icode2 = ‘-‘) or holdings (Mark for Deletion = ‘-‘) for LLB locations lbl/lb9l, then the record qualifies to have holdings set for LLB.
  • If the bib record has unsuppressed items (icode2 = ‘-‘) or holdings (Mark for Deletion = ‘-‘) for IGSL locations ig*/nbig*, then the record qualifies to have holdings set for CBG.
  • If the bib record has unsuppressed items or holdings for locations other than: lbl/lb9l, ig*/nbig*, z*, or has NRLF locations beginning with “nb” (other than Law or Giannini), then this record qualifies to have holdings set for CUY.
  • For each record, if a holdings symbol has not qualified to send per guidelines above, then send a cancel request for that particular holdings symbol.
  • Adds/updates and Cancels records are sent in separate files.
  • For the Adds/updates, the post-processing program further checks for the presence of MARC 880 fields and separates into two groups:  those containing vernacular (has at least one 880 MARC field) and those not containing vernacular text (has no 880 MARC field).

Step 3: OCLC processes the records we batch-send and sets or cancels holdings.

  • If the record has MARC errors that make it impossible for OCLC to process, it will be rejected by OCLC and referred for cleanup/to be resent.
  • If OCLC is able to process the record, and the record from Millennium has a Master OCLC number  it will find the master record – either as an 019 where OCLC has since merged “duplicate” OCLC records in OCLC, or has that master recordnumber.
  • For adds processing when the record sent from Millennium contains an OCLC number, the master record found/matched will be further examined by OCLC’s routines to verify that it matches on all of the following data points: title, date, material type, language of cataloging.   If the OCLC record corresponding to the OCLC number in our record does not match on all four qualifiers, the record will be rejected and referred for cleanup/to be resent.** [always rejected or in some cases rejected?]
  • For adds processing when the record sent from Millennium does not contain an OCLC number (as in the City Arts and Lectures case), OCLC uses the full complex match routine to identify the best match in WorldCat, and will add the record as a new <em”>Master record if no match is found and the record meets OCLC’s qualifications for batch record creation. *** (add link?)
  • For Adds/updates processing, if a match is found on OCLC number, the holdings symbols we have sent (CBG, LLB and/or ZAP) as adds/updates are set on the master record.
  • For Cancels processing, if a match is found on OCLC number the specific holdings symbols (CUY, CBG, LLB and/or ZAP) we have sent for Cancels will be removed from the master record.  There are no additional match qualifiers for the Cancels processing.

Step 4: OCLC creates a cross reference report for each file that we send, regardless of whether we sent the record for adding/updating holdings or for canceling holdings.  The report contains a line for each record that was successfully processed.  The entry will contain the Millennium bib number and the OCLC master number.  The information from these cross reference reports is loaded into Millennium in the 957 field.  Each time a cross reference report 957 is loaded to a Millennium record, the previous 957 field will be replaced. Examples:  957  |aOCLC xref loaded 20130630

  • WARNING: Presence of a 957 does not guarantee that OCLC successfully added holdings, even if locations exist on the record that qualify it to set holdings. It could be confirmation that OCLC canceled holdings for the symbols not found on the record. In other words, the 957 is simply confirmation of the last time OCLC did something(add or cancel, or both) with our record.  Systems is evaluating error logs of records that were sent and not successfully processed. ***

Note on OCLC numbers in uncataloged records:  OCLC numbers should not be added to uncataloged records (bib records which lack a Cat Date) for which OCLC holdings are set.  Bib records created as part of acquisitions work may contain an OCLC number but no cat date until the record is cataloged.  Setting holdings in OCLC should be accompanied by downloading the record to Millennium, which will update the Cat Date field and add the OCLC number to the record in Millennium, allowing the batch process described above to function correctly.  In the past (before 91/12) NRLF non-Millennium records were the exception, where in some cases ZAP holdings were maintained for records that contain an OCLC number but lack a Cat Date.

*** – followup with OCLC to confirm processing is in progress, to be updated.

Legacy Data

Last updated date: 07/09/13
Author: C. Takaro
Update Group: Systems

Archived Comments

Removed references to the Institution Record and CUY vs CUYGB
Tue, 07/09/2013 – 11:42 — epinto
We no longer establish/maintain Institution Records (IRs), so removed those references. Also removed the references to CUY vs. CUYGB files; all records are now sent and processed under the CUYGB project IDs we have set up with OCLC.

Added HathiTrust exclusion
Wed, 09/19/2012 – 09:14 — epinto
Added HathiTrust record exclusion to both the outline of create lists selection criteria and to the Sample create lists query.

Removed CBT references; added LLB information
Mon, 08/20/2012 – 13:22 — epinto
Removed CBT references; added LLB information

Added caution re: 957
Fri, 05/18/2012 – 14:37 — Charis Takaro
Added caution re: 957

Wed, 10/12/2011 – 08:47 — Charis Takaro
Corrected criteria to reflect that records must have both a cat date and an OCLC number (except NRLF non-UCB).

Created: April 27, 2016
Last revised: December 3, 2016
Review date: None set

Leave a comment

Your email address will not be published. Required fields are marked *