Inventory search. Instance segment. Search by using query language

CSP Request Details

None

CSP Rejection Details

None

CSP Approved

None

Description

Purpose: Implement the possibility to do search by enter query language in the search box. The queries support combined search using e.g. boolean operators (AND, OR, NOT).

Usecase: catalogers experienced with the used query language (CQL) can do advanced searching within Inventory by using the query syntax.

Example on queries:

  1. Search on Subject: History AND Contributors: named Rawson:

    • Query: (subjects="history" and contributors =/@name "Rawson") sortby title

  2. Search on Subject: Art OR Contributors: named Rawson:

    • Query: (subjects="Art" or contributors =/@name "Rawson") sortby title

  3. Search on Subject: Art NOT Contributors: named Rawson:

    • Query: (subjects="Art" not contributors =/@name "Rawson") sortby title

  4. Search on Publisher named History Press AND publication year 1970:


    • Query: (publisher="History Press" and publicationDate="1970") sortby title

  5. Search on Title with the word motor, and publication year 2016

    • (title="motor" AND publicationDate="2016") sortby title

See more documentation in: https://www.loc.gov/standards/sru/cql/contextSets/theCqlContextSet.html

Scenarios:

  1. Scenario

    • Login to FOLIO Snapshot, go to Inventory

    • When in the 1 st pane, then in the search dropdown menu

    • There is a search term labeled: Query search (as the last listed term)

  2. Scenario

    • When viewing the list of search terms in the drop down menu

    • Then the Query search is a the bottom of the list

  3. Scenario

Environment

None

Potential Workaround

None

Attachments

10

Checklist

hide

TestRail: Results

Activity

Show:

Michal Kuklis November 14, 2019 at 3:11 PM

Thank you for creating these other two stories !

Charlotte Whitt November 13, 2019 at 11:58 AM
Edited

Manual test in FOLIO Snapshot, version @folio/inventory 1.13.1000685, using Chrome.

This is great - I played quite a bit with this, and it looks great . I'll close this story, and add separate ones for the Holdings () and the Item segment ()

Charlotte Whitt November 13, 2019 at 11:00 AM

Hi - awesome. I'll test the story. Would you like me to add separate stories for the implementation in Holdings and Item segment?

Michal Kuklis November 12, 2019 at 2:20 PM

the work on this should be now done but it's only under instances segment for now.

Cate Boerema November 4, 2019 at 2:31 PM

For the purposes of this story, we will not do any validation. will write follow up story for validation, if we are going to do it. Also assuming filters should work in conjunction with the query.

If we wanted to do validation, we need a list of indexes. A backend developer will have to go through mod-inventorystorage to find them. List would go stale. Note, if you use an index that doesn't exist, you'll get back all instances (instead of a syntax error)...

We have agreed we aren't considering the performance or stability impact of this feature. We will see how this works and address problems as we go.

Done

Details

Assignee

Reporter

Tester Assignee

Priority

Story Points

Sprint

Development Team

Prokopovych

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created September 13, 2019 at 5:06 PM
Updated September 15, 2020 at 9:04 AM
Resolved November 13, 2019 at 12:01 PM
TestRail: Cases
TestRail: Runs