Details
-
Story
-
Status: Closed (View Workflow)
-
P3
-
Resolution: Done
-
None
-
-
Concorde - Sprint 89
-
5
-
Concorde
Description
Purpose
FOLIO inventory storage instance contains fields that are represented by keys and those will need to be replaced by their values when generating MARC bib record on the fly. In many cases, which field in MARC record will be populated depends on the value of the key. For identifiers, depending on its type the different MARC Bib record field will be populated. Each inventory instance has a list of identifiers associated with it and it is an array of identifier value and identifier type id.
This user story covers:
- LCCN - 010 $a (both identifiers blank)
- ISBN - 020 $a (both identifiers blank)
- ISSN - 022 $a (both identifiers blank)
- System Control Number - 035 $a (both identifiers blank) (will include FOLIO's OCLC identifier as well)
- GPO Item Number - 074 $a (both identifiers blank)
For this user story we will need to get the identifier type based on its id, and then while creating the MARC bib record locate appropriate field and populate it with the value coming from inventory instance record. For example:
"identifiers" : [ { "value" : "9781780272979 paperback", "identifierTypeId" : "59378436-9645-4add-b05f-6afc69bdc8d0" }, { "value" : "(OCoLC)899705090", "identifierTypeId" : "01ca9cda-7027-4d64-abed-9e3c4943daf2" } ]
GET /identifier-types lists identifierTypeIds:
- "01ca9cda-7027-4d64-abed-9e3c4943daf2" as OCLC
- "59378436-9645-4add-b05f-6afc69bdc8d0" as ISBN
As a result the generated MARC record will contain
020 $a 9781780272979 paperback
035 $a (OCoLC)899705090
For the details of the mapping refer to Recommended MARC mapping spreadsheet: https://docs.google.com/spreadsheets/d/11lGBiPoetHuC3u-onVVLN4Mj5KtVHqJaQe4RqCxgGzo/edit#gid=1166940623 Instance to MARC tab.
The output should be consistent with parsedRecord.json
Acceptance criteria
1. The generated record is short-lived and generated each time it is requested
2. The following identifiers are being correctly mapped according to the mapping document:
- System Control Number (035 $a - both indicators blank)
- LCCN (010 $a - both indicators blank)
- ISBN
- OCLC (the same mapping as for System Control Number)
- ISSN
- GPO
3. The record is saved in .mrc file and contains correctly populated data
4. Unit tests are written
5. API tests are written
Note: For the MARC record indicator value check: https://docs.google.com/spreadsheets/d/11lGBiPoetHuC3u-onVVLN4Mj5KtVHqJaQe4RqCxgGzo/edit#gid=1410366280 "Concorde - Instance to MARC 2019" tab
TestRail: Results
Attachments
Issue Links
- clones
-
MDEXP-96 Generate MARC bib record - 336 $a/instanceTypeId - replacing keys with values
-
- Closed
-
- defines
-
UXPROD-1397 Generating a MARC bibliographic record from an Inventory Instance record
-
- Closed
-
- has to be done before
-
MDEXP-100 Generate basic MARC bib record on the fly
-
- Closed
-
- is cloned by
-
MDEXP-103 Generate MARC bib record - Contributors - conditionally replacing keys with values
-
- Closed
-