PositionIncrementAttribute (Lucene 10.5.0 core API)
Description: declaration: package: org.apache.lucene.analysis.tokenattributes, interface: PositionIncrementAttribute

Package org.apache.lucene.analysis.tokenattributes

# Interface PositionIncrementAttribute

All Superinterfaces:
  `Attribute`

All Known Implementing Classes:
  `PackedTokenAttributeImpl`, `PositionIncrementAttributeImpl`

public interface PositionIncrementAttribute extends Attribute
Determines the position of this token relative to the previous Token in a TokenStream, used in phrase searching.

The default value is one.

Some common uses for this are:

- Set it to zero to put multiple terms in the same position. This is useful if, e.g., a word has multiple stems. Searches for phrases including either stem will match. In this case, all but the first stem's increment should be set to zero: the increment of the first instance should be one. Repeating a token with an increment of zero can also be used to boost the scores of matches on that token.
- Set it to values greater than one to inhibit exact phrase matches. If, for example, one does not want phrases to match across removed stop words, then one could build a stop word filter that removes stop words and also sets the increment to the number of stop words removed before each non-stop word. Then exact phrase queries will only match when the terms occur with no intervening stop words.

See Also:
  - `PostingsEnum`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `getPositionIncrement()`
  Returns the position increment of this Token.
  `void`
  `setPositionIncrement(int positionIncrement)`
  Set the position increment.

- ## Method Details

  - ### setPositionIncrement

    void setPositionIncrement(int positionIncrement)
    Set the position increment. The default value is one.
    Parameters:
      `positionIncrement` - the distance from the prior term
    Throws:
      `IllegalArgumentException` - if `positionIncrement` is negative.
    See Also:
      - `getPositionIncrement()`

  - ### getPositionIncrement

    int getPositionIncrement()
    Returns the position increment of this Token.
    See Also:
      - `setPositionIncrement(int)`