1
package org.apache.lucene.analysis.tokenattributes;
4
* Licensed to the Apache Software Foundation (ASF) under one or more
5
* contributor license agreements. See the NOTICE file distributed with
6
* this work for additional information regarding copyright ownership.
7
* The ASF licenses this file to You under the Apache License, Version 2.0
8
* (the "License"); you may not use this file except in compliance with
9
* the License. You may obtain a copy of the License at
11
* http://www.apache.org/licenses/LICENSE-2.0
13
* Unless required by applicable law or agreed to in writing, software
14
* distributed under the License is distributed on an "AS IS" BASIS,
15
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
* See the License for the specific language governing permissions and
17
* limitations under the License.
20
import org.apache.lucene.util.Attribute;
22
/** The positionIncrement determines the position of this token
23
* relative to the previous Token in a TokenStream, used in phrase
26
* <p>The default value is one.
28
* <p>Some common uses for this are:<ul>
30
* <li>Set it to zero to put multiple terms in the same position. This is
31
* useful if, e.g., a word has multiple stems. Searches for phrases
32
* including either stem will match. In this case, all but the first stem's
33
* increment should be set to zero: the increment of the first instance
34
* should be one. Repeating a token with an increment of zero can also be
35
* used to boost the scores of matches on that token.
37
* <li>Set it to values greater than one to inhibit exact phrase matches.
38
* If, for example, one does not want phrases to match across removed stop
39
* words, then one could build a stop word filter that removes stop words and
40
* also sets the increment to the number of stop words removed before each
41
* non-stop word. Then exact phrase queries will only match when the terms
42
* occur with no intervening stop words.
46
* @see org.apache.lucene.index.TermPositions
48
public interface PositionIncrementAttribute extends Attribute {
49
/** Set the position increment. The default value is one.
51
* @param positionIncrement the distance from the prior term
53
public void setPositionIncrement(int positionIncrement);
55
/** Returns the position increment of this Token.
56
* @see #setPositionIncrement
58
public int getPositionIncrement();