Skip to main content.
home | support | download

Back to List Archive

Re: Odd result with searching multiple indexes

From: <jmruiz(at)not-real.boe.es>
Date: Fri Sep 22 2000 - 08:40:14 GMT
Hi Dave,
Hi Bill,

On 21 Sep 2000, at 21:43, David Norris wrote:

> > Take a look at the following two "# Search words:" headers from searching
> > two indexes.  Any idea what "precd" is and why it's there?
> 
> precd = precedes
> 
> Looks odd to me.  I would expect the two queries to look alike.  Perhaps
> Jose can shed some light on it.
> 
> > # Search words: keywords = ( " sodium in that food from " )
> > # Search words: ( keywords = ( ( sodium precd in precd that precd food
> > precd from ) ) )
> 

Dave is right. It means precedes.

This is why...

The search string is preprocessed: First, I locate the phrase 
delimiter ". Then I change " sodium in that food " by
sodium precd in precd that precd food. Why I am doing this odd 
thing? Because the phrase search is implemented like an and 
search. So I have defined the internal operator precd. Thus when
the code finds this new operator it issues and "extended and": it 
does a "normal and" with the position counters of the words have to 
be consecutives (more or less).

If you do not like this message, we can do two things:

1- Preserve the search string in the search function of swish-e and 
show the original one. Anyway, at this moment the original string is 
never written because the stopwords are removed from the query. 
Of course, if you do not have stopwords or phrases in your query 
the search strings should match.

2- Since your cgi script has the original search string, you can use 
it.

Let me know what you think

cu
Jose
Received on Fri Sep 22 08:40:36 2000