Skip to main content
Version: 2026.0

IndexQuery

Configuration object for defining a search request for the index search. Query configuration is used to search the index and allows to configure general search settings. To perform the search use indexsearch.searchIndex(pIndexQuery). Common settings:

  • setPattern: Specifies the main pattern for the search. If not set, the query's main pattern is treated as a "search all" pattern (*:*).

  • addFilter: Adds an additional filter pattern for the search. A filter pattern is executed on the result set of the main pattern or the result set of a previous filter. It is used to filter the returned results by the given condition. NOTE: The filter must be a pattern for the index search!

  • setStart: A parameter for paging. It defines the start row from which the result is returned. The default is 0, defining for the beginning of the hole result.

  • setRows: This parameter specifies the number of rows (documents) returned from the result, starting from the specified start index.

  • setEntities invalid input: '&' setIndexGroups: Both methods specify the index groups for the search. setEntities allows to specify the index groups over the defining entity. The actual names of the groups a looked up during translation. setIndexGroups allows to specify the searched groups directly without lookup. The search is limited to the index groups defined in the index query. If no index groups are specified, all groups are searched.

  • setDisablePatternExtension: Specifies if the patternExtensions of the searched index groups should be added to this request.

  • setDefaultOperator: Specified the default operator used for the main pattern. Possible values are OR (indexsearch.OPERATOR_OR) and AND (indexsearch.OPERATOR_AND). The default is OR. NOTE: This only effects the main pattern. filter patterns always use OR as the default operator. The patterns generated with an IndexPatternConfiguration work best with the default operator OR

Example code:

Methods

addBoostPattern

addBoostPattern(pBoostPattern): IndexQuery

Adds a boost pattern through which the weighting of the results for ranking can be influenced. NOTE: The boost pattern must be a pattern for the index search!

Parameters

pBoostPattern
string | number | boolean

the boost pattern

Returns

IndexQuery

IndexQuery


addEntities

addEntities(pEntities): IndexQuery

Adds index groups to the search by their defining entity. Entities previously defined are not deleted. The actual index groups are looked up for each defined entity during the searchIndex call. The entity must contain an active IndexRecordContainer. Search will fail if an index group cannot be found for any of the specified entities. The search is limited to the index groups defined in the index query. If no index groups are specified, all groups are searched.

Parameters

pEntities
string[]

The names of the entities containing the actual index groups.

Returns

IndexQuery

IndexQuery


addExcludedTags

addExcludedTags(pIncludedTags): IndexQuery

Adds global tags which must not be contained in the elements of the result (hits).

Excluded tags always use the AND operator for filtering.

Parameters

pIncludedTags
string[]

Returns

IndexQuery

indexQuery


addExtension

addExtension(pQueryExtension): IndexQuery

Adds the extension to the IndexQuery. The exact way the IndexQuery is extended depends on the extension type.

Parameters

pQueryExtension
IIndexQueryExtension

the extension

Returns

IndexQuery

indexQuery


addFilter

addFilter(pFilter): IndexQuery

Adds an additional filter pattern to the search. A filter pattern is executed on the result set of the main pattern or the result set of a previous filter. It is used to filter the returned results by the given condition. NOTE: The filter must be a pattern for the index search!

Parameters

pFilter
string | number | boolean

the Filter

Returns

IndexQuery

IndexQuery


addIncludedTags

addIncludedTags(pIncludedTags): IndexQuery

Adds global tags which must be contained in the elements of the result (hits).

How the tags are filtered depends on the selected operator. Default is AND.

Parameters

pIncludedTags
string[]

Returns

IndexQuery

indexQuery


addIndexGroups

addIndexGroups(pGroups): IndexQuery

Adds index groups to the search by name. Groups previously defined are not deleted. The search is limited to the index groups defined in the index query. If no index groups are specified, all groups are searched.

Parameters

pGroups
string[]

The names of the index groups.

Returns

IndexQuery

IndexQuery


addResultFields

addResultFields(pResultFields): IndexQuery

