google-cloud-document_ai-v1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google-cloud-document_ai-v1.rb +21 -0
  7. data/lib/google/cloud/document_ai/v1.rb +38 -0
  8. data/lib/google/cloud/document_ai/v1/document_processor_service.rb +53 -0
  9. data/lib/google/cloud/document_ai/v1/document_processor_service/client.rb +581 -0
  10. data/lib/google/cloud/document_ai/v1/document_processor_service/credentials.rb +51 -0
  11. data/lib/google/cloud/document_ai/v1/document_processor_service/operations.rb +655 -0
  12. data/lib/google/cloud/document_ai/v1/document_processor_service/paths.rb +71 -0
  13. data/lib/google/cloud/document_ai/v1/version.rb +28 -0
  14. data/lib/google/cloud/documentai/v1/document_io_pb.rb +54 -0
  15. data/lib/google/cloud/documentai/v1/document_pb.rb +298 -0
  16. data/lib/google/cloud/documentai/v1/document_processor_service_pb.rb +107 -0
  17. data/lib/google/cloud/documentai/v1/document_processor_service_services_pb.rb +54 -0
  18. data/lib/google/cloud/documentai/v1/geometry_pb.rb +34 -0
  19. data/lib/google/cloud/documentai/v1/operation_metadata_pb.rb +36 -0
  20. data/proto_docs/README.md +4 -0
  21. data/proto_docs/google/api/field_behavior.rb +65 -0
  22. data/proto_docs/google/api/resource.rb +283 -0
  23. data/proto_docs/google/cloud/documentai/v1/document.rb +791 -0
  24. data/proto_docs/google/cloud/documentai/v1/document_io.rb +100 -0
  25. data/proto_docs/google/cloud/documentai/v1/document_processor_service.rb +221 -0
  26. data/proto_docs/google/cloud/documentai/v1/geometry.rb +65 -0
  27. data/proto_docs/google/cloud/documentai/v1/operation_metadata.rb +65 -0
  28. data/proto_docs/google/longrunning/operations.rb +164 -0
  29. data/proto_docs/google/protobuf/any.rb +141 -0
  30. data/proto_docs/google/protobuf/duration.rb +98 -0
  31. data/proto_docs/google/protobuf/empty.rb +36 -0
  32. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  33. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  34. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  35. data/proto_docs/google/rpc/status.rb +46 -0
  36. data/proto_docs/google/type/color.rb +173 -0
  37. data/proto_docs/google/type/date.rb +53 -0
  38. data/proto_docs/google/type/datetime.rb +99 -0
  39. data/proto_docs/google/type/money.rb +43 -0
  40. data/proto_docs/google/type/postal_address.rb +135 -0
  41. metadata +231 -0
