Nodos y Campos
Introducción
Los nodos y campos están contenidos dentro de los esquemas que se especifican durante la configuración de la actividad o en la transformación. Al configurar una transformación, los nodos y campos se muestran iguales independientemente del modo de visualización de la transformación.
Notación de Nodos y Campos
Cada nodo o campo se muestra con estos componentes:
- Clave de cardinalidad para nodos y campos
- Nombre para nodos y campos
- Tipo de datos solo para campos
- Indicadores de atributos y valores (si es aplicable)
Por ejemplo, el campo siguiente tiene una clave de cardinalidad de [0, 1]
, un nombre de id
, y un tipo de datos de string
:
Clave de Cardinalidad
Las claves de cardinalidad anotan la relación de los nodos y (si la clave está presente) los campos. La notación se deriva del concepto de multiplicidad tal como se utiliza en el lenguaje de modelado unificado (UML).
Clave de cardinalidad | Uso | Definición |
---|---|---|
[1] | Sólo nodos | Sólo un elemento es válido. |
[1+] | Sólo nodos | Uno o más de un elemento es válido. |
[0,1] | Nodos o campos | Cero o un elemento, valor o atributo es válido. Esta clave significa que un nodo o campo determinado es efectivamente opcional. |
[0+] | Sólo nodos | Cero o más elementos son válidos. |
Nombre
Cada nodo o campo tiene un nombre que proviene directamente del esquema de datos.
Tipo de Datos
Cada campo tiene un tipo de datos asociado, como integer
, float
, double
, long
, string
, boolean
, o binary
.
Indicadores de Atributos y Valores
Algunos tipos de estructuras, como XML o SOAP, pueden tener símbolos adicionales que representan si un campo es un valor o un atributo. Los elementos, representados por nodos, no tienen indicadores visuales. Los elementos pueden tener uno o más elementos, atributos, valores, una combinación de estos o ninguno, dependiendo de la clave de cardinalidad.
Indicador visual | Definición |
---|---|
@ | Atributo representado por un campo. Este campo se utiliza para indicar que un nodo tiene un atributo y puede tener o no también un valor. También puede haber más de un atributo para cada nodo. |
# | Valor representado por un campo. El campo se utiliza para indicar que un nodo tiene un valor y cero o más atributos. |
Ejemplo de Nodo y Campo
Este ejemplo muestra un nodo (color_swatch
) con una cardinalidad de cero o más elementos, que tiene tanto un campo de valor (text
) que es obligatorio y un campo de atributo (image
) que es opcional:
notación de Ruta de Referencia
Cuando se asigna un objeto de origen, su ruta de referencia individual se inserta en un secuencia de comandos en el campo de destino. En la mayoría de los casos de uso, como estas rutas se construyen automáticamente, no es necesario saber cómo construirlas manualmente. Esta información se proporciona como referencia para ayudar a comprender cómo se construyen estos caminos.
Hay casos en los que necesitará comprender cómo se construyen estas rutas, como en el uso de rutas de referencia con Funciones de instancia. En los casos en los que un parámetro de entrada requerido para una función de instancia es una matriz, un símbolo de almohadilla (#
) se puede insertar en la ruta de referencia de un elemento de datos para devolver una matriz de datos en lugar de un solo campo. Para obtener más información, consulte Inserción de un hash para devolver una matriz en Funciones de instancia.
Como referencia, la sintaxis utilizada para la ruta del objeto utiliza estos símbolos:
Categoría | Símbolo | Significado |
---|---|---|
Caminos | [ ] | Los Square se utilizan para encerrar una ruta de nodo. |
Una ruta sin corchetes es un campo de valor o atributo. | ||
Separadores | . | Un punto después del nombre de un nodo indica que es un nodo de bucle. |
$ | Se utiliza un signo de dólar después del nombre de un nodo para indicar un Once Only o [E] elemento. Este nodo no puede ser un nodo de bucle. | |
Nodos de bucle | #. | Un punto de signo hash después del nombre de un nodo indica que se devolverá una matriz para los campos de valor del registro. Esta notación sólo se puede utilizar en nombres de nodos de bucle. |
#<n>. | Un signo de almohadilla seguido de un número entero devuelve el elemento de índice basado en uno de una matriz. | |
Estructuras CSV complejas | _ | Un guión bajo precedente Root se utiliza para hacer referencia a la raíz en un CSV complejo. Esto no está presente para otras estructuras de datos. Un guión bajo también puede ser simplemente un guión bajo que ya está presente en un nodo o nombre de campo. |
Como ejemplo, la siguiente tabla tiene rutas de ejemplo para una estructura de datos CSV compleja. Las rutas para otras estructuras siguen el mismo formato excepto que _Root
no está presente para otras estructuras de datos.
Las rutas de los nodos se muestran con un fondo azul, mientras que el resto son rutas de campo. Una fuente se puede asignar a un atributo o campo de valor de un destino. Aunque los nodos de destino pueden tener condiciones aplicados sobre ellos, las fuentes no pueden asignarse a ellos. Las rutas de campo y nodo de origen se pueden utilizar en las condiciones del nodo de destino y en las asignaciones de campos de destino.
Estructura de datos | Ruta Calificada | Significado |
---|---|---|
_Root (Solo una vez) | [_Root$] | El _Root en una estructura de datos CSV siempre es un nodo y, por lo tanto, aparece entre corchetes [ ] . El signo de dólar final indica una Once Only elemento. |
Header (Por una sola vez) [E] | [_Root$Header$] | Los subnodos utilizan la referencia de cualquier nodo anterior, seguida del nombre del nodo. El signo de dólar final indica una Once Only o [E] elemento. |
Value [V] | _Root$Header$Value | Un campo de valor no está entre corchetes, pero aún usa la referencia de cualquier nodo anterior, seguida del nombre del valor. |
Detail (Uno o más) | [_Root$Header$Detail.] | Los subnodos utilizan la referencia de cualquier nodo anterior, seguida del nombre del nodo. El punto final indica un nodo de bucle. |
Attribute [A] | _Root$Header$Detail.Attribute | Un campo de atributo no está entre corchetes, pero aún usa la referencia de cualquier nodo anterior, seguida del nombre del atributo. |
Value [V] | _Root$Header$Detail#.Value | Un campo de valor no está entre corchetes, pero aún usa la referencia de cualquier nodo anterior, seguida del nombre del valor. Este ejemplo específico muestra un signo de almohadilla que precede al período del nodo de bucle, lo que indica que se devolverá una matriz de valores de registro "Detalle". |
Value [V] | _Root$Header$Detail#1.Value | Un campo de valor no está entre corchetes, pero aún usa la referencia de cualquier nodo anterior, seguida del nombre del valor. Este ejemplo específico muestra un signo hash indexado que precede al período del nodo de bucle, lo que indica que se devolverá el primer elemento de una matriz de valores de registro "Detalle". |
Para obtener información adicional sobre estructuras de datos, campos mapeados, nodos de bucle y mapeo de instancias y múltiples, consulte Estructuras de datos.