Adds and defines the index fields contained in the result documents based on the specified entity fields. Entity fields previously defined are not overwritten. The result fields parameter limits the information included in an index search result to a specified list of fields. The names of the entity fields must start with the defining entity, e.g. person_entity.FIRSTNAME. You can specify whether the index field defined for value or displayValue should be used, e.g. person_entity.FIRSTNAME.displayValue. If not specified, the index field defined for value is returned. The index fields are looked up when calling searchIndex. The search fails if an index field cannot be determined for an entity field. To use an index field as a result field, the stored property in the corresponding IndexRecordField must be set to true. If no result fields are specified, all possible fields are returned.

Parameters

pResultFields
string[]

The names of the entity fields.

Returns

IndexQuery

IndexQuery


addResultIndexFields

addResultIndexFields(pResultFields): IndexQuery

Adds and defines the index fields contained in the result documents. Index fields previously defined are not overwritten. The result fields parameter limits the information included in an index search result to a specified list of fields. To use an index field as a result field, the stored property in the corresponding IndexRecordField must be set to true. If no result fields are specified, all possible fields are returned.

Parameters

pResultFields
string[]

The index fields contained in the result documents.

Returns

IndexQuery

IndexQuery


addSearchFields

addSearchFields(pFields): IndexQuery

Adds and defines entity fields whose corresponding index field is to be searched. Entity fields previously defined are not overwritten. The names of the entity fields must start with the defining entity, e.g. person_entity.FIRSTNAME. You can specify whether the index field defined for value or displayValue should be used, e.g. person_entity.FIRSTNAME.displayValue. If not specified, the index field defined for value is returned. The index fields are looked up when calling searchIndex. The search fails if an index field cannot be determined for an entity field. To use an index field as a search field, the indexed property in the corresponding IndexRecordField must be set to true. If no search fields are specified, all fields are searched.

Parameters

pFields
string[]

the names of the entity fields to be searched.

Returns

IndexQuery

IndexQuery


addSearchIndexFields

addSearchIndexFields(pFields): IndexQuery

Adds and defines index fields to be searched. Index fields previously defined are not overwritten. To use an index field as a search field, the indexed property in the corresponding IndexRecordField must be set to true. If no search fields are specified, all fields are searched.

Parameters

pFields
string[]

the names of the index fields to be searched.

Returns

IndexQuery

IndexQuery


addSubGroupsByEntity

addSubGroupsByEntity(pEntity, pSubGroups): IndexQuery

Adds the subgroups of the given entity's index group to the search. The search for the given entity's index group is limited to the subgroups defined in the index query. If the entity's index group of the specified subgroups is excluded from search, all defined subgroups of that index group are ignored.

Parameters

pEntity
string | number | boolean

The names of the entity.

pSubGroups
string[]

The subgroups used to filter results for the given entity's index group.

Returns

IndexQuery

IndexQuery


addSubGroupsByIndexGroup

addSubGroupsByIndexGroup(pIndexGroup, pSubGroups): IndexQuery

Adds the subgroups of the given index group to the search. The search for the given index group is limited to the subgroups defined in the index query. If the index group of the specified subgroups is excluded from search, all defined subgroups of that index group are ignored.

Parameters

pIndexGroup
string | number | boolean

The names of the index group.

pSubGroups
string[]

The subgroups used to filter results for the given index group.

Returns

IndexQuery

IndexQuery


getAutomaticEscapeExcludedSigns

getAutomaticEscapeExcludedSigns(): string

Returns the syntax characters as a string that are excluded by the auto escape feature. If not set, null is returned and all syntax characters are escaped. Syntax Characters: + - invalid input: '&' | ! ( ) { } [ ] ^ " ~ * ? : / Example which uses the auto escape feature and preserves the wildcards defined in the pattern.

Returns

string

the specified excluded syntax characters as a string, or null.

Example

import("system.indexsearch");

var indexQuery = indexsearch.createIndexQuery();

