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

XMLNSC: Valores de elemento y contenido mixto

El analizador XMLNSC es un analizador compacto; por lo tanto, un elemento con contenido simple se analiza como un elemento de sintaxis simple. Cuando un elemento tiene elemento hijo y algo de texto, el texto se denomina contenido mixto.

Elemento con contenido simple

El fragmento XML siguiente con un contenido simple se analiza como un elemento de sintaxis simple:
<simpleElement>simpleValue</simpleElement>
El diagrama muestra el nombre, el tipo de campo y el valor de un elemento con contenido simple.
El valor de este elemento se puede consultar con este ESQL:
SET val = FIELDVALUE(InputRoot.XMLNSC.(XMLNSC.Field)simpleElement);
Para generar un elemento con contenido simple en la salida:
SET OutputRoot.XMLNSC.(PCDataField)simpleElement VALUE = 'simpleValue';  
Observe que se utiliza XMLNSC.Field al consultar el árbol de mensaje, pero se especifica XMLNSC.PCDataField al crear el mensaje de salida. Se puede utilizar XMLNSC.PCDataField para consultar el árbol de mensaje; sin embargo, esto no podría funcionar si el mensaje de entrada ha utilizado una sección CData, tal como se muestra en el siguiente ejemplo:
<simpleElement><![CDATA[simpleValue]]></simpleElement>

Elemento con contenido mixto

Si un elemento tiene elementos hijo, normalmente es una 'carpeta' y no tiene un valor. Cuando un elemento tiene tanto elementos hijo como texto, el texto recibe el nombre de 'contenido mixto'.
<element>mixed1<child>simpleValue</child>mixed2</element>
De forma predeterminada, el contenido mixto se descarta porque normalmente es espacio en blanco de formato y no tiene ningún significado comercial. El contenido mixto se puede conservar si selecciona el recuadro Retener el contenido mixto en la página Opciones de análisis de las propiedades del nodo.

Si se conserva el contenido mixto, el analizador XMLNSC crea un elemento hijo Value para cada elemento diferenciado del contenido mixto.

El diagrama muestra los elementos hijo que se han creado para el contenido mixto.
El contenido mixto se puede consultar con este ESQL:
SET mixed1 = FIELDVALUE(InputRoot.XMLNSC.(element).*[1];
El código ESQL para construir el fragmento XML anterior es:
CREATE ref REFERENCE TO OutputRoot.XMLNSC.element; 
CREATE FIRSTCHILD OF ref TYPE XMLNSC.PCDataValue VALUE 'mixed1'; 
CREATE LASTCHILD OF ref NAME 'child' TYPE XMLNSC.PCDataField  VALUE 'simpleValue';  
CREATE LASTSTCHILD OF ref TYPE XMLNSC.PCDataValue VALUE 'mixed2';
El siguiente código ESQL habilita la opción Retener el contenido mixto:
DECLARE X BLOB; 
-- presupongamos que X contiene un documento XML
CREATE LASTCHILD OF OutputRoot
    PARSE(X OPTIONS XMLNSC.MixedContentRetainAll); 

Elemento que contiene una sección CData

Una sección CData es una notación XML que permite que los caracteres de marcación XML se incluyan en el contenido de un elemento.

Los dos fragmentos siguientes XML tienen idéntico significado:
<simpleElement>simpleValue</simpleElement>
<simpleElement><![CDATA[simpleValue]]></simpleElement>
Si la sección CData es el único contenido de texto, el analizador XMLNSC recuerda que el documento de entrada incluía una sección CData estableciendo el tipo de campo en XMLNSC.CDataField en lugar de hacerlo en XMLNSC.PCDataField.

Si la sección CData no es el único contenido de texto, se crea como un elemento de valor hijo, con otros elementos de valor hijo que representan el contenido de texto restante. Esto se muestra en el ejemplo siguiente:

<simpleElement><![CDATA[CDataValue]]>normalText</simpleElement>
El diagrama muestra que se ha creado un elemento hijo CDataValue.

Consulte XMLNSC: Cómo trabajar con CData para obtener más información sobre el uso correcto de CData en los documentos XML.

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 16:58:55


Tema de conceptoTema de concepto | Versión 8.0.0.5 | ac67195_