Update MARC matching UI to differentiate [any] versus [blank] indicators

CSP Rejection Details

None

CSP Request Details

None

CSP Approved

None

Description

Purpose: update the MARC matching to differentiate wildcard (any) versus [blank] indicators

As a staff person working with Data Import matching profiles
I want to be able to specify any or [blank] indicators for MARC matches
So that I can make my matches work properly

Scenarios

  1. Scenario 1

    • Given Settings/Data import/Matching profiles

    • When creating or editing a match profile with Incoming record = MARC Bibliographic, MARC Holdings, or MARC Authority

    • And Field = 010-999

    • Then allow a single [asterisk], [space], or [blank] to be valid for Indicator 1 and Indicator 2 fields (in addition to a single alpha or numeric) [this makes Indicator 1 and 2 optional for fields 010-999]

    • NOTE: Field and Subfield should remain required fields

  2. Scenario 2

    • Given Settings/Data import/Matching profiles

    • When creating or editing a match profile with Incoming record = MARC Bibliographic, MARC Holdings, or MARC Authority

    • And Field = LDR, 001-009

    • Then disallow any data in Indicator 1, Indicator 2, or Subfield

  3. Scenario 3

    • Given Settings/Data import/Matching profiles

    • When viewing a match profile with Incoming record = MARC Bibliographic, MARC Holdings, or MARC Authority

    • Then display the Indicator 1 and Indicator 2 data as follows

      • [space], [blank], or unmapped: - (hyphen)

      • [asterisk]: * (asterisk)

      • [single alpha or numeric]: [single alpha or numeric]

  4. Scenario 4

    • Given Settings/Data import/Matching profiles

    • When creating, editing, or viewing a match profile with Existing record = MARC Bibliographic, MARC Holdings, or MARC Authority (the bottom section of the match profile)

    • Then follow the same UI instructions as for Incoming records (Scenarios 1-3)

  5. Scenario 5

    • Given Settings/Data import/Matching profiles

    • And the Incoming record = MARC Bibliographic, MARC Holdings, or MARC Authority

    • When indicator 1 and/or Indicator 2 = [space] or [blank]

    • Then the match profile should only match from the specified incoming MARC field if the Indicator 1 and/or 2 is [blank]

  6. Scenario 6

    • Given Settings/Data import/Matching profiles

    • And the Incoming record = MARC Bibliographic, MARC Holdings, or MARC Authority

    • When indicator 1 and/or Indicator 2 = [asterisk]

    • Then the match profile should match from the specified incoming MARC field regardless of the indicator 1 or 2 (whichever has an asteriskl)

  7. Scenario 7

    • Given Settings/Data import/Matching profiles (already developed)

    • And the Incoming record = MARC Bibliographic, MARC Holdings, or MARC Authority

    • When indicator 1 or Indicator 2 = [single alpha or numeric]

    • Then the match profile should only match from the specified incoming MARC field if the Indicator 1 and/or 2 matches the specified [alpha or numeric]

  8. Scenario 8

    • Given Settings/Data import/Matching profiles

    • When creating, editing, or viewing a match profile with Existing record = MARC Bibliographic, MARC Holdings, or MARC Authority (the bottom section of the match profile)

    • Then follow the same match logic instructions as for Incoming records (Scenarios 5-7)

  9. Scenario 9

    • Ensure this story passes Accessibility testing

  10. Scenario 10

    • Ensure automated testing coverage for this new code is 80% plus and confirm with screenshot

Examples:

  • 020 Ind 1 = [blank], Ind 2 = [blank], Subfield = a: only match from the 020 $a if both indicators are blank

  • 020 Ind 1 = [space], Ind 2 = 2, Subfield = a: only match from the 020 $a if indicator 1 is blank and indicator 2 is 2

  • 020 Ind 1 = [asterisk], Ind 2 = [blank], Subfield = a: only match from the 020 $a if Indicator 2 is blank, but Indicator 1 can be anything

  • 020 Ind 1 = [asterisk], Ind 2 = [asterisk], Subfield = a: match from the 020 $a no matter what its indicators are

  • 020 Ind 1 = 4, Ind 2 = [space], Subfield = a: only match from the 020 $a if indicator 1 is 4 and indicator 2 is [blank]indicators are blank

* This story is for Incoming record = MARC; do we need another UI story for Existing record = MARC, or just another scenario in this story?

covers the backend work needed to support this (Scenarios 5-8)

Environment

None

Potential Workaround

None

Attachments

5

Checklist

hide

TestRail: Results

Activity

Show:

Ann-Marie Breaux August 25, 2020 at 6:05 AM

Test Scenario 8 functionality when is done.

Ann-Marie Breaux August 25, 2020 at 6:02 AM

Now that is implemented, tested the match logic, and all looks good. See https://drive.google.com/file/d/1MnGMDE6u7C7ENjHM9-FaTdGP40F_UcZQ/view?usp=sharing for a long video demonstrating it.

Ann-Marie Breaux August 10, 2020 at 5:21 PM

Hi Tested on folio-testing, and all looks good from the UI point of view. I'll test the functionality once is done. Thank you!

Ann-Marie Breaux August 5, 2020 at 4:41 AM

Hi and Added scenarios 4 and 8 to indicate that matching to Existing MARC records in FOLIO (the bottom section of the match profile) follows the same UI and match logic as the incoming MARC records (top part of the form).

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Folijet

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created May 13, 2020 at 7:06 AM
Updated October 29, 2020 at 5:53 AM
Resolved August 10, 2020 at 5:21 PM
TestRail: Cases
TestRail: Runs