// This example defines a pattern containing some invalid syntax characters.
// Auto escaping is enabled in order to escape the invalid characters before search.
// The wildcards in the pattern should be preserved so they are excluded from the auto escape.

indexQuery.setPattern("f?o - *bar!") // Defines the invalid pattern.
.setAutomaticEscape(true) // Enables auto escaping.
.setAutomaticEscapeExcludedSigns("*?"); // Excludes the wildcard characters.

// This results in the pattern 'f?o \- *bar\!'
var res = indexsearch.searchIndex(indexQuery)

getBoostPatterns

getBoostPatterns(): string[]

Returns all boost patterns that are used to rank the results of the main pattern. An empty array is returned if no boost pattern was specified.

Returns

string[]

The defined filter patterns for the search.


getDefaultOperator

getDefaultOperator(): string

The defined default operator used for the main pattern. Possible values are OR (indexsearch.OPERATOR_OR) and AND (indexsearch.OPERATOR_AND). If not set, null is returned and the implicit default operator OR is used.

Returns

string

the specified default operator or null if not set.


getEntities

getEntities(): string[]

Returns a list of the specified entities that define the index groups to be searched. If no entities are specified an empty array is returned.

Returns

string[]

The names of the entities that define the index groups to be searched.


getExcludedTags

getExcludedTags(): string[]

Returns an array of all global tags which must not be contained in the elements of the result (hits).

Excluded tags always use the AND operator for filtering.

Returns

string[]

an array of all tags that are excluded from the search.


getExtensions

getExtensions(): IIndexQueryExtension[]

Returns all current extensions which have been added to this IndexQuery.

Returns

IIndexQueryExtension[]

the current extensions of this IndexQuery.


getFilters

getFilters(): string[]

Returns all filter patterns that are used to filter the result of the main pattern. An empty array is returned if no filter was specified.

Returns

string[]

The defined filter patterns for the search.


getIncludedTags

getIncludedTags(): string[]

Returns an array of all global tags which must be contained in the elements of the result (hits).

How the tags are filtered depends on the selected operator. Default is AND.

Returns

string[]

an array of all tags that are included in the search.


getIncludedTagsOperator

getIncludedTagsOperator(): string

Returns the operator used for filtering the global tags included in the search. Default is AND.

NOTE: This method always returns NULL if the operator is not explicitly set. Internally, the default is still used in this case.

Returns

string

the current explicitly defined operator for included global tags, NULL otherwise.


getIndexGroups

getIndexGroups(): string[]

Returns a list of the specified index groups to be searched. If no groups are specified an empty array is returned. NOTE: The list does not contain the groups that were specified via the corresponding entities.

Returns

string[]

The identifiers of the index groups to be searched.


getLocale

getLocale(): string

Flag that specifies the locale that is to be used for search queries.

Returns

string

the locale or null

Throws

AditoIllegalArgumentException


getPattern

getPattern(): string

Returns

string

The main pattern for the search. null if none was specified.


getResultFields

getResultFields(): string[]

Returns the entity fields specified as result fields. An empty array is returned if no entity fields were specified. The result fields parameter limits the information included in an index search result to a specified list of fields. If no result fields are specified, all possible fields are included in the result.

Returns

string[]

The names of the entity fields specified as result fields.


getResultIndexFields

getResultIndexFields(): string[]

Returns the index fields specified as result fields. An empty array is returned if no entity fields were specified. The result fields parameter limits the information included in an index search result to a specified list of fields. If no result fields are specified, all possible fields are included in the result.

Returns

string[]

The names of the index fields specified as result fields.


getRows

getRows(): number

Returns

number

The maximum number of documents returned by the result, null if not specified.


getSearchFields

getSearchFields(): string[]

Returns a list of entity fields whose corresponding index fields are searched. If no search fields are specified, all fields are searched. An empty array is returned if no entity fields were specified.

Returns

string[]

The names of the entity fields to be searched.


getSearchIndexFields

getSearchIndexFields(): string[]

Returns the list of index fields to be searched. If no search fields are specified, all fields are searched. An empty array is returned if no search fields were specified.

