1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.contentwarehouse.v1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/documentai/v1/document.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/type/datetime.proto"; 24*d5c09012SAndroid Build Coastguard Worker 25*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.ContentWarehouse.V1"; 26*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/contentwarehouse/apiv1/contentwarehousepb;contentwarehousepb"; 27*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 28*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "DocumentProto"; 29*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.contentwarehouse.v1"; 30*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\ContentWarehouse\\V1"; 31*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::ContentWarehouse::V1"; 32*d5c09012SAndroid Build Coastguard Worker 33*d5c09012SAndroid Build Coastguard Worker// Defines the structure for content warehouse document proto. 34*d5c09012SAndroid Build Coastguard Workermessage Document { 35*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 36*d5c09012SAndroid Build Coastguard Worker type: "contentwarehouse.googleapis.com/Document" 37*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/documents/{document}" 38*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/documents/referenceId/{reference_id}" 39*d5c09012SAndroid Build Coastguard Worker }; 40*d5c09012SAndroid Build Coastguard Worker 41*d5c09012SAndroid Build Coastguard Worker // The resource name of the document. 42*d5c09012SAndroid Build Coastguard Worker // Format: 43*d5c09012SAndroid Build Coastguard Worker // projects/{project_number}/locations/{location}/documents/{document_id}. 44*d5c09012SAndroid Build Coastguard Worker // 45*d5c09012SAndroid Build Coastguard Worker // The name is ignored when creating a document. 46*d5c09012SAndroid Build Coastguard Worker string name = 1; 47*d5c09012SAndroid Build Coastguard Worker 48*d5c09012SAndroid Build Coastguard Worker // The reference ID set by customers. Must be unique per project and location. 49*d5c09012SAndroid Build Coastguard Worker string reference_id = 11; 50*d5c09012SAndroid Build Coastguard Worker 51*d5c09012SAndroid Build Coastguard Worker // Required. Display name of the document given by the user. This name will be 52*d5c09012SAndroid Build Coastguard Worker // displayed in the UI. Customer can populate this field with the name of the 53*d5c09012SAndroid Build Coastguard Worker // document. This differs from the 'title' field as 'title' is optional and 54*d5c09012SAndroid Build Coastguard Worker // stores the top heading in the document. 55*d5c09012SAndroid Build Coastguard Worker string display_name = 2 [(google.api.field_behavior) = REQUIRED]; 56*d5c09012SAndroid Build Coastguard Worker 57*d5c09012SAndroid Build Coastguard Worker // Title that describes the document. 58*d5c09012SAndroid Build Coastguard Worker // This can be the top heading or text that describes the document. 59*d5c09012SAndroid Build Coastguard Worker string title = 18; 60*d5c09012SAndroid Build Coastguard Worker 61*d5c09012SAndroid Build Coastguard Worker // Uri to display the document, for example, in the UI. 62*d5c09012SAndroid Build Coastguard Worker string display_uri = 17; 63*d5c09012SAndroid Build Coastguard Worker 64*d5c09012SAndroid Build Coastguard Worker // The Document schema name. 65*d5c09012SAndroid Build Coastguard Worker // Format: 66*d5c09012SAndroid Build Coastguard Worker // projects/{project_number}/locations/{location}/documentSchemas/{document_schema_id}. 67*d5c09012SAndroid Build Coastguard Worker string document_schema_name = 3 [(google.api.resource_reference) = { 68*d5c09012SAndroid Build Coastguard Worker type: "contentwarehouse.googleapis.com/DocumentSchema" 69*d5c09012SAndroid Build Coastguard Worker }]; 70*d5c09012SAndroid Build Coastguard Worker 71*d5c09012SAndroid Build Coastguard Worker oneof structured_content { 72*d5c09012SAndroid Build Coastguard Worker // Other document format, such as PPTX, XLXS 73*d5c09012SAndroid Build Coastguard Worker string plain_text = 15; 74*d5c09012SAndroid Build Coastguard Worker 75*d5c09012SAndroid Build Coastguard Worker // Document AI format to save the structured content, including OCR. 76*d5c09012SAndroid Build Coastguard Worker google.cloud.documentai.v1.Document cloud_ai_document = 4; 77*d5c09012SAndroid Build Coastguard Worker } 78*d5c09012SAndroid Build Coastguard Worker 79*d5c09012SAndroid Build Coastguard Worker // A path linked to structured content file. 80*d5c09012SAndroid Build Coastguard Worker string structured_content_uri = 16 [deprecated = true]; 81*d5c09012SAndroid Build Coastguard Worker 82*d5c09012SAndroid Build Coastguard Worker // Raw document file. 83*d5c09012SAndroid Build Coastguard Worker oneof raw_document { 84*d5c09012SAndroid Build Coastguard Worker // Raw document file in Cloud Storage path. 85*d5c09012SAndroid Build Coastguard Worker string raw_document_path = 5; 86*d5c09012SAndroid Build Coastguard Worker 87*d5c09012SAndroid Build Coastguard Worker // Raw document content. 88*d5c09012SAndroid Build Coastguard Worker bytes inline_raw_document = 6; 89*d5c09012SAndroid Build Coastguard Worker } 90*d5c09012SAndroid Build Coastguard Worker 91*d5c09012SAndroid Build Coastguard Worker // List of values that are user supplied metadata. 92*d5c09012SAndroid Build Coastguard Worker repeated Property properties = 7; 93*d5c09012SAndroid Build Coastguard Worker 94*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the document is last updated. 95*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 8 96*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 97*d5c09012SAndroid Build Coastguard Worker 98*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the document is created. 99*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 9 100*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 101*d5c09012SAndroid Build Coastguard Worker 102*d5c09012SAndroid Build Coastguard Worker // This is used when DocAI was not used to load the document and parsing/ 103*d5c09012SAndroid Build Coastguard Worker // extracting is needed for the inline_raw_document. For example, if 104*d5c09012SAndroid Build Coastguard Worker // inline_raw_document is the byte representation of a PDF file, then 105*d5c09012SAndroid Build Coastguard Worker // this should be set to: RAW_DOCUMENT_FILE_TYPE_PDF. 106*d5c09012SAndroid Build Coastguard Worker RawDocumentFileType raw_document_file_type = 10; 107*d5c09012SAndroid Build Coastguard Worker 108*d5c09012SAndroid Build Coastguard Worker // If true, makes the document visible to asynchronous policies and rules. 109*d5c09012SAndroid Build Coastguard Worker bool async_enabled = 12 [deprecated = true]; 110*d5c09012SAndroid Build Coastguard Worker 111*d5c09012SAndroid Build Coastguard Worker // Indicates the category (image, audio, video etc.) of the original content. 112*d5c09012SAndroid Build Coastguard Worker ContentCategory content_category = 20; 113*d5c09012SAndroid Build Coastguard Worker 114*d5c09012SAndroid Build Coastguard Worker // If true, text extraction will not be performed. 115*d5c09012SAndroid Build Coastguard Worker bool text_extraction_disabled = 19 [deprecated = true]; 116*d5c09012SAndroid Build Coastguard Worker 117*d5c09012SAndroid Build Coastguard Worker // If true, text extraction will be performed. 118*d5c09012SAndroid Build Coastguard Worker bool text_extraction_enabled = 21; 119*d5c09012SAndroid Build Coastguard Worker 120*d5c09012SAndroid Build Coastguard Worker // The user who creates the document. 121*d5c09012SAndroid Build Coastguard Worker string creator = 13; 122*d5c09012SAndroid Build Coastguard Worker 123*d5c09012SAndroid Build Coastguard Worker // The user who lastly updates the document. 124*d5c09012SAndroid Build Coastguard Worker string updater = 14; 125*d5c09012SAndroid Build Coastguard Worker 126*d5c09012SAndroid Build Coastguard Worker // Output only. If linked to a Collection with RetentionPolicy, the date when 127*d5c09012SAndroid Build Coastguard Worker // the document becomes mutable. 128*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp disposition_time = 22 129*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 130*d5c09012SAndroid Build Coastguard Worker 131*d5c09012SAndroid Build Coastguard Worker // Output only. Indicates if the document has a legal hold on it. 132*d5c09012SAndroid Build Coastguard Worker bool legal_hold = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; 133*d5c09012SAndroid Build Coastguard Worker} 134*d5c09012SAndroid Build Coastguard Worker 135*d5c09012SAndroid Build Coastguard Worker// References to the documents. 136*d5c09012SAndroid Build Coastguard Workermessage DocumentReference { 137*d5c09012SAndroid Build Coastguard Worker // Required. Name of the referenced document. 138*d5c09012SAndroid Build Coastguard Worker string document_name = 1 [ 139*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 140*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 141*d5c09012SAndroid Build Coastguard Worker type: "contentwarehouse.googleapis.com/Document" 142*d5c09012SAndroid Build Coastguard Worker } 143*d5c09012SAndroid Build Coastguard Worker ]; 144*d5c09012SAndroid Build Coastguard Worker 145*d5c09012SAndroid Build Coastguard Worker // display_name of the referenced document; this name does not need to be 146*d5c09012SAndroid Build Coastguard Worker // consistent to the display_name in the Document proto, depending on the ACL 147*d5c09012SAndroid Build Coastguard Worker // constraint. 148*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 149*d5c09012SAndroid Build Coastguard Worker 150*d5c09012SAndroid Build Coastguard Worker // Stores the subset of the referenced document's content. 151*d5c09012SAndroid Build Coastguard Worker // This is useful to allow user peek the information of the referenced 152*d5c09012SAndroid Build Coastguard Worker // document. 153*d5c09012SAndroid Build Coastguard Worker string snippet = 3; 154*d5c09012SAndroid Build Coastguard Worker 155*d5c09012SAndroid Build Coastguard Worker // The document type of the document being referenced. 156*d5c09012SAndroid Build Coastguard Worker bool document_is_folder = 4; 157*d5c09012SAndroid Build Coastguard Worker 158*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the document is last updated. 159*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 5 160*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 161*d5c09012SAndroid Build Coastguard Worker 162*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the document is created. 163*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 6 164*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 165*d5c09012SAndroid Build Coastguard Worker 166*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the document is deleted. 167*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp delete_time = 7 168*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 169*d5c09012SAndroid Build Coastguard Worker 170*d5c09012SAndroid Build Coastguard Worker // Document is a folder with retention policy. 171*d5c09012SAndroid Build Coastguard Worker bool document_is_retention_folder = 8; 172*d5c09012SAndroid Build Coastguard Worker 173*d5c09012SAndroid Build Coastguard Worker // Document is a folder with legal hold. 174*d5c09012SAndroid Build Coastguard Worker bool document_is_legal_hold_folder = 9; 175*d5c09012SAndroid Build Coastguard Worker} 176*d5c09012SAndroid Build Coastguard Worker 177*d5c09012SAndroid Build Coastguard Worker// Property of a document. 178*d5c09012SAndroid Build Coastguard Workermessage Property { 179*d5c09012SAndroid Build Coastguard Worker // Required. Must match the name of a PropertyDefinition in the 180*d5c09012SAndroid Build Coastguard Worker // DocumentSchema. 181*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = REQUIRED]; 182*d5c09012SAndroid Build Coastguard Worker 183*d5c09012SAndroid Build Coastguard Worker // Type of the property. 184*d5c09012SAndroid Build Coastguard Worker // Must match the property_options type of the matching PropertyDefinition. 185*d5c09012SAndroid Build Coastguard Worker // Value of the Property parsed into a specific data type. 186*d5c09012SAndroid Build Coastguard Worker // Specific type value(s) obtained from Document AIs Property.mention_text 187*d5c09012SAndroid Build Coastguard Worker // field. 188*d5c09012SAndroid Build Coastguard Worker oneof values { 189*d5c09012SAndroid Build Coastguard Worker // Integer property values. 190*d5c09012SAndroid Build Coastguard Worker IntegerArray integer_values = 2; 191*d5c09012SAndroid Build Coastguard Worker 192*d5c09012SAndroid Build Coastguard Worker // Float property values. 193*d5c09012SAndroid Build Coastguard Worker FloatArray float_values = 3; 194*d5c09012SAndroid Build Coastguard Worker 195*d5c09012SAndroid Build Coastguard Worker // String/text property values. 196*d5c09012SAndroid Build Coastguard Worker TextArray text_values = 4; 197*d5c09012SAndroid Build Coastguard Worker 198*d5c09012SAndroid Build Coastguard Worker // Enum property values. 199*d5c09012SAndroid Build Coastguard Worker EnumArray enum_values = 5; 200*d5c09012SAndroid Build Coastguard Worker 201*d5c09012SAndroid Build Coastguard Worker // Nested structured data property values. 202*d5c09012SAndroid Build Coastguard Worker PropertyArray property_values = 6; 203*d5c09012SAndroid Build Coastguard Worker 204*d5c09012SAndroid Build Coastguard Worker // Date time property values. 205*d5c09012SAndroid Build Coastguard Worker // It is not supported by CMEK compliant deployment. 206*d5c09012SAndroid Build Coastguard Worker DateTimeArray date_time_values = 7; 207*d5c09012SAndroid Build Coastguard Worker 208*d5c09012SAndroid Build Coastguard Worker // Map property values. 209*d5c09012SAndroid Build Coastguard Worker MapProperty map_property = 8; 210*d5c09012SAndroid Build Coastguard Worker 211*d5c09012SAndroid Build Coastguard Worker // Timestamp property values. 212*d5c09012SAndroid Build Coastguard Worker // It is not supported by CMEK compliant deployment. 213*d5c09012SAndroid Build Coastguard Worker TimestampArray timestamp_values = 9; 214*d5c09012SAndroid Build Coastguard Worker } 215*d5c09012SAndroid Build Coastguard Worker} 216*d5c09012SAndroid Build Coastguard Worker 217*d5c09012SAndroid Build Coastguard Worker// Integer values. 218*d5c09012SAndroid Build Coastguard Workermessage IntegerArray { 219*d5c09012SAndroid Build Coastguard Worker // List of integer values. 220*d5c09012SAndroid Build Coastguard Worker repeated int32 values = 1; 221*d5c09012SAndroid Build Coastguard Worker} 222*d5c09012SAndroid Build Coastguard Worker 223*d5c09012SAndroid Build Coastguard Worker// Float values. 224*d5c09012SAndroid Build Coastguard Workermessage FloatArray { 225*d5c09012SAndroid Build Coastguard Worker // List of float values. 226*d5c09012SAndroid Build Coastguard Worker repeated float values = 1; 227*d5c09012SAndroid Build Coastguard Worker} 228*d5c09012SAndroid Build Coastguard Worker 229*d5c09012SAndroid Build Coastguard Worker// String/text values. 230*d5c09012SAndroid Build Coastguard Workermessage TextArray { 231*d5c09012SAndroid Build Coastguard Worker // List of text values. 232*d5c09012SAndroid Build Coastguard Worker repeated string values = 1; 233*d5c09012SAndroid Build Coastguard Worker} 234*d5c09012SAndroid Build Coastguard Worker 235*d5c09012SAndroid Build Coastguard Worker// Enum values. 236*d5c09012SAndroid Build Coastguard Workermessage EnumArray { 237*d5c09012SAndroid Build Coastguard Worker // List of enum values. 238*d5c09012SAndroid Build Coastguard Worker repeated string values = 1; 239*d5c09012SAndroid Build Coastguard Worker} 240*d5c09012SAndroid Build Coastguard Worker 241*d5c09012SAndroid Build Coastguard Worker// DateTime values. 242*d5c09012SAndroid Build Coastguard Workermessage DateTimeArray { 243*d5c09012SAndroid Build Coastguard Worker // List of datetime values. 244*d5c09012SAndroid Build Coastguard Worker // Both OffsetDateTime and ZonedDateTime are supported. 245*d5c09012SAndroid Build Coastguard Worker repeated google.type.DateTime values = 1; 246*d5c09012SAndroid Build Coastguard Worker} 247*d5c09012SAndroid Build Coastguard Worker 248*d5c09012SAndroid Build Coastguard Worker// Timestamp values. 249*d5c09012SAndroid Build Coastguard Workermessage TimestampArray { 250*d5c09012SAndroid Build Coastguard Worker // List of timestamp values. 251*d5c09012SAndroid Build Coastguard Worker repeated TimestampValue values = 1; 252*d5c09012SAndroid Build Coastguard Worker} 253*d5c09012SAndroid Build Coastguard Worker 254*d5c09012SAndroid Build Coastguard Worker// Timestamp value type. 255*d5c09012SAndroid Build Coastguard Workermessage TimestampValue { 256*d5c09012SAndroid Build Coastguard Worker oneof value { 257*d5c09012SAndroid Build Coastguard Worker // Timestamp value 258*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp timestamp_value = 1; 259*d5c09012SAndroid Build Coastguard Worker 260*d5c09012SAndroid Build Coastguard Worker // The string must represent a valid instant in UTC and is parsed using 261*d5c09012SAndroid Build Coastguard Worker // java.time.format.DateTimeFormatter.ISO_INSTANT. 262*d5c09012SAndroid Build Coastguard Worker // e.g. "2013-09-29T18:46:19Z" 263*d5c09012SAndroid Build Coastguard Worker string text_value = 2; 264*d5c09012SAndroid Build Coastguard Worker } 265*d5c09012SAndroid Build Coastguard Worker} 266*d5c09012SAndroid Build Coastguard Worker 267*d5c09012SAndroid Build Coastguard Worker// Property values. 268*d5c09012SAndroid Build Coastguard Workermessage PropertyArray { 269*d5c09012SAndroid Build Coastguard Worker // List of property values. 270*d5c09012SAndroid Build Coastguard Worker repeated Property properties = 1; 271*d5c09012SAndroid Build Coastguard Worker} 272*d5c09012SAndroid Build Coastguard Worker 273*d5c09012SAndroid Build Coastguard Worker// Map property value. 274*d5c09012SAndroid Build Coastguard Worker// Represents a structured entries of key value pairs, consisting of field names 275*d5c09012SAndroid Build Coastguard Worker// which map to dynamically typed values. 276*d5c09012SAndroid Build Coastguard Workermessage MapProperty { 277*d5c09012SAndroid Build Coastguard Worker // Unordered map of dynamically typed values. 278*d5c09012SAndroid Build Coastguard Worker map<string, Value> fields = 1; 279*d5c09012SAndroid Build Coastguard Worker} 280*d5c09012SAndroid Build Coastguard Worker 281*d5c09012SAndroid Build Coastguard Worker// `Value` represents a dynamically typed value which can be either be 282*d5c09012SAndroid Build Coastguard Worker// a float, a integer, a string, or a datetime value. A producer of value is 283*d5c09012SAndroid Build Coastguard Worker// expected to set one of these variants. Absence of any variant indicates an 284*d5c09012SAndroid Build Coastguard Worker// error. 285*d5c09012SAndroid Build Coastguard Workermessage Value { 286*d5c09012SAndroid Build Coastguard Worker // The kind of value. 287*d5c09012SAndroid Build Coastguard Worker oneof kind { 288*d5c09012SAndroid Build Coastguard Worker // Represents a float value. 289*d5c09012SAndroid Build Coastguard Worker float float_value = 1; 290*d5c09012SAndroid Build Coastguard Worker 291*d5c09012SAndroid Build Coastguard Worker // Represents a integer value. 292*d5c09012SAndroid Build Coastguard Worker int32 int_value = 2; 293*d5c09012SAndroid Build Coastguard Worker 294*d5c09012SAndroid Build Coastguard Worker // Represents a string value. 295*d5c09012SAndroid Build Coastguard Worker string string_value = 3; 296*d5c09012SAndroid Build Coastguard Worker 297*d5c09012SAndroid Build Coastguard Worker // Represents an enum value. 298*d5c09012SAndroid Build Coastguard Worker EnumValue enum_value = 4; 299*d5c09012SAndroid Build Coastguard Worker 300*d5c09012SAndroid Build Coastguard Worker // Represents a datetime value. 301*d5c09012SAndroid Build Coastguard Worker google.type.DateTime datetime_value = 5; 302*d5c09012SAndroid Build Coastguard Worker 303*d5c09012SAndroid Build Coastguard Worker // Represents a timestamp value. 304*d5c09012SAndroid Build Coastguard Worker TimestampValue timestamp_value = 6; 305*d5c09012SAndroid Build Coastguard Worker 306*d5c09012SAndroid Build Coastguard Worker // Represents a boolean value. 307*d5c09012SAndroid Build Coastguard Worker bool boolean_value = 7; 308*d5c09012SAndroid Build Coastguard Worker } 309*d5c09012SAndroid Build Coastguard Worker} 310*d5c09012SAndroid Build Coastguard Worker 311*d5c09012SAndroid Build Coastguard Worker// Represents the string value of the enum field. 312*d5c09012SAndroid Build Coastguard Workermessage EnumValue { 313*d5c09012SAndroid Build Coastguard Worker // String value of the enum field. This must match defined set of enums 314*d5c09012SAndroid Build Coastguard Worker // in document schema using EnumTypeOptions. 315*d5c09012SAndroid Build Coastguard Worker string value = 1; 316*d5c09012SAndroid Build Coastguard Worker} 317*d5c09012SAndroid Build Coastguard Worker 318*d5c09012SAndroid Build Coastguard Worker// When a raw document is supplied, this indicates the file format 319*d5c09012SAndroid Build Coastguard Workerenum RawDocumentFileType { 320*d5c09012SAndroid Build Coastguard Worker // No raw document specified or it is non-parsable 321*d5c09012SAndroid Build Coastguard Worker RAW_DOCUMENT_FILE_TYPE_UNSPECIFIED = 0; 322*d5c09012SAndroid Build Coastguard Worker 323*d5c09012SAndroid Build Coastguard Worker // Adobe PDF format 324*d5c09012SAndroid Build Coastguard Worker RAW_DOCUMENT_FILE_TYPE_PDF = 1; 325*d5c09012SAndroid Build Coastguard Worker 326*d5c09012SAndroid Build Coastguard Worker // Microsoft Word format 327*d5c09012SAndroid Build Coastguard Worker RAW_DOCUMENT_FILE_TYPE_DOCX = 2; 328*d5c09012SAndroid Build Coastguard Worker 329*d5c09012SAndroid Build Coastguard Worker // Microsoft Excel format 330*d5c09012SAndroid Build Coastguard Worker RAW_DOCUMENT_FILE_TYPE_XLSX = 3; 331*d5c09012SAndroid Build Coastguard Worker 332*d5c09012SAndroid Build Coastguard Worker // Microsoft Powerpoint format 333*d5c09012SAndroid Build Coastguard Worker RAW_DOCUMENT_FILE_TYPE_PPTX = 4; 334*d5c09012SAndroid Build Coastguard Worker 335*d5c09012SAndroid Build Coastguard Worker // UTF-8 encoded text format 336*d5c09012SAndroid Build Coastguard Worker RAW_DOCUMENT_FILE_TYPE_TEXT = 5; 337*d5c09012SAndroid Build Coastguard Worker 338*d5c09012SAndroid Build Coastguard Worker // TIFF or TIF image file format 339*d5c09012SAndroid Build Coastguard Worker RAW_DOCUMENT_FILE_TYPE_TIFF = 6; 340*d5c09012SAndroid Build Coastguard Worker} 341*d5c09012SAndroid Build Coastguard Worker 342*d5c09012SAndroid Build Coastguard Worker// When a raw document or structured content is supplied, this stores the 343*d5c09012SAndroid Build Coastguard Worker// content category. 344*d5c09012SAndroid Build Coastguard Workerenum ContentCategory { 345*d5c09012SAndroid Build Coastguard Worker // No category is specified. 346*d5c09012SAndroid Build Coastguard Worker CONTENT_CATEGORY_UNSPECIFIED = 0; 347*d5c09012SAndroid Build Coastguard Worker 348*d5c09012SAndroid Build Coastguard Worker // Content is of image type. 349*d5c09012SAndroid Build Coastguard Worker CONTENT_CATEGORY_IMAGE = 1; 350*d5c09012SAndroid Build Coastguard Worker 351*d5c09012SAndroid Build Coastguard Worker // Content is of audio type. 352*d5c09012SAndroid Build Coastguard Worker CONTENT_CATEGORY_AUDIO = 2; 353*d5c09012SAndroid Build Coastguard Worker 354*d5c09012SAndroid Build Coastguard Worker // Content is of video type. 355*d5c09012SAndroid Build Coastguard Worker CONTENT_CATEGORY_VIDEO = 3; 356*d5c09012SAndroid Build Coastguard Worker} 357