

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á.

# Links
<a name="directory_objects_links"></a>

Um link é uma borda direcionada entre dois objetos que define uma relação. No momento, o Cloud Directory oferece suporte aos seguintes tipos de link.

![\[Diagram showing node objects connected by various link types, including child, attachment, index, and typed links.\]](http://docs.aws.amazon.com/pt_br/clouddirectory/latest/developerguide/images/objectlinks.png)


## Links filho
<a name="directory_objects_links_childlinks"></a>

Um link filho cria uma relação pai-filho entre os objetos que conecta. Por exemplo, na ilustração acima, o link filho **b** conecta os objetos `001` e `003`. Os links filho definem a hierarquia no Cloud Directory. Os links filho têm nomes quando participam da definição do caminho do objeto para o qual o link aponta.

## Links de anexo
<a name="directory_objects_links_attachmentlinks"></a>

Um link de anexo aplica um objeto de política de nó folha a outro nó folha ou a um objeto de nó. Os links de anexo não definem a estrutura hierárquica do Cloud Directory. Por exemplo, na ilustração acima, o link de anexo aplica a política armazenada no objeto do nó folha da política `006` no objeto do nó `002`. Cada objeto pode ter várias políticas anexadas, mas não pode ser anexada mais que uma política de qualquer determinado tipo de política.

## Links de índice
<a name="directory_objects_links_indexlinks"></a>

Os links de índice fornecem pesquisa de informações sofisticadas com base em um objeto de índice e seus atributos indexados definidos, habilitando dessa forma travessias de árvore e pesquisas nas árvores de diretórios. Conceitualmente, os índices são semelhantes aos nós com filhos: Os links para os nós indexados são rotulados de acordo com os atributos indexados, em vez de receberem um rótulo quando o filho está anexado. No entanto, os links de índices não são bordas pai-filho e têm seu próprio conjunto de operações da API de enumeração. Para obter mais informações, consulte [Indexação e pesquisa](indexing_search.md).

## Links tipados
<a name="directory_objects_links_typedlink"></a>

Os links tipados permitem que você estabeleça uma relação entre os objetos ou nas hierarquias do Cloud Directory. Em seguida, você pode usar esses relacionamentos para consultar informações, como *quais usuários têm o dispositivo "xyz"* ou *quais dispositivos são de propriedade do usuário "abc"*.

 Você pode usar links tipados para modelar relacionamentos entre diferentes objetos no diretório. Por exemplo, na ilustração acima, considere a relação entre o objeto `004`, que representa um usuário, e o objeto `005`, que representa um dispositivo. 

Podemos usar um link tipado para modelar uma relação de propriedade entre os dois objetos. Podemos adicionar atributos ao link tipado para representar o custo de uma compra, seja o dispositivo alugado ou comprado. Há dois tipos de atributos associados a links tipados:
+  **Atributos baseados em identidade – ** um atributo de um link tipado que o diferencia de outros links (por exemplo, links filho, de anexo ou de índice). Cada faceta do link tipado define um conjunto ordenado de atributos de identidade. A identidade de um link tipado é o ID do objeto de origem, um identificador de faceta (tipo), os valores de seus atributos de identidade (definidos pela faceta) e o ID do objeto de destino. Os identificadores devem ser exclusivos em um único diretório.
+  **Atributos opcionais –** um atributo que armazena características de rastreamento sobre o link tipado que não são relacionadas à identidade do link. Por exemplo, um atributo opcional pode identificar a data em que o link tipado foi estabelecido pela primeira vez ou quando ele foi modificado pela última vez.

Assim como com objetos, você deve criar uma faceta de link tipado usando a API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_CreateTypedLinkFacet.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_CreateTypedLinkFacet.html) para definir a estrutura do link tipado e seus atributos. As facetas de links tipados exigem um nome de faceta exclusivo e um conjunto de atributos associados ao link. Ao criar a estrutura do link tipado, você pode definir um conjunto ordenado de atributos na faceta do link tipado. Para visualizar um esquema de exemplo de links tipados, consulte [Documento de esquema com links digitados](schemas_jsonformat.md#schemas_schematyped).

Os atributos de links tipados podem ser usados quando você precisa executar qualquer uma das seguintes ações:
+ Permitir a filtragem de links tipados de entrada e de saída. Para obter mais informações, consulte [Listagem de links tipados](#directory_objects_links_typedlinklisting).
+ Representar a relação entre dois objetos.
+ Rastrear dados administrativos sobre o link tipado, como a data em que o link foi criado.

Considere o seguinte ao decidir se os links tipados são os corretos para seu caso de uso: 

 
+ Os links tipados não podem ser usados na especificação de objeto com base em caminho. Em vez disso, você deve selecionar links tipados usando as operações da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html) ou [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html).
+ Os links tipados não participam de operações da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_LookupPolicy.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_LookupPolicy.html) ou [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListObjectParentPaths.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListObjectParentPaths.html). 
+ Links tipados entres os dois mesmos objetos e na mesma direção não podem ter os mesmos valores de atributos. Isso pode ajudar a evitar links tipados duplicados entre os mesmos objetos.
+ Os atributos adicionais podem ser usados quando você deseja adicionar informações opcionais.
+ O tamanho combinado de todos os valores de atributos de identidade é limitado a 64 bytes. Para obter mais informações, consulte [Entre os limites do Amazon Cloud Directory](limits.md).

