$k. ElasticsearchQuery

new ElasticsearchQuery()

Represents an elasticsearch query

Extends

Methods

addAggregation(aggregationIdentifier, type, aggregationDefinition) → {object}

Adds an aggregation to the elastic query.

Parameters:
NameTypeDescription
aggregationIdentifierstring
typestring
aggregationDefinitionobject
Since
  • 5.4.0
Returns:
Type: 
object

aggregation(aggregationIdentifier) → {object}

Returns the aggregation with the given name

Parameters:
NameTypeDescription
aggregationIdentifierstring
Since
  • 5.4.0
Returns:
Type: 
object

definedParameters() → {Array.<$k.QueryParameter>}

Returns the parameters of the query

Returns:
Type: 
Array.<$k.QueryParameter>

explainElements(elements, parametersopt) → {Array.<$k.SemanticElement>}

Returns elements involved in the query

Parameters:
NameTypeAttributesDescription
elementsArray.<$k.SemanticElement>

Elements to explain. Elements that do not match the query are ignored.

parametersobject<optional>
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:
Type: 
Array.<$k.SemanticElement>

facets() → {Array.<string>}

Returns all facet identifiers contained in the query result

Since
  • 5.5.0
Returns:
Type: 
Array.<string>

facetTerms(facetIdentifier) → {Array.<$k.ElasticsearchTerm>}

Returns the corresponding facet terms with doc count

Parameters:
NameTypeDescription
facetIdentifierstring
Since
  • 5.5.0
Returns:
Type: 
Array.<$k.ElasticsearchTerm>

filterElements(elements, parametersopt, searchStringopt) → {Array.<$k.SemanticElement>}

Returns all elements that match the query

Parameters:
NameTypeAttributesDescription
elementsArray.<$k.SemanticElement>
parametersobject<optional>
searchStringstring<optional>
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:
Type: 
Array.<$k.SemanticElement>
Example
var hits = $k.Registry.query("experts").filterElements(persons);

findElements(parametersopt, searchStringopt) → {Array.<$k.SemanticElement>}

Search and return all found semantic elements

Parameters:
NameTypeAttributesDescription
parametersobject<optional>
searchStringstring<optional>
Inherited From
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:
Type: 
Array.<$k.SemanticElement>
Examples
var hits = $k.Registry.query("directSearch").findElements("Test");
var hits = $k.Registry.query("compositeSearch").findElements("Test", { context: "portal" });

findHits(parametersopt, searchStringopt) → {Array.<$k.Hit>}

Search and return all found hits.

Parameters:
NameTypeAttributesDescription
parametersobject<optional>
searchStringstring<optional>
Inherited From
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:
Type: 
Array.<$k.Hit>
Example
var hits = $k.Registry.query("directSearch").findHits("Test*");

findResultSize(parametersopt, searchStringopt) → {number}

Search and return the number of found semantic elements

Parameters:
NameTypeAttributesDescription
parametersobject<optional>
searchStringstring<optional>
Since
  • 5.3.3
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:
Type: 
number

fullExplainElements(elements, parametersopt) → {Array.<$k.SemanticElement>}

Returns all elements involved in the query

Parameters:
NameTypeAttributesDescription
elementsArray.<$k.SemanticElement>

Elements to full explain. Elements that do not match the query are ignored.

parametersobject<optional>
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:
Type: 
Array.<$k.SemanticElement>

name() → {string}

Returns the name

Inherited From
Returns:
Type: 
string

paginate(startIndex, pageSize)

Sets the pagination of the query

Parameters:
NameTypeDescription
startIndexinteger

start index

pageSizeinteger

size of the page

Since
  • 5.4.2

parentFolders() → {Array.<$k.Folder>}

Returns the folders that contain this element

Returns:
Type: 
Array.<$k.Folder>

renderElements(tableConfiguration, keyFilteropt, detailFilteropt) → {Array.<object>}

Search and render found semantic elements using the given table configuration

Parameters:
NameTypeAttributesDescription
tableConfiguration$k.TableConfiguration
keyFilterobject<optional>

Alternative 1 (preferred): a $k.JSONRenderContext Alternative 2 (compatibility only): A filter. See $k.JSONRenderContext.prototype.setFilters().

detailFilterobject<optional>

Only used if the key filter is not a $k.JSONRenderContext. See $k.JSONRenderContext.prototype.setLevelsOfDetail()

Since
  • 4.1.0
Deprecated
  • This function is deprecated and might be removed in future releases
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:

The rendered objects

Type: 
Array.<object>

renderHits(tableConfiguration, keyFilteropt, detailFilteropt) → {Array.<object>}

Search and render found hits using the given table configuration

Parameters:
NameTypeAttributesDescription
tableConfiguration$k.TableConfiguration
keyFilterobject<optional>

Alternative 1 (preferred): a $k.JSONRenderContext Alternative 2 (compatibility only): A filter. See $k.JSONRenderContext.prototype.setFilters().

detailFilterobject<optional>

Only used if the key filter is not a $k.JSONRenderContext. See $k.JSONRenderContext.prototype.setLevelsOfDetail()

Since
  • 4.1.0
Inherited From
Deprecated
  • This function is deprecated and might be removed in future releases
Throws:

When the query could not be solved, e.g. missing parameters

Type
$k.exception.QueryError
Returns:

The rendered objects

Type: 
Array.<object>

resetResult() → {object}

Resets the query result such that the query can be executed again, for example for getting the actual result after fetching the result size.

Since
  • 5.4.0
Returns:
Type: 
object

searchString() → {string}

Returns the search string

Inherited From
Returns:
Type: 
string

setDomain(domains)

Restrict the query results to objects/types of the domains

Parameters:
NameTypeDescription
domains$k.Domain

The domain or internal name of a type

Since
  • 4.1.0
Inherited From

setDomains(domains)

Restrict the query results to objects/types of the domains

Parameters:
NameTypeDescription
domainsArray.<$k.Domain>

The domains or internal names of types

Inherited From

setFacetFilters(facetFiltersArray)

Set the selected facets and terms for the query

Parameters:
NameTypeDescription
facetFiltersArrayarray

Array with selected facets and terms

Since
  • 5.1.3

setFacetTerms(facetId, terms)

Set the facet terms of the query.

Parameters:
NameTypeDescription
facetIdstring

The ID of the facet

terms

The terms to be activated for filtering.

Since
  • 5.5.0
Throws:

When the terms are not suitable for the facet

Type
$k.exception.TypeError

setName(name)

Sets the name of the query

Parameters:
NameTypeDescription
namestring

The name

Version
  • Experimental feature, might be removed at any time
Since
  • 5.3.2
Inherited From

setParameter(parameterId, value)

Set a parameter of the query.

Parameters:
NameTypeDescription
parameterIdstring

The ID of the parameter

value

The value of the parameter. The type (string etc.) depends on the parameter. Arrays of values can be passed, too. The value undefined or null disables the parametrized condition.

Inherited From
Throws:

When the value is not suitable for the parameter

Type
$k.exception.TypeError

setParameters(parameters)

Set the parameters of the query from the properties of the object

Parameters:
NameTypeDescription
parameters

The parameters

Throws:

When a value is not a suitable parameter

Type
$k.exception.TypeError

setSearchString(searchString)

Set the string to search for

Parameters:
NameTypeDescription
searchStringstring