org.cdlib.xtf.textEngine
Class StdTermRewriter

Object
  extended by QueryRewriter
      extended by XtfQueryRewriter
          extended by StdTermRewriter

public class StdTermRewriter
extends XtfQueryRewriter

Rewrites a Lucene query to perform standard tokenization actions on each term, such as converting them to lowercase, removing apostrophes, etc.

Author:
Martin Haye

Nested Class Summary
 
Nested classes/interfaces inherited from class QueryRewriter
QueryRewriter.SpanClauseJoiner
 
Field Summary
private  StdTermFilter filter
           
private  Set tokenizedFields
           
 
Constructor Summary
StdTermRewriter(Set tokFields)
          Construct a term rewriter that will operate on the given tokenized fields.
 
Method Summary
private  String mapTerm(Term t)
          Map the given term and return the mapped result.
protected  Query rewrite(SpanTermQuery q)
          Rewrite a span term query.
protected  Query rewrite(SpanWildcardQuery q)
          Rewrite a wildcard term query.
protected  Query rewrite(TermQuery q)
          Rewrite a term query.
 
Methods inherited from class XtfQueryRewriter
rewrite, rewrite, rewrite, rewrite, rewriteQuery
 
Methods inherited from class QueryRewriter
combineBoost, copyBoost, copyBoost, forceRewrite, rewrite, rewrite, rewrite, rewrite, rewrite, rewrite, rewrite, rewrite, rewrite, rewriteClauses
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tokenizedFields

private Set tokenizedFields

filter

private StdTermFilter filter
Constructor Detail

StdTermRewriter

public StdTermRewriter(Set tokFields)
Construct a term rewriter that will operate on the given tokenized fields.

Method Detail

rewrite

protected Query rewrite(TermQuery q)
Rewrite a term query. This is only called for artificial queries introduced by XTF system itself, and therefore we don't map here.

Overrides:
rewrite in class QueryRewriter
Parameters:
q - The query to rewrite
Returns:
Rewritten version, or 'q' unchanged if no changed needed.

rewrite

protected Query rewrite(SpanTermQuery q)
Rewrite a span term query.

Overrides:
rewrite in class QueryRewriter
Parameters:
q - The query to rewrite
Returns:
Rewritten version, or 'q' unchanged if no changed needed.

rewrite

protected Query rewrite(SpanWildcardQuery q)
Rewrite a wildcard term query.

Overrides:
rewrite in class QueryRewriter
Parameters:
q - The query to rewrite
Returns:
Rewritten version, or 'q' unchanged if no changed needed.

mapTerm

private String mapTerm(Term t)
Map the given term and return the mapped result.

Parameters:
t - term to map
Returns:
different term, or null if not different. Also null if the field isn't tokenized.