/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the kendra-2019-02-03.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Kendra.Model { /// /// Container for the parameters to the Retrieve operation. /// Retrieves relevant passages or text excerpts given an input query. /// /// /// /// This API is similar to the Query /// API. However, by default, the Query API only returns excerpt passages /// of up to 100 token words. With the Retrieve API, you can retrieve longer /// passages of up to 200 token words and up to 100 semantically relevant passages. This /// doesn't include question-answer or FAQ type responses from your index. The passages /// are text excerpts that can be semantically extracted from multiple documents and multiple /// parts of the same document. If in extreme cases your documents produce no relevant /// passages using the Retrieve API, you can alternatively use the Query /// API. /// /// /// /// You can also do the following: /// /// /// /// You can also include certain fields in the response that might provide useful additional /// information. /// /// public partial class RetrieveRequest : AmazonKendraRequest { private AttributeFilter _attributeFilter; private List _documentRelevanceOverrideConfigurations = new List(); private string _indexId; private int? _pageNumber; private int? _pageSize; private string _queryText; private List _requestedDocumentAttributes = new List(); private UserContext _userContext; /// /// Gets and sets the property AttributeFilter. /// /// Filters search results by document fields/attributes. You can only provide one attribute /// filter; however, the AndAllFilters, NotFilter, and OrAllFilters /// parameters contain a list of other filters. /// /// /// /// The AttributeFilter parameter means you can create a set of filtering /// rules that a document must satisfy to be included in the query results. /// /// public AttributeFilter AttributeFilter { get { return this._attributeFilter; } set { this._attributeFilter = value; } } // Check to see if AttributeFilter property is set internal bool IsSetAttributeFilter() { return this._attributeFilter != null; } /// /// Gets and sets the property DocumentRelevanceOverrideConfigurations. /// /// Overrides relevance tuning configurations of fields/attributes set at the index level. /// /// /// /// If you use this API to override the relevance tuning configured at the index level, /// but there is no relevance tuning configured at the index level, then Amazon Kendra /// does not apply any relevance tuning. /// /// /// /// If there is relevance tuning configured for fields at the index level, and you use /// this API to override only some of these fields, then for the fields you did not override, /// the importance is set to 1. /// /// [AWSProperty(Min=0, Max=500)] public List DocumentRelevanceOverrideConfigurations { get { return this._documentRelevanceOverrideConfigurations; } set { this._documentRelevanceOverrideConfigurations = value; } } // Check to see if DocumentRelevanceOverrideConfigurations property is set internal bool IsSetDocumentRelevanceOverrideConfigurations() { return this._documentRelevanceOverrideConfigurations != null && this._documentRelevanceOverrideConfigurations.Count > 0; } /// /// Gets and sets the property IndexId. /// /// The identifier of the index to retrieve relevant passages for the search. /// /// [AWSProperty(Required=true, Min=36, Max=36)] public string IndexId { get { return this._indexId; } set { this._indexId = value; } } // Check to see if IndexId property is set internal bool IsSetIndexId() { return this._indexId != null; } /// /// Gets and sets the property PageNumber. /// /// Retrieved relevant passages are returned in pages the size of the PageSize /// parameter. By default, Amazon Kendra returns the first page of results. Use this parameter /// to get result pages after the first one. /// /// public int PageNumber { get { return this._pageNumber.GetValueOrDefault(); } set { this._pageNumber = value; } } // Check to see if PageNumber property is set internal bool IsSetPageNumber() { return this._pageNumber.HasValue; } /// /// Gets and sets the property PageSize. /// /// Sets the number of retrieved relevant passages that are returned in each page of results. /// The default page size is 10. The maximum number of results returned is 100. If you /// ask for more than 100 results, only 100 are returned. /// /// public int PageSize { get { return this._pageSize.GetValueOrDefault(); } set { this._pageSize = value; } } // Check to see if PageSize property is set internal bool IsSetPageSize() { return this._pageSize.HasValue; } /// /// Gets and sets the property QueryText. /// /// The input query text to retrieve relevant passages for the search. Amazon Kendra truncates /// queries at 30 token words, which excludes punctuation and stop words. Truncation still /// applies if you use Boolean or more advanced, complex queries. /// /// [AWSProperty(Required=true)] public string QueryText { get { return this._queryText; } set { this._queryText = value; } } // Check to see if QueryText property is set internal bool IsSetQueryText() { return this._queryText != null; } /// /// Gets and sets the property RequestedDocumentAttributes. /// /// A list of document fields/attributes to include in the response. You can limit the /// response to include certain document fields. By default, all document fields are included /// in the response. /// /// [AWSProperty(Min=1, Max=100)] public List RequestedDocumentAttributes { get { return this._requestedDocumentAttributes; } set { this._requestedDocumentAttributes = value; } } // Check to see if RequestedDocumentAttributes property is set internal bool IsSetRequestedDocumentAttributes() { return this._requestedDocumentAttributes != null && this._requestedDocumentAttributes.Count > 0; } /// /// Gets and sets the property UserContext. /// /// The user context token or user and group information. /// /// public UserContext UserContext { get { return this._userContext; } set { this._userContext = value; } } // Check to see if UserContext property is set internal bool IsSetUserContext() { return this._userContext != null; } } }