The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Paws::Kendra::Query - Arguments for method Query on Paws::Kendra

DESCRIPTION

This class represents the parameters used for calling the method Query on the AWSKendraFrontendService service. Use the attributes of this class as arguments to method Query.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to Query.

SYNOPSIS

my $kendra = Paws->service('Kendra');
my $QueryResult = $kendra->Query(
  IndexId         => 'MyIndexId',
  QueryText       => 'MyQueryText',
  AttributeFilter => {
    AndAllFilters => [ <AttributeFilter>, ... ],    # OPTIONAL
    ContainsAll   => {
      Key   => 'MyDocumentAttributeKey',            # min: 1, max: 200
      Value => {
        DateValue       => '1970-01-01T01:00:00',    # OPTIONAL
        LongValue       => 1,                        # OPTIONAL
        StringListValue => [
          'MyString', ...                            # min: 1, max: 2048
        ],    # OPTIONAL
        StringValue =>
          'MyDocumentAttributeStringValue',    # min: 1, max: 2048; OPTIONAL
      },

    },    # OPTIONAL
    ContainsAny => {
      Key   => 'MyDocumentAttributeKey',    # min: 1, max: 200
      Value => {
        DateValue       => '1970-01-01T01:00:00',    # OPTIONAL
        LongValue       => 1,                        # OPTIONAL
        StringListValue => [
          'MyString', ...                            # min: 1, max: 2048
        ],    # OPTIONAL
        StringValue =>
          'MyDocumentAttributeStringValue',    # min: 1, max: 2048; OPTIONAL
      },

    },    # OPTIONAL
    EqualsTo => {
      Key   => 'MyDocumentAttributeKey',    # min: 1, max: 200
      Value => {
        DateValue       => '1970-01-01T01:00:00',    # OPTIONAL
        LongValue       => 1,                        # OPTIONAL
        StringListValue => [
          'MyString', ...                            # min: 1, max: 2048
        ],    # OPTIONAL
        StringValue =>
          'MyDocumentAttributeStringValue',    # min: 1, max: 2048; OPTIONAL
      },

    },    # OPTIONAL
    GreaterThan => {
      Key   => 'MyDocumentAttributeKey',    # min: 1, max: 200
      Value => {
        DateValue       => '1970-01-01T01:00:00',    # OPTIONAL
        LongValue       => 1,                        # OPTIONAL
        StringListValue => [
          'MyString', ...                            # min: 1, max: 2048
        ],    # OPTIONAL
        StringValue =>
          'MyDocumentAttributeStringValue',    # min: 1, max: 2048; OPTIONAL
      },

    },    # OPTIONAL
    GreaterThanOrEquals => {
      Key   => 'MyDocumentAttributeKey',    # min: 1, max: 200
      Value => {
        DateValue       => '1970-01-01T01:00:00',    # OPTIONAL
        LongValue       => 1,                        # OPTIONAL
        StringListValue => [
          'MyString', ...                            # min: 1, max: 2048
        ],    # OPTIONAL
        StringValue =>
          'MyDocumentAttributeStringValue',    # min: 1, max: 2048; OPTIONAL
      },

    },    # OPTIONAL
    LessThan => {
      Key   => 'MyDocumentAttributeKey',    # min: 1, max: 200
      Value => {
        DateValue       => '1970-01-01T01:00:00',    # OPTIONAL
        LongValue       => 1,                        # OPTIONAL
        StringListValue => [
          'MyString', ...                            # min: 1, max: 2048
        ],    # OPTIONAL
        StringValue =>
          'MyDocumentAttributeStringValue',    # min: 1, max: 2048; OPTIONAL
      },

    },    # OPTIONAL
    LessThanOrEquals => {
      Key   => 'MyDocumentAttributeKey',    # min: 1, max: 200
      Value => {
        DateValue       => '1970-01-01T01:00:00',    # OPTIONAL
        LongValue       => 1,                        # OPTIONAL
        StringListValue => [
          'MyString', ...                            # min: 1, max: 2048
        ],    # OPTIONAL
        StringValue =>
          'MyDocumentAttributeStringValue',    # min: 1, max: 2048; OPTIONAL
      },

    },    # OPTIONAL
    NotFilter    => <AttributeFilter>,
    OrAllFilters => [ <AttributeFilter>, ... ],    # OPTIONAL
  },    # OPTIONAL
  DocumentRelevanceOverrideConfigurations => [
    {
      Name      => 'MyDocumentMetadataConfigurationName',  # min: 1, max: 30
      Relevance => {
        Duration   => 'MyDuration',    # min: 1, max: 10; OPTIONAL
        Freshness  => 1,               # OPTIONAL
        Importance => 1,               # min: 1, max: 10; OPTIONAL
        RankOrder  => 'ASCENDING', # values: ASCENDING, DESCENDING; OPTIONAL
        ValueImportanceMap => {
          'MyValueImportanceMapKey' =>
            1,    # key: min: 1, max: 50, value: min: 1, max: 10; OPTIONAL
        },    # OPTIONAL
      },

    },
    ...
  ],    # OPTIONAL
  Facets => [
    {
      DocumentAttributeKey => 'MyDocumentAttributeKey',   # min: 1, max: 200
    },
    ...
  ],    # OPTIONAL
  PageNumber                  => 1,             # OPTIONAL
  PageSize                    => 1,             # OPTIONAL
  QueryResultTypeFilter       => 'DOCUMENT',    # OPTIONAL
  RequestedDocumentAttributes => [
    'MyDocumentAttributeKey', ...               # min: 1, max: 200
  ],    # OPTIONAL
  SortingConfiguration => {
    DocumentAttributeKey => 'MyDocumentAttributeKey',    # min: 1, max: 200
    SortOrder            => 'DESC',                      # values: DESC, ASC

  },    # OPTIONAL
  UserContext => {
    Token => 'MyToken',    # min: 1, max: 100000; OPTIONAL
  },    # OPTIONAL
  VisitorId => 'MyVisitorId',    # OPTIONAL
);

