If a parser is capable of parsing an input bit stream on demand, instead of immediately parsing the entire bit stream, the Parse Timing property of a message flow node controls the on demand behavior of the parser.
On demand parsing is referred to in the message broker as partial parsing. The parsers that are capable of performing partial parsing of input messages are the MRM, XML, XMLNS and XMLNSC parsers. Additionally, for the MRM parser, because input message validation is performed during parsing, the Parse Timing property also has an effect on validation.
You can set the Parse Timing property to On Demand (the default), Immediate, or Complete.
On Demand causes partial parsing to occur. When fields in the message are referenced, as much of the message is parsed as is necessary to completely resolve the reference. Fields may therefore not be parsed until late in the message flow, or never. This applies to both the message body and the message headers.
Immediate and Complete both override partial parsing and parse the entire message including any message headers, except when the MRM parser encounters an element with a complex type of Composition Choice or Message that can not be resolved at the time; for example, the content needs to be resolved by the user in ESQL. For a Choice, the data is added to the message tree as an unresolved item and parsing continues with the next element. For a Message, parsing terminates at that point. The only difference in behavior between Immediate and Complete occurs when MRM validation is enabled.
The Parse Timing property also gives you control over how MRM message validation interacts with partial parsing. Refer to Validation properties for messages in the MRM domain for a full description.
The Parse Timing property has no effect on the serialization of output messages.
Notices |
Trademarks |
Downloads |
Library |
Support |
Feedback
![]() ![]() |
ac20814_ |