|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MRM vs. XMLNS? Opinions wanted |
« View previous topic :: View next topic » |
Author |
Message
|
gilbert |
Posted: Fri Jul 27, 2007 5:42 am Post subject: MRM vs. XMLNS? Opinions wanted |
|
|
Novice
Joined: 31 Oct 2006 Posts: 14
|
Hi All
I would like to hear your opinions and experinces if the which situation MRM is really useful and worth the extra work compared to XMLNS. We have been using Message Broker for a short while now and MRM has been the parser of choice in most cases. However I've started to question the usability of MRM. There are lot of problems with it and pros of MRM don't allways overcome the cons.
Firstly the development and debugging is quite slow. For example spotting the incorrect elements/nodes created by ESQL is time consuming since the error messages aren't very informative.
Secondly the validation seem useless. Both in input and validation node since they don't fully validate all of the message. We managed to do a full validation against schema/message set only by calling ASBITSTREAM from ESQL with validate option. What are your experinces with validating?
We are not using mapping node that much since it seems that if you want to change formatting of a field (for example for date) it much easier to do that in ESQL.
In fact MRM seems to be most useful if the wire format is something else than XML and you must change.
Cheers! |
|
Back to top |
|
 |
kimbert |
Posted: Fri Jul 27, 2007 7:31 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Fair question. Let me just establish some facts:
- You should be deciding between MRM and XMLNSC. XMLNSC is the preferred XML parser for new message flows. Only use XMLNS if you know why you are doing so. See post by shanson near the end of this thread: http://www.mqseries.net/phpBB2/viewtopic.php?t=34373
- MRM validation does not fully implement the XML Schema standard, but it works just fine. I suspect that you were getting something wrong, and the error messages were not helping you to find it.
- Your comment about the Mapping node assumes that you can only use the Mapping node with the MRM domain. In fact, you can create a message set with Domain set to 'XMLNSC' and then use the mapping node with XMLNSC ( or XMLNS, or MIME etc ). When you do this, you also get code assist in the ESQL editor.
See shanson's post for advice on choosing the correct XML parser. |
|
Back to top |
|
 |
gilbert |
Posted: Tue Jul 31, 2007 7:09 am Post subject: |
|
|
Novice
Joined: 31 Oct 2006 Posts: 14
|
About validation... for example if my message set has a complex type which is defined as "Unordered Set" and validation is set as "Closed" the MqInput node doesn't throw validation error for false elements.
ASBITSTREAM function however complains about wrong node but the MQInput doesn't. Maybe I am doing something wrong or this doesn't qualify as validating for me. |
|
Back to top |
|
 |
kimbert |
Posted: Tue Jul 31, 2007 7:34 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Quote: |
if my message set has a complex type which is defined as "Unordered Set" and validation is set as "Closed" the MqInput node doesn't throw validation error for false elements. |
You are almost certainly getting one of the settings wrong on the MQInput node. You need to
- Set Message Set, Message Type, Message Format correctly on the Default page
- Set 'Validation' to 'Content and Value' on the Validation page
- Change'Parse Timing' to 'Immediate' ( unless your message flow is triggering a full parse of the message anyway )
That last step is important - if no parsing happens, no validation happens either. Unfortunately, people who are trying out MRM validation often implement a very simple MQInput->MQOutput flow, and then wonder why they get no validation at all. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|