Acceso a los atributos de un mensaje en el dominio MRM

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

Considere el mensaje MRM del ejemplo de vídeo. El atributo LastName se define como un hijo del elemento Name en el mensaje Customer. El siguiente es un ejemplo de mensaje XML de entrada:
<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, los valores se almacenan en el árbol lógico como se muestra en la sección siguiente 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 del mensaje de salida:
SET OutputRoot.MRM.Name.LastName = 'Smith';

Tenga en cuenta el orden de los atributos cuando codifique ESQL. Cuando se analizan los atributos, el árbol lógico inserta la pareja de 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 de mensajes hijo después del atributo LastName. En perspectiva Desarrollo de aplicaciones de intermediario, la vista Outline muestra los atributos después de los elementos. Cuando codifique ESQL para crear mensajes de salida, debe definir las parejas de nombre/valor para los atributos antes de cualquier elemento hijo.

Conceptos relacionados
Flujos de mensajes
ESQL
Diseño de mensajes

Tareas relacionadas
Diseño de un flujo de mensajes
Definición del contenido del flujo de mensajes
Gestión de archivos ESQL
Desarrollo de modelos de mensajes

Referencia relacionada
Nodo Compute
Nodo Database
Nodo Filter
ESQL