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

Normalize ISBNs for ISBN searching in Instance, holdings, item segments. New search option: ISBN, normalized

    XMLWordPrintable

    Details

    • Template:
    • Sprint:
      Core: F - Sprint 84, Core: F - Sprint 85, Core: F - Sprint 86
    • Story Points:
      5
    • Development Team:
      Prokopovych

      Description

      Overview: When searching by ISBN, FOLIO allows for ISBNs to be entered in a variety of ways and normalize properly (e.g. strip any internal punctuation (usually hyphens)), no matter which version is in the Instance Resource identifier element:

      Jakub Skoczen refined the requirements - 20/Feb/20 2:24 PM:

      1. it is acceptable to add a new dedicated normalized ISBN index
      2. and leave "keyword" and "identifiers" index ISBN normalization as a post-MVP feature.

      The outcome of this story is

      • adding a new search option: ISBN, normalized
      • the UI needs to use a new CQL query to search a normalized ISBN: isbn = "xxx" (note the single equals)

      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):

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

      Scenarios:

      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 normalized ISBN then following search options are in focus of this story:
          • ISBN, normalized – the search option is displayed after: ISBN and before: ISSN - see the three UX mock ups below:
            Instance Holdings Item
      2. Scenario
        • When searching on ISBN, normalized
        • 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

      Out of scope for MVP:

      1. Search on normalized ISBNs in the Keyword search option - UIIN-998
      2. Search on normalized ISBNs in the Identifier search option - UIIN-999
      3. 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.

      TIPS:
      ISBN Utility functionality for the Orders app - see (module/project = ISBNUTIL) https://github.com/folio-org/folio-isbn-util

      Note: if the implementation is based only on RMB-499 (without any ISBN-specific validation, backend nor front-end) it will be possible to find results when searching for partial tokens e.g "978" or "978 92"

      Note: it's possible to add UI validation for user input

        TestRail: Results

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                SergiySergiyenko Sergiy Sergiyenko
                Reporter:
                charlotte Charlotte Whitt
                Tester Assignee:
                Charlotte Whitt Charlotte Whitt
                Votes:
                0 Vote for this issue
                Watchers:
                11 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    TestRail: Runs

                      TestRail: Cases