[RRT] Invalid values (as it is) created in JSON when value is not matching accepted options provided in Instance field mapping for Nature of Content term

Description

When mapping a MARC field to the nature of contents term and provided value doesn’t match existing values, an empty value is created in the JSON and interferes with OAI-PMH harvests for discovery layers. it's creating a junk empty { } in the JSON when it shouldn't be.

Wellesley College was notified that there were errors in harvests for EDS by hosting. Soon after, staff found that records weren't being harvested by OAI-PMH to our VuFind catalog. Hosting said it's possibly related to https://folio-org.atlassian.net/browse/MODOAIPMH-513 and resolved in Poppy, but that doesn't help us while we are on Orchid CSP-6 in production.

Wellesley College maps the nature of contents field to 949$n without a fallback default value. Nature of content terms are used locally to identify ebooks, theses, music recordings, and non-music recordings where it might be difficult to find using other search methods.

Expected behavior: The import profile should populate the nature of contents term when present in a 949$n in the incoming MARC record. If no 949$n is present or the value doesn’t match accepted in the incoming MARC record, nothing is created or populated. OAI-PMH harvests process as normal, adding new and changed records to discovery layers.

Actual behavior: An empty value is created in the JSON for nature of contents when there is a value in 949$n present that doesn’t match accepted. OAI-PMH harvests fail and no records sent to discovery layers. Empty value isn’t visible in Inventory Instance records using the UI.

Affected Institutions: Wellesley College, ALL

Affected Release: Orchid CSP-6, Poppy

Related Job Profile Created in Poppy BugFest: https://bugfest-poppy.int.aws.folio.org/settings/data-import/job-profiles/view/6b695d7c-9c6c-40c6-8688-ed260534f994

CSP Request Details

None

CSP Rejection Details

None

Potential Workaround

None

Attachments

6
  • 22 Apr 2024, 07:31 AM
  • 22 Apr 2024, 07:31 AM
  • 29 Mar 2024, 01:01 PM
  • 28 Mar 2024, 07:56 PM
  • 28 Mar 2024, 07:03 PM
  • 28 Mar 2024, 07:03 PM

Checklist

hide

Activity

Show:

Ryan TaylorApril 22, 2024 at 5:46 PM
Edited

Tested with example file in Q Bugfest for the following scenarios:

All scenarios completed as expected. Moving to Done.

JenkinsNotificationsApril 22, 2024 at 4:07 PM

Deployed to the Quesnelia bf env. Moved status to In bugfix review from status Awaiting deployment. Please proceed with the verification.

Kateryna SenchenkoApril 22, 2024 at 8:21 AM

Hi , moving this ticket to Awaiting release. Please let us know if any concerns. Thank you!

Maksym IshchenkoApril 22, 2024 at 7:31 AM

Hi

Ticket verified on snapshot env. Now if Nature of Content field is not registered on env then in attempt to mapp it DI will fail Instance creation. Moving ticket further

 

image-20240422-073059.png

 

image-20240422-073110.png

 

cc:

Volodymyr RohachApril 19, 2024 at 12:53 PM

Hello everyone! After disscussion with the expected behavior should be:

If in MARC-record in specific field (which is set in the mapping profile on Create/Update Instance). (for example “949$n“) there is an invalid value(for example “some invalid value“), which does NOT exist in the acceptedValues on the environment, then there should be an error while importing with a detailed description for it specifying this field.

CC:

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Folijet

Fix versions

Release

Quesnelia (R1 2024) Bug Fix

RCA Group

Implementation coding issue

Affected releases

Poppy (R2 2023)
Orchid (R1 2023)

Affected Institution

!!!ALL!!!

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created March 28, 2024 at 7:10 PM
Updated April 24, 2024 at 11:23 AM
Resolved April 22, 2024 at 8:21 AM
TestRail: Cases
TestRail: Runs

Flag notifications