パーサーとは、着信メッセージのビット・ストリームを解釈し、そのメッセージの内部表現をツリー構造で作成するプログラムです。 パーサーは、内部メッセージ・ツリー表現からの発信メッセージ用のビット・ストリームも再生成します。
入力メッセージを表すビット・ストリームが、ブローカーが処理できる内部形式に変換されると、パーサーが起動されます。 内部形式、すなわち論理ツリー構造については、論理ツリー構造 に説明されています。 パーサーがビット・ストリームを解釈する方法はパーサーに固有のものであるため、ビット・ストリームから作成される論理メッセージ・ツリーはパーサーごとに異なります。
また、メッセージ・フローのノードが ESQL ASBITSTREAM 機能を呼び出す場合、パーサーはツリー構造からビット・ストリームを作成することがあります。
ブローカーは、入力メッセージと出力メッセージが属するすべてのメッセージ・ドメインについて、パーサーへのアクセスを必要とします。さらに、ブローカーは、入力または出力メッセージに組み込まれる、すべての識別可能なメッセージ・ヘッダーに対して、パーサーを必要とします。パーサーは、メッセージ・フローが必要とした時点で呼び出されます。
WebSphere® Message Broker は、下記にリストされたメッセージ本体パーサーを提供することによって、次のメッセージ・ドメイン内のメッセージに対して組み込みサポートを提供します。
また、WebSphere Message Broker は、ご使用のアプリケーションが入力メッセージまたは出力メッセージに組み込むことのできる、次のメッセージ・ヘッダーに対して、パーサーを提供します。
MQCFH ヘッダーのネイティブ・エレメントのリストについては、MQCFH パーサーを参照してください。
このヘッダーとその内容の詳細については、WebSphere MQ バージョン 6 インフォメーション・センター・オンラインの「プログラマブル・コマンド・フォーマットおよび管理インターフェース」、またはWebSphere MQ ライブラリー Web ページのバージョン 5.3 インフォメーション・センターを参照してください。
MQCIH ヘッダーのネイティブ・エレメントのリストについては、MQCIH パーサーを参照してください。
MQDLH ヘッダーのネイティブ・エレメントのリストについては、MQDLH パーサーを参照してください。
MQIIH ヘッダーのネイティブ・エレメントのリストについては、MQIIH パーサーを参照してください。
MQMD ヘッダーのネイティブ・エレメントのリストについては、MQMD パーサーを参照してください。
MQMDE ヘッダーのネイティブ・エレメントのリストについては、MQMDE パーサーを参照してください。
MQRFH ヘッダーのネイティブ・エレメントのリストについては、MQRFH パーサーを参照してください。
MQRFH2 ヘッダーのネイティブ・エレメントのリストについては、MQRFH2 パーサーおよび MQRFH2C パーサーを参照してください。
MQRMH ヘッダーのネイティブ・エレメントのリストについては、MQRMH パーサーを参照してください。
MQSAPH ヘッダーのネイティブ・エレメントのリストについては、MQSAPH パーサーを参照してください。
MQWIH ヘッダーのネイティブ・エレメントのリストについては、MQWIH パーサーを参照してください。
SMQ_BMH ヘッダーのネイティブ・エレメントのリストについては、SMQ_BMH パーサーを参照してください。
提供されたパーサーが処理しないメッセージ本体データまたはヘッダーを、処理および構文解析するには、WebSphere Message Brokerユーザー定義パーサー・プログラミング・インターフェースを使用して、ユーザー定義パーサーを作成します。
形式 MQFMT_IMS_VAR_STRING のメッセージまたはメッセージのパーツ向けのパーサーは提供されていません。 この形式のデータの先頭には、MQIIH ヘッダーが付けられることがあります (形式 MQFMT_IMS)。 WebSphere Message Broker は、そのようなデータを BLOB メッセージとして扱います。 メッセージ・フローの中で、そのようなメッセージの CodedCharSetId やエンコードを変更すると、MQFMT_IMS_VAR_STRING データは変換されず、メッセージ記述子や先頭ヘッダーは、メッセージのその部分を正確に記述するものとはなりません。そのようなメッセージのデータを変換する必要がある場合は、MRM でメッセージを定義するか、ユーザー定義のパーサーを用意しなければなりません。