**Artigo do blog Cloud Directory relacionado**
+ [Usar links tipados Amazon Cloud Directory para criar e pesquisar relacionamentos em hierarquias](https://aws.amazon.com/blogs/security/new-use-amazon-cloud-directory-typed-links-to-create-and-manage-relationships-in-your-directory/)

### Identidade de link tipado
<a name="directory_objects_links_typedlinkid"></a>

A identidade é o que define exclusivamente se um link tipado pode existir entre dois objetos. A exceção é quando você conecta dois objetos em uma direção com exatamente os mesmos valores de atributos. Os atributos devem ser configurados como `REQUIRED_ALWAYS`.

Links tipados que são criados de diferentes facetas de links tipados nunca entram em conflito um com o outro. Por exemplo, considere o seguinte diagrama:

![\[Diagram showing three node objects connected by typed links, with multiple identity attributes.\]](http://docs.aws.amazon.com/pt_br/clouddirectory/latest/developerguide/images/typedlinks.png)


 
+ O objeto `001` tem links tipados e atributos (A1 e A2) com os mesmos valores de atributos (x1 e x2) indo para objetos diferentes (`002` e `003`). Essa operação teria êxito.
+ Os objetos `002` e `003` têm um link tipado entre eles. Essa operação falharia porque dois links tipados na mesma direção com os mesmos atributos não podem existir entre objetos.
+ Os objetos `001` e `003` têm dois links tipados entre eles com os mesmos atributos. Contudo, como os links vão para direções diferentes, essa operação teria êxito.
+ Os objetos `002` e `003` têm links tipados entre eles com o mesmo valor para A1, mas com valores diferentes para A2. A identidade do link tipado considera todos os atributos, portanto, essa operação teria êxito.

### Regras de links tipados
<a name="directory_objects_links_typedlinkrules"></a>

Você pode adicionar regras a atributos de link tipado quando desejar adicionar restrições aos atributos do link. Essas regras são equivalentes às regras em atributos de objeto. Para obter mais informações, consulte [Regras para atributos](schemas_attributerules.md).

### Listagem de links tipados
<a name="directory_objects_links_typedlinklisting"></a>

O Cloud Directory fornece operações da API que você pode usar para selecionar links tipados de entrada ou de saída em um objeto. Você pode selecionar um subconjunto específico de links tipados em vez de iterar sobre cada link tipado. Você também pode especificar uma faceta de link tipado específica para filtrar somente os links tipados desse tipo.

Você pode filtrar links tipados na ordem que os atributos estão definidos na faceta do link tipado. Você pode fornecer filtros de intervalo para vários atributos. Ao fornecer intervalos a uma seleção de links tipados, todos os intervalos inexatos devem ser especificados no final. Todos os atributos sem intervalo especificado são supostos corresponderem ao intervalo inteiro. Os filtros são interpretados na ordem dos atributos definidos na faceta do link tipado, não na ordem em que são fornecidos a qualquer chamada da API.

Por exemplo, no diagrama a seguir, considere um Cloud Directory que é usado para armazenar informações sobre funcionários e suas capacidades. 

![\[Organizational hierarchy diagram showing Root, Employees, Offices, and their relationships.\]](http://docs.aws.amazon.com/pt_br/clouddirectory/latest/developerguide/images/typedlinklisting.png)


Vamos supor que modelamos as capacidades de nossos funcionários com um link tipado chamado `EmployeeCapability`, que é configurado com três atributos de string: `Status`, `Role` e `Created`. Os seguintes filtros são compatíveis nas operações da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html) e [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html).
+ Faceta = `EmployeeCapability`, status = `Active`, função = `Driver`
  + Seleciona funcionários ativos que são motoristas. Esse filtro inclui duas correspondências exatas.
+ Faceta = `EmployeeCapability`, status = `Active`, função = `Driver`, criação = `05/31/18`
  + Seleciona os funcionários ativos que são motoristas e cujas facetas foram criadas em ou depois de 31 de maio de 2018.
+ Faceta = `EmployeeCapability`, status = `Active`
  + Seleciona todos os funcionários ativos.
+ Faceta = `EmployeeCapability`, status = `Active`, função = `A` a `M`
  + Seleciona funcionários ativos com funções que começam com `A` a `M`.
+ Faceta = `EmployeeCapability`
  + Isso seleciona todos os links tipados do tipo `EmployeeCapability`.

Os seguintes filtros **NÃO** seriam compatíveis:
+ Faceta = `EmployeeCapability`, status entre `A` a `C`, função = `Driver`
  + Esse filtro não é permitido porque todos os intervalos devem aparecer no final do filtro.
+ Faceta = `EmployeeCapability`, função = `Driver`
  + Esse filtro não é permitido porque o intervalo de status implícito não é uma correspondência exata e não aparece no final da lista de intervalos.
+ Status = `Active`
  + Esse filtro não é permitido porque a faceta do link tipado não está especificada.

### Esquema de link tipado
<a name="directory_objects_links_typedlinkschema"></a>

Você pode criar facetas de link tipado de duas maneiras. Você pode gerenciar as facetas de links tipados em chamadas individuais da API, incluindo [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_CreateTypedLinkFacet.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_CreateTypedLinkFacet.html)[https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DeleteTypedLinkFacet.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DeleteTypedLinkFacet.html) e [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_UpdateTypedLinkFacet.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_UpdateTypedLinkFacet.html). Você também pode carregar um documento JSON que represente seu esquema em uma única chamada da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_PutSchemaFromJson.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_PutSchemaFromJson.html). Para obter mais informações, consulte [Formato do esquema JSON](schemas_jsonformat.md#schemas_json). Para visualizar um esquema de exemplo de links tipados, consulte [Documento de esquema com links digitados](schemas_jsonformat.md#schemas_schematyped).

Os tipos de alterações permitidas em fases diferentes de ciclo de vida de desenvolvimento do esquema são semelhantes às alterações que são permitidas para a manipulação de facetas de objetos. Os esquemas no estado de desenvolvimento são compatíveis com qualquer alteração. Os esquemas no estado publicado são imutáveis e nenhuma alteração é compatível. Somente certas alterações são permitidas em esquemas que são aplicados a um diretório de dados. Depois de definir a ordem e os atributos em uma faceta de link tipado aplicada, essa ordem não pode ser alterada.

Duas outras operações de API listam facetas e seus atributos:
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetAttributes.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetAttributes.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetNames.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetNames.html)

### Interação de link tipado
<a name="directory_objects_links_typedlinkinteraction"></a>

Depois que uma faceta de link tipado foi criada, você estará pronto para começar a criar e interagir com links tipados. Para anexar e desanexar links tipados, use as operações da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_AttachTypedLink.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_AttachTypedLink.html) e [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DetachTypedLink.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DetachTypedLink.html).

