MODDATAIMP-729: SPIKE: Create design for creating/updating multiple Holdings and Items from a single imported MARC Bib
Spike: - MODDATAIMP-729Getting issue details... STATUS
Features:
- UXPROD-3729Getting issue details... STATUS
- UXPROD-2741Getting issue details... STATUS
Summary
When libraries purchase multiple copies or volumes of a title, they often need to create or update multiple Inventory holdings and item records based on the import of a single MARC Bibliographic record. If the MARC Bib has been exported from FOLIO, then it likely has necessary matchpoints for identifying and updating the proper holdings and item records (e.g. HRIDs, UUIDs, barcode numbers). If the updates are received from an external source, the incoming records are not likely to include HRIDs or UUIDs, and the existing item records, which may have been created at point of order, may not include barcode numbers. For these records, the matching and updating may need to rely on secondary matchpoints such as location.
Use cases
Num | Priority (H/M/L) | Use case | Code | Source of import file | Match point(s) | Notes | Interested Libraries |
---|---|---|---|---|---|---|---|
1 | Update multiple existing holdings on a single existing instance | DE:HeuM | Data Export | Holdings HRID or UUID | 5C/UM, Holycross | ||
2 | Update multiple existing items on a single existing holdings record on a single existing instance | DE:He0S:IeuM | Data Export | Item HRID, UUID, or Barcode | 5C/UM, Holycross | ||
3 | Update single existing items on multiple existing holdings records on a single existing instance | DE:He0M:IeuS | Data Export | Item HRID, UUID, or Barcode | Do we need a holdings match or just an item? How does the incoming record indicate which holdings and which items belong together? | 5C/UM: I would prefer to do this via Bulk Edit. In the meantime, I would say holdings and item match. Ideally it would be nice to have a selection to check off if you wanted to do all or a selection of the items. | |
4 | Update multiple existing items on multiple existing holdings records on a single existing instance | DE:IeuM:He0M | Data Export | Item HRID, UUID, or Barcode | Do we need a holdings match or just an item? How does the incoming record indicate which holdings and which items belong together? | 5C/UM: Like above, I think Bulk Edit might be better suited for this. Until then, it would be great to be able to select which ones you want to change. | |
5 | Update multiple existing holdings and multiple existing items on a single existing instance | DE:IeuM:HeuM | Data Export | Holdings HRID or UUID Item HRID, UUID, or Barcode | How does the incoming record indicate which holdings and which items belong together? | ||
6 | Create multiple new holdings on a single existing instance | DE:HncM | Data Export | Instance HRID, UUID | |||
7 | Create multiple new items on a single existing holdings record on a single existing instance | DE:He0S:IncM | Data Export | Holdings HRID or UUID | Do we need an instance match or just a holdings? | 5C/UM: It would be great to match just on the holdings. | |
8 | Create single new items on multiple existing holdings records on a single existing instance | DE:He0M:IncS | Data Export | Holdings HRID or UUID | Do we need an instance match or just a holdings? How does the incoming record indicate which holdings and which items belong together? | 5C/UM: If you do it with the holdings record match, then each record could have one holdings record uuid/hrid. | |
9 | Create multiple new items on multiple existing holdings records on a single existing instance | DE:He0M:IncM | Data Export | Holdings HRID or UUID | Do we need an instance match or just a holdings? How does the incoming record indicate which holdings and which items belong together? | ||
10 | Create multiple new holdings and multiple new items on a single existing instance | DE:HncM:IncM | Data Export | Instance HRID or UUID | How does the incoming record indicate which holdings and which items belong together? | ||
11 | Update multiple existing holdings on a single existing instance | EX:HeuM | External Source | Instance OCLC number, LCCN, POL, VRN ?? Holdings permanent location, POL, VRN?? | How does the incoming record indicate which updates belong to which holdings? | ||
12 | Update multiple existing items on a single existing holdings record on a single existing instance | EX:He0S:IeuM | External Source | Instance OCLC number, LCCN, POL, VRN?? Holdings permanent location, POL, VRN?? Item POL, VRN, barcode, ?? | How does the incoming record indicate which updates belong to which item? | ||
13 | Update single existing items on multiple existing holdings records on a single existing instance | EX:He0M:IeuS | External Source | Instance OCLC number, LCCN, POL, VRN?? Holdings permanent location, POL, VRN?? Item POL, VRN, barcode, status submatch ?? | How does the incoming record indicate which updates belong to which item? Does the incoming record need to indicate which items belong to which holdings? | ||
14 | Update multiple existing items on multiple existing holdings records on a single existing instance | EX:IeuM:He0M | External Source | Instance OCLC number, LCCN, POL, VRN?? Holdings permanent location, POL, VRN?? Item POL, VRN, barcode, ?? | How does the incoming record indicate which updates belong to which item? Does the incoming record need to indicate which items belong to which holdings? | ||
15 | Update multiple existing holdings and multiple existing items on a single existing instance | EX:IeuM:HeuM | External Source | Instance OCLC number, LCCN, POL, VRN?? Holdings permanent location, POL, VRN?? Item POL, VRN, barcode, ?? | How does the incoming record indicate which updates belong to which item and which holdings? Does the incoming record need to indicate which items belong to which holdings? | ||
16 | Create multiple new holdings on a single existing instance | EX:HncM | External Source | Instance OCLC number, LCCN, POL, VRN?? | |||
17 | Create multiple new items on a single existing holdings record on a single existing instance | EX:He0S:IncM | External Source | Instance OCLC number, LCCN, POL, VRN?? Holdings permanent location, POL, VRN?? | Does the incoming record need to indicate which items belong to which holdings? | ||
18 | Create single new items on multiple existing holdings records on a single existing instance | EX:He0M:IncS | External Source | Instance OCLC number, LCCN, POL, VRN?? Holdings permanent location, POL, VRN?? | Does the incoming record need to indicate which items belong to which holdings? How does FOLIO know to create 1 item on each holdings? | ||
19 | Create multiple new items on multiple existing holdings records on a single existing instance | EX:He0M:IncM | External Source | Instance OCLC number, LCCN, POL, VRN?? Holdings permanent location, POL, VRN?? | Does the incoming record need to indicate which items belong to which holdings? How does FOLIO know how many items to create on which holdings? | ||
20 | Create multiple new holdings and multiple new items on a single existing instance | EX:HncM:IncM | External Source | Instance OCLC number, LCCN, POL, VRN?? | Does the incoming record need to indicate which items belong to which holdings? How does FOLIO know how many items to create on which holdings? |
Codes: Read as File of records to be imported comes from a source. Scenario for state holdings records is action number. Scenario for state item records is action number.
Value | Meaning | Code |
---|---|---|
Record source | Data export | DE |
Record source | External source | EX |
Inventory record state | existing | e |
Inventory record state | new | n |
Inventory record type | holdings | h |
Inventory record type | item | i |
Import action | create | c |
Import action | update | u |
Import action | none | 0 |
Number | Multiple | M |
Number | Single* *If item, single per holdings | S |
NOTES
- One import file may have bib records that represent multiple scenarios
- If an instance has multiple holdings or items, an incoming import often only affects one or some of the holdings/items, not all of them
Developer questions for SMEs
Num | Status | Question | Answer | Notes |
---|---|---|---|---|
1 | CLOSED | Is it OK to require that all data for a particular item or holdings has to be in the same MARC field, different subfields, and consistent for each holdings/item being created/updated? (see 945 field in below example) | Yes | |
2 | CLOSED | Is it OK to require that data used to find an existing holdings/item, or to identify which holdings an item should be created on is in the same MARC field/different subfield as the create/update data? | Yes for the holdings/item. If first match is to an Instance-level HRID or POL and possibly submatch to Instance status, would that need to be in the same MARC field as the holdings/item data, or not necessary since Instance would be a completely separate match profile? | |
3 | CLOSED | Is it OK to require that no other non-item/holdings data use that same MARC field? e.g. if 945 is being used for holdings/item data, don't include another 945 field with miscellaneous non-holdings/item notes or codes | Yes | |
4 | CLOSED | Call numbers: If create/update includes call numbers that will vary from one holdings/item to another, is it OK to require that data to be in the MARC field along with the other create/update data? (e.g. LC versus accession numbers, or LC versus storage numbers) | Yes | |
5 | CLOSED | Call numbers: If create/update includes call numbers that will NOT vary from one holdings/item to another, the existing field mapping (e.g. 050, or 050/090 cascade, or 092, etc) will work fine. | Yes | |
6 | CLOSED | What should show in the import logs? | See brief discussion in DI Subgroup Notes. To be continued | |
7 | CLOSED | Confirm matchpoints for MARC records exported from FOLIO vs records sent by external sources; see above table | Others besides ones in above table: URLs (holdings. items), accession numbers (items) | |
8 | REVIEW | If nothing differentiates 2 existing items on the same holdings, would there need to be an option to "update" all of the items with the incoming data, and then the system just updates all the items in the sequence that they are linked to the holdings record. If it can't update all (maybe data only provided for 2 of the 3 items linked to a holdings), would FOLIO need to display a warning? |
SAMPLE RECORD (not exported from FOLIO)
LDR 01262nam a2200301Ia 4500
001 ocm54341618
003 OCoLC
005 20070103101904.0
008 010330s1798\\\\enkaf\\\\\\\\\000\0\eng\d
035 $a(Sirsi) a551407
035 $a(Sirsi) o54341618
049 $aDRUM
040 $aCUD$beng$cCUD$dDRU$dMvI
050 $aBS2095$b.S33 1798
090 $aBS2095$b.S33 1798a
092 $b200$bSCARL$b1798
130 0\ $aBible.$pNew Testament$lEnglish.$sScarlett.$f1798245 12 $aA translation of the New Testament from the original Greek /$chumbly attempted by Nathaniel Scarlett, assisted by men of piety & literature ; with notes.
260 $aLondon :$bPrinted by T. Gillet; and sold by Nathaniel Scarlett, No. 349, near Exeter 'Change, Strand; also F. & C. Rivington, St. Paul's Church Yard,$c1798.
300 $axi, 483, vi p., [1] folded leaf of plates :$bill. ;$c19 cm.
500 $aEngraved t.p.
500 $aIncludes Observations on some terms used in this translation: vi p. at end.
510 3\ $aDarlow-Moule-Herbert 1433
700 1\ $aScarlett, Nathaniel,$d1753-1802.
740 02 $aObservations on some terms used in this translation.
945 $a34678234678246423786427$hKU/CC/DI/M <===== $a = item barcode, $b = copy number, $h = holdings permanent location
945 $a346782346$b2$hKU/CC/DI/M
945 $a34678234678246423786429$b1$hKU/CC/DI/A
If this record were updating holdings and items, it would do so as follows:
- Update 1 instance, with the data in the main part of the MARC bib record
- Update 2 holdings, 1 for permanent location KU/CC.DI/M and 1 for permanent location KU/CC/DI/A, using holdings mapping data from 945$h and the defaults in the holdings mapping profile
- Update 3 item records, 2 linked to the holdings for KU/CC/DI/M and 1 linked to the holdings for KU/CC/DI/A, using item mapping data from 945$a, 945$b, and the defaults in the item mapping profile
Holdings and Item Fields: Map from incoming MARC, default in Field mapping profile, or Both?
Holdings field | Map from incoming MARC? | Default in field mapping profile? | Notes | |
---|---|---|---|---|
1 | Suppress from discovery | |||
2 | Former Holdings ID | |||
3 | Holdings type | |||
4 | Statistical code | |||
5 | Administrative note | |||
6 | Permanent location | |||
7 | Temporary location | |||
8 | Shelving title | |||
9 | Copy number | |||
10 | Call number type | |||
11 | Call number prefix | |||
12 | Call number | |||
13 | Call number suffix | |||
14 | Number of items | |||
15 | Holdings statement | |||
16 | Holdings statement public note | |||
17 | Holdings statement staff note | |||
18 | Holdings stm supplements | |||
19 | Holdings stm supplements public note | |||
20 | Holdings stm supplements staff note | |||
21 | Holdings stm indexes | |||
22 | Holdings stm indexes public note | |||
23 | Holdings stm indexes staff note | |||
24 | ILL policy | |||
25 | Digitization policy | |||
26 | Retention policy | |||
27 | Holdings note: type | |||
28 | Holdings note: text | |||
29 | Holdings note: staff only checkbox | |||
30 | E-access: relationship | |||
31 | E-access: URI | |||
32 | E-access: link text | |||
33 | E-access: materials specified | |||
34 | E-access: URL public note | |||
35 | Acquisition method | |||
36 | Order format | |||
37 | Receipt status | |||
38 | Receiving history: public display checkbox | |||
39 | Receiving history: enumeration | |||
40 | Receiving history: chronology |
Item field | Map from incoming MARC? | Default in field mapping profile? | Notes | |
---|---|---|---|---|
1 | Suppress from discovery | |||
2 | Barcode | |||
3 | Accession number | |||
4 | Item identifier | |||
5 | Former identifier | |||
6 | Statistical code | |||
7 | Administrative note | |||
8 | Material type | |||
9 | Copy number | |||
10 | Call number type | |||
11 | Call number prefix | |||
12 | Call number | |||
13 | Call number suffix | |||
14 | Number of pieces | |||
15 | Description of pieces | |||
16 | Enumeration | |||
17 | Chronology | |||
18 | Volume | |||
19 | Year, caption | |||
20 | Number of missing pieces | |||
21 | Missing pieces | |||
22 | Missing pieces date | |||
23 | Item damaged status | |||
24 | Item damaged date | |||
25 | Note type | |||
26 | Note text | |||
27 | Note staff only checkbox | |||
28 | Permanent loan type | |||
29 | Temporary loan type | |||
30 | Status | |||
31 | CICO note type | |||
32 | CICO note text | <