Returns

string[]

A List of the specified index fields to be searched.


getStart

getStart(): number

Returns

number

The start offset for the result set. null if not specified.


getSubGroupsByEntity

getSubGroupsByEntity(pEntity): string[]

Returns a list of the specified subgroups used to filter results for the given entity's index group. If no subgroups are specified for the entity an empty array is returned. NOTE: The list does not contain the subgroups that were specified via the corresponding index group.

Parameters

pEntity
string | number | boolean

The name of the entity whose index group the subgroups belong to.

Returns

string[]

all specified subgroups of the given entity's index group, which are filtered during the search.


getSubGroupsByIndexGroup

getSubGroupsByIndexGroup(pIndexGroup): string[]

Returns a list of the specified subgroups used to filter results for the given index group. If no subgroups are specified for the index group an empty array is returned. NOTE: The list does not contain the subgroups that were specified via the corresponding entity.

Parameters

pIndexGroup
string | number | boolean

The name of the index groups to which the subgroups belong.

Returns

string[]

all specified subgroups of the given index group, which are filtered during the search.


getTagResultLimit

getTagResultLimit(): number

Returns the maximum number of returned tags for the overall result for global tags (result.TAGS). Default is NULL, or no restriction.

Results for tags are always returned according to the total occurrence in the result of the search. A restriction to e.g. 10 tags thus returns the 10 most frequent tags in the search result.

Returns

number

the defined limit of tags contained in the result, or NULL if no limit is set.


isApplyKeywordBoost

isApplyKeywordBoost(): boolean

Flag that specifies if the automatic boost for index fields with the isKeyword property should be used. If not set, null is returned and the implicit default true is used, so the keyword boost is applied.

Returns

boolean

The specified flag value, or null if not set.


isApplyLeadingWildcards

isApplyLeadingWildcards(): boolean

Flag, which adds a leading wildcard * to all terms of the main pattern before the search. If set to true, leading wildcards are added. E.g. 'foo bar' is converted to '*foo *bar'. If not set, null is returned and the implicit default false is used, so no wildcards are added. NOTE: It is best not to use this feature when using a pattern generated with an IndexPatternConfig or FilterJson as it modifies the pattern previously generated, which can result in an incorrect or broken pattern.

Returns

boolean

The specified flag value, or null if not set.


isApplyTrailingWildcards

isApplyTrailingWildcards(): boolean

Flag, which adds a trailing wildcard * to all terms of the main pattern before the search. If set to true, trailing wildcards are added. E.g. 'foo bar' is converted to 'foo* bar*'. If not set, null is returned and the implicit default false is used, so no wildcards are added. NOTE: It is best not to use this feature when using a pattern generated with an IndexPatternConfig or FilterJson as it modifies the pattern previously generated, which can result in an incorrect or broken pattern.

Returns

boolean

The specified flag value, or null if not set.


isAutomaticEscape

isAutomaticEscape(): boolean

Flag, which enables a pre-parser that tries to remove all syntax characters from the main pattern that can cause the search to fail. The pre-parser tries to preserve the pattern's original syntax. Syntax Characters: + - invalid input: '&' | ! ( ) { } [ ] ^ " ~ * ? : / If set to true, auto escaping is enabled. If not set, null is returned and the implicit default false is used, so no auto escaping is applied. E.g. the pattern '-foo + bar: OR field:foo-bar' results in the escaped pattern '-foo \+ bar\: OR field:foo\-bar'. NOTE: It is best not to use this feature when using a pattern generated with an IndexPatternConfig or FilterJson as it modifies the pattern previously generated, which can result in an incorrect or broken pattern.

Returns

boolean

The specified flag value, or null if not set.


isDisablePatternExtension

isDisablePatternExtension(): boolean

Flag that specifies that the filter patterns of the patternExtensions of the searched index groups should be applied to this search request. If set to true, the patternExtensions are ignored. If not set, null is returned and the implicit default false is used, so the pattenExtensions are applied. The pattern extensions are defined in the corresponding IndexRecordContainer of each index group. When using the legacy configuration the global process indexsearch_patternextension is used.

