Course Reserve Call Number Parsing
Yale University
23 July 99

This Feature (17.4) will NOT be included in the August 1999 product

Why:
Call numbers in Course Reserves are not formatted correctly. Separators (subfields, semi-colons) are ignored. Call number segments are merged into one continuous line making the numbers unreadable.

Should we or shouldn't we fix the call numbers:
The parsing specification below will correct a large percentage of the course reserve call numbers. LC call numbers that are not entirely corrected are still greatly improved. Yale class numbers are just as bad as they were before parsing, but keep in mind that few Yale class items are on reserve.

Even though we can greatly improve the display of most call numbers for reserve items in the public Course Reserve module, we would create a searching problem. The Course Reserve call number search will not work if spaces are included within the search string (DS102.95 I862X 1995 must be entered as DS102.95I862X1995).

Given the searching problem, the best implementation of the public Course Reserve module eliminates the ability to search call numbers while still parsing the call number display.

CrossPlex should parse and display call numbers in Course Reserve as follows:
Parsing specification: Example: AC35+K646X131995(LC)

Maintain existing spaces and punctuation.

 

Work backward through the call number (read right to left).

 

Reading right to left, insert a space before a left parenthesis '('.

AC35+K646X131995 (LC)

Reading right to left, if first four numeric characters are a date between 1800 and 2010, insert a space before the date.

AC35+K646X13 1995 (LC)

Reading right to left, insert a space whenever a letter is followed by a number except when the letter is 'X.'

AC35+K646X13 1995 (LC)
AC35+K64 D13 1995 (LC)

Reading right to left, insert a space after a plus sign, '+.'

AC35 +K646X13 1995 (LC)

Examples of incorrect call numbers:

Incorrect

Correct

After Parsing

Status after parsing

AC1+G74199030(LC)

AC1 +G74 1990 30 (LC)

AC1 +G74199030 (LC)

Not correct, but improved

AC35K646X131995(LC)

AC35 K646X13 1995 (LC)

AC35 K646X13 1995 (LC)

Correct

BAM43E

Ba M43e

BAM 43 E

Not correct

CAS MT6D166F7CAS.1-2

Cas MT6 D166 F7 cas.1-2

CAS MT6 D166 F7 CAS.1-2

Correct

CB161K44X1993B(LC)

CB161 K44X 1993B (LC)

CB161 K44X1993 B (LC)

Not correct, but improved

DS102.95I862X1995

DS102.95 I862X 1995

DS102.95 I862X 1995

Correct

PS1006A6F31900

PS1006 A6 F3 1900

PS1006 A6 F3 1900

Correct

PS1029A33R31969

PS1029 A33 R3 1969

PS1029 A33 R3 1969

Correct

PS1130F771

PS1130 F77 1

PS1130 F771

Not Correct