Martijn Pieters wrote:
Michel Pelletier wrote:
Brainstorm on this, and let me know what you come up with.
Hmm.. many searching interfaces that let you search on multiple fields (like Eudora 4.2) give you only the option to show objects that match any or all criteria. It would certainly solve my problem if we had this choice =).
Maybe ZCatalog should accept a special argument that specifies with a normal boolean search string how to join the results of the different indexes, something like:
title and (summary or body)
1. Just to add turbulence to the brainstorm, and supposing 1.1 we invoke a "look for the technical jackpot solution" heuristic, which means, have a look at the less obvious in the hope of a magical solution. 1.2 we take "boolean search strings" as the standard solution to the problem of extending to more, your simple first proposal of an any/all choice. 2. What are the non-standard solutions, then ? Are there any ? INEQUATIONS Well, of course, boolean searches can be expanded to inequations, like the above one can be turned to : 4*title + summary + body > 5 While at first sight such a notation may seem, when compared to boolean search strings, not to bring anything in terms of useability, it is yet notable that : 1) In any case, boolean searches can be translated to them, automatically if need be. 2) When given as "4*title+summary+body", it extends the expressivity of the corresponding boolean search, since it simultanously stipulates a preference ranking on matches. 3) It is not impossible that artists of the trade (of searching databases) can show a better performance using a similar formalism rather than boolean search strings. 4) Maybe there's an interesting way to add fuzzy logic to acquisition wrappers ;-) Well... other directions ? PICTIONARY-STYLE QUERY BY QUALIFIED EXAMPLE Thinking over the matter of refining searches, one wonders if Zope's OO should not transfer to a search language providing elegant semantics to the fact of refining searches while reviewing the first (and unsatisfying) first items returned. Typically, a keyword-centered query returns too many items, and the "power" user may want to instruct the system to remove all of the members of a readily recognizable family of false matches. An interface designed to help such a move is nice... imho... and of course simple intersective search already fits that bill in some manner. But symmetrically, I guess an imprecise query should allow being augmented in extension. In other words, the general idea would be to seek an interface that turns previous searches (and top items) to objects easily clickable or nameable by the user, to combine them in further search expressions, as relative examples of what's wanted and what's not wanted, step by step, somewhat like (one of) the natural strategi(es) of the game of pictionary. DISCLAIMER The above takes as only justification, the call for a brainstorm by an aliased zopener ;-) Regards, Boris Borcic