Returns

boolean

The specified flag value, or null if not set.


isEnableIndexGroupResult

isEnableIndexGroupResult(): boolean

Flag that specifies if the IndexGroupResult should be calculated for this search request. The IndexGroupResult contains a number of hits per index group. If not set, null is returned and the implicit default true is used, so the IndexGroupResult is calculated.

Returns

boolean

The specified flag value, or null if not set.


isSplitOnWhitespaces

isSplitOnWhitespaces(): boolean

Flag that specifies if text analysis is invoked separately for each individual whitespace-separated term. The default is true. If set to false whitespace-separated term sequences will be provided to text analysis in one shot, enabling proper function of analysis filters that operate over term sequences, e.g., multi-word synonyms and shingles. If not set, null is returned and the implicit default true is used, so the terms are invoked separately. NOTE In most cases, deactivation is only helpful when searching in a single index field, since all search terms must be contained in at least one of the index fields searched in order to count as hit.

Returns

boolean

The specified flag value, or null if not set.


isTagResultEnabled

isTagResultEnabled(): boolean

Flag which specifies whether a result for entire global tags of the search should be included in the result.

This is then included in the result under the name 'TAGS'. Default is false.

Returns

boolean

true if the tag result should be included.


setApplyKeywordBoost

setApplyKeywordBoost(pApplyKeywordBoost): IndexQuery

Specifies whether automatic boost for index fields with the isKeyword property should be used. The default is true.

Parameters

pApplyKeywordBoost
boolean

true to enable the keyword boost. false to disable the boost.

Returns

IndexQuery

indexQuery


setApplyLeadingWildcards

setApplyLeadingWildcards(pApplyLeadingWildcards): IndexQuery

If set to true, a leading wildcard * is added to all terms of the main pattern before the search. E.g. 'foo bar' is converted to '*foo *bar'. The default is false, so no wildcards are added. NOTE: It is best not to use this feature when using a pattern generated with an IndexPatternConfig or FilterJson as it modifies the pattern previously generated, which can result in an incorrect or broken pattern.

Parameters

pApplyLeadingWildcards
boolean

true if leading wildcards should be applied to the main pattern.

Returns

IndexQuery

indexQuery


setApplyTrailingWildcards

setApplyTrailingWildcards(pApplyTrailingWildcards): IndexQuery

If set to true, a trailing wildcard * is added to all terms of the main pattern before the search. E.g. 'foo bar' is converted to 'foo* bar*'. The default is false, so no wildcards are added. NOTE: It is best not to use this feature when using a pattern generated with an IndexPatternConfig or FilterJson as it modifies the pattern previously generated, which can result in an incorrect or broken pattern.

Parameters

pApplyTrailingWildcards
boolean

true if trailing wildcards should be applied to the main pattern.

Returns

IndexQuery

indexQuery


setAutomaticEscape

setAutomaticEscape(pAutomaticEscape): IndexQuery

If true, a pre-parser tries to remove all syntax characters from the main pattern that can cause the search to fail. The pre-parser tries to preserve the pattern's original syntax. Default is false. Syntax Characters: + - invalid input: '&' | ! ( ) { } [ ] ^ " ~ * ? : / E.g. the pattern '-foo + bar: OR field:foo-bar' results in the escaped pattern '-foo \+ bar\: OR field:foo\-bar'. NOTE: It is best not to use this feature when using a pattern generated with an IndexPatternConfig or FilterJson as it modifies the pattern previously generated, which can result in an incorrect or broken pattern.

Parameters

pAutomaticEscape
boolean

true if the pattern should be escaped before search.

Returns

IndexQuery

indexQuery


setAutomaticEscapeExcludedSigns

setAutomaticEscapeExcludedSigns(pAutomaticEscapesExcludedSigns): IndexQuery

Specifies the syntax characters as a string that are excluded by the auto escape feature. If not specified all syntax characters are escaped. Syntax Characters: + - invalid input: '&' | ! ( ) { } [ ] ^ " ~ * ? : / Example which uses the auto escape feature and preserves the wildcards defined in the pattern.

