Holdings Parsing
From VDXipedia
Introduction and Overview
This document contains a table that shows how to convert various MARC and non-marc holdings schemes to a standard VDX holdings scheme.
The following table lists the supported holdings interpretations
| Holdings Format | Tag | Location Parsing Method | Location | System Number | Call Number | Enumeration | Chronology | Availability | Item Id |
| Internal | 937 | 1 | A | c | d | e | f | G | |
| CARL_949_A | 949 | 1 | H | 001$a | c | L | |||
| DYNIX_984_A | 984 | 2 | A | c | d | e | f, h – Concatenated together with a semi-colon | ||
| DRACLASSIC_A | N/A | 1 | |||||||
| DYNIX_920_A | 920 | 1 | A | 001$a | b (Note: Everything after " -- " is enumeration) | e | C | ||
| ADVANCE_852_A | 852 | 1 | a, b – Concatenated together with a space | 001$a | h, i, k, m – Concatenated together with a space | 3 | y, z – Concatenated together with a semi-colon | ||
| AMICUS_850_A | 850 | 1 | a | b | c | e | g | h, k, x – Concatenated together with a semi-colon | |
| NLA_DYNIX_920_984_A | 920 | 1 | a | 001$a | b | e | d | ||
| 984 | 1 | a | 001$a | c | d | e | f, h – Concatenated together with a semi-colon | ||
| VOYAGER_OPAC_A | N/A | 1 | NucCode | Copy Number | Call Number | If no volumes
enumandchron else volume1.enumeration | volume1.chronology | Public Note | |
| OCLC_948_A | 948 | 1 | h (Note: there are multiple locations in each subfield) | 001$a | |||||
| GENERIC_OPAC_A | N/A | 3 | Local Location | Copy Number | Call Number | If no volumes
enumandchron else volume1.enumeration | volume1.chronology | Public Note
or Circulation Data flags, whichever is supplied | |
| ADVANCE_852_930_A | 852 | 1 | a, b – Concatenated together with a space | 001$a | h, i, k, m – Concatenated together with a space | 3 | y, z – Concatenated together with a semi-colon | ||
| 930 | 1 | l | 001$a | s | j | I | |||
| SIRSMAN_949_A | 949 | 1 | a | 001$a | n | y | Z | ||
| TLC_949_A | 949 | 1 | l | 001$a | q | v and h | w | Z | |
| CUSTOM_090_A | 090 | 1 | b | 001$a | a | d | R | ||
| INNOPAC_OPAC_A | N/A | 3 | Local Location | Copy Number | Call Number | If no volumes
enumandchron else volume1.enumeration||volume1.chronology | Public Note | ||
| VOYAGER_984_A | 984 | 1 | a | 001$a | c | d | e | ||
| SIRSMAN_852_991_A | 852 | 1 | a | 004 | c,h,i,k | x | p | ||
| 991 | a | ||||||||
| VTLS_GRS1_A
Proprietory Holdings Format | |||||||||
| GEACPLUS_999_A | 999 | 1 | z (first) | 001 | z (Fourth) | z (fifth) | |||
| EXLIBRIS_852_A | 852 | 1 | b,c | 001 | h,I | ||||
| GALAXY_852_A | 852 | 1 | a (location) | 001 | k | z (public note) | p | ||
| SPYDUS_852_949_A | 852
Deprecated | 1 | b | k (previx)
h (call number) m (suffix) | |||||
| 949
preferred | 1 | l | a | z | |||||
| SIRSI_925_926_A | 925 or
926 | 1 | a | 001 | c | b (status)
d ("type:") e ("Due:") f ("Copy#") | |||
| LIBSOL_852_A | 852 | 1 | a | 001 | b (prefix)
c (Call number) d (suffix) | i (Volume) | n ("Copy#") | g | |
| LIBSOL_910_A | 910 | 1 | a | 001 | g (prefix)
h (Shelf Mark) I (suffix) | v (Volume) | c ("Copy#") | b | |
| LIBSOL_950_A | 950 | 1 | a | 001 | b (prefix)
c (shelf mark) d (suffix) | i (volume) | n ("Copy#") | g | |
| LIBSOL_049_A | 049 | 1 | a | 001 | b (prefix)
h (shelf mark) i (suffix) | v (volume) | c ("Copy #") | w | |
| LIBSOL_949_A | 949 | 1 | a | 001 | b (prefix)
c (shelf mark) d (suffix) | i (Volume) | n ("Copy #") | g | |
| LIBSOL_910_A | 910 | 1 | a | 001 | g (prefix)
n (shelfmark) m (suffix) | v (Volume) | c ("Copy#") | z | |
| LAMDA_OPAC_A | NucCode
LocalLocation | Copy Number | CallNumber | If no volumes
enunAndchron else volume1.enumeration | volume1.chronology | ||||
| FDIVDX230_852_A | 852 | 1 | a | 035$a | b (collection)
c (shelf) j (shelfmark) Concat with spaces | v
NB combines enum and chron in this single subfield: V1-5 (1990-1995) V1-5 (1990-95) V1- (1990-) | N/A | f | t |
| HORIZON_OPAC_A | ??? |
The following table lists the different parsing methods for the location field
| Parsing Method | 'Description' |
| 1 | Just use the location |
| 2 | If we have a location and a call number, we concatenate the first word of the call number with the location, if this is a valid location we then remove that word from the call number.
If the concatenation failed or we don't have a call number we just use the location |
| 3 | We first try the location, if this is unsuccessful we then keep removeing the last word until we are successful or there are no words left.
If we were successful, the part of the location that was removed (if any) is pre-pended to the call number with a space |
