Author |
Message
|
manoj5007 |
Posted: Thu Aug 25, 2016 1:58 am Post subject: Delimited Messages Parsing |
|
|
 Acolyte
Joined: 15 May 2013 Posts: 64
|
Hi,
I have to create a delimited message with ':' as delimiter from a XML input.
And in my Delimited message definition, the complex type Data Separation property is of 'All Elements Delimited' .
I have 4 fields and for each field I have defined the length and the appropriate padding characters.
Flow is as below:
MQInput -> Compute Node -> RCD -> MQOuput
Now when the value of the fields are more than the length defined in the msesage definition file, there is no exception and the message is parsed to BLOB successfully. My Question is, shouldn't the message fail at RCD for length mismatch??
Thanks |
|
Back to top |
|
 |
shanson |
Posted: Thu Aug 25, 2016 2:29 am Post subject: |
|
|
 Partisan
Joined: 17 Oct 2003 Posts: 344 Location: IBM Hursley
|
I assume you are using WMB v7 as your solution is using MRM and not DFDL. If I recall there is a check box for 'All Elements Delimited' that gets MRM to lokk at the length. Alternatively set max length facet and switch on validation. |
|
Back to top |
|
 |
manoj5007 |
Posted: Sun Aug 28, 2016 11:25 pm Post subject: |
|
|
 Acolyte
Joined: 15 May 2013 Posts: 64
|
No, we are using IIB v9 message sets and not DFDL.
Any help will be appreciated, another question is at RCD, for delimited messages, does length validation occur at the time of parsing from MRM to BLOB>??
Thanks in advance |
|
Back to top |
|
 |
smdavies99 |
Posted: Mon Aug 29, 2016 1:23 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Why are you NOT using DFDL? It is a lot more flexible than MRM.
If some architect told you to use MRM it might be because they don't know about DFDL. If that is the case perhaps you could emlighten them.
One big advantage of DFDL is the off-line testing that can be done on your model. Saves a lot of effort. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
timber |
Posted: Tue Aug 30, 2016 12:33 am Post subject: |
|
|
 Grand Master
Joined: 25 Aug 2015 Posts: 1292
|
Quote: |
I have 4 fields and for each field I have defined the length and the appropriate padding characters |
It's been a long time since I used MRM TDS, but I don't think padding characters are used at all when Data Element Separation is 'All elements delimited'. So not sure why you have mentioned it.
Quote: |
Flow is as below:
MQInput -> Compute Node -> RCD -> MQOuput |
The RCD node looks redundant to me. Why not just map the fields ( in the Compute node ) from InputRoot.XMLNSC to OutputRoot.MRM?
Quote: |
Now when the value of the fields are more than the length defined in the msesage definition file, there is no exception and the message is parsed to BLOB successfully. |
I agree 100% with smdavies99. It makes no sense at all to use MRM TDS when DFDL is available. DFDL is easier and faster and the learning curve is not particularly steep.
If cannot switch to DFDL then set Validation to 'Content and Value' in the Compute node and add a length facet ( I think it is called a 'constraint' ) to the appropriate simple type in your MRM message set. |
|
Back to top |
|
 |
manoj5007 |
Posted: Tue Aug 30, 2016 1:59 am Post subject: |
|
|
 Acolyte
Joined: 15 May 2013 Posts: 64
|
Well.. its been designed that way, I don't have any say in it as of now.
We have to use mset instead of DFDL.
Having this as the scenario, please could someone let me know whether length validation is done when an MRM (All Elements Delimited message definition) is parsed into BLOB at RCD node??
We can use DFDL and my previous projects we have, but unfortunately I am not the one to decide.. Hope you understand the constrains.
Thanks |
|
Back to top |
|
 |
timber |
Posted: Tue Aug 30, 2016 2:05 am Post subject: |
|
|
 Grand Master
Joined: 25 Aug 2015 Posts: 1292
|
Quote: |
please could someone let me know whether length validation is done when an MRM (All Elements Delimited message definition) is parsed into BLOB at RCD node?? |
Yes. Validation is performed at the logical level and applies regardless of the physical format ( CWF/TDS ) and regardless of any physical format properties. |
|
Back to top |
|
 |
|