Details
-
Story
-
Status: Closed (View Workflow)
-
P3
-
Resolution: Done
-
None
-
None
-
-
Falcon Sprint 134, Falcon Sprint 135
-
5
-
Falcon
-
Lotus (R1 2022) Bug Fix
Description
Purpose
Populate Shelving order (effectiveShelvingOrder) on the item record when the call number type is Dewey Decimal classification.
Scope
- Populate effective shelving location for records that have call number type set to Dewey Decimal classification. The call number type can be stored either on holdings or item record level.
- Use the marc4j.callnum library to generate the shelving order (artifacts are in maven central)
- The input to this library should be a string concatenation of the following properties: call number, volume, enumeration, chronology, copy number, suffix - similarly how this is done for LC call number
- For the call number and suffix properties, these should come from the effective call number components
- Store the output in effectiveShelvingOrder
This should be done, under the following circumstances:
- When an item is created or updated (either individually or in a batch)
- When a holdings record is updated (either individually or in a batch), all items associated with it should be updated (as this can change the derivation of the input properties)
This should be done in a similar manner to other derived properties for items
Out of Scope
Update scripts will be addressed in MODINVSTOR-880
Generating the shelving order
String input = call number + " " + volume + " " + enumeration + " " + chronology + " " + copy number + " " + suffix; DeweyCallNumber call = new DeweyCallNumber (input); String shelfKey = call.getShelfKey();
Examples how the number are being parsed by marc4j library: https://github.com/solrmarc/solrmarc/blob/fef224a652d060133249945cbe636b7f2a0614fe/test/src/org/solrmarc/callnum/DeweyCallNumberTests.java#L92
Complying with the library licence
Include the following in the published jar:
- a copy of the license
- a note that MARC4J is covered by it, and
- a link to the source repository on GitHub
Add https://www.mojohaus.org/license-maven-plugin/add-third-party-mojo.html to the pom.xml to automatically create a THIRD-PARTY.txt file that contains a link to https://github.com/marc4j/marc4j where the marc4j source code can be downloaded. The plugin will add THIRD-PARTY.txt to the mod-inventory-storage jar.
TestRail: Results
Attachments
Issue Links
- defines
-
UXPROD-3255 Call Number browse - Back-end
-
- Closed
-
- has to be done before
-
MODINVSTOR-888 mod-inventory-storage Release v23.0.1 Lotus R1 2022 Bugfix
-
- Closed
-
- is cloned by
-
MODINVSTOR-877 Store Shelving Order in item (Other scheme)
-
- Closed
-
- relates to
-
MODINVSTOR-359 SPIKE: Review Tod's Call Number Normalization
-
- Closed
-
-
MODINVSTOR-381 Store Shelving Order in item (LC call numbers only)
-
- Closed
-
-
MODINVSTOR-679 Comply with the MARC4J licence
-
- Closed
-