XML パーサーおよびドメイン

XML メッセージ・ドメインには、W3C XML 標準に準拠したすべてのメッセージが含まれます。

XMLNS ドメインは XML ドメインの拡張版で、同じ規格に合致し、XML 仕様のネーム・スペース・フィーチャーを活用するメッセージを含む。 このドメインに含まれるメッセージは、XML パーサーで処理されます。

XML パーサーは、XML ドメインに属するメッセージを表すビット・ストリームまたはツリーを解釈するプログラムです。 入力のビット・ストリームから対応するツリーを生成するか、出力のツリーからビット・ストリームを生成します。 ビット・ストリームは、XML ファイルの表現法の 1 つです。 (XML パーサーは、JMS ドメインに属するメッセージを表すビット・ストリームまたはツリーも解釈します。 JMS パーサーはありません。)

複数のアプリケーション間で、WebSphere Business Integration Message Broker ブローカーを使用して次の 2 つの方法で XML メッセージ (ネーム・スペースをサポートする、またはしない) を交換できます。

  1. メッセージ・ディクショナリーを作成するために、メッセージ・テンプレートを事前定義 (モデル化) することができます。そうする場合、モデル化したすべてのメッセージと同じ方法で、 XML メッセージが MRM パーサーによって構文解析され、処理されます。
  2. 送信前にはいずれの方法によっても指定しない自己定義メッセージを使用できます。

    自己定義メッセージは、すべての組み込みノードで処理できます。 データベースにはメッセージの全体を保管することができ、 メッセージがメッセージ・フローを通過する際にはヘッダーを追加したり除去したりすることができます。

自己定義メッセージは、汎用 XML メッセージとも呼ばれます。 これには、記録される形式がありませんが、メッセージ内の内容と構造に関する情報が、XML 仕様に従った文書の形式で渡されます。 この定義は、他のどこにも保存されません。 XML メッセージはブローカーで受け取られると、XML パーサーで解釈され、 そのメッセージ内に入っている XML 定義に従って、内部メッセージ・ツリー構造が作成されます。

XML パーサーのヌル・エレメントおよび値の処理方法についての詳細は The XML パーサーおよびヌル値 に記述されています。

WebSphere Business Integration Message Broker で説明される情報には、XML の用語、概念、 およびメッセージ構成に関する完全な定義または説明は含まれていません。 これは、ブローカーおよびメッセージ・フローとともに XML メッセージを使用する際に重要となる側面を強調した要約です。

XML について詳しくは、developerWorks Web サイトを参照してください。

XML メッセージの例

この説明で使用される名前エレメント (XmlDecl など) は、 WebSphere Business Integration Message Broker によって提供されており、相関名といいます。 それらは ESQL 内でのシンボルの使用のために使用できます。ESQL は、 メッセージ・フロー内のノード (たとえば Filter ノードなど) で実行されるメッセージ内容の処理を定義します。 これは、XML 仕様の一部ではありません。

簡単な XML メッセージの形式を以下に示します。

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE s1 PUBLIC "http://www.ibm.com/example.dtd" "example.dtd">
<s1>.........</s1>

対応する構文エレメント・ツリー (最上位のエレメントのみ) が以下に示されています。



ツリー内に WhiteSpace エレメントがあるのは、元の XML 文書に改行があるためです。 ビジネス上の意味はありません。 XML エレメント内の WhiteSpace にはビジネス上の意味があり、Content 構文エレメントを使用して表されます。

XML 名エレメント (Element や XmlDecl など) の相関名は、形式 0x01000000 の定数値と同等です。 メッセージやメッセージの部分がトレースされる際に Trace ノードによって作成される出力中に、これらの定数が使用されます。

関連概念
ESQL
The XML パーサーおよびヌル値
JMS パーサーおよびドメイン
論理メッセージ・ツリー
相関名

関連タスク
メッセージ・フローの設計
ESQL の開発
メッセージ本体の内容の操作
XML ドメインのメッセージの操作

関連資料
組み込みノード
XML 構成

developerWorks