Cada archivo de definición de mensajes describe la estructura lógica de los mensajes así como los formatos físicos que describen el aspecto preciso de la corriente de bits de mensaje durante la transmisión. Si está utilizando el dominio de MRM, se debe proporcionar la información de formato físico ya que indica exactamente al analizador cómo debe analizar la corriente de bits de mensaje.
Puede considerar un mensaje como un paquete de datos que se envía de un lugar a otro. El emisor y el receptor del mensaje habrán acordado la estructura del mensaje y el significado de cada campo del mensaje. Esto es la estructura lógica independiente de la plataforma y del protocolo.
El emisor y el receptor también habrán acordado la representación física del mensaje, el modo en que se transmiten físicamente los datos. Por ejemplo, si define un mensaje que transmite información sobre un cargo de una cuenta bancaria de una persona, se puede representar en formatos físicos diferentes (XML o una estructura fija tal como un libro de copias COBOL por ejemplo). El significado y los datos son iguales en ambos casos: sólo ha cambiado el diseño físico.
Si está utilizando el dominio de MRM, puede modelar varias representaciones físicas diferentes utilizando formatos físicos con nombre.
El ejemplo siguiente muestra cómo un mensaje lógico muy simple puede tener diferentes representaciones físicas.
El modelo lógico define la estructura y el orden del mensaje. En el ejemplo siguiente, los tres campos son enteros simples y C sigue a B, que sigue a A:
int A; int B; int C;
<Msg><A>xxxxxxxx</A><B>xxxxxxxx</B><C>xxxxxxxx</C></Msg>donde xxxxxxxx es el valor del entero representado como una serie de caracteres (XML sólo trata con series de caracteres). Una representación alternativa puede ser:
<Msg A="xxxxxxxx" B="xxxxxxxx" C="xxxxxxxx"/>donde los valores de los enteros se almacenan como atributos XML en lugar de almacenarse como elementos XML. Proporcione la información de XML precisa para cada campo del mensaje como propiedades XML.
{A_código:xxxxxxxx;B_código:xxxxxxxx;C_código:xxxxxxxx}Una alternativa puede basarse en que se ordenen los datos de forma que sólo sea necesario especificar el delimitador de terminación, como se muestra a continuación:
[xxxxxxxx;xxxxxxxx;xxxxxxxx]Proporcione el régimen de identificación preciso en forma de propiedades TDS.
Esto muestra que el modelo lógico no ha cambiado. Es constante, independientemente de la representación física sobre la que elija crear el modelo, utilizando el soporte de formato físico proporcionado por el dominio de MRM. El analizador MRM es capaz de transformar el mensaje de la representación física de entrada en cualquier número de representaciones de salida, basándose en las capas de formato físico que se hayan definido.
Una vez que haya creado el conjunto de mensajes, puede crear los formatos físicos. Para ello, utilice el Editor de conjuntos de mensajes. La próxima vez que guarde el archivo messageSet.mset, los formatos físicos nuevos se añadirán a todos los objetos de todos los archivos de definición de mensajes de dicho conjunto de mensajes.
La siguiente vez que edite un objeto de un archivo de definición de mensajes, verá los formatos físicos en el panel de jerarquía de propiedades del separador Propiedades. Si pulsa en un formato físico para un objeto, se le mostrará una hoja de propiedades donde podrá entrar la información para el formato físico para dicho objeto.
Tenga en cuenta que no todos los objetos tienen propiedades en todos los formatos físicos. Por ejemplo:
Esto se debe a la naturaleza diferente de cada formato físico y estas diferencias se explican más detalladamente en la sección correspondiente a cada formato físico.
No existe ningún límite en el número de formatos físicos que puede crear en un conjunto de mensajes determinado. Sin embargo, existen algunas recomendaciones que se aplican si desea combinar formatos físicos de diferentes clases en el mismo conjunto de mensajes.
Los formatos físicos se pueden suprimir si ya no se necesitan.