O `TypedLinkSpecifier` é uma estrutura que contém todas as informações para identificar exclusivamente um link tipado. Nessa estrutura você pode localizar `TypedLinkFacet`, `SourceObjectID`, `DestinationObjectID` e `IdentityAttributeValues`. Esses são usados para especificar exclusivamente o link tipado que está sendo operado. A operação da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_AttachTypedLink.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_AttachTypedLink.html) retorna um especificador de link tipado, enquanto a operação da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DetachTypedLink.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DetachTypedLink.html) aceitar um como entrada. De maneira semelhante, as operações da API [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html) e [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html) fornecem especificadores de links tipados como saída. Você também pode criar um especificador de link tipado a partir do zero. A lista completa de operações da API relacionadas a links tipados, inclui o seguinte:
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_AttachTypedLink.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_AttachTypedLink.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_CreateTypedLinkFacet.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_CreateTypedLinkFacet.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DeleteTypedLinkFacet.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DeleteTypedLinkFacet.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DetachTypedLink.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_DetachTypedLink.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_GetLinkAttributes.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_GetLinkAttributes.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_GetTypedLinkFacetInformation.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_GetTypedLinkFacetInformation.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListIncomingTypedLinks.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListOutgoingTypedLinks.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetNames.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetNames.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetAttributes.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_ListTypedLinkFacetAttributes.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_UpdateLinkAttributes.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_UpdateLinkAttributes.html)
+ [https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_UpdateTypedLinkFacet.html](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_UpdateTypedLinkFacet.html)

**nota**  
As referências de atributos e a atualização de links tipados não são compatíveis. Para atualizar um link tipado, você deve removê-lo e adicionar a versão atualizada. 