Nodo XMLTransformation

Este tema contiene las siguientes secciones:

Finalidad

Utilice el nodo XMLTransformation para transformar un mensaje XML a otro formato de mensaje XML, siguiendo las normas que proporciona una hoja de estilos XSL (eXtensible Stylesheet Language).

Puede especificar la ubicación de la hoja de estilos para aplicar esta transformación de tres modos:

  1. Puede utilizar las propiedades del nodo. De este modo, se asegura de que la transformación que define esta hoja de estilos individual se aplique a todos los mensajes que procese este nodo.
  2. Puede utilizar el contenido de los datos XML que contiene el mensaje. De este modo, se transforma el mensaje según una hoja de estilos que el mensaje define.
  3. Puede establecer un valor para la carpeta LocalEnvironment asociada con el mensaje. Esto proporciona una hoja de estilos de opción dinámica, porque debe establecer este valor (en un nodo Compute) en el flujo de mensaje después de recibir el mensaje. Por lo tanto, puede utilizar diferentes entradas para determinar la hoja de estilos que se ha de utilizar para este mensaje como, por ejemplo, el contenido de los datos del mensaje o un valor de la base de datos.

En área de trabajo el nodo XMLTransformation se representa mediante el icono siguiente:

Icono del nodo XMLTransformation

Utilización de este nodo en un flujo de mensajes

Para obtener un ejemplo de cómo se utiliza este nodo, tome como ejemplo dos agencias de noticias que intercambian información de forma regular. Una puede ser una cadena de televisión y la otra un periódico. Aunque la información es similar, el vocabulario que utilizan las dos es diferente. Este nodo puede realizar la transformación de un formato a otro aplicando las normas de la hoja de estilos especificada. Si especifica la hoja de estilos del mensaje (ya sean los datos XML o LocalEnvironment), el mismo nodo puede realizar ambas transformaciones.

Configuración del nodo XMLTransformation

Cuando transfiere una instancia del nodo XMLTransformation a un flujo de mensajes, puede configurarlo. Pulse con el botón derecho del ratón en la vista del editor y pulse Propiedades. Se muestran las propiedades básicas del nodo.

Todas las propiedades obligatorias para las que debe entrar un valor (las que no tienen definido un valor por omisión) quedan marcadas con un asterisco en el diálogo propiedades.

