Store Shelving Order in item (LC call numbers only)

Description

Purpose

Allow for items (that have LC call numbers) to be sorted by shelving order (based upon call number and related fields)

Context

Refer to for how this field will be presented.

Scope

  1. Introduce a new property for the shelving order (the definition should be read only)

  2. Use the existing library to generate the shelving order (artefacts are in maven central)

  3. The input to this library should be a string concatenation of the following properties: call number, volume, enumeration, chronology, copy number, suffix

  4. For the call number and suffix properties, these should come from the effective call number components

  5. Store the output from the library in the new property

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
  • Deriving the shelving order for existing item records (this is covered by MODINVSTOR-521)

Generating the shelving order

Examples on sorted values:

sort order

prefix

call number

volume

enumeration

chronology

copy

suffix

PN12 .A6

 

PN2 .A6

 

 

 

 

 

PN2 .A6 v.3 no.2 1999

 

PN2 .A6

v. 3

no. 2

1999

 

 

PN12 .A6 41999

 

PN2 .A6 1999

 

 

 

 

 

PN12 .A6 41999 CD

 

PN2 .A6 1999

 

 

 

 

CD

PN12 .A6 41999 C.12

 

PN2 .A6 1999

 

 

 

2

 

PN12 .A69 41922

 

PN2 .A69

 

 

1922

 

 

PN12 .A69 41922 C.12

 

PN2 .A69

 

 

1922

2

 

PN12 .A69 NO.12

 

PN2 .A69

 

no. 2

 

 

 

PN12 .A69 NO.12 41922 C.11

 

PN2 .A69

 

no. 2

1922

1

 

PN12 .A69 NO.12 41922 C.12

Wordsworth

PN2 .A69

 

no. 2

1922

2

 

PN12 .A69 V.11 NO.11

 

PN2 .A69

v.1

no. 1

 

 

 

PN12 .A69 V.11 NO.11 +

Over

PN2 .A69

v.1

no. 1

 

 

+

PN12 .A69 V.11 NO.11 41921

 

PN2 .A69

v.1

no. 1

1921

 

 

PR 49199.3 41920 .L33 41475 .A6

 

PR9199.3 1920 .L33 1475 .A6

 

 

 

 

 

PQ 42678 .K26 P54

 

PQ2678.K26 P54

 

 

 

 

 

PQ 48550.21 .R57 V15 41992

 

PQ8550.21.R57 V5 1992

 

 

 

 

 

PQ 48550.21 .R57 V15 41992

 

PQ8550.21.R57 V5

 

 

1992

 

 

PR 3919 .L33 41990

 

PR919 .L33 1990

 

 

 

 

 

PR 49199 .A39

 

PR9199 .A39

 

 

 

 

 

PR 49199.48 .B3

 

PR9199.48 .B3

 

 

 

 

 

h3. 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.

Environment

None

Potential Workaround

None

Attachments

1

Checklist

hide

TestRail: Results

Activity

Show:

Holly MistlebauerFebruary 24, 2021 at 8:24 PM

:  Thanks much!

Marc JohnsonFebruary 22, 2021 at 3:15 PM

I've reopened this issue in order to complete some further changes that are necessary for [MODINV-155] to be completed.

cc:

Marc JohnsonFebruary 22, 2021 at 12:33 PM

I've raised to cover the licence compliance scope that was missed from this issue

Andrii ShapovalovFebruary 20, 2021 at 12:46 PM

Some doubts came about effectiveShelvingOrder if this field needs to be requited or not, in term of jsoin schema definition.

Tod OlsonFebruary 18, 2021 at 4:52 PM

, yes, thank you!

Done

Details

Assignee

Reporter

Tester Assignee

Labels

Priority

Story Points

Sprint

Development Team

Prokopovych

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created October 22, 2019 at 3:39 PM
Updated April 17, 2024 at 1:55 PM
Resolved February 20, 2021 at 12:48 PM
Loading...