FileInput、FTEInput および FileRead ノードを使用して、入力ファイルをセグメント化し、解析対象の複数のメッセージにします。
MRM パーサーを選択する場合は、メッセージ・モデルにメッセージ境界を定義して、解析がビット・ストリームの終わりに達したときに停止することに頼らないようにしておきます。 最終エレメントに -1 の maxOccurs 値が付いていると、パーサーは、ビット・ストリームの終了地点までか、または解析例外の原因となるバイトの検出地点まで、バイトの読み取りを継続します。 どちらの場合も、パーサーは、メッセージの終了地点と次のメッセージの開始地点を特定できません。 Data Element Separation = Use Data Pattern を使用する場合、指定数のバイトがパターンによって認識されることを確認してください。 したがって、* というパターンは、すべての使用可能文字を特定するので、入力ファイル全体が読み取られることに注意してください。
メッセージ・グループの標識および終了文字を備えた区切り分離を使用する場合、グループの標識および終了文字の組み合わせが、レコードの区切り文字と一致しないことを確認します。 例えば、メッセージが左中括弧 ({) で始まり、右中括弧 (}) で終わるとします。 メッセージ内に区切り文字の }{ がある場合、その区切り文字は複数のメッセージ間の境界に相当します。その結果、現行メッセージ内の区切り文字がメッセージ境界と見なされる可能性があります。 これに起因して、後続のメッセージ内のバイトが、現行メッセージに組み入れられる可能性があります。結果として、解析ツリー内でパーサー例外や想定外の内容が生じることになります。
XMLNSC パーサーを選択する場合、ルート・タグの終わりは、メッセージの終わりのマークです。 XML メッセージの終わりの後に出現する XML コメント、XML 処理命令、および空白は破棄されます。 XML メッセージの始まりには、XML ルート・タグまたは次の XML プロローグのマークが付けられます。