Configure el nodo XMLTransformation como se indica a continuación:

  1. Seleccione los valores para las propiedades Prioridad de selección intercalada XML, Prioridad de selección de entorno de mensaje y Prioridad de selección de atributo del nodo de intermediarios WBI. Los valores que establezca determinan el orden en el que se buscan las ubicaciones alternativas para obtener la información de hoja de estilos. El valor de prioridad más alto es 1. El orden por omisión es:
    1. Prioridad de selección intercalada XML que, por lo tanto, tiene un valor por omisión de 1. El nodo busca los datos XML para la información de ubicación de hoja de estilos. Por ejemplo, los datos XML pueden contener:
      <xml-stylesheet type="text/xsl" href="foo.xsl">
    2. Prioridad de selección de entorno de mensaje que, por lo tanto, tiene un valor por omisión de 2. El nodo busca el valor de LocalEnvironment asociado al mensaje actual para la información de la hoja de estilos almacenada en un elemento denominado ComIbmXslXmltStylesheetname.

      Dado que este nodo estaba disponible en un SupportPac para Versión 2.1 y se ha utilizado elemento ComIbmXslMqsiStylesheetname como nombre de la hoja de estilo, el nodo actual comprueba ambos elementos. Si ambos elementos están presentes, el valor de ComIbmXslXmltStylesheetname tiene prioridad.

    3. Prioridad de selección de atributo de nodo de intermediarios WBI que, por lo tanto, tiene un valor por omisión de 3. El nodo utiliza las propiedades del nodo Nombre de hoja de estilos y Directorio de hoja de estilos para determinar los valores correctos.

    Puede establecer más de una propiedad con el mismo valor, aunque no se recomienda. Si lo hace, el orden de prioridad que establece el nodo es el orden por omisión indicado anteriormente.

    Si establece un valor de 0, el nodo no busca en la ubicación correspondiente la identificación de la hoja de estilos. Si establece las tres propiedades en 0, se genera un error de tiempo de ejecución.

  2. Si desea especificar la hoja de estilos utilizando las propiedades del nodo, escriba el valor necesario para el Nombre de hoja de estilos. Este valor se ignora si se busca la información de la hoja de estilos y se encuentra en una ubicación preferida (lo que se determina mediante los valores de prioridad que ha establecido).
  3. Si la hoja de estilos se identifica por completo, se ignora el Directorio de hoja de estilos. Si no lo está, se añade el valor que ha establecido para esta propiedad al principio de la especificación, sea cual sea su ubicación.
  4. En Nivel de antememoria de hoja de estilos, especifique el número de hojas de estilos compiladas o analizadas que se almacenan en esta instancia del nodo. El valor por omisión es 5. La antememoria de hoja de estilos se conserva durante toda la vida del nodo. Se borra cuando se suprime del flujo o cuando el flujo se suprime o cuando se detiene el grupo de ejecución. Si modifica una hoja de estilos, se utiliza la versión modificada (la más reciente) con preferencia a la versión guardada en la antememoria. Si desea renovar la antememoria, utilice el mandato mqsireload.
  5. Seleccione el juego de caracteres de salida en el navegador del diálogo de propiedades para especificar el orden en el que el nodo buscará en las ubicaciones válidas el juego de caracteres que se utilizará en el mensaje de salida. El valor de prioridad más alto es 1. El orden por omisión es:
    1. Prioridad de selección de entorno de mensaje que, por lo tanto, tiene un valor por omisión de 1. El nodo busca el valor de LocalEnvironment asociado al mensaje actual para obtener la información del juego de caracteres almacenada en un elemento denominado ComIbmXslXmltOutputcharset.

      Por ejemplo, para codificar la salida de la transformación como UTF-8, escriba el valor 1208 como una serie en este elemento.

      Dado que este nodo estaba disponible en un SupportPac para la Versión 2.1 y se ha utilizado el elemento ComIbmXslMqsiOutputcharset para el juego de caracteres de salida, el nodo actual comprueba los dos elementos. Si ambos elementos están presentes, el valor de ComIbmXslXmltOutputcharset tiene prioridad.

    2. Prioridad de selección de atributo de nodo de intermediarios WBI que, por lo tanto, tiene un valor por omisión de 2. El nodo utiliza las propiedades del nodo Juego de caracteres de salida para determinar el valor correcto.

      Si establece un valor para el Juego de caracteres de salida, el valor que especifique debe ser numérico. Por ejemplo, para codificar la salida de la transformación como UTF-16, escriba el valor 1200.

    Puede establecer más de una propiedad con el mismo valor, aunque no se recomienda. Si lo hace, el orden de prioridad que establece el nodo es el orden por omisión indicado anteriormente.

    Si establece un valor de 0, el nodo no busca en la ubicación correspondiente la identificación de la hoja de estilos.

    Si el nodo no puede determinar el juego de caracteres de salida de cualquiera de estas dos fuentes, ya sea porque no se ha establecido un valor o porque la selección de las prioridades se establecen en 0, se utiliza el valor por omisión 1208 (UTF8). (La especificación XSL indica que se puede especificar el juego de caracteres de salida en la hoja de estilos. No obstante el nodo XMLTransformation ignora este valor.

  6. Seleccione Rastreo detallado en el navegador del diálogo de propiedades para rastrear las acciones del nodo XMLTransformation. El valor por omisión para la propiedad Rastreo detallado es Desactivado. Para activar el rastreo, establezca la propiedad en Activado.

    La información de rastreo se graba en un archivo de rastreo XMLTTrace.log:

    • En los sistemas z/OS, el archivo está en <dir_intermediario>/output, donde <dir_intermediario es el directorio en el que ha instalado el intermediario.
    • En los sistemas Windows, el archivo está en <dir_instalación>\bin
    • En los sistemas UNIX, el archivo está en el directorio desde el que se ha iniciado el intermediario de mensajes.

    donde <dir_instalación> es el directorio en el que ha instalado WebSphere Business Integration Message Broker.

    Si establece un rastreo detallado para un nodo XMLTransformation, se activa para todos los nodos del grupo de ejecución.

  7. Seleccione Descripción en el navegador del diálogo de propiedades para especificar una descripción corta, una descripción larga o ambas cosas.
  8. Pulse Aplicar para efectuar los cambios en el nodo XMLTransformation sin cerrar el diálogo de propiedades. Pulse Aceptar para aplicar los cambios y cerrar el diálogo de propiedades.

    Pulse Cancelar para cerrar el diálogo e ignorar todos los cambios que ha realizado en las propiedades.

Terminales y propiedades

Los terminales del nodo XMLTransformation se describen en la tabla siguiente.

Terminal Descripción
Terminal de entrada El terminal de entrada que acepta el mensaje que el nodo procesará.
Terminal de anomalías El terminal de salida al que se dirige el mensaje original si se detecta un error durante la transformación.
Terminal de salida El terminal de salida al que se dirige el mensaje transformado correctamente.

Las tablas siguientes describen las propiedades del nodo. La columna con la cabecera M indica si la propiedad es obligatoria (está marcada con un asterisco en el diálogo de propiedades si debe especificar un valor cuando no se ha definido un valor por omisión), la columna con la cabecera C indica si la propiedad es configurable (puede cambiar el valor cuando añade el flujo de mensajes al archivo de barras para desplegarlo).

Las propiedades de la hoja de estilos del nodo XMLTransformation se describen en la tabla siguiente.

Propiedad M C Valor por omisión Descripción
Prioridad de selección intercalada XML No 1 El valor de prioridad para buscar la información de ubicación de la hoja de estilos en los datos XML.
Prioridad de selección de entorno de mensaje No 2 El valor de prioridad para buscar la información de ubicación de la hoja de estilos en la carpeta LocalEnvironment del mensaje actual.
Prioridad de selección de atributo de nodo de intermediario WBI No 3 El valor de prioridad para buscar la información de ubicación de la hoja de estilos como una propiedad del nodo.
Nombre de hoja de estilos No   El nombre de la hoja de estilos que se utiliza si se buscan en la especificación de la hoja de estilos las propiedades del nodo.
Directorio de hojas de estilos No   La vía de acceso donde se encuentra la hoja de estilos. La utilizan todos los métodos de ubicación.
Nivel de antememoria de hoja de estilos No No 5 El número de hojas de estilos compiladas o analizadas que se almacenan en esta instancia del nodo.

Las propiedades del juego de caracteres de salida del nodo XMLTransformation se describen en la tabla siguiente.

Propiedad M C Valor por omisión Descripción
Prioridad de selección de entorno de mensaje No 1 El valor de prioridad para buscar el ID del juego de caracteres de salida en la carpeta LocalEnvironment del mensaje actual.
Prioridad de selección de atributo de nodo de intermediario WBI No 2 El valor de prioridad para buscar el ID del juego de caracteres de salida como una propiedad del nodo.
Juego de caracteres de salida No No   El valor numérico del juego de caracteres de salida

Las propiedades del Rastreo detallado del nodo XMLTransformation se describen en la tabla siguiente.

Propiedad M C Valor por omisión Descripción
Definición de rastreo No Desactivado Si el rastreo está activado o desactivado. Si el rastreo está activado, se registra un nivel de rastreo bajo en un archivo.

En la tabla siguiente se describen las propiedades de la descripción del nodo XMLTransformation.

Propiedad M C Valor por omisión Descripción
Descripción corta No No   Una breve descripción del nodo.
Descripción larga No No   El texto que describe la finalidad del nodo en el flujo de mensaje.

Conceptos relacionados
Flujos de mensajes
Árbol LocalEnvironment

Tareas relacionadas
Cómo decidir los nodos que utilizar
Manejo de errores en flujos de mensajes
Edición de propiedades configurables

Referencia relacionada
Mandato mqsireload
Nodo Compute