Ir para o conteúdo

Nós e Campos

Introdução

Nós e campos estão contidos nos esquemas que são especificados durante a configuração da atividade ou na transformação. Ao configurar uma transformação, nós e campos são exibidos da mesma forma, independentemente do modo de exibição da transformação.

Notação de Nó e Campo

Cada nó ou campo é exibido com estes componentes:

Por exemplo, o campo abaixo tem uma chave de cardinalidade de [0, 1], um nome de id e um tipo de dados de string:

notação do campo de origem

Chave de Cardinalidade

As chaves de cardinalidade indicam o relacionamento dos nós e (se a chave estiver presente) dos campos. A notação é derivada do conceito de multiplicidade usado na Unified Modeling Language (UML).

Chave de cardinalidade Uso Definição
[1] Apenas nós Um e apenas um elemento é válido.
[1+] Apenas nós Um ou mais elementos são válidos.
[0,1] Nós ou campos Zero ou um elemento, valor ou atributo é válido. Esta chave significa que um determinado nó ou campo é efetivamente opcional.
[0+] Apenas nós Zero ou mais elementos são válidos.

Nome

Cada nó ou campo possui um nome que vem diretamente do esquema de dados.

Tipo de Dados

Cada campo possui um tipo de dados associado, como integer, float, double, long, string, boolean, ou binary.

Indicadores de Atributos e Valores

Alguns tipos de estruturas, como XML ou SOAP, podem ter símbolos adicionais que representam se um campo é um valor ou um atributo. Os elementos, representados por nós, não possuem nenhum indicador visual. Os elementos podem ter um ou mais elementos, atributos, valores, uma combinação destes ou nenhum, dependendo da chave de cardinalidade.

Indicador Visual Definição
@ Atributo representado por um campo. Este campo é usado para indicar que um nó possui um atributo, podendo ou não possuir um valor. Também pode haver mais de um atributo para cada nó.
# Valor representado por um campo. O campo é usado para indicar que um nó possui um valor e zero ou mais atributos.

Exemplo de Nó e Campo

Este exemplo mostra um nó (color_swatch) com cardinalidade de zero ou mais elementos, que possui um campo de valor (text) que é obrigatório e um campo de atributo (image) que é opcional:

atributo de valor do campo de destino

notação de Caminho de Referência

Quando um objeto de origem é mapeado, seu caminho de referência individual é inserido em um script no campo de destino. Na maioria dos casos de uso, como esses caminhos são construídos automaticamente, não é necessário saber como construí-los manualmente. Esta informação é fornecida como referência para auxiliar na compreensão de como esses caminhos são construídos.

Há casos em que você precisará entender como esses caminhos são construídos, como no uso de caminhos de referência com Instance Functions. Nos casos em que um parâmetro de entrada obrigatório para uma função de instância é uma matriz, um símbolo hash (#) pode ser inserido no caminho de referência de um elemento de dados para retornar uma matriz de dados em vez de um único campo. Para obter mais informações, consulte Inserção de um hash para retornar um array em Funções de instância.

Para referência, a sintaxe usada para o caminho do objeto usa estes símbolos:

Categoria Símbolo Significado
Caminhos [ ] Square são usados para delimitar um caminho de nó.
Um caminho sem colchetes é um campo de valor ou atributo.
Separadores . Um ponto após o nome de um nó indica que é um nó de loop.
$ Um cifrão após o nome de um nó é usado para indicar um Once Only ou [E] elemento. Este nó não pode ser um nó de loop.
Nós de loop #. Um ponto de sinal hash após um nome de nó indica que uma matriz para os campos de valor de registro será retornada. Esta notação pode ser usada somente em nomes de nós de loop.
#<n>. Um sinal de hash seguido por um número inteiro retorna o item de índice baseado em um de uma matriz.
Estruturas CSV complexas _ Um sublinhado precedendo Root é usado para fazer referência à raiz em um CSV complexo. Isso não está presente para outras estruturas de dados. Um sublinhado também pode ser simplesmente um sublinhado já presente em um nó ou nome de campo.

Como exemplo, a tabela a seguir apresenta exemplos de caminhos para uma estrutura de dados CSV complexa. Os caminhos para outras estruturas seguem o mesmo formato, exceto que _Root não está presente para outras estruturas de dados.

Os caminhos dos nós são mostrados com um fundo azul, enquanto o restante são caminhos dos campos. Uma origem pode ser mapeada para um atributo ou campo de valor de um destino. Embora os nós de destino possam ter condições aplicado a eles, as fontes não podem mapeá-los. O nó de origem e os caminhos de campo podem ser usados em condições de nó de destino e mapeamentos de campo de destino.

Estrutura de dados
Caminho Qualificado Significado
_Root (Apenas uma vez) [_Root$] O _Root em uma estrutura de dados CSV é sempre um nó e, portanto, aparece entre colchetes [ ]. O cifrão final indica um Once Only elemento.
    Header (Apenas uma vez) [E] [_Root$Header$] Os subnós usam a referência de quaisquer nós anteriores, seguida pelo nome do nó. O cifrão final indica um Once Only ou [E] elemento.
        Value [V] _Root$Header$Value Um campo de valor não está entre colchetes, mas ainda usa a referência de quaisquer nós anteriores, seguido pelo nome do valor.
    Detail (Um ou mais) [_Root$Header$Detail.] Os subnós usam a referência de quaisquer nós anteriores, seguida pelo nome do nó. O período final indica um nó de loop.
        Attribute [A] _Root$Header$Detail.Attribute Um campo de atributo não está entre colchetes, mas ainda usa a referência de quaisquer nós anteriores, seguida pelo nome do atributo.
        Value [V] _Root$Header$Detail#.Value Um campo de valor não está entre colchetes, mas ainda usa a referência de quaisquer nós anteriores, seguido pelo nome do valor. Este exemplo específico mostra um sinal de hash precedendo o período do nó do loop, indicando que uma matriz dos valores do registro "Detalhe" será retornada.
        Value [V] _Root$Header$Detail#1.Value Um campo de valor não está entre colchetes, mas ainda usa a referência de quaisquer nós anteriores, seguido pelo nome do valor. Este exemplo específico mostra um sinal de hash indexado precedendo o período do nó do loop, indicando que o primeiro elemento de uma matriz dos valores do registro "Detalhe" será retornado.

Para obter informações adicionais sobre estruturas de dados, campos mapeados, nós de loop e mapeamento de instâncias e múltiplos, consulte Estruturas de dados.