--- mapped_pages: - https://www.elastic.co/guide/en/elasticsearch/painless/current/painless-analysis-predicate-context.html products: - id: painless --- # Analysis Predicate Context [painless-analysis-predicate-context] Use a painless script to determine whether or not the current token in an analysis chain matches a predicate. **Variables** `params` (`Map`, read-only) : User-defined parameters passed in as part of the query. `token.term` (`CharSequence`, read-only) : The characters of the current token `token.position` (`int`, read-only) : The position of the current token `token.positionIncrement` (`int`, read-only) : The position increment of the current token `token.positionLength` (`int`, read-only) : The position length of the current token `token.startOffset` (`int`, read-only) : The start offset of the current token `token.endOffset` (`int`, read-only) : The end offset of the current token `token.type` (`String`, read-only) : The type of the current token `token.keyword` (`boolean`, read-only) : Whether or not the current token is marked as a keyword **Return** `boolean` : Whether or not the current token matches the predicate **API** The standard [Painless API](https://www.elastic.co/guide/en/elasticsearch/painless/current/painless-api-reference-shared.html) is available.