/*
* 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 textract-2018-06-27.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.Textract.Model
{
///
/// Container for the parameters to the AnalyzeDocument operation.
/// Analyzes an input document for relationships between detected items.
///
///
///
/// The types of information returned are as follows:
///
/// -
///
/// Form data (key-value pairs). The related information is returned in two Block
/// objects, each of type
KEY_VALUE_SET
: a KEY Block
object
/// and a VALUE Block
object. For example, Name: Ana Silva Carolina
/// contains a key and value. Name: is the key. Ana Silva Carolina is the
/// value.
///
/// -
///
/// Table and table cell data. A TABLE
Block
object contains information
/// about a detected table. A CELL Block
object is returned for each cell
/// in a table.
///
/// -
///
/// Lines and words of text. A LINE
Block
object contains one or more WORD
/// Block
objects. All lines and words that are detected in the document
/// are returned (including text that doesn't have a relationship with the value of FeatureTypes
).
///
///
/// -
///
/// Signatures. A SIGNATURE
Block
object contains the location information
/// of a signature in a document. If used in conjunction with forms or tables, a signature
/// can be given a Key-Value pairing or be detected in the cell of a table.
///
/// -
///
/// Query. A QUERY Block object contains the query text, alias and link to the associated
/// Query results block object.
///
///
-
///
/// Query Result. A QUERY_RESULT Block object contains the answer to the query and an
/// ID that connects it to the query asked. This Block also contains a confidence score.
///
///
///
/// Selection elements such as check boxes and option buttons (radio buttons) can be detected
/// in form data and in tables. A SELECTION_ELEMENT Block
object contains
/// information about a selection element, including the selection status.
///
///
///
/// You can choose which type of analysis to perform by specifying the FeatureTypes
/// list.
///
///
///
/// The output is returned in a list of Block
objects.
///
///
///
/// AnalyzeDocument
is a synchronous operation. To analyze documents asynchronously,
/// use StartDocumentAnalysis.
///
///
///
/// For more information, see Document
/// Text Analysis.
///
///
public partial class AnalyzeDocumentRequest : AmazonTextractRequest
{
private Document _document;
private List _featureTypes = new List();
private HumanLoopConfig _humanLoopConfig;
private QueriesConfig _queriesConfig;
///
/// Gets and sets the property Document.
///
/// The input document as base64-encoded bytes or an Amazon S3 object. If you use the
/// AWS CLI to call Amazon Textract operations, you can't pass image bytes. The document
/// must be an image in JPEG, PNG, PDF, or TIFF format.
///
///
///
/// If you're using an AWS SDK to call Amazon Textract, you might not need to base64-encode
/// image bytes that are passed using the Bytes
field.
///
///
[AWSProperty(Required=true)]
public Document Document
{
get { return this._document; }
set { this._document = value; }
}
// Check to see if Document property is set
internal bool IsSetDocument()
{
return this._document != null;
}
///
/// Gets and sets the property FeatureTypes.
///
/// A list of the types of analysis to perform. Add TABLES to the list to return information
/// about the tables that are detected in the input document. Add FORMS to return detected
/// form data. Add SIGNATURES to return the locations of detected signatures. To perform
/// both forms and table analysis, add TABLES and FORMS to FeatureTypes
.
/// To detect signatures within form data and table data, add SIGNATURES to either TABLES
/// or FORMS. All lines and words detected in the document are included in the response
/// (including text that isn't related to the value of FeatureTypes
).
///
///
[AWSProperty(Required=true)]
public List FeatureTypes
{
get { return this._featureTypes; }
set { this._featureTypes = value; }
}
// Check to see if FeatureTypes property is set
internal bool IsSetFeatureTypes()
{
return this._featureTypes != null && this._featureTypes.Count > 0;
}
///
/// Gets and sets the property HumanLoopConfig.
///
/// Sets the configuration for the human in the loop workflow for analyzing documents.
///
///
public HumanLoopConfig HumanLoopConfig
{
get { return this._humanLoopConfig; }
set { this._humanLoopConfig = value; }
}
// Check to see if HumanLoopConfig property is set
internal bool IsSetHumanLoopConfig()
{
return this._humanLoopConfig != null;
}
///
/// Gets and sets the property QueriesConfig.
///
/// Contains Queries and the alias for those Queries, as determined by the input.
///
///
public QueriesConfig QueriesConfig
{
get { return this._queriesConfig; }
set { this._queriesConfig = value; }
}
// Check to see if QueriesConfig property is set
internal bool IsSetQueriesConfig()
{
return this._queriesConfig != null;
}
}
}