Closed nflorin closed 2 years ago
One possible solution would be to simply add "y" to the acceptable record types and be done with it. However, the 008 line in a holdings record is entirely different from the holdings line in a bibliographic record, meaning that holdings records would have to be analyzed in an entirely different way.
To add to the confusion, the records in the set where this first came up used regular bibliographic record style 008 lines. So processing them as holdings records would not have been appropriate.
FALSE ALARM.
The validator uses the record type from the MARC it retrieves from WorldCat, which will all be bibliographic records. We were confused because the first set we'd seen with a "y" record type in the local records entirely consisted of non-serials data -- all of the WorldCat records had a record type e ("cartographic material"), g ("projected medium"), or m ("computer file").
The
crl_lib.marc_fields.MarcFields
object that is responsible for decomposing MARC records follows rules for bibliographic records and not holdings records, and so fails serials with the record type y ("serial item holdings") .Additionally, the form will be in a different position in the 008 depending on the record type. If
MarcFields
doesn't recognize the record type then it doesn't make an attempt to find the form, because it doesn't know where to look. Thus a failed record type check will almost inevitably lead to a failed form check.