Skip to content

REST API

AnalyzerDefinition

Specifies how the text of a usage is analyzed, with exactly one of preset, custom, or named. An analyzer chain describes the indexing process. The engine derives the query analyzer from the indexing chain. Components that select words by locale, such as stopwords and stemming, use the locale of the value being analyzed unless you specify a locale. See Analysis.

Example

{
"preset": "full_text"
}

Properties

presetPreset
A preset specifies a predefined analyzer chain. The engine expands the preset before storing the index definition.
Values
"preserve_terms", "full_text"
customCustom
A custom analyzer chain that defines character filters, a tokenizer, and token filters.
Example
{
"charFilters": [
{
"htmlStrip": {}
}
],
"tokenizer": {
"icu": {}
},
"filters": [
{
"normalize": {}
},
{
"stemming": {
"locale": "sv"
}
}
]
}
3 properties
charFiltersCharFilter[]
An array of character filters applied to the raw text before tokenization, in order.
Example
{
"htmlStrip": {}
}
3 properties
htmlStripHtmlStrip
Strips HTML and XML markup and keeps text between tags.
Example
{}
mappingMappingCharFilter
Replaces occurrences of each key with its value.
Example
{
"mappings": {
"&": " and "
}
}
1 property
mappingsmap of stringrequired
Replaces occurrences of each key with its value.
1 property
<key>string
patternReplacePatternReplace
Replaces substrings that match a regular expression.
Example
{
"pattern": "\\s+",
"replacement": " "
}
2 properties
patternstringrequired
The regular expression to match.
replacementstringrequired
What each match is replaced with.
tokenizerTokenizer
The tokenizer that splits text into tokens. If omitted, the engine chooses a tokenizer based on the locale of the value (Unicode segmentation for most locales; language-specific segmentation for Chinese, Japanese, and Korean).
Example
{
"icu": {}
}
4 properties
icuIcuTokenizer
Segments text based on Unicode rules. This is the default tokenizer.
Example
{}
whitespaceWhitespaceTokenizer
Splits text on whitespace characters.
Example
{}
keywordKeywordTokenizer
Retains the entire input value as a single token.
Example
{}
letterLetterTokenizer
Splits text on non-letter characters.
Example
{}
filtersTokenFilter[]
An array of token filters applied to tokens, in order.
Example
{
"normalize": {}
}
8 properties
normalizeNormalize
Applies Unicode normalization and case folding to make analysis case-insensitive.
Example
{
"caseFolding": true
}
1 property
caseFoldingboolean
Whether case folding is applied.
Default
true
stopwordsStopwordsFilter
Removes frequent words.
Example
{
"locale": "sv"
}
3 properties
localestring
BCP-47 locale whose stopwords to remove.
Example
"sv"
wordsstring[]
A list of words to remove.
namedstring
Name of a stopword list defined under the index's resources.
Example
"brands"
stemmingStemming
Reduces words to a shared root.
Example
{
"locale": "sv"
}
1 property
localestring
BCP-47 locale whose rules to stem by. If omitted, uses the stemmer for the locale of the value being analyzed.
Example
"sv"
asciiFoldingAsciiFolding
Converts non-ASCII characters to ASCII equivalents.
Example
{
"preserveOriginal": true
}
1 property
preserveOriginalboolean
Whether to preserve the original non-ASCII token alongside the folded one.
Default
false
edgeNgramEdgeNgram
Generates prefix n-grams for tokens within the specified character lengths.
Example
{
"minGram": 1,
"maxGram": 20
}
2 properties
minGraminteger
The shortest prefix to index.
Default
1
Format
int32
maxGraminteger
The longest prefix to index.
Default
20
Format
int32
ngramNgram
Generates substring n-grams for tokens within the specified character lengths.
Example
{
"minGram": 3,
"maxGram": 5
}
2 properties
minGraminteger
The shortest substring to index.
Format
int32
maxGraminteger
The longest substring to index.
Format
int32
synonymsSynonymsFilter
Expands tokens with synonyms from a synonym set defined in resources. Applied when a value is indexed, not when the text of a search is analyzed.
Example
{
"named": "cars"
}
1 property
namedstringrequired
Name of a synonym set defined under the index's resources.
Example
"cars"
decompoundDecompoundFilter
Splits compound words into parts and retains the original compound word. See Compound words. Applied at index time.
Example
{
"locale": "sv"
}
1 property
localestring
BCP-47 locale whose rules and dictionary split the words. Omitted, the locale of the value being analyzed is used; a value in a locale the engine has no decompounding data for passes through unsplit.
Example
"sv"
namedstring
A named chain references an analyzer defined under resources in the index definition. Used to share analyzer configurations across fields. Validation fails if the specified name does not exist under resources.
Example
"prose"

Endpoints

Endpoints where the request or responses uses this type.

Exofind is built by Level Four AB and is available under the Apache License 2.0.