# Results:
my $FacetResults         = $QueryResult->FacetResults;
my $QueryId              = $QueryResult->QueryId;
my $ResultItems          = $QueryResult->ResultItems;
my $TotalNumberOfResults = $QueryResult->TotalNumberOfResults;

# Returns a L<Paws::Kendra::QueryResult> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/kendra/Query

ATTRIBUTES

AttributeFilter => Paws::Kendra::AttributeFilter

Enables filtered searches based on document attributes. You can only provide one attribute filter; however, the AndAllFilters, NotFilter, and OrAllFilters parameters contain a list of other filters.

The AttributeFilter parameter enables you to create a set of filtering rules that a document must satisfy to be included in the query results.

DocumentRelevanceOverrideConfigurations => ArrayRef[Paws::Kendra::DocumentRelevanceConfiguration]

Overrides relevance tuning configurations of fields or 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 at the index level, but you do not use this API to override any relevance tuning in the index, then Amazon Kendra uses the relevance tuning that is configured at the index level.

If there is relevance tuning configured for fields at the index level, but 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.

Facets => ArrayRef[Paws::Kendra::Facet]

An array of documents attributes. Amazon Kendra returns a count for each attribute key specified. You can use this information to help narrow the search for your user.

REQUIRED IndexId => Str

The unique identifier of the index to search. The identifier is returned in the response from the CreateIndex operation.

PageNumber => Int

Query results 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.

PageSize => Int

Sets the number of results 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.

QueryResultTypeFilter => Str

Sets the type of query. Only results for the specified query type are returned.

Valid values are: "DOCUMENT", "QUESTION_ANSWER", "ANSWER"

REQUIRED QueryText => Str

The text to search for.

RequestedDocumentAttributes => ArrayRef[Str|Undef]

An array of document attributes to include in the response. No other document attributes are included in the response. By default all document attributes are included in the response.

SortingConfiguration => Paws::Kendra::SortingConfiguration

Provides information that determines how the results of the query are sorted. You can set the field that Amazon Kendra should sort the results on, and specify whether the results should be sorted in ascending or descending order. In the case of ties in sorting the results, the results are sorted by relevance.

If you don't provide sorting configuration, the results are sorted by the relevance that Amazon Kendra determines for the result.

UserContext => Paws::Kendra::UserContext

The user context token.

VisitorId => Str

Provides an identifier for a specific user. The VisitorId should be a unique identifier, such as a GUID. Don't use personally identifiable information, such as the user's email address, as the VisitorId.

SEE ALSO

This class forms part of Paws, documenting arguments for method Query in Paws::Kendra

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues