From: Bill D. <bi...@du...> - 2009-07-18 02:10:47
|
On Fri, Jul 17, 2009 at 5:00 AM, Till Kinstler <kin...@gm...> wrote: > To say it clearly at this point again (I think Andrew posted it already > some time back): All these AND and OR construction in the buildQuery() > function of Solr.php will be pretty obsolete when the switch to Solr's > DisMax handler is complete. > For simple search, yes. For any search with multiple field-dependent values (either an advanced search or a "search within") my understanding is that DisMax just plain won't work. Someone please let me know if I've got it wrong, but I'm under the impression that dismax has two limitations: 1. No wildcard searches 2. Applies a single set of keywords to a set of (weighted) fields, meaning you can't specify "X in title and Y in author" (rather than X and/or Y in author and/or title -- it's the specific mapping of X=>title and Y=>author that's problematic). You can go a long away against the second problem by trying to spin secondary searches as filters, but filters don't add to a relevancy score and that means you're second-guessing your user as to which field should get preferential treatment. So, for anything involving a wildcard search, or anything that amounts to author:Dueber and/or title:education, we still need to produce those hideous searches. None of this is to say that when you've got a simple keyword search (no inlined booleans, keywords applied equally across a set of fields) DisMax isn't wildly superior. It is. Just that it has limitations that, for many of us, mean it can't be the only solution. -- Bill Dueber Library Systems Programmer University of Michigan Library |