Highlighting match term in bold rather than italic

2010-09-30 Thread efr...@gmail.com
Hi all -

Does anyone know how to produce solr results where the match term is
highlighted in bold rather than italic?

thanks in advance,

Brad


Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-27 Thread efr...@gmail.com
Hi all,

I have a query need that requires multiple OR conditions, and, there must be
a match in each condition for the query to provide a result.

The search would be * (A or B) AND (C or D)* and the only valid results it
could turn up are:

A B
A C
B C
B D

Can anyone provide guidance as to how to implement this in the query string?

thanks

Brad


Re: Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-27 Thread efr...@gmail.com
On Thu, May 27, 2010 at 5:34 PM, efr...@gmail.com  wrote:

> Hi all,
>
> I have a query need that requires multiple OR conditions, and, there must
> be a match in each condition for the query to provide a result.
>
> The search would be * (A or B) AND (C or D)* and the only valid results it
> could turn up are:
>
> A B (sorry meant "A D")
> A C
> B C
> B D
>
> Can anyone provide guidance as to how to implement this in the query
> string?
>
> thanks
>
> Brad
>


Re: Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-27 Thread efr...@gmail.com
Thank you. That seems to be working well, except when I included a wild card
for any of the terms, the wildcard term isn't being found out.

My searches are actually:
q=+(A A*) +(C C*)&q.op=OR

When I do a regular search on "A*" or "C*" I get matches but not in the
context of the above query. The ability to use wildcards seems to get lost.

This is all for the purposes of a "live search" in which we return matches
as the user types, thus the wildcard.  A and C represent two different terms
a user has typed in the search box (where we are providing the live-search
results).

thanks

Brad



On Thu, May 27, 2010 at 5:47 PM, Ahmet Arslan  wrote:

>
> > I have a query need that requires multiple OR conditions,
> > and, there must be
> > a match in each condition for the query to provide a
> > result.
> >
> > The search would be * (A or B) AND (C or D)* and the only
> > valid results it
> > could turn up are:
> >
> > A B
> > A C
> > B C
> > B D
> >
> > Can anyone provide guidance as to how to implement this in
> > the query string?
>
> It should be something like : q=+(A B) +(C D)&q.op=OR
>
>
>
>


Re: Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-27 Thread efr...@gmail.com
Hi Ahmet,

Thanks for the response again. The best way I could illustrate our live
search feature is an example implementation:

http://www.krop.com/

Notice when you search the word "senior" in the keywords field, the results
filter down to just the job postings with that word in it.

So it's not the same as an "autocomplete" type feature where as the user
types in the search input box, their input is completed. We are just
focusing on providing results with each key stroke.  If the user types "Ca",
we will return anything with "Cat" in it. Thus we need the wildcard. As of
now we send a query to solr of "Ca*".  However, solr can struggle with
wildcards where it won't return a match on a word if there is a wildcard at
the end of a fully-typed word. You have to leave off the last letter of that
word and an asterisk to match it.

We're attempting to do an "OR" search of the "term OR term*" anytime a user
enters a term. Our need mix these "or" searches with an AND command is
because if a user types two words, we are requiring both words be in the
result to have a match.  Your suggestion as how to do this worked
beautifully, except for the fact that it didn't seem to be able to find
wildcarded terms when indeed it should have.

thanks

Brad


On Thu, May 27, 2010 at 6:57 PM, Ahmet Arslan  wrote:

> > Thank you. That seems to be working
> > well, except when I included a wild card
> > for any of the terms, the wildcard term isn't being found
> > out.
> >
> > My searches are actually:
> > q=+(A A*) +(C C*)&q.op=OR
> >
> > When I do a regular search on "A*" or "C*" I get matches
> > but not in the
> > context of the above query. The ability to use wildcards
> > seems to get lost.
> >
> > This is all for the purposes of a "live search" in which we
> > return matches
> > as the user types, thus the wildcard.  A and C
> > represent two different terms
> > a user has typed in the search box (where we are providing
> > the live-search
> > results).
>
> Looks like you are looking for auto-suggest/complete feature. As the user
> types something there will be ajax suggestions right?
>
> Queries  A* or C* are not sorted by score/relevance. Can you explain in
> more detail what do you mean by "search on "A*" or "C*" I get matches
> but not in the context of the above query"
>
>
>
>
>


