internetarchive / internetarchive/openlibrary

Add solr support for synonyms for numbers/abbreviations

Open
#6,635 10 comments 3 reactions 0 assignees View on GitHub
Lead: @cdrini Module: Solr Priority: 2 Theme: Search
Dominant language
Python
Stars
6.7k
Forks
2k
Avg merge
2d 19h
Merged PRs (30d)
138

Description

I've been using the website for a long time now and one of my biggest gripes is how searching works. When searching for books in OpenLibrary, you often need to write exactly the correct title. This means that if a book uses words for numbers (One, Two, Three etc), searching the same title with digits (1, 2, 3 etc) would give no result.

Another example is if a book uses "Vol." in the title, searching "volume" would net no result even though they mean the same thing. This makes finding specific books a lot more difficult.

### Describe the problem that you'd like solved
The search engine searches exact terms, but it should have tolerance when dealing with numbers or words of equivalent meaning.
Here's an example:

![image](https://user-images.githubusercontent.com/16920817/172428012-a37c71ef-9d8e-4e20-af48-d76affc530a0.png)
![image](https://user-images.githubusercontent.com/16920817/172428086-29953c73-c6c5-44a9-bfdf-5984fcd14c37.png)
I would like searching "The Walking Dead Compendium Four" and "The Walking Dead Compendium 4" to find the book.

### Proposal & Constraints
The search engine should be error tolerant to words of the same meaning.
"Vol." should be the same as writing "Volume"
"Two" should be the same as writing "2" or "II"
"&" and "and" should also be interchangeable.

### Additional context
Another example, but with "vol" and "volume"
![image](https://user-images.githubusercontent.com/16920817/172433397-c8cc2773-5991-454f-a1af-feb52c40d311.png)
![image](https://user-images.githubusercontent.com/16920817/172433433-9cbeebc8-2b6d-45cd-bdff-0447f661978d.png)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.