カスタム・ワイヤー形式 - 論理モデルとの関係

論理モデルに関連して CWF を使用して定義されるメッセージにはいくつかの制限があります。 これらの制限を以下に説明します。

構成 (Composition)

CWF メッセージは、常に論理メッセージ・モデル定義で指定されたシーケンスのエレメントを含む出力になります。 しかし、常にそのシーケンスでエレメントを構築する ESQL を指定する必要があるわけではありません。 タイプ「構成 (Composition)」プロパティーの各値ごとに、 ESQL のコーディングのための以下の規則が備えられています。

シーケンス (Sequence)
出力メッセージは、メッセージ内のエレメントまたはグループのシーケンスと一致するように構築する必要があります。 通常これは、ESQL SET ステートメントを使用して各エレメントまたはタイプに値を割り当てることによって行えます。 最初の SET ステートメントは、メッセージ内の最初のエレメントまたはタイプの値を設定し、 2 番目の SET は 2 番目のエレメントまたはタイプの値を設定し、それ以降も同様になります。 このステートメントのシーケンスは、 ESQL ATTACH、CREATE、および MOVE ステートメントを使用して変更できます。

エレメントまたはタイプがデフォルトの値を持つ場合、ユーザーが正しいシーケンスでメッセージを構築していないと、 間違ったシーケンスで構築されたそのエレメントにはユーザーが設定した値ではなくそのデフォルトの値が含まれます。 これは、間違ったシーケンスで作成されたエレメントが自己定義と見なされ、 CWF の場合、これらはメッセージがビット・ストリームに書き込まれるときに破棄されるためです。

順序セット (Ordered Set)
出力メッセージは、 メッセージ内のエレメントのシーケンスと一致するように構築する必要があります。 通常これは、各エレメントに値を割り当てる ESQL SET ステートメントを使用して行えます。 最初の SET ステートメントは、メッセージ内の最初のエレメントの値を設定し、 次の SET は 2 番目のエレメントの値を設定し、それ以降も同様になります。 このステートメントのシーケンスは、 ESQL ATTACH、CREATE、および MOVE ステートメントを使用して変更できます。

エレメントがデフォルトの値を持つ場合、ユーザーが正しいシーケンスでメッセージを構築していないと、 間違ったシーケンスで構築されたそのエレメントにはユーザーが設定した値ではなくそのデフォルトの値が含まれます。 これは、間違ったシーケンスで作成されたエレメントが自己定義と見なされ、 CWF の場合、これらはメッセージがビット・ストリームに書き込まれるときに破棄されるためです。

非順序セット (Unordered Set)
出力メッセージのエレメントは、どんなシーケンスでも構築できます。 出力には、エレメントは論理メッセージ・モデル定義で指定した順序で書き込まれます。
すべて (All)
出力メッセージのエレメントは、どんなシーケンスでも構築できます。 各エレメントは 1 度だけしか現れません (すなわち、繰り返されません)。
選択 (Choice)
選択を純粋にデータから解決することはできません。 受信プログラムがデータを解釈し、メッセージ・インスタンスにどの選択のオプションが含まれているかを判別する必要があります。 このプロセスは、未解決の選択処理と呼ばれます。 いずれかの選択エレメントに対するアプリケーション内の最初の参照が、選択をそのエレメントの入ったオプションに解決します。
メッセージ
CWF には、入力メッセージのビット・ストリーム内では、 この入力メッセージ内にどの組み込みメッセージが現れるかを識別する方法はありません。 組み込みメッセージの解決のメカニズムは、 カスタム・ワイヤー形式 - 複数パーツ・メッセージのトピックで説明されています。

タイプ内容 - 内容の妥当性検査

CWF は固定形式であり、すべてのエレメントがメッセージ内に存在していなければなりません。 したがって、「タイプ内容 - 内容の妥当性検査 (Type Content - Content validation)」は無視されます。 出力では、すべてのエレメントが明示的 (たとえば、ESQL SET を使用して) または暗黙的 (ツリー・コピー機能を使用して) に設定されているか、 またはデフォルト値を定義している必要があります。

エレメント - デフォルト値

MRM ドメインの CWF メッセージの出力では、すべてのエレメント、 または値が (明示的にまたは暗黙的に) 設定されていないエレメントの出現は、 エレメントの指定されたデフォルト値を継承します。 デフォルト値が指定されていない場合には、例外がスローされます。

ローカル・エレメント - オカレンス

MRM ドメインで CWF メッセージの構文解析または書き込みをする時、 メッセージ・モデル・プロパティー Min Occurs および Max Occurs 用に指定されたすべての値は無視されます。 エレメントの出現回数は、 代わりに「反復カウント (Repeat Count)」または「反復参照 (Repeat Reference)」プロパティーにより判別されます。 しかしながら、WebSphere Business Integration Message Broker のメッセージ妥当性検査機能は、 Min Occurs および Max Occurs 情報を活用します。

関連概念
メッセージ・モデル
カスタム・ワイヤー形式 - 複数パーツ・メッセージ

関連タスク
メッセージ・セットの処理
物理プロパティーでの作業
カスタム・ワイヤー形式 (CWF) の追加
カスタム・ワイヤー形式 (CWF) プロパティーの構成: メッセージ・セット
物理形式の除去

関連資料
メッセージ・モデル・オブジェクトのカスタム・ワイヤー形式の物理プロパティー