

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Objetos de resposta do Amazon Textract
<a name="how-it-works-document-response"></a>

As operações do Amazon Textract retornam diferentes tipos de objetos, dependendo da execução das operações. Para detectar texto e analisar um documento genérico, a operação retorna um objeto Block. Para analisar uma fatura ou recebimento, a operação retorna um objeto ExpenseDocuments. Para analisar a documentação de identidade, a operação retorna um objeto IdentityDocumentFields. Para obter mais informações sobre esses objetos de resposta, consulte as seguintes seções:

**Topics**
+ [Objetos de resposta de detecção de texto e análise de](how-it-works-document-layout.md)
+ [Objetos de resposta de fatura e recebimento](expensedocuments.md)
+ [Objetos de resposta da documentação](identitydocumentfields.md)

# Objetos de resposta de detecção de texto e análise de
<a name="how-it-works-document-layout"></a>

Quando o Amazon Textract processa um documento, ele cria uma lista de[Block](API_Block.md)objetos para o texto detectado ou analisado. Cada bloco contém informações sobre um item detectado, onde ele está localizado e a confiança que o Amazon Textract tem na precisão do processamento.

Um documento é composto pelos seguintes tipos de`Block`objects.
+ [Páginas](how-it-works-pages.md)
+  [Linhas e palavras de texto](how-it-works-lines-words.md) 
+  [Dados do formulário (pares de valores-chave)](how-it-works-kvp.md) 
+  [Tabelas e células](how-it-works-tables.md) 
+ [Elementos de seleção](how-it-works-selectables.md)

O conteúdo de um bloco depende da operação que você chama. Se você chamar uma das operações de detecção de texto, as páginas, as linhas e as palavras do texto detectado serão retornadas. Para obter mais informações, consulte [Detectar texto](how-it-works-detecting.md). Se você chamar uma das operações de análise de documentos, informações sobre páginas detectadas, pares de valores-chave, tabelas, elementos de seleção e texto serão retornadas. Para obter mais informações, consulte [Analisar documentos](how-it-works-analyzing.md).

Alguns`Block`Os campos de objeto são comuns a ambos os tipos de processamento. Por exemplo, cada bloco tem um identificador exclusivo.

Para obter exemplos que mostram como usar`Block`objetos, consulte[Tutoriais](examples-blocks.md).

## Layout do documento
<a name="hows-it-works-blocks-types.title"></a>

Amazon Textract retorna uma representação de um documento como uma lista de diferentes tipos de`Block`objetos que estão vinculados em um relacionamento pai-filho ou em um par de valores-chave. Metadados que fornecem o número de páginas em um documento também são retornados. A seguir está a JSON para um típico`Block`objeto do tipo`PAGE`.

```
{
    "Blocks": [
        {
            "Geometry": {
                "BoundingBox": {
                    "Width": 1.0, 
                    "Top": 0.0, 
                    "Left": 0.0, 
                    "Height": 1.0
                }, 
                "Polygon": [
                    {
                        "Y": 0.0, 
                        "X": 0.0
                    }, 
                    {
                        "Y": 0.0, 
                        "X": 1.0
                    }, 
                    {
                        "Y": 1.0, 
                        "X": 1.0
                    }, 
                    {
                        "Y": 1.0, 
                        "X": 0.0
                    }
                ]
            }, 
            "Relationships": [
                {
                    "Type": "CHILD", 
                    "Ids": [
                        "2602b0a6-20e3-4e6e-9e46-3be57fd0844b", 
                        "82aedd57-187f-43dd-9eb1-4f312ca30042", 
                        "52be1777-53f7-42f6-a7cf-6d09bdc15a30", 
                        "7ca7caa6-00ef-4cda-b1aa-5571dfed1a7c"
                    ]
                }
            ], 
            "BlockType": "PAGE", 
            "Id": "8136b2dc-37c1-4300-a9da-6ed8b276ea97"
        }..... 
        
    ], 
    "DocumentMetadata": {
        "Pages": 1
    }
}
```

Um documento é feito de um ou mais`PAGE`Blocos. Cada página contém uma lista de blocos filhos para os itens primários detectados na página, como linhas de texto e tabelas. Para obter mais informações, consulte [Páginas](how-it-works-pages.md). 

Você pode determinar o tipo de um`Block`objeto inspecionando o`BlockType`campo.

UMA`Block`Object contém uma lista de relacionados`Block`Objetos no`Relationships`campo, que é uma matriz de[Relationship](API_Relationship.md)objects. UMA`Relationships`array é do tipo CHILD ou do tipo VALUE. Uma matriz do tipo CHILD é usada para listar os itens que são filhos do bloco atual. Por exemplo, se o bloco atual for do tipo LINE,`Relationships`contém uma lista de IDs para os blocos WORD que compõem a linha de texto. Uma matriz do tipo VALUE é usada para conter pares chave-valor. Você pode determinar o tipo de relacionamento inspecionando o`Type`campo do`Relationship`objeto. 

Blocos filhos não têm informações sobre seus objetos Bloco pai.

Para exemplos que mostram`Block`Informações, consulte[Processando documentos com operações síncronas](sync.md).

## Confiança
<a name="how-it-works-confidence"></a>

