2523 lines
172 KiB
C++
2523 lines
172 KiB
C++
/**
|
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
* SPDX-License-Identifier: Apache-2.0.
|
|
*/
|
|
|
|
#pragma once
|
|
#include <aws/cloudsearchdomain/CloudSearchDomain_EXPORTS.h>
|
|
#include <aws/cloudsearchdomain/CloudSearchDomainRequest.h>
|
|
#include <aws/core/utils/memory/stl/AWSString.h>
|
|
#include <aws/cloudsearchdomain/model/QueryParser.h>
|
|
#include <utility>
|
|
|
|
namespace Aws
|
|
{
|
|
namespace Http
|
|
{
|
|
class URI;
|
|
} //namespace Http
|
|
namespace CloudSearchDomain
|
|
{
|
|
namespace Model
|
|
{
|
|
|
|
/**
|
|
* <p>Container for the parameters to the <code>Search</code>
|
|
* request.</p><p><h3>See Also:</h3> <a
|
|
* href="http://docs.aws.amazon.com/goto/WebAPI/cloudsearchdomain-2013-01-01/SearchRequest">AWS
|
|
* API Reference</a></p>
|
|
*/
|
|
class AWS_CLOUDSEARCHDOMAIN_API SearchRequest : public CloudSearchDomainRequest
|
|
{
|
|
public:
|
|
SearchRequest();
|
|
|
|
// Service request name is the Operation name which will send this request out,
|
|
// each operation should has unique request name, so that we can get operation's name from this request.
|
|
// Note: this is not true for response, multiple operations may have the same response name,
|
|
// so we can not get operation's name from response.
|
|
inline virtual const char* GetServiceRequestName() const override { return "Search"; }
|
|
|
|
Aws::String SerializePayload() const override;
|
|
|
|
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
|
|
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline const Aws::String& GetCursor() const{ return m_cursor; }
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline bool CursorHasBeenSet() const { return m_cursorHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetCursor(const Aws::String& value) { m_cursorHasBeenSet = true; m_cursor = value; }
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetCursor(Aws::String&& value) { m_cursorHasBeenSet = true; m_cursor = std::move(value); }
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetCursor(const char* value) { m_cursorHasBeenSet = true; m_cursor.assign(value); }
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithCursor(const Aws::String& value) { SetCursor(value); return *this;}
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithCursor(Aws::String&& value) { SetCursor(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Retrieves a cursor value you can use to page through large result sets. Use
|
|
* the <code>size</code> parameter to control the number of hits to include in each
|
|
* response. You can specify either the <code>cursor</code> or <code>start</code>
|
|
* parameter in a request; they are mutually exclusive. To get the first cursor,
|
|
* set the cursor value to <code>initial</code>. In subsequent requests, specify
|
|
* the cursor value returned in the hits section of the response. </p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithCursor(const char* value) { SetCursor(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline const Aws::String& GetExpr() const{ return m_expr; }
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline bool ExprHasBeenSet() const { return m_exprHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetExpr(const Aws::String& value) { m_exprHasBeenSet = true; m_expr = value; }
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetExpr(Aws::String&& value) { m_exprHasBeenSet = true; m_expr = std::move(value); }
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetExpr(const char* value) { m_exprHasBeenSet = true; m_expr.assign(value); }
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithExpr(const Aws::String& value) { SetExpr(value); return *this;}
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithExpr(Aws::String&& value) { SetExpr(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Defines one or more numeric expressions that can be used to sort results or
|
|
* specify search or filter criteria. You can also specify expressions as return
|
|
* fields. </p> <p>You specify the expressions in JSON using the form
|
|
* <code>{"EXPRESSIONNAME":"EXPRESSION"}</code>. You can define and use multiple
|
|
* expressions in a search request. For example:</p> <p><code>
|
|
* {"expression1":"_score*rating", "expression2":"(1/rank)*year"} </code> </p>
|
|
* <p>For information about the variables, operators, and functions you can use in
|
|
* expressions, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions">Writing
|
|
* Expressions</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithExpr(const char* value) { SetExpr(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline const Aws::String& GetFacet() const{ return m_facet; }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline bool FacetHasBeenSet() const { return m_facetHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline void SetFacet(const Aws::String& value) { m_facetHasBeenSet = true; m_facet = value; }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline void SetFacet(Aws::String&& value) { m_facetHasBeenSet = true; m_facet = std::move(value); }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline void SetFacet(const char* value) { m_facetHasBeenSet = true; m_facet.assign(value); }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithFacet(const Aws::String& value) { SetFacet(value); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithFacet(Aws::String&& value) { SetFacet(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get facet information, and options
|
|
* that control how the facet information is returned. Each specified field must be
|
|
* facet-enabled in the domain configuration. The fields and options are specified
|
|
* in JSON using the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following faceting options:</p> <ul> <li>
|
|
* <p><code>buckets</code> specifies an array of the facet values or ranges to
|
|
* count. Ranges are specified using the same syntax that you use to search for a
|
|
* range of values. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html">
|
|
* Searching for a Range of Values</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>. Buckets are returned in the order they are specified in the request.
|
|
* The <code>sort</code> and <code>size</code> options are not valid if you specify
|
|
* <code>buckets</code>.</p> </li> <li> <p><code>size</code> specifies the maximum
|
|
* number of facets to include in the results. By default, Amazon CloudSearch
|
|
* returns counts for the top 10. The <code>size</code> parameter is only valid
|
|
* when you specify the <code>sort</code> option; it cannot be used in conjunction
|
|
* with <code>buckets</code>.</p> </li> <li> <p><code>sort</code> specifies how you
|
|
* want to sort the facets in the results: <code>bucket</code> or
|
|
* <code>count</code>. Specify <code>bucket</code> to sort alphabetically or
|
|
* numerically by facet value (in ascending order). Specify <code>count</code> to
|
|
* sort by the facet counts computed for each facet value (in descending order). To
|
|
* retrieve facet counts for particular values or ranges of values, use the
|
|
* <code>buckets</code> option instead of <code>sort</code>. </p> </li> </ul> <p>If
|
|
* no facet options are specified, facet counts are computed for all field values,
|
|
* the facets are sorted by facet count, and the top 10 facets are returned in the
|
|
* results.</p> <p>To count particular buckets of values, use the
|
|
* <code>buckets</code> option. For example, the following request uses the
|
|
* <code>buckets</code> option to calculate and return facet counts by decade.</p>
|
|
* <p><code>
|
|
* {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}}
|
|
* </code></p> <p>To sort facets by facet count, use the <code>count</code> option.
|
|
* For example, the following request sets the <code>sort</code> option to
|
|
* <code>count</code> to sort the facet values by facet count, with the facet
|
|
* values that have the most matching documents listed first. Setting the
|
|
* <code>size</code> option to 3 returns only the top three facet values.</p>
|
|
* <p><code> {"year":{"sort":"count","size":3}} </code></p> <p>To sort the facets
|
|
* by value, use the <code>bucket</code> option. For example, the following request
|
|
* sets the <code>sort</code> option to <code>bucket</code> to sort the facet
|
|
* values numerically by year, with earliest year listed first. </p> <p><code>
|
|
* {"year":{"sort":"bucket"}} </code></p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html">Getting
|
|
* and Using Facet Information</a> in the <i>Amazon CloudSearch Developer
|
|
* Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithFacet(const char* value) { SetFacet(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline const Aws::String& GetFilterQuery() const{ return m_filterQuery; }
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline bool FilterQueryHasBeenSet() const { return m_filterQueryHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetFilterQuery(const Aws::String& value) { m_filterQueryHasBeenSet = true; m_filterQuery = value; }
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetFilterQuery(Aws::String&& value) { m_filterQueryHasBeenSet = true; m_filterQuery = std::move(value); }
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetFilterQuery(const char* value) { m_filterQueryHasBeenSet = true; m_filterQuery.assign(value); }
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithFilterQuery(const Aws::String& value) { SetFilterQuery(value); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithFilterQuery(Aws::String&& value) { SetFilterQuery(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies a structured query that filters the results of a search without
|
|
* affecting how the results are scored and sorted. You use
|
|
* <code>filterQuery</code> in conjunction with the <code>query</code> parameter to
|
|
* filter the documents that match the constraints specified in the
|
|
* <code>query</code> parameter. Specifying a filter controls only which matching
|
|
* documents are included in the results, it has no effect on how they are scored
|
|
* and sorted. The <code>filterQuery</code> parameter supports the full structured
|
|
* query syntax. </p> <p>For more information about using filters, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html">Filtering
|
|
* Matching Documents</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithFilterQuery(const char* value) { SetFilterQuery(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline const Aws::String& GetHighlight() const{ return m_highlight; }
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline bool HighlightHasBeenSet() const { return m_highlightHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline void SetHighlight(const Aws::String& value) { m_highlightHasBeenSet = true; m_highlight = value; }
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline void SetHighlight(Aws::String&& value) { m_highlightHasBeenSet = true; m_highlight = std::move(value); }
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline void SetHighlight(const char* value) { m_highlightHasBeenSet = true; m_highlight.assign(value); }
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline SearchRequest& WithHighlight(const Aws::String& value) { SetHighlight(value); return *this;}
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline SearchRequest& WithHighlight(Aws::String&& value) { SetHighlight(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Retrieves highlights for matches in the specified <code>text</code> or
|
|
* <code>text-array</code> fields. Each specified field must be highlight enabled
|
|
* in the domain configuration. The fields and options are specified in JSON using
|
|
* the form
|
|
* <code>{"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}</code>.</p>
|
|
* <p>You can specify the following highlight options:</p> <ul> <li>
|
|
* <code>format</code>: specifies the format of the data in the text field:
|
|
* <code>text</code> or <code>html</code>. When data is returned as HTML, all
|
|
* non-alphanumeric characters are encoded. The default is <code>html</code>. </li>
|
|
* <li> <code>max_phrases</code>: specifies the maximum number of occurrences of
|
|
* the search term(s) you want to highlight. By default, the first occurrence is
|
|
* highlighted. </li> <li> <code>pre_tag</code>: specifies the string to prepend to
|
|
* an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> <li> <code>post_tag</code>: specifies the string to append
|
|
* to an occurrence of a search term. The default for HTML highlights is
|
|
* <code>&lt;/em&gt;</code>. The default for text highlights is
|
|
* <code>*</code>. </li> </ul> <p>If no highlight options are specified for a
|
|
* field, the returned field text is treated as HTML and the first match is
|
|
* highlighted with emphasis tags:
|
|
* <code>&lt;em>search-term&lt;/em&gt;</code>.</p> <p>For example,
|
|
* the following request retrieves highlights for the <code>actors</code> and
|
|
* <code>title</code> fields.</p> <p> <code>{ "actors": {}, "title": {"format":
|
|
* "text","max_phrases": 2,"pre_tag": "<b>","post_tag": "</b>"} }</code></p>
|
|
*/
|
|
inline SearchRequest& WithHighlight(const char* value) { SetHighlight(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Enables partial results to be returned if one or more index partitions are
|
|
* unavailable. When your search index is partitioned across multiple search
|
|
* instances, by default Amazon CloudSearch only returns results if every partition
|
|
* can be queried. This means that the failure of a single search instance can
|
|
* result in 5xx (internal server) errors. When you enable partial results, Amazon
|
|
* CloudSearch returns whatever results are available and includes the percentage
|
|
* of documents searched in the search results (percent-searched). This enables you
|
|
* to more gracefully degrade your users' search experience. For example, rather
|
|
* than displaying no results, you could display the partial results and a message
|
|
* indicating that the results might be incomplete due to a temporary system
|
|
* outage.</p>
|
|
*/
|
|
inline bool GetPartial() const{ return m_partial; }
|
|
|
|
/**
|
|
* <p>Enables partial results to be returned if one or more index partitions are
|
|
* unavailable. When your search index is partitioned across multiple search
|
|
* instances, by default Amazon CloudSearch only returns results if every partition
|
|
* can be queried. This means that the failure of a single search instance can
|
|
* result in 5xx (internal server) errors. When you enable partial results, Amazon
|
|
* CloudSearch returns whatever results are available and includes the percentage
|
|
* of documents searched in the search results (percent-searched). This enables you
|
|
* to more gracefully degrade your users' search experience. For example, rather
|
|
* than displaying no results, you could display the partial results and a message
|
|
* indicating that the results might be incomplete due to a temporary system
|
|
* outage.</p>
|
|
*/
|
|
inline bool PartialHasBeenSet() const { return m_partialHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Enables partial results to be returned if one or more index partitions are
|
|
* unavailable. When your search index is partitioned across multiple search
|
|
* instances, by default Amazon CloudSearch only returns results if every partition
|
|
* can be queried. This means that the failure of a single search instance can
|
|
* result in 5xx (internal server) errors. When you enable partial results, Amazon
|
|
* CloudSearch returns whatever results are available and includes the percentage
|
|
* of documents searched in the search results (percent-searched). This enables you
|
|
* to more gracefully degrade your users' search experience. For example, rather
|
|
* than displaying no results, you could display the partial results and a message
|
|
* indicating that the results might be incomplete due to a temporary system
|
|
* outage.</p>
|
|
*/
|
|
inline void SetPartial(bool value) { m_partialHasBeenSet = true; m_partial = value; }
|
|
|
|
/**
|
|
* <p>Enables partial results to be returned if one or more index partitions are
|
|
* unavailable. When your search index is partitioned across multiple search
|
|
* instances, by default Amazon CloudSearch only returns results if every partition
|
|
* can be queried. This means that the failure of a single search instance can
|
|
* result in 5xx (internal server) errors. When you enable partial results, Amazon
|
|
* CloudSearch returns whatever results are available and includes the percentage
|
|
* of documents searched in the search results (percent-searched). This enables you
|
|
* to more gracefully degrade your users' search experience. For example, rather
|
|
* than displaying no results, you could display the partial results and a message
|
|
* indicating that the results might be incomplete due to a temporary system
|
|
* outage.</p>
|
|
*/
|
|
inline SearchRequest& WithPartial(bool value) { SetPartial(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline const Aws::String& GetQuery() const{ return m_query; }
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline bool QueryHasBeenSet() const { return m_queryHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetQuery(const Aws::String& value) { m_queryHasBeenSet = true; m_query = value; }
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetQuery(Aws::String&& value) { m_queryHasBeenSet = true; m_query = std::move(value); }
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetQuery(const char* value) { m_queryHasBeenSet = true; m_query.assign(value); }
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithQuery(const Aws::String& value) { SetQuery(value); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithQuery(Aws::String&& value) { SetQuery(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies the search criteria for the request. How you specify the search
|
|
* criteria depends on the query parser used for the request and the parser options
|
|
* specified in the <code>queryOptions</code> parameter. By default, the
|
|
* <code>simple</code> query parser is used to process requests. To use the
|
|
* <code>structured</code>, <code>lucene</code>, or <code>dismax</code> query
|
|
* parser, you must also specify the <code>queryParser</code> parameter. </p>
|
|
* <p>For more information about specifying search criteria, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html">Searching
|
|
* Your Data</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithQuery(const char* value) { SetQuery(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline const Aws::String& GetQueryOptions() const{ return m_queryOptions; }
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline bool QueryOptionsHasBeenSet() const { return m_queryOptionsHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline void SetQueryOptions(const Aws::String& value) { m_queryOptionsHasBeenSet = true; m_queryOptions = value; }
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline void SetQueryOptions(Aws::String&& value) { m_queryOptionsHasBeenSet = true; m_queryOptions = std::move(value); }
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline void SetQueryOptions(const char* value) { m_queryOptionsHasBeenSet = true; m_queryOptions.assign(value); }
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline SearchRequest& WithQueryOptions(const Aws::String& value) { SetQueryOptions(value); return *this;}
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline SearchRequest& WithQueryOptions(Aws::String&& value) { SetQueryOptions(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Configures options for the query parser specified in the
|
|
* <code>queryParser</code> parameter. You specify the options in JSON using the
|
|
* following form
|
|
* <code>{"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}.</code></p>
|
|
* <p>The options you can configure vary according to which parser you use:</p>
|
|
* <ul> <li><code>defaultOperator</code>: The default operator used to combine
|
|
* individual terms in the search string. For example: <code>defaultOperator:
|
|
* 'or'</code>. For the <code>dismax</code> parser, you specify a percentage that
|
|
* represents the percentage of terms in the search string (rounded down) that must
|
|
* match, rather than a default operator. A value of <code>0%</code> is the
|
|
* equivalent to OR, and a value of <code>100%</code> is equivalent to AND. The
|
|
* percentage must be specified as a value in the range 0-100 followed by the
|
|
* percent (%) symbol. For example, <code>defaultOperator: 50%</code>. Valid
|
|
* values: <code>and</code>, <code>or</code>, a percentage in the range 0%-100%
|
|
* (<code>dismax</code>). Default: <code>and</code> (<code>simple</code>,
|
|
* <code>structured</code>, <code>lucene</code>) or <code>100</code>
|
|
* (<code>dismax</code>). Valid for: <code>simple</code>, <code>structured</code>,
|
|
* <code>lucene</code>, and <code>dismax</code>.</li> <li><code>fields</code>: An
|
|
* array of the fields to search when no fields are specified in a search. If no
|
|
* fields are specified in a search and this option is not specified, all text and
|
|
* text-array fields are searched. You can specify a weight for each field to
|
|
* control the relative importance of each field when Amazon CloudSearch calculates
|
|
* relevance scores. To specify a field weight, append a caret (<code>^</code>)
|
|
* symbol and the weight to the field name. For example, to boost the importance of
|
|
* the <code>title</code> field over the <code>description</code> field you could
|
|
* specify: <code>"fields":["title^5","description"]</code>. Valid values: The name
|
|
* of any configured field and an optional numeric value greater than zero.
|
|
* Default: All <code>text</code> and <code>text-array</code> fields. Valid for:
|
|
* <code>simple</code>, <code>structured</code>, <code>lucene</code>, and
|
|
* <code>dismax</code>.</li> <li><code>operators</code>: An array of the operators
|
|
* or special characters you want to disable for the simple query parser. If you
|
|
* disable the <code>and</code>, <code>or</code>, or <code>not</code> operators,
|
|
* the corresponding operators (<code>+</code>, <code>|</code>, <code>-</code>)
|
|
* have no special meaning and are dropped from the search string. Similarly,
|
|
* disabling <code>prefix</code> disables the wildcard operator (<code>*</code>)
|
|
* and disabling <code>phrase</code> disables the ability to search for phrases by
|
|
* enclosing phrases in double quotes. Disabling precedence disables the ability to
|
|
* control order of precedence using parentheses. Disabling <code>near</code>
|
|
* disables the ability to use the ~ operator to perform a sloppy phrase search.
|
|
* Disabling the <code>fuzzy</code> operator disables the ability to use the ~
|
|
* operator to perform a fuzzy search. <code>escape</code> disables the ability to
|
|
* use a backslash (<code>\</code>) to escape special characters within the search
|
|
* string. Disabling whitespace is an advanced option that prevents the parser from
|
|
* tokenizing on whitespace, which can be useful for Vietnamese. (It prevents
|
|
* Vietnamese words from being split incorrectly.) For example, you could disable
|
|
* all operators other than the phrase operator to support just simple term and
|
|
* phrase queries: <code>"operators":["and","not","or", "prefix"]</code>. Valid
|
|
* values: <code>and</code>, <code>escape</code>, <code>fuzzy</code>,
|
|
* <code>near</code>, <code>not</code>, <code>or</code>, <code>phrase</code>,
|
|
* <code>precedence</code>, <code>prefix</code>, <code>whitespace</code>. Default:
|
|
* All operators and special characters are enabled. Valid for:
|
|
* <code>simple</code>.</li> <li><code>phraseFields</code>: An array of the
|
|
* <code>text</code> or <code>text-array</code> fields you want to use for phrase
|
|
* searches. When the terms in the search string appear in close proximity within a
|
|
* field, the field scores higher. You can specify a weight for each field to boost
|
|
* that score. The <code>phraseSlop</code> option controls how much the matches can
|
|
* deviate from the search string and still be boosted. To specify a field weight,
|
|
* append a caret (<code>^</code>) symbol and the weight to the field name. For
|
|
* example, to boost phrase matches in the <code>title</code> field over the
|
|
* <code>abstract</code> field, you could specify: <code>"phraseFields":["title^3",
|
|
* "plot"]</code> Valid values: The name of any <code>text</code> or
|
|
* <code>text-array</code> field and an optional numeric value greater than zero.
|
|
* Default: No fields. If you don't specify any fields with
|
|
* <code>phraseFields</code>, proximity scoring is disabled even if
|
|
* <code>phraseSlop</code> is specified. Valid for: <code>dismax</code>.</li>
|
|
* <li><code>phraseSlop</code>: An integer value that specifies how much matches
|
|
* can deviate from the search phrase and still be boosted according to the weights
|
|
* specified in the <code>phraseFields</code> option; for example,
|
|
* <code>phraseSlop: 2</code>. You must also specify <code>phraseFields</code> to
|
|
* enable proximity scoring. Valid values: positive integers. Default: 0. Valid
|
|
* for: <code>dismax</code>.</li> <li><code>explicitPhraseSlop</code>: An integer
|
|
* value that specifies how much a match can deviate from the search phrase when
|
|
* the phrase is enclosed in double quotes in the search string. (Phrases that
|
|
* exceed this proximity distance are not considered a match.) For example, to
|
|
* specify a slop of three for dismax phrase queries, you would specify
|
|
* <code>"explicitPhraseSlop":3</code>. Valid values: positive integers. Default:
|
|
* 0. Valid for: <code>dismax</code>.</li> <li><code>tieBreaker</code>: When a term
|
|
* in the search string is found in a document's field, a score is calculated for
|
|
* that field based on how common the word is in that field compared to other
|
|
* documents. If the term occurs in multiple fields within a document, by default
|
|
* only the highest scoring field contributes to the document's overall score. You
|
|
* can specify a <code>tieBreaker</code> value to enable the matches in
|
|
* lower-scoring fields to contribute to the document's score. That way, if two
|
|
* documents have the same max field score for a particular term, the score for the
|
|
* document that has matches in more fields will be higher. The formula for
|
|
* calculating the score with a tieBreaker is <code>(max field score) +
|
|
* (tieBreaker) * (sum of the scores for the rest of the matching fields)</code>.
|
|
* Set <code>tieBreaker</code> to 0 to disregard all but the highest scoring field
|
|
* (pure max): <code>"tieBreaker":0</code>. Set to 1 to sum the scores from all
|
|
* fields (pure sum): <code>"tieBreaker":1</code>. Valid values: 0.0 to 1.0.
|
|
* Default: 0.0. Valid for: <code>dismax</code>. </li> </ul>
|
|
*/
|
|
inline SearchRequest& WithQueryOptions(const char* value) { SetQueryOptions(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies which query parser to use to process the request. If
|
|
* <code>queryParser</code> is not specified, Amazon CloudSearch uses the
|
|
* <code>simple</code> query parser. </p> <p>Amazon CloudSearch supports four query
|
|
* parsers:</p> <ul> <li> <code>simple</code>: perform simple searches of
|
|
* <code>text</code> and <code>text-array</code> fields. By default, the
|
|
* <code>simple</code> query parser searches all <code>text</code> and
|
|
* <code>text-array</code> fields. You can specify which fields to search by with
|
|
* the <code>queryOptions</code> parameter. If you prefix a search term with a plus
|
|
* sign (+) documents must contain the term to be considered a match. (This is the
|
|
* default, unless you configure the default operator with the
|
|
* <code>queryOptions</code> parameter.) You can use the <code>-</code> (NOT),
|
|
* <code>|</code> (OR), and <code>*</code> (wildcard) operators to exclude
|
|
* particular terms, find results that match any of the specified terms, or search
|
|
* for a prefix. To search for a phrase rather than individual terms, enclose the
|
|
* phrase in double quotes. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html">Searching
|
|
* for Text</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li> <li>
|
|
* <code>structured</code>: perform advanced searches by combining multiple
|
|
* expressions to define the search criteria. You can also search within particular
|
|
* fields, search for values and ranges of values, and use advanced options such as
|
|
* term boosting, <code>matchall</code>, and <code>near</code>. For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html">Constructing
|
|
* Compound Queries</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li>
|
|
* <li> <code>lucene</code>: search using the Apache Lucene query parser syntax.
|
|
* For more information, see <a
|
|
* href="http://lucene.apache.org/core/4_6_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description">Apache
|
|
* Lucene Query Parser Syntax</a>. </li> <li> <code>dismax</code>: search using the
|
|
* simplified subset of the Apache Lucene query parser syntax defined by the DisMax
|
|
* query parser. For more information, see <a
|
|
* href="http://wiki.apache.org/solr/DisMaxQParserPlugin#Query_Syntax">DisMax Query
|
|
* Parser Syntax</a>. </li> </ul>
|
|
*/
|
|
inline const QueryParser& GetQueryParser() const{ return m_queryParser; }
|
|
|
|
/**
|
|
* <p>Specifies which query parser to use to process the request. If
|
|
* <code>queryParser</code> is not specified, Amazon CloudSearch uses the
|
|
* <code>simple</code> query parser. </p> <p>Amazon CloudSearch supports four query
|
|
* parsers:</p> <ul> <li> <code>simple</code>: perform simple searches of
|
|
* <code>text</code> and <code>text-array</code> fields. By default, the
|
|
* <code>simple</code> query parser searches all <code>text</code> and
|
|
* <code>text-array</code> fields. You can specify which fields to search by with
|
|
* the <code>queryOptions</code> parameter. If you prefix a search term with a plus
|
|
* sign (+) documents must contain the term to be considered a match. (This is the
|
|
* default, unless you configure the default operator with the
|
|
* <code>queryOptions</code> parameter.) You can use the <code>-</code> (NOT),
|
|
* <code>|</code> (OR), and <code>*</code> (wildcard) operators to exclude
|
|
* particular terms, find results that match any of the specified terms, or search
|
|
* for a prefix. To search for a phrase rather than individual terms, enclose the
|
|
* phrase in double quotes. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html">Searching
|
|
* for Text</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li> <li>
|
|
* <code>structured</code>: perform advanced searches by combining multiple
|
|
* expressions to define the search criteria. You can also search within particular
|
|
* fields, search for values and ranges of values, and use advanced options such as
|
|
* term boosting, <code>matchall</code>, and <code>near</code>. For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html">Constructing
|
|
* Compound Queries</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li>
|
|
* <li> <code>lucene</code>: search using the Apache Lucene query parser syntax.
|
|
* For more information, see <a
|
|
* href="http://lucene.apache.org/core/4_6_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description">Apache
|
|
* Lucene Query Parser Syntax</a>. </li> <li> <code>dismax</code>: search using the
|
|
* simplified subset of the Apache Lucene query parser syntax defined by the DisMax
|
|
* query parser. For more information, see <a
|
|
* href="http://wiki.apache.org/solr/DisMaxQParserPlugin#Query_Syntax">DisMax Query
|
|
* Parser Syntax</a>. </li> </ul>
|
|
*/
|
|
inline bool QueryParserHasBeenSet() const { return m_queryParserHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies which query parser to use to process the request. If
|
|
* <code>queryParser</code> is not specified, Amazon CloudSearch uses the
|
|
* <code>simple</code> query parser. </p> <p>Amazon CloudSearch supports four query
|
|
* parsers:</p> <ul> <li> <code>simple</code>: perform simple searches of
|
|
* <code>text</code> and <code>text-array</code> fields. By default, the
|
|
* <code>simple</code> query parser searches all <code>text</code> and
|
|
* <code>text-array</code> fields. You can specify which fields to search by with
|
|
* the <code>queryOptions</code> parameter. If you prefix a search term with a plus
|
|
* sign (+) documents must contain the term to be considered a match. (This is the
|
|
* default, unless you configure the default operator with the
|
|
* <code>queryOptions</code> parameter.) You can use the <code>-</code> (NOT),
|
|
* <code>|</code> (OR), and <code>*</code> (wildcard) operators to exclude
|
|
* particular terms, find results that match any of the specified terms, or search
|
|
* for a prefix. To search for a phrase rather than individual terms, enclose the
|
|
* phrase in double quotes. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html">Searching
|
|
* for Text</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li> <li>
|
|
* <code>structured</code>: perform advanced searches by combining multiple
|
|
* expressions to define the search criteria. You can also search within particular
|
|
* fields, search for values and ranges of values, and use advanced options such as
|
|
* term boosting, <code>matchall</code>, and <code>near</code>. For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html">Constructing
|
|
* Compound Queries</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li>
|
|
* <li> <code>lucene</code>: search using the Apache Lucene query parser syntax.
|
|
* For more information, see <a
|
|
* href="http://lucene.apache.org/core/4_6_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description">Apache
|
|
* Lucene Query Parser Syntax</a>. </li> <li> <code>dismax</code>: search using the
|
|
* simplified subset of the Apache Lucene query parser syntax defined by the DisMax
|
|
* query parser. For more information, see <a
|
|
* href="http://wiki.apache.org/solr/DisMaxQParserPlugin#Query_Syntax">DisMax Query
|
|
* Parser Syntax</a>. </li> </ul>
|
|
*/
|
|
inline void SetQueryParser(const QueryParser& value) { m_queryParserHasBeenSet = true; m_queryParser = value; }
|
|
|
|
/**
|
|
* <p>Specifies which query parser to use to process the request. If
|
|
* <code>queryParser</code> is not specified, Amazon CloudSearch uses the
|
|
* <code>simple</code> query parser. </p> <p>Amazon CloudSearch supports four query
|
|
* parsers:</p> <ul> <li> <code>simple</code>: perform simple searches of
|
|
* <code>text</code> and <code>text-array</code> fields. By default, the
|
|
* <code>simple</code> query parser searches all <code>text</code> and
|
|
* <code>text-array</code> fields. You can specify which fields to search by with
|
|
* the <code>queryOptions</code> parameter. If you prefix a search term with a plus
|
|
* sign (+) documents must contain the term to be considered a match. (This is the
|
|
* default, unless you configure the default operator with the
|
|
* <code>queryOptions</code> parameter.) You can use the <code>-</code> (NOT),
|
|
* <code>|</code> (OR), and <code>*</code> (wildcard) operators to exclude
|
|
* particular terms, find results that match any of the specified terms, or search
|
|
* for a prefix. To search for a phrase rather than individual terms, enclose the
|
|
* phrase in double quotes. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html">Searching
|
|
* for Text</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li> <li>
|
|
* <code>structured</code>: perform advanced searches by combining multiple
|
|
* expressions to define the search criteria. You can also search within particular
|
|
* fields, search for values and ranges of values, and use advanced options such as
|
|
* term boosting, <code>matchall</code>, and <code>near</code>. For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html">Constructing
|
|
* Compound Queries</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li>
|
|
* <li> <code>lucene</code>: search using the Apache Lucene query parser syntax.
|
|
* For more information, see <a
|
|
* href="http://lucene.apache.org/core/4_6_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description">Apache
|
|
* Lucene Query Parser Syntax</a>. </li> <li> <code>dismax</code>: search using the
|
|
* simplified subset of the Apache Lucene query parser syntax defined by the DisMax
|
|
* query parser. For more information, see <a
|
|
* href="http://wiki.apache.org/solr/DisMaxQParserPlugin#Query_Syntax">DisMax Query
|
|
* Parser Syntax</a>. </li> </ul>
|
|
*/
|
|
inline void SetQueryParser(QueryParser&& value) { m_queryParserHasBeenSet = true; m_queryParser = std::move(value); }
|
|
|
|
/**
|
|
* <p>Specifies which query parser to use to process the request. If
|
|
* <code>queryParser</code> is not specified, Amazon CloudSearch uses the
|
|
* <code>simple</code> query parser. </p> <p>Amazon CloudSearch supports four query
|
|
* parsers:</p> <ul> <li> <code>simple</code>: perform simple searches of
|
|
* <code>text</code> and <code>text-array</code> fields. By default, the
|
|
* <code>simple</code> query parser searches all <code>text</code> and
|
|
* <code>text-array</code> fields. You can specify which fields to search by with
|
|
* the <code>queryOptions</code> parameter. If you prefix a search term with a plus
|
|
* sign (+) documents must contain the term to be considered a match. (This is the
|
|
* default, unless you configure the default operator with the
|
|
* <code>queryOptions</code> parameter.) You can use the <code>-</code> (NOT),
|
|
* <code>|</code> (OR), and <code>*</code> (wildcard) operators to exclude
|
|
* particular terms, find results that match any of the specified terms, or search
|
|
* for a prefix. To search for a phrase rather than individual terms, enclose the
|
|
* phrase in double quotes. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html">Searching
|
|
* for Text</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li> <li>
|
|
* <code>structured</code>: perform advanced searches by combining multiple
|
|
* expressions to define the search criteria. You can also search within particular
|
|
* fields, search for values and ranges of values, and use advanced options such as
|
|
* term boosting, <code>matchall</code>, and <code>near</code>. For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html">Constructing
|
|
* Compound Queries</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li>
|
|
* <li> <code>lucene</code>: search using the Apache Lucene query parser syntax.
|
|
* For more information, see <a
|
|
* href="http://lucene.apache.org/core/4_6_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description">Apache
|
|
* Lucene Query Parser Syntax</a>. </li> <li> <code>dismax</code>: search using the
|
|
* simplified subset of the Apache Lucene query parser syntax defined by the DisMax
|
|
* query parser. For more information, see <a
|
|
* href="http://wiki.apache.org/solr/DisMaxQParserPlugin#Query_Syntax">DisMax Query
|
|
* Parser Syntax</a>. </li> </ul>
|
|
*/
|
|
inline SearchRequest& WithQueryParser(const QueryParser& value) { SetQueryParser(value); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies which query parser to use to process the request. If
|
|
* <code>queryParser</code> is not specified, Amazon CloudSearch uses the
|
|
* <code>simple</code> query parser. </p> <p>Amazon CloudSearch supports four query
|
|
* parsers:</p> <ul> <li> <code>simple</code>: perform simple searches of
|
|
* <code>text</code> and <code>text-array</code> fields. By default, the
|
|
* <code>simple</code> query parser searches all <code>text</code> and
|
|
* <code>text-array</code> fields. You can specify which fields to search by with
|
|
* the <code>queryOptions</code> parameter. If you prefix a search term with a plus
|
|
* sign (+) documents must contain the term to be considered a match. (This is the
|
|
* default, unless you configure the default operator with the
|
|
* <code>queryOptions</code> parameter.) You can use the <code>-</code> (NOT),
|
|
* <code>|</code> (OR), and <code>*</code> (wildcard) operators to exclude
|
|
* particular terms, find results that match any of the specified terms, or search
|
|
* for a prefix. To search for a phrase rather than individual terms, enclose the
|
|
* phrase in double quotes. For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html">Searching
|
|
* for Text</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li> <li>
|
|
* <code>structured</code>: perform advanced searches by combining multiple
|
|
* expressions to define the search criteria. You can also search within particular
|
|
* fields, search for values and ranges of values, and use advanced options such as
|
|
* term boosting, <code>matchall</code>, and <code>near</code>. For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html">Constructing
|
|
* Compound Queries</a> in the <i>Amazon CloudSearch Developer Guide</i>. </li>
|
|
* <li> <code>lucene</code>: search using the Apache Lucene query parser syntax.
|
|
* For more information, see <a
|
|
* href="http://lucene.apache.org/core/4_6_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description">Apache
|
|
* Lucene Query Parser Syntax</a>. </li> <li> <code>dismax</code>: search using the
|
|
* simplified subset of the Apache Lucene query parser syntax defined by the DisMax
|
|
* query parser. For more information, see <a
|
|
* href="http://wiki.apache.org/solr/DisMaxQParserPlugin#Query_Syntax">DisMax Query
|
|
* Parser Syntax</a>. </li> </ul>
|
|
*/
|
|
inline SearchRequest& WithQueryParser(QueryParser&& value) { SetQueryParser(std::move(value)); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline const Aws::String& GetReturn() const{ return m_return; }
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline bool ReturnHasBeenSet() const { return m_returnHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline void SetReturn(const Aws::String& value) { m_returnHasBeenSet = true; m_return = value; }
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline void SetReturn(Aws::String&& value) { m_returnHasBeenSet = true; m_return = std::move(value); }
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline void SetReturn(const char* value) { m_returnHasBeenSet = true; m_return.assign(value); }
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline SearchRequest& WithReturn(const Aws::String& value) { SetReturn(value); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline SearchRequest& WithReturn(Aws::String&& value) { SetReturn(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies the field and expression values to include in the response.
|
|
* Multiple fields or expressions are specified as a comma-separated list. By
|
|
* default, a search response includes all return enabled fields
|
|
* (<code>_all_fields</code>). To return only the document IDs for the matching
|
|
* documents, specify <code>_no_fields</code>. To retrieve the relevance score
|
|
* calculated for each document, specify <code>_score</code>. </p>
|
|
*/
|
|
inline SearchRequest& WithReturn(const char* value) { SetReturn(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies the maximum number of search hits to include in the response. </p>
|
|
*/
|
|
inline long long GetSize() const{ return m_size; }
|
|
|
|
/**
|
|
* <p>Specifies the maximum number of search hits to include in the response. </p>
|
|
*/
|
|
inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies the maximum number of search hits to include in the response. </p>
|
|
*/
|
|
inline void SetSize(long long value) { m_sizeHasBeenSet = true; m_size = value; }
|
|
|
|
/**
|
|
* <p>Specifies the maximum number of search hits to include in the response. </p>
|
|
*/
|
|
inline SearchRequest& WithSize(long long value) { SetSize(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline const Aws::String& GetSort() const{ return m_sort; }
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline bool SortHasBeenSet() const { return m_sortHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetSort(const Aws::String& value) { m_sortHasBeenSet = true; m_sort = value; }
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetSort(Aws::String&& value) { m_sortHasBeenSet = true; m_sort = std::move(value); }
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetSort(const char* value) { m_sortHasBeenSet = true; m_sort.assign(value); }
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithSort(const Aws::String& value) { SetSort(value); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithSort(Aws::String&& value) { SetSort(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies the fields or custom expressions to use to sort the search results.
|
|
* Multiple fields or expressions are specified as a comma-separated list. You must
|
|
* specify the sort direction (<code>asc</code> or <code>desc</code>) for each
|
|
* field; for example, <code>year desc,title asc</code>. To use a field to sort
|
|
* results, the field must be sort-enabled in the domain configuration. Array type
|
|
* fields cannot be used for sorting. If no <code>sort</code> parameter is
|
|
* specified, results are sorted by their default relevance scores in descending
|
|
* order: <code>_score desc</code>. You can also sort by document ID (<code>_id
|
|
* asc</code>) and version (<code>_version desc</code>).</p> <p>For more
|
|
* information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html">Sorting
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithSort(const char* value) { SetSort(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies the offset of the first search hit you want to return. Note that
|
|
* the result set is zero-based; the first result is at index 0. You can specify
|
|
* either the <code>start</code> or <code>cursor</code> parameter in a request,
|
|
* they are mutually exclusive. </p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline long long GetStart() const{ return m_start; }
|
|
|
|
/**
|
|
* <p>Specifies the offset of the first search hit you want to return. Note that
|
|
* the result set is zero-based; the first result is at index 0. You can specify
|
|
* either the <code>start</code> or <code>cursor</code> parameter in a request,
|
|
* they are mutually exclusive. </p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline bool StartHasBeenSet() const { return m_startHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies the offset of the first search hit you want to return. Note that
|
|
* the result set is zero-based; the first result is at index 0. You can specify
|
|
* either the <code>start</code> or <code>cursor</code> parameter in a request,
|
|
* they are mutually exclusive. </p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline void SetStart(long long value) { m_startHasBeenSet = true; m_start = value; }
|
|
|
|
/**
|
|
* <p>Specifies the offset of the first search hit you want to return. Note that
|
|
* the result set is zero-based; the first result is at index 0. You can specify
|
|
* either the <code>start</code> or <code>cursor</code> parameter in a request,
|
|
* they are mutually exclusive. </p> <p>For more information, see <a
|
|
* href="http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html">Paginating
|
|
* Results</a> in the <i>Amazon CloudSearch Developer Guide</i>.</p>
|
|
*/
|
|
inline SearchRequest& WithStart(long long value) { SetStart(value); return *this;}
|
|
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline const Aws::String& GetStats() const{ return m_stats; }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline bool StatsHasBeenSet() const { return m_statsHasBeenSet; }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline void SetStats(const Aws::String& value) { m_statsHasBeenSet = true; m_stats = value; }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline void SetStats(Aws::String&& value) { m_statsHasBeenSet = true; m_stats = std::move(value); }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline void SetStats(const char* value) { m_statsHasBeenSet = true; m_stats.assign(value); }
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline SearchRequest& WithStats(const Aws::String& value) { SetStats(value); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline SearchRequest& WithStats(Aws::String&& value) { SetStats(std::move(value)); return *this;}
|
|
|
|
/**
|
|
* <p>Specifies one or more fields for which to get statistics information. Each
|
|
* specified field must be facet-enabled in the domain configuration. The fields
|
|
* are specified in JSON using the form:</p>
|
|
* <code>{"FIELD-A":{},"FIELD-B":{}}</code> <p>There are currently no options
|
|
* supported for statistics.</p>
|
|
*/
|
|
inline SearchRequest& WithStats(const char* value) { SetStats(value); return *this;}
|
|
|
|
private:
|
|
|
|
Aws::String m_cursor;
|
|
bool m_cursorHasBeenSet;
|
|
|
|
Aws::String m_expr;
|
|
bool m_exprHasBeenSet;
|
|
|
|
Aws::String m_facet;
|
|
bool m_facetHasBeenSet;
|
|
|
|
Aws::String m_filterQuery;
|
|
bool m_filterQueryHasBeenSet;
|
|
|
|
Aws::String m_highlight;
|
|
bool m_highlightHasBeenSet;
|
|
|
|
bool m_partial;
|
|
bool m_partialHasBeenSet;
|
|
|
|
Aws::String m_query;
|
|
bool m_queryHasBeenSet;
|
|
|
|
Aws::String m_queryOptions;
|
|
bool m_queryOptionsHasBeenSet;
|
|
|
|
QueryParser m_queryParser;
|
|
bool m_queryParserHasBeenSet;
|
|
|
|
Aws::String m_return;
|
|
bool m_returnHasBeenSet;
|
|
|
|
long long m_size;
|
|
bool m_sizeHasBeenSet;
|
|
|
|
Aws::String m_sort;
|
|
bool m_sortHasBeenSet;
|
|
|
|
long long m_start;
|
|
bool m_startHasBeenSet;
|
|
|
|
Aws::String m_stats;
|
|
bool m_statsHasBeenSet;
|
|
};
|
|
|
|
} // namespace Model
|
|
} // namespace CloudSearchDomain
|
|
} // namespace Aws
|