A Lucene query parser generating ElasticSearch queries
copied from cf-staging / luqumluqum (as in LUcene QUery Manipolator) is a tool to parse queries written in the Lucene Query DSL and build an abstract syntax tree to inspect, analyze or otherwise manipulate search queries. It enables enriching the Lucene Query DSL meanings (for example to support nested object searches or have particular treatments on some fields), and transform lucene DSL queries to native ElasticSearch JSON DSL. Thanks to luqum, your users may continue to write queries like: author.lastname:Smith OR author:(age:[25 TO 34] AND firstname:John) and you will be able to leverage ElasticSearch query DSL, and control the precise meaning of each search terms.