123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- // Copyright 2022 Google LLC
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License 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.
- syntax = "proto3";
- package google.cloud.contentwarehouse.v1;
- import "google/api/field_behavior.proto";
- import "google/api/resource.proto";
- option go_package = "google.golang.org/genproto/googleapis/cloud/contentwarehouse/v1;contentwarehouse";
- option java_multiple_files = true;
- option java_outer_classname = "HistogramProto";
- option java_package = "com.google.cloud.contentwarehouse.v1";
- // The histogram request.
- message HistogramQuery {
- // An expression specifies a histogram request against matching documents for
- // searches.
- //
- // See [SearchDocumentsRequest.histogram_queries][google.cloud.contentwarehouse.v1.SearchDocumentsRequest.histogram_queries] for details about syntax.
- string histogram_query = 1;
- // Controls if the histogram query requires the return of a precise count.
- // Enable this flag may adversely impact performance.
- //
- // Defaults to true.
- bool require_precise_result_size = 2;
- // Optional. Filter the result of histogram query by the property names. It only works
- // with histogram query count('FilterableProperties').
- // It is an optional. It will perform histogram on all the property names for
- // all the document schemas. Setting this field will have a better
- // performance.
- HistogramQueryPropertyNameFilter filters = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- message HistogramQueryPropertyNameFilter {
- // The result of the histogram query count('FilterableProperties') using
- // HISTOGRAM_YAXIS_DOCUMENT will be:
- // invoice_id: 2
- // address: 1
- // payment_method: 2
- // line_item_description: 1
- enum HistogramYAxis {
- // Count the documents per property name.
- HISTOGRAM_YAXIS_DOCUMENT = 0;
- // Count the properties per property name.
- HISTOGRAM_YAXIS_PROPERTY = 1;
- }
- // This filter specifies the exact document schema(s)
- // [Document.document_schema_name][google.cloud.contentwarehouse.v1.Document.document_schema_name] to run histogram query against.
- // It is optional. It will perform histogram for property names for all the
- // document schemas if it is not set.
- //
- // At most 10 document schema names are allowed.
- // Format:
- // projects/{project_number}/locations/{location}/documentSchemas/{document_schema_id}.
- repeated string document_schemas = 1 [(google.api.resource_reference) = {
- type: "contentwarehouse.googleapis.com/DocumentSchema"
- }];
- // It is optional. It will perform histogram for all the property names if it
- // is not set.
- // The properties need to be defined with the is_filterable flag set to
- // true and the name of the property should be in the format:
- // "schemaId.propertyName". The property needs to be defined in the schema.
- // Example: the schema id is abc. Then the name of property for property
- // MORTGAGE_TYPE will be "abc.MORTGAGE_TYPE".
- repeated string property_names = 2;
- // By default, the y_axis is HISTOGRAM_YAXIS_DOCUMENT if this field is not
- // set.
- HistogramYAxis y_axis = 3;
- }
- // Histogram result that matches [HistogramQuery][google.cloud.contentwarehouse.v1.HistogramQuery] specified in searches.
- message HistogramQueryResult {
- // Requested histogram expression.
- string histogram_query = 1;
- // A map from the values of the facet associated with distinct values to the
- // number of matching entries with corresponding value.
- //
- // The key format is:
- //
- // * (for string histogram) string values stored in the field.
- map<string, int64> histogram = 2;
- }
|