Parameters

pAutomaticEscapesExcludedSigns
string | number | boolean

A single string containing the excluded syntax characters.

Returns

IndexQuery

indexQuery

Example

import("system.indexsearch");

var indexQuery = indexsearch.createIndexQuery();

// This example defines a pattern containing some invalid syntax characters.
// Auto escaping is enabled in order to escape the invalid characters before search.
// The wildcards in the pattern should be preserved so they are excluded from the auto escape.

indexQuery.setPattern("f?o - *bar!") // Defines the invalid pattern.
.setAutomaticEscape(true) // Enables auto escaping.
.setAutomaticEscapeExcludedSigns("*?"); // Excludes the wildcard characters.

// This results in the pattern 'f?o \- *bar\!'
var res = indexsearch.searchIndex(indexQuery)

setDefaultOperator

setDefaultOperator(pDefaultOperator): IndexQuery

Sets the default operator used by the main pattern. Possible values are OR (indexsearch.OPERATOR_OR) and AND (indexsearch.OPERATOR_AND). The default is OR. The standard operator specifies how the search terms of a pattern are handled by the parser if no explicit operator has been specified for them.

  • OR: The pattern 'foo bar' is treated as 'foo OR bar'.

  • AND: The pattern 'foo bar' is treated as 'foo AND bar'.

NOTE: This only effects the main pattern. filter patterns always use OR as the default operator. The patterns generated with an IndexPatternConfiguration work best with the default operator OR

Parameters

pDefaultOperator
string | number | boolean

The default operator for the main pattern.

Returns

IndexQuery

indexQuery


setDisablePatternExtension

setDisablePatternExtension(pDisablePatternExtension): IndexQuery

Specifies whether the filter patterns of the patternExtensions of the searched index groups should be applied to this search request. Default is false, so the pattenExtensions are applied. The pattern extensions are defined in the corresponding IndexRecordContainer of each index group. When using the legacy configuration the global process indexsearch_patternextension is used.

Parameters

pDisablePatternExtension
boolean

true if the patten extension(s) are ignored.

Returns

IndexQuery

indexQuery


setEnableIndexGroupResult

setEnableIndexGroupResult(pEnableIndexGroupResult): IndexQuery

Specifies if the IndexGroupResult should be calculated for this search request. The default is true The IndexGroupResult contains a number of hits per index group.

Parameters

pEnableIndexGroupResult
boolean

true if the IndexGroupResult should be calculated.

Returns

IndexQuery

indexQuery


setEntities

setEntities(pEntities): IndexQuery

Sets the index groups to the search by their defining entity. Entities previously defined are overwritten. The actual index groups are looked up for each defined entity during the searchIndex call. The entity must contain an active IndexRecordContainer. Search will fail if an index group cannot be found for any of the specified entities. The search is limited to the index groups defined in the index query. If no index groups are specified, all groups are searched.

Parameters

pEntities
string[]

The names of the entities containing the actual index groups.

Returns

IndexQuery

IndexQuery


setExcludedTags

setExcludedTags(pExcludedTags): IndexQuery

Sets all global tags which must not be contained in the elements of the result (hits).

Excluded tags always use the AND operator for filtering.

NOTE: All previous defined values are overridden.

Parameters

pExcludedTags
string[]

Returns

IndexQuery

indexQuery


setIncludedTags

setIncludedTags(pIncludedTags): IndexQuery

Sets global tags which must be contained in the elements of the result (hits).

How the tags are filtered depends on the selected operator. Default is AND.

NOTE: All previous defined values are overridden.

Parameters

pIncludedTags
string[]

Returns

IndexQuery

indexQuery


setIncludedTagsOperator

setIncludedTagsOperator(pIncludedTagsOperator): IndexQuery

Sets the operator used for filtering the global tags included in the search. Default is AND.

