org.apache.lucene.search.highlight

Class QueryTermExtractor


public final class QueryTermExtractor
extends Object

Utility class used to extract the terms used in a query, plus any weights. This class will not find terms for MultiTermQuery, RangeQuery and PrefixQuery classes so the caller must pass a rewritten query (see Query.rewrite) to obtain a list of expanded terms.

Method Summary

static WeightedTerm[]
getIdfWeightedTerms(Query query, IndexReader reader, String fieldName)
Extracts all terms texts of a given Query into an array of WeightedTerms
static WeightedTerm[]
getTerms(Query query)
Extracts all terms texts of a given Query into an array of WeightedTerms
static WeightedTerm[]
getTerms(Query query, boolean prohibited)
Extracts all terms texts of a given Query into an array of WeightedTerms
static WeightedTerm[]
getTerms(Query query, boolean prohibited, String fieldName)
Extracts all terms texts of a given Query into an array of WeightedTerms

Method Details

getIdfWeightedTerms

public static final WeightedTerm[] getIdfWeightedTerms(Query query,
                                                       IndexReader reader,
                                                       String fieldName)
Extracts all terms texts of a given Query into an array of WeightedTerms
Parameters:
query - Query to extract term texts from
reader - used to compute IDF which can be used to a) score selected fragments better b) use graded highlights eg chaning intensity of font color
fieldName - the field on which Inverse Document Frequency (IDF) calculations are based
Returns:
an array of the terms used in a query, plus their weights.

getTerms

public static final WeightedTerm[] getTerms(Query query)
Extracts all terms texts of a given Query into an array of WeightedTerms
Parameters:
query - Query to extract term texts from
Returns:
an array of the terms used in a query, plus their weights.

getTerms

public static final WeightedTerm[] getTerms(Query query,
                                            boolean prohibited)
Extracts all terms texts of a given Query into an array of WeightedTerms
Parameters:
query - Query to extract term texts from
prohibited - true to extract "prohibited" terms, too
Returns:
an array of the terms used in a query, plus their weights.

getTerms

public static final WeightedTerm[] getTerms(Query query,
                                            boolean prohibited,
                                            String fieldName)
Extracts all terms texts of a given Query into an array of WeightedTerms
Parameters:
query - Query to extract term texts from
prohibited - true to extract "prohibited" terms, too
fieldName - The fieldName used to filter query terms
Returns:
an array of the terms used in a query, plus their weights.

Copyright © 2000-2007 Apache Software Foundation. All Rights Reserved.