@@ -0,0 +1,791 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module DocumentAI
23
+ module V1
24
+ # Document represents the canonical document resource in Document Understanding
25
+ # AI.
26
+ # It is an interchange format that provides insights into documents and allows
27
+ # for collaboration between users and Document Understanding AI to iterate and
28
+ # optimize for quality.
29
+ # @!attribute [rw] uri
30
+ # @return [::String]
31
+ # Optional. Currently supports Google Cloud Storage URI of the form
32
+ # `gs://bucket_name/object_name`. Object versioning is not supported.
33
+ # See [Google Cloud Storage Request
34
+ # URIs](https://cloud.google.com/storage/docs/reference-uris) for more
35
+ # info.
36
+ # @!attribute [rw] content
37
+ # @return [::String]
38
+ # Optional. Inline document content, represented as a stream of bytes.
39
+ # Note: As with all `bytes` fields, protobuffers use a pure binary
40
+ # representation, whereas JSON representations use base64.
41
+ # @!attribute [rw] mime_type
42
+ # @return [::String]
43
+ # An IANA published MIME type (also referred to as media type). For more
44
+ # information, see
45
+ # https://www.iana.org/assignments/media-types/media-types.xhtml.
46
+ # @!attribute [rw] text
47
+ # @return [::String]
48
+ # Optional. UTF-8 encoded text in reading order from the document.
49
+ # @!attribute [rw] text_styles
50
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Style>]
51
+ # Styles for the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
52
+ # @!attribute [rw] pages
53
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page>]
54
+ # Visual page layout for the {::Google::Cloud::DocumentAI::V1::Document Document}.
55
+ # @!attribute [rw] entities
56
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Entity>]
57
+ # A list of entities detected on {::Google::Cloud::DocumentAI::V1::Document#text Document.text}. For document shards,
58
+ # entities in this list may cross shard boundaries.
59
+ # @!attribute [rw] entity_relations
60
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::EntityRelation>]
61
+ # Relationship among {::Google::Cloud::DocumentAI::V1::Document#entities Document.entities}.
62
+ # @!attribute [rw] text_changes
63
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::TextChange>]
64
+ # A list of text corrections made to [Document.text]. This is usually
65
+ # used for annotating corrections to OCR mistakes. Text changes for a given
66
+ # revision may not overlap with each other.
67
+ # @!attribute [rw] shard_info
68
+ # @return [::Google::Cloud::DocumentAI::V1::Document::ShardInfo]
69
+ # Information about the sharding if this document is sharded part of a larger
70
+ # document. If the document is not sharded, this message is not specified.
71
+ # @!attribute [rw] error
72
+ # @return [::Google::Rpc::Status]
73
+ # Any error that occurred while processing this document.
74
+ # @!attribute [rw] revisions
75
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Revision>]
76
+ # Revision history of this document.
77
+ class Document
78
+ include ::Google::Protobuf::MessageExts
79
+ extend ::Google::Protobuf::MessageExts::ClassMethods
80
+
81
+ # For a large document, sharding may be performed to produce several
82
+ # document shards. Each document shard contains this field to detail which
83
+ # shard it is.
84
+ # @!attribute [rw] shard_index
85
+ # @return [::Integer]
86
+ # The 0-based index of this shard.
87
+ # @!attribute [rw] shard_count
88
+ # @return [::Integer]
89
+ # Total number of shards.
90
+ # @!attribute [rw] text_offset
91
+ # @return [::Integer]
92
+ # The index of the first character in {::Google::Cloud::DocumentAI::V1::Document#text Document.text} in the overall
93
+ # document global text.
94
+ class ShardInfo
95
+ include ::Google::Protobuf::MessageExts
96
+ extend ::Google::Protobuf::MessageExts::ClassMethods
97
+ end
98
+
99
+ # Annotation for common text style attributes. This adheres to CSS
100
+ # conventions as much as possible.
101
+ # @!attribute [rw] text_anchor
102
+ # @return [::Google::Cloud::DocumentAI::V1::Document::TextAnchor]
103
+ # Text anchor indexing into the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
104
+ # @!attribute [rw] color
105
+ # @return [::Google::Type::Color]
106
+ # Text color.
107
+ # @!attribute [rw] background_color
108
+ # @return [::Google::Type::Color]
109
+ # Text background color.
110
+ # @!attribute [rw] font_weight
111
+ # @return [::String]
112
+ # Font weight. Possible values are normal, bold, bolder, and lighter.
113
+ # https://www.w3schools.com/cssref/pr_font_weight.asp
114
+ # @!attribute [rw] text_style
115
+ # @return [::String]
116
+ # Text style. Possible values are normal, italic, and oblique.
117
+ # https://www.w3schools.com/cssref/pr_font_font-style.asp
118
+ # @!attribute [rw] text_decoration
119
+ # @return [::String]
120
+ # Text decoration. Follows CSS standard.
121
+ # <text-decoration-line> <text-decoration-color> <text-decoration-style>
122
+ # https://www.w3schools.com/cssref/pr_text_text-decoration.asp
123
+ # @!attribute [rw] font_size
124
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Style::FontSize]
125
+ # Font size.
126
+ class Style
127
+ include ::Google::Protobuf::MessageExts
128
+ extend ::Google::Protobuf::MessageExts::ClassMethods
129
+
130
+ # Font size with unit.
131
+ # @!attribute [rw] size
132
+ # @return [::Float]
133
+ # Font size for the text.
134
+ # @!attribute [rw] unit
135
+ # @return [::String]
136
+ # Unit for the font size. Follows CSS naming (in, px, pt, etc.).
137
+ class FontSize
138
+ include ::Google::Protobuf::MessageExts
139
+ extend ::Google::Protobuf::MessageExts::ClassMethods
140
+ end
141
+ end
142
+
143
+ # A page in a {::Google::Cloud::DocumentAI::V1::Document Document}.
144
+ # @!attribute [rw] page_number
145
+ # @return [::Integer]
146
+ # 1-based index for current {::Google::Cloud::DocumentAI::V1::Document::Page Page} in a parent {::Google::Cloud::DocumentAI::V1::Document Document}.
147
+ # Useful when a page is taken out of a {::Google::Cloud::DocumentAI::V1::Document Document} for individual
148
+ # processing.
149
+ # @!attribute [rw] image
150
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Image]
151
+ # Rendered image for this page. This image is preprocessed to remove any
152
+ # skew, rotation, and distortions such that the annotation bounding boxes
153
+ # can be upright and axis-aligned.
154
+ # @!attribute [rw] transforms
155
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Matrix>]
156
+ # Transformation matrices that were applied to the original document image
157
+ # to produce {::Google::Cloud::DocumentAI::V1::Document::Page#image Page.image}.
158
+ # @!attribute [rw] dimension
159
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Dimension]
160
+ # Physical dimension of the page.
161
+ # @!attribute [rw] layout
162
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
163
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for the page.
164
+ # @!attribute [rw] detected_languages
165
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
166
+ # A list of detected languages together with confidence.
167
+ # @!attribute [rw] blocks
168
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Block>]
169
+ # A list of visually detected text blocks on the page.
170
+ # A block has a set of lines (collected into paragraphs) that have a common
171
+ # line-spacing and orientation.
172
+ # @!attribute [rw] paragraphs
173
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Paragraph>]
174
+ # A list of visually detected text paragraphs on the page.
175
+ # A collection of lines that a human would perceive as a paragraph.
176
+ # @!attribute [rw] lines
177
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Line>]
178
+ # A list of visually detected text lines on the page.
179
+ # A collection of tokens that a human would perceive as a line.
180
+ # @!attribute [rw] tokens
181
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Token>]
182
+ # A list of visually detected tokens on the page.
183
+ # @!attribute [rw] visual_elements
184
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::VisualElement>]
185
+ # A list of detected non-text visual elements e.g. checkbox,
186
+ # signature etc. on the page.
187
+ # @!attribute [rw] tables
188
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Table>]
189
+ # A list of visually detected tables on the page.
190
+ # @!attribute [rw] form_fields
191
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::FormField>]
192
+ # A list of visually detected form fields on the page.
193
+ class Page
194
+ include ::Google::Protobuf::MessageExts
195
+ extend ::Google::Protobuf::MessageExts::ClassMethods
196
+
197
+ # Dimension for the page.
198
+ # @!attribute [rw] width
199
+ # @return [::Float]
200
+ # Page width.
201
+ # @!attribute [rw] height
202
+ # @return [::Float]
203
+ # Page height.
204
+ # @!attribute [rw] unit
205
+ # @return [::String]
206
+ # Dimension unit.
207
+ class Dimension
208
+ include ::Google::Protobuf::MessageExts
209
+ extend ::Google::Protobuf::MessageExts::ClassMethods
210
+ end
211
+
212
+ # Rendered image contents for this page.
213
+ # @!attribute [rw] content
214
+ # @return [::String]
215
+ # Raw byte content of the image.
216
+ # @!attribute [rw] mime_type
217
+ # @return [::String]
218
+ # Encoding mime type for the image.
219
+ # @!attribute [rw] width
220
+ # @return [::Integer]
221
+ # Width of the image in pixels.
222
+ # @!attribute [rw] height
223
+ # @return [::Integer]
224
+ # Height of the image in pixels.
225
+ class Image
226
+ include ::Google::Protobuf::MessageExts
227
+ extend ::Google::Protobuf::MessageExts::ClassMethods
228
+ end
229
+
230
+ # Representation for transformation matrix, intended to be compatible and
231
+ # used with OpenCV format for image manipulation.
232
+ # @!attribute [rw] rows
233
+ # @return [::Integer]
234
+ # Number of rows in the matrix.
235
+ # @!attribute [rw] cols
236
+ # @return [::Integer]
237
+ # Number of columns in the matrix.
238
+ # @!attribute [rw] type
239
+ # @return [::Integer]
240
+ # This encodes information about what data type the matrix uses.
241
+ # For example, 0 (CV_8U) is an unsigned 8-bit image. For the full list
242
+ # of OpenCV primitive data types, please refer to
243
+ # https://docs.opencv.org/4.3.0/d1/d1b/group__core__hal__interface.html
244
+ # @!attribute [rw] data
245
+ # @return [::String]
246
+ # The matrix data.
247
+ class Matrix
248
+ include ::Google::Protobuf::MessageExts
249
+ extend ::Google::Protobuf::MessageExts::ClassMethods
250
+ end
251
+
252
+ # Visual element describing a layout unit on a page.
253
+ # @!attribute [rw] text_anchor
254
+ # @return [::Google::Cloud::DocumentAI::V1::Document::TextAnchor]
255
+ # Text anchor indexing into the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
256
+ # @!attribute [rw] confidence
257
+ # @return [::Float]
258
+ # Confidence of the current {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} within context of the object this
259
+ # layout is for. e.g. confidence can be for a single token, a table,
260
+ # a visual element, etc. depending on context. Range [0, 1].
261
+ # @!attribute [rw] bounding_poly
262
+ # @return [::Google::Cloud::DocumentAI::V1::BoundingPoly]
263
+ # The bounding polygon for the {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout}.
264
+ # @!attribute [rw] orientation
265
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout::Orientation]
266
+ # Detected orientation for the {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout}.
267
+ class Layout
268
+ include ::Google::Protobuf::MessageExts
269
+ extend ::Google::Protobuf::MessageExts::ClassMethods
270
+
271
+ # Detected human reading orientation.
272
+ module Orientation
273
+ # Unspecified orientation.
274
+ ORIENTATION_UNSPECIFIED = 0
275
+
276
+ # Orientation is aligned with page up.
277
+ PAGE_UP = 1
278
+
279
+ # Orientation is aligned with page right.
280
+ # Turn the head 90 degrees clockwise from upright to read.
281
+ PAGE_RIGHT = 2
282
+
283
+ # Orientation is aligned with page down.
284
+ # Turn the head 180 degrees from upright to read.
285
+ PAGE_DOWN = 3
286
+
287
+ # Orientation is aligned with page left.
288
+ # Turn the head 90 degrees counterclockwise from upright to read.
289
+ PAGE_LEFT = 4
290
+ end
291
+ end
292
+
293
+ # A block has a set of lines (collected into paragraphs) that have a
294
+ # common line-spacing and orientation.
295
+ # @!attribute [rw] layout
296
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
297
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for {::Google::Cloud::DocumentAI::V1::Document::Page::Block Block}.
298
+ # @!attribute [rw] detected_languages
299
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
300
+ # A list of detected languages together with confidence.
301
+ # @!attribute [rw] provenance
302
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Provenance]
303
+ # The history of this annotation.
304
+ class Block
305
+ include ::Google::Protobuf::MessageExts
306
+ extend ::Google::Protobuf::MessageExts::ClassMethods
307
+ end
308
+
309
+ # A collection of lines that a human would perceive as a paragraph.
310
+ # @!attribute [rw] layout
311
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
312
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for {::Google::Cloud::DocumentAI::V1::Document::Page::Paragraph Paragraph}.
313
+ # @!attribute [rw] detected_languages
314
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
315
+ # A list of detected languages together with confidence.
316
+ # @!attribute [rw] provenance
317
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Provenance]
318
+ # The history of this annotation.
319
+ class Paragraph
320
+ include ::Google::Protobuf::MessageExts
321
+ extend ::Google::Protobuf::MessageExts::ClassMethods
322
+ end
323
+
324
+ # A collection of tokens that a human would perceive as a line.
325
+ # Does not cross column boundaries, can be horizontal, vertical, etc.
326
+ # @!attribute [rw] layout
327
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
328
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for {::Google::Cloud::DocumentAI::V1::Document::Page::Line Line}.
329
+ # @!attribute [rw] detected_languages
330
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
331
+ # A list of detected languages together with confidence.
332
+ # @!attribute [rw] provenance
333
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Provenance]
334
+ # The history of this annotation.
335
+ class Line
336
+ include ::Google::Protobuf::MessageExts
337
+ extend ::Google::Protobuf::MessageExts::ClassMethods
338
+ end
339
+
340
+ # A detected token.
341
+ # @!attribute [rw] layout
342
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
343
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for {::Google::Cloud::DocumentAI::V1::Document::Page::Token Token}.
344
+ # @!attribute [rw] detected_break
345
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Token::DetectedBreak]
346
+ # Detected break at the end of a {::Google::Cloud::DocumentAI::V1::Document::Page::Token Token}.
347
+ # @!attribute [rw] detected_languages
348
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
349
+ # A list of detected languages together with confidence.
350
+ # @!attribute [rw] provenance
351
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Provenance]
352
+ # The history of this annotation.
353
+ class Token
354
+ include ::Google::Protobuf::MessageExts
355
+ extend ::Google::Protobuf::MessageExts::ClassMethods
356
+
357
+ # Detected break at the end of a {::Google::Cloud::DocumentAI::V1::Document::Page::Token Token}.
358
+ # @!attribute [rw] type
359
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Token::DetectedBreak::Type]
360
+ # Detected break type.
361
+ class DetectedBreak
362
+ include ::Google::Protobuf::MessageExts
363
+ extend ::Google::Protobuf::MessageExts::ClassMethods
364
+
365
+ # Enum to denote the type of break found.
366
+ module Type
367
+ # Unspecified break type.
368
+ TYPE_UNSPECIFIED = 0
369
+
370
+ # A single whitespace.
371
+ SPACE = 1
372
+
373
+ # A wider whitespace.
374
+ WIDE_SPACE = 2
375
+
376
+ # A hyphen that indicates that a token has been split across lines.
377
+ HYPHEN = 3
378
+ end
379
+ end
380
+ end
381
+
382
+ # Detected non-text visual elements e.g. checkbox, signature etc. on the
383
+ # page.
384
+ # @!attribute [rw] layout
385
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
386
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for {::Google::Cloud::DocumentAI::V1::Document::Page::VisualElement VisualElement}.
387
+ # @!attribute [rw] type
388
+ # @return [::String]
389
+ # Type of the {::Google::Cloud::DocumentAI::V1::Document::Page::VisualElement VisualElement}.
390
+ # @!attribute [rw] detected_languages
391
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
392
+ # A list of detected languages together with confidence.
393
+ class VisualElement
394
+ include ::Google::Protobuf::MessageExts
395
+ extend ::Google::Protobuf::MessageExts::ClassMethods
396
+ end
397
+
398
+ # A table representation similar to HTML table structure.
399
+ # @!attribute [rw] layout
400
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
401
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for {::Google::Cloud::DocumentAI::V1::Document::Page::Table Table}.
402
+ # @!attribute [rw] header_rows
403
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Table::TableRow>]
404
+ # Header rows of the table.
405
+ # @!attribute [rw] body_rows
406
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Table::TableRow>]
407
+ # Body rows of the table.
408
+ # @!attribute [rw] detected_languages
409
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
410
+ # A list of detected languages together with confidence.
411
+ class Table
412
+ include ::Google::Protobuf::MessageExts
413
+ extend ::Google::Protobuf::MessageExts::ClassMethods
414
+
415
+ # A row of table cells.
416
+ # @!attribute [rw] cells
417
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::Table::TableCell>]
418
+ # Cells that make up this row.
419
+ class TableRow
420
+ include ::Google::Protobuf::MessageExts
421
+ extend ::Google::Protobuf::MessageExts::ClassMethods
422
+ end
423
+
424
+ # A cell representation inside the table.
425
+ # @!attribute [rw] layout
426
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
427
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for {::Google::Cloud::DocumentAI::V1::Document::Page::Table::TableCell TableCell}.
428
+ # @!attribute [rw] row_span
429
+ # @return [::Integer]
430
+ # How many rows this cell spans.
431
+ # @!attribute [rw] col_span
432
+ # @return [::Integer]
433
+ # How many columns this cell spans.
434
+ # @!attribute [rw] detected_languages
435
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
436
+ # A list of detected languages together with confidence.
437
+ class TableCell
438
+ include ::Google::Protobuf::MessageExts
439
+ extend ::Google::Protobuf::MessageExts::ClassMethods
440
+ end
441
+ end
442
+
443
+ # A form field detected on the page.
444
+ # @!attribute [rw] field_name
445
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
446
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for the {::Google::Cloud::DocumentAI::V1::Document::Page::FormField FormField} name. e.g. `Address`, `Email`,
447
+ # `Grand total`, `Phone number`, etc.
448
+ # @!attribute [rw] field_value
449
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Page::Layout]
450
+ # {::Google::Cloud::DocumentAI::V1::Document::Page::Layout Layout} for the {::Google::Cloud::DocumentAI::V1::Document::Page::FormField FormField} value.
451
+ # @!attribute [rw] name_detected_languages
452
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
453
+ # A list of detected languages for name together with confidence.
454
+ # @!attribute [rw] value_detected_languages
455
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Page::DetectedLanguage>]
456
+ # A list of detected languages for value together with confidence.
457
+ # @!attribute [rw] value_type
458
+ # @return [::String]
459
+ # If the value is non-textual, this field represents the type. Current
460
+ # valid values are:
461
+ # - blank (this indicates the field_value is normal text)
462
+ # - "unfilled_checkbox"
463
+ # - "filled_checkbox"
464
+ class FormField
465
+ include ::Google::Protobuf::MessageExts
466
+ extend ::Google::Protobuf::MessageExts::ClassMethods
467
+ end
468
+
469
+ # Detected language for a structural component.
470
+ # @!attribute [rw] language_code
471
+ # @return [::String]
472
+ # The BCP-47 language code, such as "en-US" or "sr-Latn". For more
473
+ # information, see
474
+ # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
475
+ # @!attribute [rw] confidence
476
+ # @return [::Float]
477
+ # Confidence of detected language. Range [0, 1].
478
+ class DetectedLanguage
479
+ include ::Google::Protobuf::MessageExts
480
+ extend ::Google::Protobuf::MessageExts::ClassMethods
481
+ end
482
+ end
483
+
484
+ # A phrase in the text that is a known entity type, such as a person, an
485
+ # organization, or location.
486
+ # @!attribute [rw] text_anchor
487
+ # @return [::Google::Cloud::DocumentAI::V1::Document::TextAnchor]
488
+ # Optional. Provenance of the entity.
489
+ # Text anchor indexing into the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
490
+ # @!attribute [rw] type
491
+ # @return [::String]
492
+ # Entity type from a schema e.g. `Address`.
493
+ # @!attribute [rw] mention_text
494
+ # @return [::String]
495
+ # Optional. Text value in the document e.g. `1600 Amphitheatre Pkwy`.
496
+ # @!attribute [rw] mention_id
497
+ # @return [::String]
498
+ # Optional. Deprecated. Use `id` field instead.
499
+ # @!attribute [rw] confidence
500
+ # @return [::Float]
501
+ # Optional. Confidence of detected Schema entity. Range [0, 1].
502
+ # @!attribute [rw] page_anchor
503
+ # @return [::Google::Cloud::DocumentAI::V1::Document::PageAnchor]
504
+ # Optional. Represents the provenance of this entity wrt. the location on the
505
+ # page where it was found.
506
+ # @!attribute [rw] id
507
+ # @return [::String]
508
+ # Optional. Canonical id. This will be a unique value in the entity list
509
+ # for this document.
510
+ # @!attribute [rw] normalized_value
511
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Entity::NormalizedValue]
512
+ # Optional. Normalized entity value. Absent if the extracted value could not be
513
+ # converted or the type (e.g. address) is not supported for certain
514
+ # parsers. This field is also only populated for certain supported document
515
+ # types.
516
+ # @!attribute [rw] properties
517
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Entity>]
518
+ # Optional. Entities can be nested to form a hierarchical data structure representing
519
+ # the content in the document.
520
+ # @!attribute [rw] provenance
521
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Provenance]
522
+ # Optional. The history of this annotation.
523
+ # @!attribute [rw] redacted
524
+ # @return [::Boolean]
525
+ # Optional. Whether the entity will be redacted for de-identification purposes.
526
+ class Entity
527
+ include ::Google::Protobuf::MessageExts
528
+ extend ::Google::Protobuf::MessageExts::ClassMethods
529
+
530
+ # Parsed and normalized entity value.
531
+ # @!attribute [rw] money_value
532
+ # @return [::Google::Type::Money]
533
+ # Money value. See also:
534
+ # https://github.com/googleapis/googleapis/blob/master/google/type/money.proto
535
+ # @!attribute [rw] date_value
536
+ # @return [::Google::Type::Date]
537
+ # Date value. Includes year, month, day. See also:
538
+ # https://github.com/googleapis/googleapis/blob/master/google/type/date.proto
539
+ # @!attribute [rw] datetime_value
540
+ # @return [::Google::Type::DateTime]
541
+ # DateTime value. Includes date, time, and timezone. See also:
542
+ # https://github.com/googleapis/googleapis/blob/master/google/type/datetime.proto
543
+ # @!attribute [rw] address_value
544
+ # @return [::Google::Type::PostalAddress]
545
+ # Postal address. See also:
546
+ # https://github.com/googleapis/googleapis/blob/master/google/type/postal_address.proto
547
+ # @!attribute [rw] boolean_value
548
+ # @return [::Boolean]
549
+ # Boolean value. Can be used for entities with binary values, or for
550
+ # checkboxes.
551
+ # @!attribute [rw] text
552
+ # @return [::String]
553
+ # Required. Normalized entity value stored as a string. This field is populated for
554
+ # supported document type (e.g. Invoice). For some entity types, one of
555
+ # respective 'structured_value' fields may also be populated.
556
+ #
557
+ # - Money/Currency type (`money_value`) is in the ISO 4217 text format.
558
+ # - Date type (`date_value`) is in the ISO 8601 text format.
559
+ # - Datetime type (`datetime_value`) is in the ISO 8601 text format.
560
+ class NormalizedValue
561
+ include ::Google::Protobuf::MessageExts
562
+ extend ::Google::Protobuf::MessageExts::ClassMethods
563
+ end
564
+ end
565
+
566
+ # Relationship between {::Google::Cloud::DocumentAI::V1::Document::Entity Entities}.
567
+ # @!attribute [rw] subject_id
568
+ # @return [::String]
569
+ # Subject entity id.
570
+ # @!attribute [rw] object_id
571
+ # @return [::String]
572
+ # Object entity id.
573
+ # @!attribute [rw] relation
574
+ # @return [::String]
575
+ # Relationship description.
576
+ class EntityRelation
577
+ include ::Google::Protobuf::MessageExts
578
+ extend ::Google::Protobuf::MessageExts::ClassMethods
579
+ end
580
+
581
+ # Text reference indexing into the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
582
+ # @!attribute [rw] text_segments
583
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::TextAnchor::TextSegment>]
584
+ # The text segments from the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
585
+ # @!attribute [rw] content
586
+ # @return [::String]
587
+ # Contains the content of the text span so that users do
588
+ # not have to look it up in the text_segments.
589
+ class TextAnchor
590
+ include ::Google::Protobuf::MessageExts
591
+ extend ::Google::Protobuf::MessageExts::ClassMethods
592
+
593
+ # A text segment in the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}. The indices may be out of bounds
594
+ # which indicate that the text extends into another document shard for
595
+ # large sharded documents. See {::Google::Cloud::DocumentAI::V1::Document::ShardInfo#text_offset ShardInfo.text_offset}
596
+ # @!attribute [rw] start_index
597
+ # @return [::Integer]
598
+ # {::Google::Cloud::DocumentAI::V1::Document::TextAnchor::TextSegment TextSegment} start UTF-8 char index in the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
599
+ # @!attribute [rw] end_index
600
+ # @return [::Integer]
601
+ # {::Google::Cloud::DocumentAI::V1::Document::TextAnchor::TextSegment TextSegment} half open end UTF-8 char index in the
602
+ # {::Google::Cloud::DocumentAI::V1::Document#text Document.text}.
603
+ class TextSegment
604
+ include ::Google::Protobuf::MessageExts
605
+ extend ::Google::Protobuf::MessageExts::ClassMethods
606
+ end
607
+ end
608
+
609
+ # Referencing the visual context of the entity in the {::Google::Cloud::DocumentAI::V1::Document#pages Document.pages}.
610
+ # Page anchors can be cross-page, consist of multiple bounding polygons and
611
+ # optionally reference specific layout element types.
612
+ # @!attribute [rw] page_refs
613
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::PageAnchor::PageRef>]
614
+ # One or more references to visual page elements
615
+ class PageAnchor
616
+ include ::Google::Protobuf::MessageExts
617
+ extend ::Google::Protobuf::MessageExts::ClassMethods
618
+
619
+ # Represents a weak reference to a page element within a document.
620
+ # @!attribute [rw] page
621
+ # @return [::Integer]
622
+ # Required. Index into the {::Google::Cloud::DocumentAI::V1::Document#pages Document.pages} element, for example using
623
+ # [Document.pages][page_refs.page] to locate the related page element.
624
+ # @!attribute [rw] layout_type
625
+ # @return [::Google::Cloud::DocumentAI::V1::Document::PageAnchor::PageRef::LayoutType]
626
+ # Optional. The type of the layout element that is being referenced if any.
627
+ # @!attribute [rw] layout_id
628
+ # @return [::String]
629
+ # Optional. Deprecated. Use {::Google::Cloud::DocumentAI::V1::Document::PageAnchor::PageRef#bounding_poly PageRef.bounding_poly} instead.
630
+ # @!attribute [rw] bounding_poly
631
+ # @return [::Google::Cloud::DocumentAI::V1::BoundingPoly]
632
+ # Optional. Identifies the bounding polygon of a layout element on the page.
633
+ # @!attribute [rw] confidence
634
+ # @return [::Float]
635
+ # Optional. Confidence of detected page element, if applicable. Range [0, 1].
636
+ class PageRef
637
+ include ::Google::Protobuf::MessageExts
638
+ extend ::Google::Protobuf::MessageExts::ClassMethods
639
+
640
+ # The type of layout that is being referenced.
641
+ module LayoutType
642
+ # Layout Unspecified.
643
+ LAYOUT_TYPE_UNSPECIFIED = 0
644
+
645
+ # References a {::Google::Cloud::DocumentAI::V1::Document::Page#blocks Page.blocks} element.
646
+ BLOCK = 1
647
+
648
+ # References a {::Google::Cloud::DocumentAI::V1::Document::Page#paragraphs Page.paragraphs} element.
649
+ PARAGRAPH = 2
650
+
651
+ # References a {::Google::Cloud::DocumentAI::V1::Document::Page#lines Page.lines} element.
652
+ LINE = 3
653
+
654
+ # References a {::Google::Cloud::DocumentAI::V1::Document::Page#tokens Page.tokens} element.
655
+ TOKEN = 4
656
+
657
+ # References a {::Google::Cloud::DocumentAI::V1::Document::Page#visual_elements Page.visual_elements} element.
658
+ VISUAL_ELEMENT = 5
659
+
660
+ # Refrrences a {::Google::Cloud::DocumentAI::V1::Document::Page#tables Page.tables} element.
661
+ TABLE = 6
662
+
663
+ # References a {::Google::Cloud::DocumentAI::V1::Document::Page#form_fields Page.form_fields} element.
664
+ FORM_FIELD = 7
665
+ end
666
+ end
667
+ end
668
+
669
+ # Structure to identify provenance relationships between annotations in
670
+ # different revisions.
671
+ # @!attribute [rw] revision
672
+ # @return [::Integer]
673
+ # The index of the revision that produced this element.
674
+ # @!attribute [rw] id
675
+ # @return [::Integer]
676
+ # The Id of this operation. Needs to be unique within the scope of the
677
+ # revision.
678
+ # @!attribute [rw] parents
679
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Provenance::Parent>]
680
+ # References to the original elements that are replaced.
681
+ # @!attribute [rw] type
682
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Provenance::OperationType]
683
+ # The type of provenance operation.
684
+ class Provenance
685
+ include ::Google::Protobuf::MessageExts
686
+ extend ::Google::Protobuf::MessageExts::ClassMethods
687
+
688
+ # Structure for referencing parent provenances. When an element replaces
689
+ # one of more other elements parent references identify the elements that
690
+ # are replaced.
691
+ # @!attribute [rw] revision
692
+ # @return [::Integer]
693
+ # The index of the [Document.revisions] identifying the parent revision.
694
+ # @!attribute [rw] id
695
+ # @return [::Integer]
696
+ # The id of the parent provenance.
697
+ class Parent
698
+ include ::Google::Protobuf::MessageExts
699
+ extend ::Google::Protobuf::MessageExts::ClassMethods
700
+ end
701
+
702
+ # If a processor or agent does an explicit operation on existing elements.
703
+ module OperationType
704
+ # Operation type unspecified.
705
+ OPERATION_TYPE_UNSPECIFIED = 0
706
+
707
+ # Add an element. Implicit if no `parents` are set for the provenance.
708
+ ADD = 1
709
+
710
+ # The element is removed. No `parents` should be set.
711
+ REMOVE = 2
712
+
713
+ # Explicitly replaces the element(s) identified by `parents`.
714
+ REPLACE = 3
715
+
716
+ # Element is requested for human review.
717
+ EVAL_REQUESTED = 4
718
+
719
+ # Element is reviewed and approved at human review, confidence will be
720
+ # set to 1.0.
721
+ EVAL_APPROVED = 5
722
+
723
+ # Element is skipped in the validation process.
724
+ EVAL_SKIPPED = 6
725
+ end
726
+ end
727
+
728
+ # Contains past or forward revisions of this document.
729
+ # @!attribute [rw] agent
730
+ # @return [::String]
731
+ # If the change was made by a person specify the name or id of that
732
+ # person.
733
+ # @!attribute [rw] processor
734
+ # @return [::String]
735
+ # If the annotation was made by processor identify the processor by its
736
+ # resource name.
737
+ # @!attribute [rw] id
738
+ # @return [::String]
739
+ # Id of the revision. Unique within the context of the document.
740
+ # @!attribute [rw] parent
741
+ # @return [::Array<::Integer>]
742
+ # The revisions that this revision is based on. This can include one or
743
+ # more parent (when documents are merged.) This field represents the
744
+ # index into the `revisions` field.
745
+ # @!attribute [rw] create_time
746
+ # @return [::Google::Protobuf::Timestamp]
747
+ # The time that the revision was created.
748
+ # @!attribute [rw] human_review
749
+ # @return [::Google::Cloud::DocumentAI::V1::Document::Revision::HumanReview]
750
+ # Human Review information of this revision.
751
+ class Revision
752
+ include ::Google::Protobuf::MessageExts
753
+ extend ::Google::Protobuf::MessageExts::ClassMethods
754
+
755
+ # Human Review information of the document.
756
+ # @!attribute [rw] state
757
+ # @return [::String]
758
+ # Human review state. e.g. `requested`, `succeeded`, `rejected`.
759
+ # @!attribute [rw] state_message
760
+ # @return [::String]
761
+ # A message providing more details about the current state of processing.
762
+ # For example, the rejection reason when the state is `rejected`.
763
+ class HumanReview
764
+ include ::Google::Protobuf::MessageExts
765
+ extend ::Google::Protobuf::MessageExts::ClassMethods
766
+ end
767
+ end
768
+
769
+ # This message is used for text changes aka. OCR corrections.
770
+ # @!attribute [rw] text_anchor
771
+ # @return [::Google::Cloud::DocumentAI::V1::Document::TextAnchor]
772
+ # Provenance of the correction.
773
+ # Text anchor indexing into the {::Google::Cloud::DocumentAI::V1::Document#text Document.text}. There can only be a
774
+ # single `TextAnchor.text_segments` element. If the start and
775
+ # end index of the text segment are the same, the text change is inserted
776
+ # before that index.
777
+ # @!attribute [rw] changed_text
778
+ # @return [::String]
779
+ # The text that replaces the text identified in the `text_anchor`.
780
+ # @!attribute [rw] provenance
781
+ # @return [::Array<::Google::Cloud::DocumentAI::V1::Document::Provenance>]
782
+ # The history of this annotation.
783
+ class TextChange
784
+ include ::Google::Protobuf::MessageExts
785
+ extend ::Google::Protobuf::MessageExts::ClassMethods
786
+ end
787
+ end
788
+ end
789
+ end
790
+ end
791
+ end