Re: Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-27 Thread efr...@gmail.com
Thanks, I found full interface :)

On Thu, May 27, 2010 at 7:12 PM, Erick Erickson wrote:

> You can get a lot of mileage out of the admin
> analysis page and the "full interface" page, especially
> by turning on the "debug" option on the admin
> "full interface" page.
>
> It takes a bit of practice to read the debug output, but
> it's really, really, really worth it....
>
> Best
> Erick
>
> On Thu, May 27, 2010 at 6:37 PM, efr...@gmail.com 
> wrote:
>
> > Thank you. That seems to be working well, except when I included a wild
> > card
> > for any of the terms, the wildcard term isn't being found out.
> >
> > My searches are actually:
> > q=+(A A*) +(C C*)&q.op=OR
> >
> > When I do a regular search on "A*" or "C*" I get matches but not in the
> > context of the above query. The ability to use wildcards seems to get
> lost.
> >
> > This is all for the purposes of a "live search" in which we return
> matches
> > as the user types, thus the wildcard.  A and C represent two different
> > terms
> > a user has typed in the search box (where we are providing the
> live-search
> > results).
> >
> > thanks
> >
> > Brad
> >
> >
> >
> > On Thu, May 27, 2010 at 5:47 PM, Ahmet Arslan  wrote:
> >
> > >
> > > > I have a query need that requires multiple OR conditions,
> > > > and, there must be
> > > > a match in each condition for the query to provide a
> > > > result.
> > > >
> > > > The search would be * (A or B) AND (C or D)* and the only
> > > > valid results it
> > > > could turn up are:
> > > >
> > > > A B
> > > > A C
> > > > B C
> > > > B D
> > > >
> > > > Can anyone provide guidance as to how to implement this in
> > > > the query string?
> > >
> > > It should be something like : q=+(A B) +(C D)&q.op=OR
> > >
> > >
> > >
> > >
> >
>


Re: Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-27 Thread efr...@gmail.com
Responses in blue

On Thu, May 27, 2010 at 7:32 PM, Ahmet Arslan  wrote:

>
>
> > Thanks for the response again. The best way I could
> > illustrate our live
> > search feature is an example implementation:
> >
> > http://www.krop.com/
> >
> > Notice when you search the word "senior" in the keywords
> > field, the results
> > filter down to just the job postings with that word in it.
> >
> > So it's not the same as an "autocomplete" type feature
> > where as the user
> > types in the search input box, their input is completed. We
> > are just
> > focusing on providing results with each key stroke.
> > If the user types "Ca",
> > we will return anything with "Cat" in it. Thus we need the
> > wildcard. As of
> > now we send a query to solr of "Ca*".  However, solr
> > can struggle with
> > wildcards where it won't return a match on a word if there
> > is a wildcard at
> > the end of a fully-typed word. You have to leave off the
> > last letter of that
> > word and an asterisk to match it.
>
> Okey i was referring the same. Each keystroke will return results.
> There are many way to achieve this. Are you going to suggest from
> index/documents or from coming queries? I mean do you have a separate index
> to capture most popular searches?
>

We do not have a seperate index to capture most popular searches (is that
coming queries?)



>
> > We're attempting to do an "OR" search of the "term OR
> > term*" anytime a user
> > enters a term.
>
> term* is super set of term so you need to include/OR term in your query.
>
> Thanks...


>  > Our need mix these "or" searches with an AND
> > command is
> > because if a user types two words, we are requiring both
> > words be in the
> > result to have a match.
>
> generally two ways:
> using wildcards on shingles (ShingleFilterFactory)
> or
> using EdgeNGramFilterFactory
> can deal two or more words
>
> Do you mind the order of words use types? Suggestions should come in order
> that the user types?
>
> We don't mind the order of terms. We basically are sorting by two variables
that are independent of relevency.  So I would assume the order doesn't
matter... we just need to make sure any results we filter down to (as you
saw in the krop.com example) contain the words the user has typed.


Re: Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-27 Thread efr...@gmail.com
Hi Ahmet,

