Author |
Message
|
ramnagab |
Posted: Sat Nov 20, 2004 5:43 pm Post subject: Message set |
|
|
Apprentice
Joined: 14 Sep 2004 Posts: 46
|
Hi
1- Do I need to define any message set if I want to use XML messsages ?
2- Could you please tell me when I need to define a message set?
Thanks |
|
Back to top |
|
 |
Nizam |
Posted: Sat Nov 20, 2004 11:20 pm Post subject: |
|
|
Disciple
Joined: 10 Feb 2004 Posts: 160
|
You dont have to define any message set when you are sending the xml fields, modifying fields or reading a fileds.
But you need to define a message set when you want to validate your xml message. |
|
Back to top |
|
 |
shanson |
Posted: Mon Nov 22, 2004 3:45 am Post subject: |
|
|
 Partisan
Joined: 17 Oct 2003 Posts: 344 Location: IBM Hursley
|
A message set allows you to model your messages, and it is required if you are using the MRM domain. However in V5 there are advantages to using a message set even when the domain is other than MRM, because your message model is then available to the ESQL editor content assist feature, and to the Mapping editor. If you are using XML messages and you have XML Schema or DTDs around, then should import them and get the ESQL and Mapping usability benefits regardless of whether you are using XMLNS or MRM (note that the old XML domain is effectively deprecated in V5).
Whether to use MRM or XMLNS to parse/write XML messages is orthogonal to whether to use a message set. MRM advantages are runtime validation, automatic casting of values to the correct data type, less complex ESQL. XMLNS main advantage is speed as it is not parsing against a message dictionary. |
|
Back to top |
|
 |
ydsk |
Posted: Mon Jun 06, 2005 8:43 am Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
Understood what is MRM validation. What is XMLNS validation ? Are you talking about validation through esql as opposed to doing it through MRM ? Pls clarify.
Thank you. |
|
Back to top |
|
 |
shanson |
Posted: Mon Jun 06, 2005 9:16 am Post subject: |
|
|
 Partisan
Joined: 17 Oct 2003 Posts: 344 Location: IBM Hursley
|
There is no such thing as XMLNS validation. I never used that phrase. |
|
Back to top |
|
 |
ydsk |
Posted: Mon Jun 06, 2005 2:18 pm Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
Then what do you mean by the last sentence in your previous posting : "XMLNS main advantage is speed as it is not parsing against a message dictionary." ? |
|
Back to top |
|
 |
ydsk |
Posted: Mon Jun 06, 2005 2:21 pm Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
Also, can't we use a check node or other built-in mechanisms to validate an xml message in WBIMB v5 ( apart from MRM/msgset) ? |
|
Back to top |
|
 |
shanson |
Posted: Mon Jun 06, 2005 11:54 pm Post subject: |
|
|
 Partisan
Joined: 17 Oct 2003 Posts: 344 Location: IBM Hursley
|
MRM XML uses the message dictionary generated from the message model to assist in understanding an XML message it is parsing. It is the dictionary that enables MRM XML to generate integer, decimal, datetime etc syntax elements in the broker message tree it builds, and that enables it to perform validation of the message structure and the values of fields.
XMLNS does not use the dictionary, nor does it use a DTD or Schema. Because it is not using metadata, it runs faster, but it must treat all data values as strings when it creates syntax elements and it can not validate a message. The choice is yours.
The Check node does not have a validation capability. The Check node, for historical reasons, is archtecturally different in its error handling from other nodes. For this reason, we have not given it a validation capability.
Look out for a new Validation node in the future, which will give you point-in-time validation capability in a message flow. You can also use ESQL ASBITSTREAM today to do the same thing.
All validation capability is provided by having metadata available. In the broker today this metadata is the message dictionary. Which implies that you must use the MRM domain.
If you want a validation capability for XMLNS domain then please submit a requirement. We know folk out there would like to validate XML messages directly against an XML Schema, the more requirements we see the greater the chance of this being provided in a future release. |
|
Back to top |
|
 |
ydsk |
Posted: Wed Jun 08, 2005 7:04 am Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
Can we use the ESQL ASBITSTREAM function instead of MRM to validate ? Pls clarify. Also, pls provide any sample code that we can refer to.
Thank you. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Jun 08, 2005 7:09 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
ydsk wrote: |
Can we use the ESQL ASBITSTREAM function instead of MRM to validate ? Pls clarify. Also, pls provide any sample code that we can refer to.
Thank you. |
Sample code is everywhere. Just go look for it!
ASBITSTREAM is an ESQL function for doing part of the work that an MQOutput node does. It transforms the logical message tree into a Stream of Bits!
It will not validate data against an XML Schema. It will not validate data against a DTD.
It will only validate data against an MRM model. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
|