Acceder a atributos en un mensaje del dominio MRM

Cuando se analiza un mensaje MRM en un árbol lógico, los atributos y los datos que los atributos contienen se crean como pares de nombre-valor del mismo modo que se crean los elementos MRM. Esto significa que el ESQL que se codifica para interrogar y actualizar los datos contenidos en los atributos hace referencia a los atributos de un modo similar.

Examine el mensaje MRM de ejemplo Video. El atributo LastName se define como un hijo del elemento Name en el mensaje Customer. A continuación se muestra un mensaje XML de entrada de ejemplo:
<Customer xmlns:addr="http://www.ibm.com/AddressDetails" 

xmlns:brw="http://www.ibm.com/BorrowedDetails">
<Name LastName="Bloggs">
<Title>Mr</Title>
<FirstName>Fred</FirstName>
		 </Name>
<addr:Address>
<HouseNo>13</HouseNo>
<Street>Oak Street</Street>
<Town>Southampton</Town>
</addr:Address>
             <ID>P</ID>
<PassportNo>J123456TT</PassportNo>
<brw:Borrowed>
<VideoTitle>Fast Cars</VideoTitle>
<DueDate>2003-05-23T01:00:00</DueDate>
<Cost>3.50</Cost>
</brw:Borrowed>
<brw:Borrowed>
<VideoTitle>Cut To The Chase</VideoTitle>
<DueDate>2003-05-23T01:00:00</DueDate>
<Cost>3.00</Cost>
</brw:Borrowed>
<Magazine>0</Magazine>
</Customer>
Cuando se analiza el mensaje de entrada, se almacenan los valores en el árbol lógico como se muestra en la siguiente sección del rastreo de usuario:
(0x0100001B):MRM = (
  (0x01000013):Name = (
    (0x0300000B):LastName = 'Bloggs'
    (0x0300000B):Title = 'Mr'
    (0x0300000B):FirstName = 'Fred'
  )
  (0x01000013)http://www.ibm.com/AddressDetails:Address = (
    (0x0300000B):HouseNo = 13
    (0x0300000B):Street = 'Oak Street'
    (0x0300000B):Town = 'Southampton'
  )
  (0x0300000B):ID = 'P'
  (0x0300000B):PassportNo = 'J123456TT'
  (0x01000013)http://www.ibm.com/BorrowedDetails:Borrowed = (
    (0x0300000B):VideoTitle = 'Fast Cars'
    (0x0300000B):DueDate = TIMESTAMP '2003-05-23 00:00:00'
    (0x0300000B):Cost = 3.50
  )
  (0x01000013)http://www.ibm.com/BorrowedDetails:Borrowed = (
    (0x0300000B):VideoTitle = 'Cut To The Chase '
    (0x0300000B):DueDate = TIMESTAMP '2003-05-23 00:00:00'
    (0x0300000B):Cost = 3.00
  )
  (0x0300000B):Magazine = FALSE
El ESQL siguiente cambia el valor del atributo LastName en el mensaje de salida:
SET OutputRoot.MRM.Name.LastName = 'Smith';

Tenga presente el orden de los atributos cuando codifique ESQL. Cuando se analizan los atributos, el árbol lógico inserta el nombre-valor correspondiente antes de los elementos hijo del elemento MRM. En el ejemplo anterior, los elementos hijo Title y FirstName aparecen en el árbol lógico de mensaje después del atributo LastName. En la Perspectiva de Desarrollo de aplicaciones de intermediario, la vista Esquema visualiza los atributos después de los elementos. Cuando codifique ESQL para construir mensajes de salida, deberá definir los pares de nombre-valor para los atributos antes de cualquier elemento hijo.

Conceptos relacionados
Visión general de flujos de mensajes
Visión general de ESQL
Modelado de mensajes
Tareas relacionadas
Diseñar un flujo de mensajes
Definir el contenido del flujo de mensajes
Gestión de archivos ESQL
Desarrollo de modelos de mensaje
Referencia relacionada
Nodo Compute
Nodo Database
Nodo Filter
Referencia de ESQL
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
ac17380_