I didn't get the logic right the first time
The query logic works well, I have to think more whether phrases should be translated into span queries and other different usecases