LP#1516707: Phrase search ignores CD modifiers Because phrases are subqueries, we need to look at the top of the parse tree when looking for modifiers for cover density. This is because modifers are normally only allowed at the top of the parse tree (or in the floating sub- query). We do that by asking the plan's QueryParse for it's reference to its parse_tree member, which is always the top of the parse tree in QP. Included in this commit is a small change to the QP testing script to facilitate testing of this fix. Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
QP: OO-ize canonicalizer; remove extra nesting from canonicalized query; repair nested operator in bool nesting; updated (basis) test script Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
abstract query representations from QueryParser When you perform a search, you now also get back an abstract representation of your search query. fts-replacement.pl is a test script that shows you things that QueryParser does, including the new abstract query feature, and it also reconstitutes a string from the abstract query to demonstrate the correctness of that query. [Also] Make last-wins true for facets, filters and modifiers -- arg!; Parameterized values win in the staged-search QP wrapper Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Dan Scott <dan@coffeecode.net>