Thanks again for the feedback. We will be searching several fields of each
object in the index (title, description, tags). The matches on keywords need
to be in any of these fields and there will be no different weights.

Does this affect your solution?

I'm trying to understand it as best I can as I didn't set up our solr nor am
I directly managing its implementation.

thanks

Brad


On Thu, May 27, 2010 at 8:12 PM, Ahmet Arslan  wrote:

> > > We don't mind the order of terms. We basically are
> > sorting by two variables
> > that are independent of relevency.  So I would assume
> > the order doesn't
> > matter... we just need to make sure any results we filter
> > down to (as you
> > saw in the krop.com example) contain the words the user has
> > typed.
> >
>
> Lets say you have short title field and you are going to give
> suggest/autocomplete using this field from index and order is not important.
> But in this ca
>
>  positionIncrementGap="1">
> 
> 
> 
> 
>  maxGramSize="20"/>
> 
> 
> 
> 
> 
> 
>
>  positionIncrementGap="1">
> 
> 
> 
>  maxGramSize="20"/>
> 
>
> You can use these two fields, populate them from your short title field
>
> 
> 
>
> and use normal query, (not wildcard) as the user types words
> q=titlePrefix:(term1 te) titlePrefixFull:"term1
> te"&defType=lucene&q.op=OR&fl=Title
> will return you suggestions. Does this satisfy your needs?
> In this case you are suggesting whole title field.
>
> Or do you want to use ShingleFilterFactory with wildcard query?
>
>
>
>


Re: Does SOLR Allow q= (A or B) AND (C or D)?

2010-05-28 Thread efr...@gmail.com
Hi Ahmad,

Thanks for this. So do we need this:"*&defType=lucene&q.op=OR&fl=Title* at
the end?

Also, I'm guessing we will need to install EdgeNGramFilterFactory?

Here are the analyzers / filters we currently are using (just the default
stuff):


*Index Analyzer: *org.apache.solr.analysis.TokenizerChain
Details<http://qa.writepublic.com:8983/solr/admin/schema.jsp#>

*Tokenizer Class: * org.apache.solr.analysis.WhitespaceTokenizerFactory

*Filters: *

   1. org.apache.solr.analysis.StopFilterFactory args:{words: stopwords.txt
   ignoreCase: true enablePositionIncrements: true }
   2. org.apache.solr.analysis.WordDelimiterFilterFactory
   args:{splitOnCaseChange: 1 generateNumberParts: 1 catenateWords: 1
   generateWordParts: 1 catenateAll: 0 catenateNumbers: 1 }
   3. org.apache.solr.analysis.LowerCaseFilterFactory args:{}
   4. org.apache.solr.analysis.EnglishPorterFilterFactory args:{protected:
   protwords.txt }
   5. org.apache.solr.analysis.RemoveDuplicatesTokenFilterFactory args:{}


I am not seeing these from your example in a prev email:








Perhaps they were not necessary and just a part of your example? Again,
thanks for your help.

thanks

Brad

On Fri, May 28, 2010 at 3:43 PM, Ahmet Arslan  wrote:

>
>
> --- On Fri, 5/28/10, efr...@gmail.com  wrote:
>
> > From: efr...@gmail.com 
> > Subject: Re: Does SOLR Allow q= (A or B) AND (C or D)?
> > To: solr-user@lucene.apache.org
> > Date: Friday, May 28, 2010, 4:42 AM
> > Hi Ahmet,
> >
> > Thanks again for the feedback. We will be searching several
> > fields of each
> > object in the index (title, description, tags). The matches
> > on keywords need
> > to be in any of these fields and there will be no different
> > weights.
>
> Okey after investigating your example website, i think i understand you
> now. As a suggestion you are going to display documents, not a particular
> field, or keywords. You can do it with my solution. Create two additional
> fields with the types i wrote. Copy your title, desc and tag fields into
> these fields. Execute the query - on these two field - as the user types.
> You will see the same results with your example website. Just don't forget
> to use quotes for the field that uses keyword tokenizer. And the () for the
> other one. Also default operator OR is required. When the user is typing the
> query tap water, your query will be
> q=f1:"tap wate" f2:(tap wate)   just before the last key stroke.
>
>
>
>