Uploaded image for project: 'ui-inventory'
  1. ui-inventory
  2. UIIN-998

Normalize ISBNs for ISBN searching. Search option: Keyword (Instance, Holdings, Item)

    XMLWordPrintable

Details

    • Prokopovych - Sprint 135, Prokopovych - Sprint 136, Prokopovych - Sprint 137, Prokopovych - Sprint 138, Prokopovych - Sprint 139, Prokopovych - Sprint 140, Prokopovych - Sprint 141
    • 1
    • Prokopovych
    • Morning Glory (R2 2022)

    Description

      Overview: ISBN, normalized is implemented as a dedicated search option, UIIN-647, which supports searching by ISBN when those are being entered in a variety of ways (e.g. strip any internal punctuation (usually hyphens)), no matter which version is in the Instance Resource identifier element:

      This story here is about implementing the same normalization of ISBNs when search using search option Keyword (title, contributor, identifier) in the Instance, Holdings, and Item segment.

      Scenarios:
      Assume the following instance records exist

      Example ISBN Invalid ISBN
      1 978-92-8011-565-9  
      2 9789280115659  
      3 978 92 8011 565 9  
      4 978-92-8011-565-9 (pbk.)  
      5 978-92-8011-5659(pbk.)  
      6 978 92 8011 5659(pbk.)  
      7 92801156507  
      8 9280115650 (pbk.)  
      9   9789280115669
      10   978-92-8011-566-9
      11   978 92 8011 566 9
      12   978 92 8011 566 9(hardcover)
      1. Scenario
        • Login to FOLIO Snapshot, go to Inventory, Search & filter pane, and select any of the three segments (Instance, Holdings, Item - UIIN-758)
        • When a user wants to search on ISBN then following search options are in focus of this story:
          • Keyword (title, contributor, identifier)
      2. Scenario
        • When searching on ISBN
        • Then search are conducted across following elements:
          • Resource identifier type: ISBN
          • Resource identifier type: Invalid ISBN
      3. Scenario
        • ensure following normalizations are covered:
          • with and without hyphens
          • with and without spaces
          • with and without qualifiers, like (pbk.), (inb.), (paperback), (vol. 1), (alk. paper) and more
      4. Scenario
        • Ensure automated testing coverage for this new code is 80% plus and confirm with screenshot
      • - - - - - - - - - - - -

      Requirements:

      1. search in the instance record on both:
        • Resource identifier type: ISBN
        • Resource identifier type: Invalid ISBN
      2. search on ISBN numbers
        • with 10 digits
        • with 13 digits
      3. search on ISBN numbers
        • with qualifier data after the 10/13 digit number
        • without qualifier data after the 10/13 digit number
      4. search on ISBNs with qualifiers
        • preceded by spaces, e.g. 9789280115659 (pbk.)
        • not preceded by spaces. e.g. 978-0-12-3736668-0(CD-ROM)
      5. search on ISBN numbers
        • with hyphens
        • without hyphens
      6. search even ignore eventually spaces in the ISBN
      7. search on ISBN is possible in any of the three segments: Instance, Holdings, Item (see UIIN-758)

      Examples on ISBN searches which will find following instance record (from Bugfest environment (login: folio/folio) - https://bugfest.folio.ebsco.com/inventory/view/0f5983eb-1912-4e88-bcbf-2a8f97b42f5a?query=9789280115659%2A&sort=Title):

      Keyword (title, contributor, identifier) search option: 9789280115659
      Keyword (title, contributor, identifier) search option: 9789280115659 (pbk.)
      Keyword (title, contributor, identifier) search option: 9789280115659(pbk.)
      Keyword (title, contributor, identifier) search option: 978-92-8011-565-9
      Keyword (title, contributor, identifier) search option: 978 92 8011 565 9
      Keyword (title, contributor, identifier) search option: 9280115650
      Keyword (title, contributor, identifier) search option: 9280115650 (pbk.)
      Keyword (title, contributor, identifier) search option: 9789280115669 an invalid ISBN
      Keyword (title, contributor, identifier) search option: 978-92-8011-566-9 an invalid ISBN

      See also slide deck: https://docs.google.com/presentation/d/1zsgykxOAKSdjikm8Lg56lamAv9u6o7ms1dTIHx1SDnI/edit#slide=id.p

      Out of scope for MVP:

      1. The RA and MM -SIG discussed the need for search on calculated ISBN. The requirements are not clear, while e.g. SMEs with expertise on Special collection and rare books does not find an automatic conversion between 10 digit and 13 digit ISBNs to be expected behavior.
      2. ISBN Utility functionality is implemented for the Orders app - see (module/project = ISBNUTIL) https://github.com/folio-org/folio-isbn-util

      Implementation:

      The front-end need to change the CQL from

      (keyword all "foo bar") sortBy title

      to

      (keyword all "foo bar" OR isbn = "foo bar" OR invalidIsbn = "foo bar") sortBy title

      This is needed to prevent isbn normalisation in other keyword fields as discussed on RMB-499.

      No back-end work is needed. This is ui-only.

       

      TestRail: Results

        Attachments

          1. ISBN 10s and 13s.mp4
            11.93 MB
            Ann-Marie Breaux
          2. Skærmbillede 2020-04-15 kl. 14.36.01.png
            34 kB
            Charlotte Whitt
          3. Skærmbillede 2020-04-15 kl. 14.36.16.png
            29 kB
            Charlotte Whitt
          4. Skærmbillede 2020-04-15 kl. 14.36.31.png
            31 kB
            Charlotte Whitt
          5. Skærmbillede 2022-06-09 kl. 17.42.17.png
            187 kB
            Charlotte Whitt
          6. Skærmbillede 2022-06-09 kl. 17.43.23.png
            192 kB
            Charlotte Whitt
          7. Skärmavbild 2019-10-28 kl. 15.49.32.png
            141 kB
            Charlotte Whitt
          8. Skärmavbild 2019-10-28 kl. 17.46.34.png
            159 kB
            Charlotte Whitt

          Issue Links

            Activity

              People

                mpk35 Michal Kuklis
                charlotte Charlotte Whitt
                Charlotte Whitt Charlotte Whitt
                Votes:
                0 Vote for this issue
                Watchers:
                14 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases