WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

Acceder al contenido de un mensaje en el dominio DFDL con el soporte de espacios de nombres habilitado

Utilice espacios de nombres cuando sea apropiado para los mensajes analizados por el analizador DFDL.

Es posible crear un archivo de esquema DFDL que tenga un espacio de nombres de destino. Todos los mensajes definidos en ese esquema DFDL pertenecen a ese espacio de nombres. Cuando el analizador DFDL analiza uno de los mensajes, el espacio de nombres se incluye en los elementos que se crean en el árbol de mensaje lógico. Debe incluir el espacio de nombres cuando codifique la referencia ESQL al elemento. Si no incluye el espacio de nombres, el intermediario busca en el espacio de nombres no target. Si el elemento no se encuentra en el espacio de nombres no target, el intermediario busca en todos los demás espacios de nombres conocidos del archivo de esquema de modelo de mensaje. Por motivos de rendimiento e integridad, especifique espacios de nombres cuando sean aplicables.

La forma más eficaz de hacer referencia a elementos cuando los espacios de nombres están habilitados es definir una constante de espacio de nombres, y utilizar esta constante en las sentencias ESQL adecuadas. Esta técnica hace que el código ESQL sea más fácil de leer y mantener.

Defina una constante utilizando la sentencia DECLARE NAMESPACE:

DECLARE ns01 NAMESPACE 'http://www.ns01.com'

SET OutputRoot.DFDL.ns01:MyMessage.ns01:Element1 = InputBody.ns01:MyMessage.ns01:Element1; 

ns01 se interpreta correctamente como un espacio de nombres debido al modo en que se declara.

También puede utilizar una variable CHARACTER para declarar un espacio de nombres:

DECLARE ns02 CHARACTER 'http://www.ns02.com'

SET OutputRoot.DFDL.{ns02}:MyMessage.{ns02}:Element1 = InputBody.{ns02}:MyMessage.{ns02}:Element1;

Si utiliza este método, debe encerrar la variable declarada entre llaves para garantizar que se interprete como un espacio de nombres.

Si le preocupa que pueda modificarse una variable CHARACTER, puede utilizar una declaración CONSTANT CHARACTER:

DECLARE ns03 CONSTANT CHARACTER 'http://www.ns03.com'

SET OutputRoot.DFDL.{ns03}:MyMessage.{ns03}:Element1 = InputBody.{ns03}:MyMessage.{ns03}:Element1; 

Puede declarar un espacio de nombres, una constante y una variable en un módulo o función. No obstante, puede declarar solamente un espacio de nombres o una constante en un ámbito de esquema (esto es, fuera de un ámbito de módulo).

Para obtener más información sobre la utilización de espacios de nombres con DFDL, consulte Espacios de nombres en la DFDL v1.0 Specification.

Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última actualización:
        
        Última actualización: 2015-02-28 17:01:05


Tema de tareaTema de tarea | Versión 8.0.0.5 | bc40794_