As operações do Amazon Textract retornam a confiança percentual que o Amazon Textract tem sobre a precisão do item detectado. Para obter a confiança, use o`Confidence`campo do`Block`objeto. Um valor mais alto indica uma confiança mais alta. Dependendo do cenário, detecções com baixa confiança podem precisar de confirmação visual por um humano.

## Geometria
<a name="how-it-works-geometry"></a>

As operações Amazon Textract, com exceção da análise de identidade, retornam informações de localização sobre a localização dos itens detectados em uma página de documento. Para obter a localização, use o`Geometry`campo do`Block`objeto. Para obter mais informações, consulte[Localização do item em uma página de documento](text-location.md) 

# Páginas
<a name="how-it-works-pages"></a>

Um documento consiste em uma ou mais páginas. UMA[Block](API_Block.md)objeto do tipo`PAGE`existe para cada página do documento. UMA`PAGE`objeto de bloco contém uma lista das IDs filho para as linhas de texto, pares de valores-chave e tabelas detectadas na página do documento. 

![\[alt text not found\]](http://docs.aws.amazon.com/pt_br/textract/latest/dg/images/hieroglyph-pages.png)


O JSON para um`PAGE`O bloco será semelhante à seguinte.

```
{

    "Geometry": .... 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "2602b0a6-20e3-4e6e-9e46-3be57fd0844b", // Line - Hello, world.
                "82aedd57-187f-43dd-9eb1-4f312ca30042", // Line - How are you?
                "52be1777-53f7-42f6-a7cf-6d09bdc15a30", 
                "7ca7caa6-00ef-4cda-b1aa-5571dfed1a7c"   
            ]
        }
    ], 
    "BlockType": "PAGE", 
    "Id": "8136b2dc-37c1-4300-a9da-6ed8b276ea97"  // Page identifier
},
```

Se você estiver usando operações assíncronas com um documento de várias páginas em formato PDF, você pode determinar a página em que um bloco está localizado inspecionando o`Page`campo do`Block`objeto. Uma imagem digitalizada (uma imagem em formato JPEG, PNG, PDF ou TIFF) é considerada um documento de página única, mesmo se houver mais de uma página de documento na imagem. Operações assíncronas sempre retornam um`Page`valor de 1 para imagens digitalizadas.

O número total de páginas é retornado no`Pages`campo de`DocumentMetadata`.`DocumentMetadata`é retornado com cada lista de`Block`objetos retornados por uma operação do Amazon Textract.

# Linhas e palavras de texto
<a name="how-it-works-lines-words"></a>

O texto detectado retornado pelas operações Amazon Textract é retornado em uma lista de[Block](API_Block.md)objects. Esses objetos representam linhas de texto ou palavras textuais detectadas em uma página de documento. O texto a seguir mostra duas linhas de texto que são feitas de várias palavras.

Isso é texto.

Em duas linhas separadas.

O texto detectado é retornado na`Text`campo de um`Block`objeto. O`BlockType`campo determina se o texto é uma linha de texto (LINE) ou uma palavra (WORD). UMA*PALAVRA*Um ou mais caracteres latinos ISO básicos não separados por espaços. UMA*LINHA*é uma série de palavras delimitadas por tabulação e contíguas.

 Além disso, o Amazon Textract determinará se um pedaço de texto foi escrito à mão ou impresso usando o`TextTypes`campo. Eles retornam como MANUSCRITA E IMPRESSA, respectivamente. 

O outro`Block`as propriedades são comuns a todos os tipos de blocos, como informações de ID, confiança e geometria. Para obter mais informações, consulte [Objetos de resposta de detecção de texto e análise de](how-it-works-document-layout.md). 

Para detectar apenas linhas e palavras, você pode usar[DetectDocumentText](API_DetectDocumentText.md)ou[StartDocumentTextDetection](API_StartDocumentTextDetection.md). Para obter mais informações, consulte [Detectar texto](how-it-works-detecting.md). Para obter o texto detectado (linhas e palavras) e informações sobre como ele se relaciona com outras partes do documento, como tabelas, você pode usar[AnalyzeDocument](API_AnalyzeDocument.md)ou[StartDocumentAnalysis](API_StartDocumentAnalysis.md). Para obter mais informações, consulte [Analisar documentos](how-it-works-analyzing.md).

`PAGE`,`LINE`, e`WORD`blocos estão relacionados entre si em um relacionamento pai-filho. UMA`PAGE`block é o pai de todos`LINE`blocos de objetos em uma página de documento. Como um LINE pode ter uma ou mais palavras, a`Relationships`array para um bloco LINE armazena as IDs para blocos WORD filhos que compõem a linha de texto. 

O diagrama a seguir mostra como a linha*Olá, mundo.*no texto*Olá, mundo. Como você está?*é representado por`Block`objects. 

![\[alt text not found\]](http://docs.aws.amazon.com/pt_br/textract/latest/dg/images/hieroglyph-text-detection.png)




A seguir está a saída JSON de`DetectDocumentText`quando a frase*Olá, mundo. Como você está?*é detectado. O primeiro exemplo é o JSON para a página do documento. Observe como as IDs CHILD permitem que você navegue pelo documento.

```
{
    "Geometry": {...}, 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "d7fbd604-d609-4d69-857d-247a3f591238", // Line - Hello, world.
                "b6c19a93-6493-4d8e-958f-853c8f7ca055" //  Line - How are you?
            ]
        }
    ], 
    "BlockType": "PAGE", 
    "Id": "56ec1d77-171f-4881-9852-2b5b7e761608"
},
```

Veja a seguir o JSON para os blocos LINE que compõem a linha “Hello, World”: 

```
{
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "7f97e2ca-063e-47a8-981c-8beee31afc01", // Word - Hello,
                "4b990aa0-af96-4369-b90f-dbe02538ed21"  // Word - world.
            ]
        }
    ], 
    "Confidence": 99.63229370117188, 
    "Geometry": {...}, 
    "Text": "Hello, world.", 
    "BlockType": "LINE", 
    "Id": "d7fbd604-d609-4d69-857d-247a3f591238"
},
```

Veja a seguir o JSON para o bloco WORD para a palavra*Olá,*: 

```
{
    "Geometry": {...}, 
    "Text": "Hello,", 
    "TextType": "PRINTED",
    "BlockType": "WORD", 
    "Confidence": 99.74746704101562, 
    "Id": "7f97e2ca-063e-47a8-981c-8beee31afc01"
},
```

O JSON final é o bloco WORD para a palavra*mundo.*:

```
{
    "Geometry": {...}, 
    "Text": "world.",
    "TextType": "PRINTED",
    "BlockType": "WORD", 
    "Confidence": 99.5171127319336, 
    "Id": "4b990aa0-af96-4369-b90f-dbe02538ed21"
},
```

# Dados do formulário (pares de chave-valor)
<a name="how-it-works-kvp"></a>

Amazon Textract pode extrair dados de formulário de documentos como pares de chave-valor. Por exemplo, no texto a seguir, o Amazon Textract pode identificar uma chave (*Name (Nome):*) e um valor (*Ana Carolina*).

Name (Nome): Ana Carolina

Os pares de chave-valor são retornados como[Block](API_Block.md)objetos nas respostas de[AnalyzeDocument](API_AnalyzeDocument.md)e[GetDocumentAnalysis](API_GetDocumentAnalysis.md). Você pode usar o`FeatureTypes`parâmetro de entrada para recuperar informações sobre pares de valores-chave, tabelas ou ambos. Apenas para pares de chave-valor, use o valor`FORMS`. Para ver um exemplo, consulte [Extraindo pares de valores-chave de um documento de formulário](examples-extract-kvp.md). Para obter informações gerais sobre como um documento é representado por`Block`objetos, consulte[Objetos de resposta de detecção de texto e análise de](how-it-works-document-layout.md). 

Objetos de bloco com o tipo KEY\$1VALUE\$1SET são os contêineres para objetos KEY ou VALUE Block que armazenam informações sobre itens de texto vinculados detectados em um documento. Você pode usar o`EntityType`atributo para determinar se um bloco é KEY ou VALUE. 
+ UMA*CHAVE*O objeto contém informações sobre a chave do texto vinculado. Por exemplo,*Name (Nome):*. Um bloco KEY tem duas listas de relacionamento. Um relacionamento do tipo VALUE é uma lista que contém o ID do bloco VALUE associado à chave. Um relacionamento do tipo CHILD é uma lista de IDs para os blocos WORD que compõem o texto da chave.
+ UMA*VALOR*O objeto contém informações sobre o texto associado a uma chave. No exemplo anterior,*Ana Carolina*é o valor da chave*Name (Nome):*. Um bloco VALUE tem um relacionamento com uma lista de blocos CHILD que identificam blocos WORD. Cada bloco WORD contém uma das palavras que compõem o texto do valor. UMA`VALUE`Objetos também podem conter informações sobre elementos selecionados. Para obter mais informações, consulte [Elementos de seleção](how-it-works-selectables.md).

Cada instância de um KEY\$1VALUE\$1SET`Block`O objeto é um filho do PAGE`Block`objeto que corresponde à página atual.

O diagrama a seguir mostra como o par de chave-valor*Name (Nome): Ana Carolina*é representado por`Block`objects.

![\[alt text not found\]](http://docs.aws.amazon.com/pt_br/textract/latest/dg/images/hieroglyph-key-value-set.png)


Os exemplos a seguir mostram como o par de chave-valor*Name (Nome): Ana Carolina*é representado por JSON.

O bloco PAGE tem blocos CHILD do tipo`KEY_VALUE_SET`para cada bloco KEY e VALUE detectado no documento. 

```
{
    "Geometry": .... 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "2602b0a6-20e3-4e6e-9e46-3be57fd0844b", 
                "82aedd57-187f-43dd-9eb1-4f312ca30042", 
                "52be1777-53f7-42f6-a7cf-6d09bdc15a30", // Key - Name:
                "7ca7caa6-00ef-4cda-b1aa-5571dfed1a7c"  // Value - Ana Caroline 
            ]
        }
    ], 
    "BlockType": "PAGE", 
    "Id": "8136b2dc-37c1-4300-a9da-6ed8b276ea97"  // Page identifier
},
```

O JSON a seguir mostra que o bloco KEY (52be1777-53f7-42f6-a7cf-6d09bdc15a30) tem uma relação com o bloco VALUE (7ca7caa6-00ef-4cda-b1aa-5571dfed1a7c). Ele também tem um bloco CHILD para o bloco WORD (c734fca6-c4c4-415c-b6c1-30f7510b72ee) que contém o texto da chave (*Name (Nome):*).

```
{
    "Relationships": [
        {
            "Type": "VALUE", 
            "Ids": [
                "7ca7caa6-00ef-4cda-b1aa-5571dfed1a7c"  // Value identifier
            ]
        }, 
        {
            "Type": "CHILD", 
            "Ids": [
                "c734fca6-c4c4-415c-b6c1-30f7510b72ee"  // Name:
            ]
        }
    ], 
    "Confidence": 51.55965805053711, 
    "Geometry": ...., 
    "BlockType": "KEY_VALUE_SET", 
    "EntityTypes": [
        "KEY"
    ], 
    "Id": "52be1777-53f7-42f6-a7cf-6d09bdc15a30"  //Key identifier
},
```

O JSON a seguir mostra que o bloco VALUE 7ca7caa6-00ef-4cda-b1aa-5571dfed1a7c tem uma lista CHILD de IDs para os blocos WORD que compõem o texto do valor (*Ana*e*Carolina*).

```
{
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "db553509-64ef-4ecf-ad3c-bea62cc1cd8a", // Ana
                "e5d7646c-eaa2-413a-95ad-f4ae19f53ef3"  // Carolina
            ]
        }
    ], 
    "Confidence": 51.55965805053711, 
    "Geometry": ...., 
    "BlockType": "KEY_VALUE_SET", 
    "EntityTypes": [
        "VALUE"
    ], 
    "Id": "7ca7caa6-00ef-4cda-b1aa-5571dfed1a7c" // Value identifier
}
```

O JSON a seguir mostra o`Block`objetos para as palavras*Name (Nome):*,*Ana*, e*Carolina*.

```
{
    "Geometry": {...}, 
    "Text": "Name:", 
    "TextType": "PRINTED".
    "BlockType": "WORD", 
    "Confidence": 99.56285858154297, 
    "Id": "c734fca6-c4c4-415c-b6c1-30f7510b72ee"
},
 {
    "Geometry": {...}, 
    "Text": "Ana", 
    "TextType": "PRINTED",
    "BlockType": "WORD", 
    "Confidence": 99.52057647705078, 
    "Id": "db553509-64ef-4ecf-ad3c-bea62cc1cd8a"
}, 
{
    "Geometry": {...}, 
    "Text": "Carolina", 
    "TextType": "PRINTED",
    "BlockType": "WORD", 
    "Confidence": 99.84207916259766, 
    "Id": "e5d7646c-eaa2-413a-95ad-f4ae19f53ef3"
},
```

# Tabelas
<a name="how-it-works-tables"></a>

Amazon Textract pode extrair tabelas e as células em uma tabela. Por exemplo, quando a tabela a seguir é detectada em um formulário, o Amazon Textract detecta uma tabela com quatro células. 


| Name (Nome) | Endereço | 
| --- | --- | 
|  Ana Carolina  |  123 Any Town  | 

As tabelas detectadas são retornadas como[Block](API_Block.md)objetos nas respostas de[AnalyzeDocument](API_AnalyzeDocument.md)e[GetDocumentAnalysis](API_GetDocumentAnalysis.md). Você pode usar o`FeatureTypes`parâmetro de entrada para recuperar informações sobre pares de valores-chave, tabelas ou ambos. Somente para tabelas, use o valor`TABLES`. Para ver um exemplo, consulte [Exportando tabelas para um arquivo CSV](examples-export-table-csv.md). Para obter informações gerais sobre como um documento é representado por`Block`objetos, consulte[Objetos de resposta de detecção de texto e análise de](how-it-works-document-layout.md).

O diagrama a seguir mostra como uma única célula em uma tabela é representada por`Block`objects.

![\[alt text not found\]](http://docs.aws.amazon.com/pt_br/textract/latest/dg/images/hieroglyph-table-cell.png)


Uma célula contém`WORD`blocos para palavras detectadas e`SELECTION_ELEMENT`blocos para elementos de seleção, como caixas de seleção. 

O seguinte é JSON parcial para a tabela anterior, que tem quatro células.

O objeto PAGE Block tem uma lista de IDs de bloco FILHO para o bloco TABLE e cada LINHA de texto detectada. 

```
{
    "Geometry": {...}, 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "f2a4ad7b-f21d-4966-b548-c859b84f66a4",   // Line - Name
                "4dce3516-ffeb-45e0-92a2-60770e9cb744",   // Line  - Address 
                "ee506578-768f-4696-8f4b-e4917e429f50",   // Line - Ana Carolina
                "33fc7223-411b-4399-8a90-ccd3c5a2c196",   // Line  - 123 Any Town
                "3f9665be-379d-4ae7-be44-d02f32b049c2"    // Table
            ]
        }
    ], 
    "BlockType": "PAGE", 
    "Id": "78c3ce84-ae70-418e-add7-27058418adf6"
},
```

O bloco TABLE inclui uma lista de IDs filhos para as células dentro da tabela. Um bloco TABLE também inclui informações de geometria para a localização da tabela no documento. O JSON a seguir mostra que a tabela tem quatro células, que estão listadas na`Ids`matriz.

```
{
    "Geometry": {...}, 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "505e9581-0d1c-42fb-a214-6ff736822e8c", 
                "6fca44d4-d3d3-46ab-b22f-7fca1fbaaf02", 
                "9778bd78-f3fe-4ae1-9b78-e6d29b89e5e9", 
                "55404b05-ae12-4159-9003-92b7c129532e"
            ]
        }
    ], 
    "BlockType": "TABLE", 
    "Confidence": 92.5705337524414, 
    "Id": "3f9665be-379d-4ae7-be44-d02f32b049c2"
},
```

O tipo de bloco para as células da tabela é CELL. O`Block`objeto para cada célula inclui informações sobre a localização da célula em comparação com outras células na tabela. Ele também inclui informações de geometria para a localização da célula no documento. No exemplo anterior,`505e9581-0d1c-42fb-a214-6ff736822e8c`é o ID filho da célula que contém a palavra*Name (Nome)*. O exemplo a seguir são as informações para a célula. 

```
{
    "Geometry": {...}, 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "e9108c8e-0167-4482-989e-8b6cd3c3653e"
            ]
        }
    ], 
    "Confidence": 100.0, 
    "RowSpan": 1, 
    "RowIndex": 1, 
    "ColumnIndex": 1, 
    "ColumnSpan": 1, 
    "BlockType": "CELL", 
    "Id": "505e9581-0d1c-42fb-a214-6ff736822e8c"
},
```

Cada célula tem uma localização em uma tabela, com a primeira célula sendo 1,1. No exemplo anterior, a célula com o valor*Name (Nome)*está na linha 1, coluna 1. A célula com o valor*123 Any Town*está na linha 2, coluna 2. Um objeto de bloco de células contém essas informações na`RowIndex`e`ColumnIndex`campos. A lista filho contém os IDs dos objetos do bloco WORD que contêm o texto que está dentro da célula. As palavras na lista estão na ordem em que são detectadas, do canto superior esquerdo da célula para o canto inferior direito da célula. No exemplo anterior, a célula tem um ID filho com o valor e9108c8e-0167-4482-989e-8b6cd3c3653e. A seguinte saída é para o Bloco WORD com o valor ID de e9108c8e-0167-4482-989e-8b6cd3c3653e: 

```
"Geometry": {...}, 
"Text": "Name", 
"TextType": "Printed",
"BlockType": "WORD",
"Confidence": 99.81139373779297, 
"Id": "e9108c8e-0167-4482-989e-8b6cd3c3653e"
},
```

# Elementos de seleção
<a name="how-it-works-selectables"></a>

Amazon Textract pode detectar elementos de seleção, como botões de opção (botões de opção) e caixas de seleção em uma página de documento. Elementos de seleção podem ser detectados em[Dados do formulário](how-it-works-kvp.md)e em[tabelas](how-it-works-tables.md). Por exemplo, quando a tabela a seguir é detectada em um formulário, o Amazon Textract detecta as caixas de seleção nas células da tabela.


|  |  |  |  | 
| --- |--- |--- |--- |
|     |  **Concordo**  |  **Neutral**  |  **Discordo**  | 
|  **Bom serviço**  |  ☑  |  ☐  |  ☐  | 
|  **Fácil de usar**  |  ☐  |  ☑  |  ☐  | 
|  **Preço justo**  |  ☑  |  ☐  |  ☐  | 

Os elementos de seleção detectados são devolvidos como[Block](API_Block.md)objetos nas respostas de[AnalyzeDocument](API_AnalyzeDocument.md)e[GetDocumentAnalysis](API_GetDocumentAnalysis.md).

**nota**  
Você pode usar o`FeatureTypes`parâmetro de entrada para recuperar informações sobre pares de valores-chave, tabelas ou ambos. Por exemplo, se você filtrar em tabelas, a resposta incluirá os elementos de seleção detectados nas tabelas. Elementos de seleção detectados em pares de valores-chave não estão incluídos na resposta.

As informações sobre um elemento de seleção estão contidas em um`Block`objeto do tipo`SELECTION_ELEMENT`. Para determinar o status de um elemento selecionável, use a`SelectionStatus`campo do`SELECTION_ELEMENT`bloco. O status pode ser*SELECIONADO*ou*NOT\$1SELECTED*. Por exemplo, o valor de`SelectionStatus`para a imagem anterior é*SELECIONADO*.

UMA`SELECTION_ELEMENT` `Block`objeto está associado a um par de valores-chave ou a uma célula de tabela. UMA`SELECTION_ELEMENT` `Block`objeto contém informações da caixa delimitadora para um elemento de seleção na`Geometry`campo. UMA`SELECTION_ELEMENT` `Block`objeto não é filho de um`PAGE` `Block`objeto.

## Dados do formulário (pares de chave-valor)
<a name="how-it-works-selectable-kvp"></a>

Um par de valores-chave é usado para representar um elemento de seleção detectado em um formulário. O`KEY`bloco contém o texto para o elemento de seleção. O`VALUE`bloco contém o bloco SELECTION\$1ELEMENT. O diagrama a seguir mostra como os elementos de seleção são representados por[Block](API_Block.md)objects.

![\[alt text not found\]](http://docs.aws.amazon.com/pt_br/textract/latest/dg/images/hieroglyph-key-value-set-selectable.png)


Para obter mais informações sobre pares de chave-valor, consulte[Dados do formulário (pares de chave-valor)](how-it-works-kvp.md).

O trecho JSON a seguir mostra a chave para um par de valores-chave que contém um elemento de seleção (**male ☑**). O ID filho (Id bd14cfd5-9005-498b-a7f3-45ceb171f0ff) é o ID do bloco WORD que contém o texto para o elemento de seleção (*macho*). O valor ID (Id 24aaac7f-fcce-49c7-a4f0-3688b05586d4) é o ID do`VALUE`bloco que contém o`SELECTION_ELEMENT`objeto de bloco.

```
{
    "Relationships": [
        {
            "Type": "VALUE", 
            "Ids": [
                "24aaac7f-fcce-49c7-a4f0-3688b05586d4"  // Value containing Selection Element
            ]
        }, 
        {
            "Type": "CHILD", 
            "Ids": [
                "bd14cfd5-9005-498b-a7f3-45ceb171f0ff"  // WORD - male
            ]
        }
    ], 
    "Confidence": 94.15619659423828, 
    "Geometry": {
        "BoundingBox": {
            "Width": 0.022914813831448555, 
            "Top": 0.08072036504745483, 
            "Left": 0.18966935575008392, 
            "Height": 0.014860388822853565
        }, 
        "Polygon": [
            {
                "Y": 0.08072036504745483, 
                "X": 0.18966935575008392
            }, 
            {
                "Y": 0.08072036504745483, 
                "X": 0.21258416771888733
            }, 
            {
                "Y": 0.09558075666427612, 
                "X": 0.21258416771888733
            }, 
            {
                "Y": 0.09558075666427612, 
                "X": 0.18966935575008392
            }
        ]
    }, 
    "BlockType": "KEY_VALUE_SET", 
    "EntityTypes": [
        "KEY"
    ], 
    "Id": "a118dc43-d5f7-49a2-a20a-5f876d9ffd79"
}
```

O trecho JSON a seguir é o bloco WORD para a palavra*Masculino*. O bloco WORD também tem um bloco LINE pai.

```
{
    "Geometry": {
        "BoundingBox": {
            "Width": 0.022464623674750328, 
            "Top": 0.07842985540628433, 
            "Left": 0.18863198161125183, 
            "Height": 0.01617223583161831
        }, 
        "Polygon": [
            {
                "Y": 0.07842985540628433, 
                "X": 0.18863198161125183
            }, 
            {
                "Y": 0.07842985540628433, 
                "X": 0.2110965996980667
            }, 
            {
                "Y": 0.09460209310054779, 
                "X": 0.2110965996980667
            }, 
            {
                "Y": 0.09460209310054779, 
                "X": 0.18863198161125183
            }
        ]
    }, 
    "Text": "Male", 
    "BlockType": "WORD", 
    "Confidence": 54.06439208984375, 
    "Id": "bd14cfd5-9005-498b-a7f3-45ceb171f0ff"
},
```

O bloco VALUE tem um filho (Id f2f5e8cd-e73a-4e99-a095-053acd3b6bfb) que é o bloco SELECTION\$1ELEMENT. 

```
{
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "f2f5e8cd-e73a-4e99-a095-053acd3b6bfb"  // Selection element
            ]
        }
    ], 
    "Confidence": 94.15619659423828, 
    "Geometry": {
        "BoundingBox": {
            "Width": 0.017281491309404373, 
            "Top": 0.07643391191959381, 
            "Left": 0.2271782010793686, 
            "Height": 0.026274094358086586
        }, 
        "Polygon": [
            {
                "Y": 0.07643391191959381, 
                "X": 0.2271782010793686
            }, 
            {
                "Y": 0.07643391191959381, 
                "X": 0.24445968866348267
            }, 
            {
                "Y": 0.10270800441503525, 
                "X": 0.24445968866348267
            }, 
            {
                "Y": 0.10270800441503525, 
                "X": 0.2271782010793686
            }
        ]
    }, 
    "BlockType": "KEY_VALUE_SET", 
    "EntityTypes": [
        "VALUE"
    ], 
    "Id": "24aaac7f-fcce-49c7-a4f0-3688b05586d4"
}, 
}
```

O JSON a seguir é o bloco SELECTION\$1ELEMENT. O valor de`SelectionStatus`Indica que a caixa de seleção está marcada.

```
{
    "Geometry": {
        "BoundingBox": {
            "Width": 0.020316146314144135, 
            "Top": 0.07575977593660355, 
            "Left": 0.22590067982673645, 
            "Height": 0.027631107717752457
        }, 
        "Polygon": [
            {
                "Y": 0.07575977593660355, 
                "X": 0.22590067982673645
            }, 
            {
                "Y": 0.07575977593660355, 
                "X": 0.2462168186903
            }, 
            {
                "Y": 0.1033908873796463, 
                "X": 0.2462168186903
            }, 
            {
                "Y": 0.1033908873796463, 
                "X": 0.22590067982673645
            }
        ]
    }, 
    "BlockType": "SELECTION_ELEMENT", 
    "SelectionStatus": "SELECTED", 
    "Confidence": 74.14942932128906, 
    "Id": "f2f5e8cd-e73a-4e99-a095-053acd3b6bfb"
}
```

## Células do
<a name="how-it-works-selectable-table"></a>

Amazon Textract pode detectar elementos de seleção dentro de uma célula de tabela. Por exemplo, as células na tabela a seguir têm caixas de seleção.


|  |  |  |  | 
| --- |--- |--- |--- |
|     |  **Concordo**  |  **Neutral**  |  **Discordo**  | 
|  **Bom serviço**  |  ☑  |  ☐  |  ☐  | 
|  **Fácil de usar**  |  ☐  |  ☑  |  ☐  | 
|  **Preço justo**  |  ☑  |  ☐  |  ☐  | 

UMA`CELL`bloco pode conter filho`SELECTION_ELEMENT`objetos para elementos de seleção, bem como filho`WORD`blocos para texto detectado.

![\[alt text not found\]](http://docs.aws.amazon.com/pt_br/textract/latest/dg/images/hieroglyph-table-cell-selectable.png)


Para obter mais informações sobre tabelas, consulte[Tabelas](how-it-works-tables.md).

O TABLE`Block`objeto para a tabela anterior é semelhante a este.

```
{
    "Geometry": {.....}, 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "652c09eb-8945-473d-b1be-fa03ac055928", 
                "37efc5cc-946d-42cd-aa04-e68e5ed4741d", 
                "4a44940a-435a-4c5c-8a6a-7fea341fa295", 
                "2de20014-9a3b-4e26-b453-0de755144b1a", 
                "8ed78aeb-5c9a-4980-b669-9e08b28671d2", 
                "1f8e1c68-2c97-47b2-847c-a19619c02ca9", 
                "9927e1d1-6018-4960-ac17-aadb0a94f4d9", 
                "68f0ed8b-a887-42a5-b618-f68b494a6034", 
                "fcba16e0-6bd7-4ea5-b86e-36e8330b68ea", 
                "2250357c-ae34-4ed9-86da-45dac5a5e903", 
                "c63ad40d-5a14-4646-a8df-2d4304213dbc",   // Cell
                "2b8417dc-e65f-4fcd-aa0f-61a23f1e8cb0", 
                "26c62932-72f0-4dc2-9893-1ae27829c060", 
                "27f291cc-abf4-4c23-aa24-676abe99cb1e", 
                "7e5ce028-1bcd-4d9f-ad42-15ac181c5b47", 
                "bf32e3d2-efa2-4fc1-b09b-ab9cc52ff734"
            ]
        }
    ], 
    "BlockType": "TABLE", 
    "Confidence": 99.99993896484375, 
    "Id": "f66eac36-2e74-406e-8032-14d1c14e0b86"
}
```

O CELL`BLOCK`objeto (Id c63ad40d-5a14-4646-a8df-2d4304213dbc) para a célula que contém a caixa de seleção*Bom serviço*Parece o seguinte. Inclui uma criança`Block`(Id = 26d122fd-c5f4-4b53-92c4-0ae92730ee1e) que é o`SELECTION_ELEMENT` `Block`Objeto da caixa de seleção.

```
{
    "Geometry": {.....}, 
    "Relationships": [
        {
            "Type": "CHILD", 
            "Ids": [
                "26d122fd-c5f4-4b53-92c4-0ae92730ee1e"  // Selection Element
            ]
        }
    ], 
    "Confidence": 79.741689682006836, 
    "RowSpan": 1, 
    "RowIndex": 3, 
    "ColumnIndex": 3, 
    "ColumnSpan": 1, 
    "BlockType": "CELL", 
    "Id": "c63ad40d-5a14-4646-a8df-2d4304213dbc"
}
```

O SELECTION\$1ELEMENT`Block`objeto para a caixa de seleção é o seguinte. O valor de`SelectionStatus`Indica que a caixa de seleção está marcada.

```
{
    "Geometry": {.......}, 
    "BlockType": "SELECTION_ELEMENT", 
    "SelectionStatus": "SELECTED", 
    "Confidence": 88.79517364501953, 
    "Id": "26d122fd-c5f4-4b53-92c4-0ae92730ee1e"
}
```

# Objetos de resposta de fatura e recebimento
<a name="expensedocuments"></a>

Quando você envia uma fatura ou um recibo para a API AnalyzeExpense, ela retorna uma série de objetos ExpenseDocuments. Cada documento de despesa é ainda separado em`LineItemGroups`e`SummaryFields`. A maioria das faturas e recibos contém informações como o nome do fornecedor, o número do recebimento, a data do recebimento ou o valor total. AnalyzeExpense retorna essas informações em`SummaryFields`. Recibos e faturas também contêm detalhes sobre os itens comprados. A API AnalyzeExpense retorna essas informações em`LineItemGroups`. O`ExpenseIndex`campo identifica exclusivamente a despesa e associa o apropriado`SummaryFields`e`LineItemGroups`detectado nessa despesa.

O nível mais granular de dados na resposta AnalyzeExpense consiste em`Type`,`ValueDetection`, e`LabelDetection`(Optional). As entidades individuais são:
+ [Type](how-it-works-type.md): Refere-se a que tipo de informação é detectada em um nível alto.
+ [Detecção de etiquetas](how-it-works-labeldetection.md): Refere-se ao rótulo de um valor associado dentro do texto do documento.`LabelDetection`é opcional e retornado somente se o rótulo for escrito.
+ [ValueDetecção](how-it-works-valuedetection.md): Refere-se ao valor do rótulo ou tipo retornado.

A API AnalyzeExpense também detecta`ITEM`,`QUANTITY`, e`PRICE`dentro de itens de linha como campos normalizados. Se houver outro texto em um item de linha na imagem do recibo, como SKU ou descrição detalhada, ele será incluído no JSON como`EXPENSE_ROW`como mostrado no exemplo abaixo:

```
               {
                                    "Type": {
                                        "Text": "EXPENSE_ROW",
                                        "Confidence": 99.95216369628906
                                    },
                                    "ValueDetection": {
                                        "Text": "Banana 5 $2.5",
                                        "Geometry": {
                                          …
                                        },
                                        "Confidence": 98.11214447021484
                                    }
```

O exemplo acima mostra como a API AnalyzeExpense retorna a linha inteira em um recibo que contém informações de item de linha sobre 5 bananas vendidas por US\$12,5. 

# Type
<a name="how-it-works-type"></a>

A seguir há um exemplo do tipo padrão ou normalizado do par de chave-valor:

```
               {
                    "PageNumber": 1, 
                    "Type": {
                        "Text": "VENDOR_NAME", 
                        "Confidence": 70.0
                    }, 
                    "ValueDetection": {
                        "Geometry": { ... }, 
                        "Text": "AMAZON", 
                        "Confidence": 87.89806365966797
                    }
                }
```

O recibo não tinha “Nome do fornecedor” listado explicitamente. No entanto, a API Analyze Despense reconheceu o documento como um recibo e categorizou o valor “AMAZON” como Tipo`VENDOR_NAME`. 

# Detecção de etiquetas
<a name="how-it-works-labeldetection"></a>

Veja a seguir um exemplo de texto, conforme mostrado em uma página de documento do cliente:

```
               {
                    "PageNumber": 1, 
                    "Type": {
                        "Text": "OTHER", 
                        "Confidence": 70.0
                    }, 
                    "LabelDetection": {
                        "Geometry": { ... }, 
                        "Text": "CASHIER", 
                        "Confidence": 88.19171142578125
                    }, 
                    "ValueDetection": {
                        "Geometry": { ... }, 
                        "Text": "Mina", 
                        "Confidence": 87.89806365966797
                    }
                }
```

O documento de exemplo continha “CAIXA Mina”. A API Analyze Expense extraiu o valor como está e o retorna em`LabelDetection`. Para valores implícitos, como “Nome do fornecedor”, onde a “chave” não é mostrada explicitamente no recibo,`LabelDetection`não será incluído no elemento AnalyzeExpense. Nesses casos, a API AnalyzeExpense não retorna`LabelDetection`. 

# ValueDetecção
<a name="how-it-works-valuedetection"></a>

A seguir há um exemplo que mostra o “valor” do par chave-valor.

```
               {
                    "PageNumber": 1, 
                    "Type": {
                        "Text": "OTHER", 
                        "Confidence": 70.0
                    }, 
                    "LabelDetection": {
                        "Geometry": { ... }, 
                        "Text": "CASHIER", 
                        "Confidence": 88.19171142578125
                    }, 
                    "ValueDetection": {
                        "Geometry": { ... }, 
                        "Text": "Mina", 
                        "Confidence": 87.89806365966797
                    }
                }
```

No exemplo, o documento continha “CAIXA Mina”. A API AnalyzeExpense detectou o valor do Caixa como Mina e o retornou em`ValueDetection`. 

# Objetos de resposta da documentação
<a name="identitydocumentfields"></a>

 Quando você envia um documento de identidade para a API AnalyzeID, ele retorna uma série de`IdentityDocumentField`objects. Cada um desses objetos contém`Type`, e`Value`.`Type`registra o campo normalizado que o Amazon Textract detecta e`Value`registra o texto associado ao campo normalizado. 

 Abaixo está um exemplo de um`IdentityDocumentField`, encurtado por brevidade. 

```
{
    "DocumentMetadata": {
        "Pages": 1
    }, 
    "IdentityDocumentFields": [
        {
            "Type": {
                "Text": "first name"
            }, 
            "ValueDetection": {
                "Text": "jennifer", 
                "Confidence": 99.99908447265625
            }
        }, 
        {
            "Type": {
                "Text": "last name"
            }, 
            "ValueDetection": {
                "Text": "sample", 
                "Confidence": 99.99758911132812
            }
        },
```

 Esses são dois exemplos de IdentityDocumentFields cortados de uma resposta mais longa. Há uma separação entre o tipo detectado e o valor desse tipo. Aqui, é o nome e sobrenome, respectivamente. Essa estrutura se repete com todas as informações contidas. Se um tipo não for reconhecido como um campo normalizado, ele será listado como “outro”. 

Veja a seguir uma lista de campos normalizados para Carteiras de Motorista:
+  Nome 
+  sobrenome 
+  Nome do meio 
+  sufixo 
+  city in address 
+  CEP no endereço 
+  estado no endereço 
+  Condado 
+  número do documento 
+  Data de validade 
+  Data de nascimento 
+  Nome do estado 
+  Data de emissão 
+  classe 
+  restrições 
+  endossos 
+  ID do tipo 
+  veterano 
+  address 

Veja a seguir uma lista de campos normalizados para passaportes dos EUA:
+  Nome 
+  sobrenome 
+  Nome do meio 
+  número do documento 
+  Data de validade 
+  Data de nascimento 
+ local de nascimento
+  Data de emissão 
+  ID do tipo 