NOTE: Valid values are 'OR' (indexsearch.OPERATOR_OR) or 'AND' (indexsearch.OPERATOR_AND). All other values are ignored.

Parameters

pIncludedTagsOperator
string | number | boolean

the operator as string.

Returns

IndexQuery

indexQuery


setIndexGroups

setIndexGroups(pGroups): IndexQuery

Sets the index groups to the search by name. Groups previously defined are overwritten. The search is limited to the index groups defined in the index query. If no index groups are specified, all groups are searched.

Parameters

pGroups
string[]

The names of the index groups.

Returns

IndexQuery

IndexQuery


setLanguageSearchMode

setLanguageSearchMode(pName): IndexQuery

Specifies which locales the index search uses.

Parameters

pName
string | number | boolean

the mode or null

Returns

IndexQuery

indexQuery

Throws

AditoIllegalArgumentException


setLocale

setLocale(pLocale): IndexQuery

Flag that specifies the locale that is to be used for search queries.

Parameters

pLocale
string | number | boolean

the locale or null

Returns

IndexQuery

indexQuery

Throws

AditoIllegalArgumentException


setPattern

setPattern(pPattern): IndexQuery

Sets the main pattern for the search. If not set, the query's main pattern is treated as a "search all" pattern (*:*). Example: indexsearch.createIndexQuery().setPattern("foo* AND bar*")

Parameters

pPattern
string | number | boolean

the search pattern as string.

Returns

IndexQuery

IndexQuery


setResultFields

setResultFields(pResultFields): IndexQuery

Sets and defines the index fields contained in the result documents based on the specified entity fields. Entity fields previously defined are overwritten. The result fields parameter limits the information included in an index search result to a specified list of fields. The names of the entity fields must start with the defining entity, e.g. person_entity.FIRSTNAME. You can specify whether the index field defined for value or displayValue should be used, e.g. person_entity.FIRSTNAME.displayValue. If not specified, the index field defined for value is returned. The index fields are looked up when calling searchIndex. The search fails if an index field cannot be determined for an entity field. To use an index field as a result field, the stored property in the corresponding IndexRecordField must be set to true. If no result fields are specified, all possible fields are returned.

Parameters

pResultFields
string[]

The names of the entity fields.

Returns

IndexQuery

IndexQuery


setResultIndexFields

setResultIndexFields(pResultFields): IndexQuery

Sets and defines the index fields contained in the result documents. Index fields previously defined are overwritten. The result fields parameter limits the information included in an index search result to a specified list of fields. To use an index field as a result field, the stored property in the corresponding IndexRecordField must be set to true. If no result fields are specified, all possible fields are returned.

Parameters

pResultFields
string[]

The index fields contained in the result documents.

Returns

IndexQuery

IndexQuery


setRows

setRows(pRows): IndexQuery

The rows parameter specifies the maximum number of documents to be returned from the complete result set. This parameter can be used to paginate results from a query. The default value is defined in the project preferences over the property indexsearchDefaultResultCount.

Parameters

pRows
number

The maximum number of documents to be returned

Returns

IndexQuery

IndexQuery


setSearchFields

setSearchFields(pFields): IndexQuery

Sets and defines the entity fields whose corresponding index field is to be searched. Entity fields previously defined are overwritten. The names of the entity fields must start with the defining entity, e.g. person_entity.FIRSTNAME. You can specify whether the index field defined for value or displayValue should be used, e.g. person_entity.FIRSTNAME.displayValue. If not specified, the index field defined for value is returned. The index fields are looked up when calling searchIndex. The search fails if an index field cannot be determined for an entity field. To use an index field as a search field, the indexed property in the corresponding IndexRecordField must be set to true. If no search fields are specified, all fields are searched.

Parameters

pFields
string[]

the names of the entity fields to be searched.

Returns

IndexQuery

IndexQuery


setSearchIndexFields

setSearchIndexFields(pFields): IndexQuery

Sets and defines index fields to be searched. Index fields previously defined are overwritten. To use an index field as a search field, the indexed property in the corresponding IndexRecordField must be set to true. If no search fields are specified, all fields are searched.

