Procesamiento de archivos XML como orígenes de registro para definir decodificadores para extraer datos del archivo XML.
La definición de grupos de decodificadores XML para orígenes de registro XML requiere conocer la estructura y el contenido del archivo XML, los datos que se van a extraer y los campos en los que se almacenan dichos datos. Esta sección proporciona descripciones básicas de los parámetros que se pueden especificar para los descodificadores. La forma en que se utiliza cualquier decodificador depende del archivo XML que contiene los datos de origen.
Para obtener información sobre los requisitos de formato para orígenes de registro XML, consulte Fuentes de registro. Para obtener ayuda con la definición de los descodificadores XML, póngase en contacto con Adobe.
El nivel superior de un decodificador XML es un grupo de decodificadores (XMLDecoderGroup), que es un conjunto de tablas de decodificadores que se utilizan para extraer datos de un archivo XML de un formato determinado. Si tiene archivos XML de diferentes formatos, debe definir un grupo de descodificadores para cada formato. Cada grupo de decodificadores consta de una o varias tablas de decodificadores.
En la tabla siguiente se describe el parámetro Tables y todos los subparámetros que debe especificar para definir un grupo de decodificadores XML.
Parámetro | Descripción |
---|---|
Tablas | Cada tabla de un grupo de decodificadores representa un nivel de datos que se extraerán del archivo XML. Por ejemplo: si desea extraer datos sobre los visitantes, debe crear una tabla de descodificadores que contenga la información que desee extraer para cada visitante. También puede crear tablas de decodificador dentro de tablas de decodificador (consulte Elementos secundarios). Adición de una tabla a un grupo de descodificadores
|
Campos | Campos extendidos (por ejemplo, x-trackingid, x-email) en los que se almacenan los datos. Los datos que se almacenarán en el campo están determinados por los subcampos Ruta y/o Operación. La ruta es el nivel del campo dentro del archivo XML estructurado. La ruta de un campo es relativa a la ruta de la tabla en la que se define. Algunos ejemplos son tag.tag.tag o tag.tag.tag.@attribute . Tenga en cuenta que las rutas distinguen entre mayúsculas y minúsculas. Se aplica una operación a cada línea de la ruta especificada para generar una salida. Están disponibles las siguientes operaciones:
Adición de un campo a una tabla de descodificador
|
Ruta | Nivel dentro del archivo XML estructurado para el que la tabla del decodificador contiene información. Para una tabla de decodificador XML secundaria, la ruta es relativa a la ruta de acceso de la tabla principal. Tenga en cuenta que las rutas distinguen entre mayúsculas y minúsculas. Por ejemplo, si el archivo XML contiene la estructura:
|
Tabla | El valor de este parámetro siempre debe ser "Entrada de registro".
Nota: No cambie este valor sin consultar con Adobe. |
Niños | Opcional. Una o más tablas de decodificador incrustadas. Cada elemento secundario incluye los parámetros Campos, Ruta y Tabla descritos anteriormente. Adición de un elemento secundario a una tabla de descodificador
|
Para utilizar un archivo XML como origen de registro para un conjunto de datos, se deben definir grupos y tablas de decodificadores XML para extraer la información que se va a procesar en el conjunto de datos. En este ejemplo, puede ver cómo definir grupos y tablas de decodificadores para un origen de registro XML de ejemplo para un conjunto de datos web.
El siguiente archivo XML contiene información sobre un visitante de un sitio web, incluido un ID de Experience Cloud, una dirección de correo electrónico, una dirección física e información sobre las vistas de página del visitante.
Dado que tenemos un único archivo XML, solo necesitamos un grupo de decodificadores, al que se le asigna el nombre "Formato XML de muestra". Este grupo de descodificadores se aplica a cualquier otro archivo XML con el mismo formato que este archivo. Para empezar a construir tablas de decodificadores XML dentro de este grupo de decodificadores, primero debemos determinar qué información queremos extraer y los campos en los que se almacenarán los datos.
En este ejemplo, extraemos información sobre el visitante y las vistas de página asociadas con ese visitante. Para ello, creamos una tabla de decodificador XML de nivel superior (principal) con información sobre el visitante y una tabla de decodificador XML incrustada (secundaria) con información sobre las vistas de página de ese visitante.
La información de la tabla principal (visitante) es la siguiente
La información de la tabla secundaria (vistas de página) es la siguiente:
La siguiente captura de pantalla muestra una parte del Log Processing Dataset Include archivo con el grupo de decodificadores XML resultante para el archivo XML de ejemplo basado en la estructura analizada de las tablas de decodificadores XML principal y secundario.
Una tabla que muestra el resultado de este decodificador para nuestro archivo XML de ejemplo tiene un aspecto similar al siguiente:
x-rowtype | cs—uri-stem | x-email | x-is-registration | x-event-time | x-tracking-id |
---|---|---|---|---|---|
VISITANTE | foo@bar.com | 1 | 1 | ||
PAGEVIEW | /index.html | 2006-01-01 08:00:00 | 1 | ||
PAGEVIEW | / | 2006-01-01 08:00:30 | 1 |
Puede crear una tabla como la anterior en el área de trabajo de datos mediante una interfaz de visor de campos. Para obtener información sobre la interfaz del visor de campos, consulte Herramientas de configuración deconjuntos de datos.
You can now use the #value tag in XML paths to pull the value of an XML element.
Por ejemplo, al especificar previamente una ruta de acceso de la <Hit><Page name="Home Page" index="20">home.html</Page></Hit>
izquierda, no se puede leer el valor de la <Page>
etiqueta. Para leer el valor de una <Page>
etiqueta y sus atributos, puede utilizar Hit.Page.@name y Hit.Page.@index respectivamente. También puede extraer el valor de la etiqueta mediante Hit.Page.#value
expresión.
Por ejemplo, puede leer el valor de la etiqueta <varValue>
agregando el siguiente campo en el decodificador:
7 = XMLDecoderField:
Field = string: x-varvalue-name-added
Operation = string: LAST
Path = string:
<b>#value</b>
Path = string: varValue
Table = string: Log Entry
Del mismo modo, puede leer el valor de la etiqueta <Rep>
agregando el siguiente campo en el decodificador:
7 = XMLDecoderField:
Field = string: x-rep-name-added
Operation = string: LAST
Path = string: Rep.#
<b>value</b>
Path = string: Reps
Table = string: Log Entry
Por el contrario, para leer el valor de la etiqueta element sin atributo, una <text>
etiqueta bajo una <line>
etiqueta y su valor se puede leer directamente dando " text" en una ruta o utilizando line.text, dependiendo de cómo haya creado el decodificador.
2 = XMLDecoderField:
Field = string: x-chat-text
Operation = string: LAST
Path = string:
<b>text</b>
Path = string:
<b>line</b>
Table = string: Log Entry