Hmm, this needs some digging into as it seems. I must admit that by
looking over the code I get yet not idea where the real matching of
terms against the index happens.
If someone could point to the place in the code where the core test of a
term against the index is, that would help a lot. Or is there some
online descriptions somewhere.
Thanks,
Harald.
Michael Sokolov-3 answered (lost his answer, copied from archive)
It sounds as if you want to create a new Query type. I would start by
having a look at BooleanQuery and trying to write an analogous object
that does what you want instead.
On 13.11.2013 16:03, Harald Kirsch wrote:
Hello all,
I wonder if a query according to the following rules is possible.
We have several fields with increasing hierarchy, say f_0 to f_{2n}. The
rule to search for a term is that starting with index 0 the first field
to contain a hit defines whether to return the document or not, i.e.:
If Field f_{2i} contains the term -> return the document, don't look at
further fields f_j with j>2i
If Field f_{2i+1} contains the term -> do not return the document and
don't look at further fields f_j with j>2i+1
I call this cascaded fallback query, because each field f_{i+1} is kind
of a fallback for the case that no field before it contained any
explicit information for the term. If it were not for the fields with
the negative information, I could just use a big OR over all the fields,
but with negation this does not work.
Due to the algorithmic rather than plain boolean (set theoretic)
function to be computed, I have the impression that just creating query
objects the right way would not work, in particular given that at query
time I cannot be sure about the size of n, so I don't know how many
fields to include in the query.
I would even dare to dig deep down into the place where terms are
matched agains fields in Lucene. I had a look already at the source code
of IndexSearcher but could not really spot the place where terms are
matched. But I may be looking at the wrong place.
Any hints appreciated,
Harald.
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org
--
Harald Kirsch
Raytion GmbH
Kaiser-Friedrich-Ring 74
40547 Duesseldorf
Fon +49-211-550266-0
Fax +49-211-550266-19
http://www.raytion.com
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org