Parameters

pFields
string[]

the names of the index fields to be searched.

Returns

IndexQuery

IndexQuery


setSplitOnWhitespaces

setSplitOnWhitespaces(pSplitOnWhitespaces): IndexQuery

Split on whitespace. If set to true, text analysis is invoked separately for each individual whitespace-separated term. The default is true. If set to false whitespace-separated term sequences will be provided to text analysis in one shot, enabling proper function of analysis filters that operate over term sequences, e.g., multi-word synonyms and shingles. NOTE In most cases, deactivation is only helpful when searching in a single index field, since all search terms must be contained in at least one of the index fields searched in order to count as hit.

Parameters

pSplitOnWhitespaces
boolean

true to enable and false to disable the split on whitespace option.

Returns

IndexQuery

indexQuery


setStart

setStart(pStart): IndexQuery

When specified, the start parameter specifies a start offset for the result set and instructs the index search to begin displaying results from this offset. The default value is 0. In other words, by default, The index search returns results without an offset, beginning where the results themselves begin. Setting the start parameter to some other number, such as 3, causes the index search to skip over the preceding rows and start at the document identified by the offset. This parameter can be used to support paging.

Parameters

pStart
number

The start offset.

Returns

IndexQuery

IndexQuery


setSubGroupsByEntity

setSubGroupsByEntity(pEntity, pSubGroups): IndexQuery

Sets the subgroups of the given entity's index group to the search. Subgroups previously defined for the given entity are overwritten. The search for the given entity's index group is limited to the subgroups defined in the index query. If the entity's index group of the specified subgroups is excluded from search, all defined subgroups of that index group are ignored.

Parameters

pEntity
string | number | boolean

The names of the entity.

pSubGroups
string[]

The subgroups used to filter results for the given entity's index group.

Returns

IndexQuery

IndexQuery


setSubGroupsByIndexGroup

setSubGroupsByIndexGroup(pIndexGroup, pSubGroups): IndexQuery

Sets the subgroups of the given index group to the search. Subgroups previously defined for the given index group are overwritten. The search for the given index group is limited to the subgroups defined in the index query. If the index group of the specified subgroups is excluded from search, all defined subgroups of that index group are ignored.

Parameters

pIndexGroup
string | number | boolean

The names of the index group.

pSubGroups
string[]

The subgroups used to filter results for the given index group.

Returns

IndexQuery

IndexQuery


setTagResultEnabled

setTagResultEnabled(pTagResultEnabled): IndexQuery

Specifies whether a result for the entire global tags of the search should be included in the result. This is then included in the result under the name 'TAGS'.

Parameters

pTagResultEnabled
boolean

true to include the tag result.

Returns

IndexQuery

indexQuery


setTagResultLimit

setTagResultLimit(pTagLimit): IndexQuery

Sets the limit for the maximum number of returned global tags contained in the overall result for global tags (result.TAGS) in the search. Default is NULL, or no restriction.

Results for tags are always returned according to the total occurrence in the result of the search. A restriction to e.g. 10 tags thus returns the 10 most frequent tags in the search result.

Parameters

pTagLimit
number

the specified limit, or NULL for no limitation.

Returns

IndexQuery

indexQuery


setUseRankedSearch

setUseRankedSearch(pUseRankedSearch): IndexQuery

Flag that specifies if the ranked search mechanism of the global user search should be used. the default is false.

Parameters

pUseRankedSearch
boolean

true to enable the ranked search option. false to disable the option.

Returns

IndexQuery

indexQuery

Example

<code>var query = indexsearch.createIndexQuery();  // creates a new configuration

query.setPattern("Lisa Sommer") // sets the search pattern.
.addEntities(["Person_entity"]) // specifies the searched entity (must contain an indexRecordContainer)
.setRows(10) // sets the max number of results being returned by the index
.setApplyTrailingWildcards(true); // appends '*' to all words in the pattern.

var res = indexsearch.searchIndex(query); // executes the search with the given query.
</code>