意思決定サービス ノード

意思決定サービス ノードは、一連のビジネス・ルールを作成するために使用します。

意思決定サービス ノードは、次の動作モードで使用可能です。
  • Developer
  • Application Integration Suite
  • Standard
  • Advanced
詳しくは、 動作モードを参照してください。

以下のセクションでは、 意思決定サービス ノードについて説明します。

目的

決定サービス とは、メッセージを処理するビジネス・ルールの集合のことです。 意思決定サービス ノードは、これらのビジネス・ルールを実装して、ルーティング、検証、変換などの操作を提供します。 銀行のビジネス・ルールの例としては、「既存の顧客が口座を開く際に信用調査は不要」などがあります。 これらのビジネス・ルールは、決定サービス・ファイル (.rules) に編成されます。 決定サービスを含んだ BAR ファイルをデプロイすると、決定サービスはルール・セット (.ruleset) にコンパイルされます。 意思決定サービスは、アプリケーション、ライブラリー、または 統合プロジェクトに保管できます。

注: 意思決定サービス ノードにより、 IBM® Integration Bus は、 IBM Integration Busで提供される IBM Decision Server のコンポーネント上で実行されるビジネス・ルールを呼び出すことができます。 IBM Integration Bus ライセンスでは、 意思決定サービス ノードを介してのみ、開発および機能テストのためにのみ、このコンポーネントを使用する資格が付与されます。 IBM Decision Server のコンポーネントを開発と機能テストの範囲を超えて使用するには、Integration Bus 用の IBM Decision Server または IBM Decision Server Rules Edition のライセンスを別に購入する必要があります。 詳しくは、 ビジネス・ルールの開発を参照してください。
意思決定サービス ノードは、メッセージ・フロー・ノード・パレットの ビジネス上の意思決定 ドロワーに含まれていて、 IBM Integration Toolkit 内では次のアイコンによって表されます。
意思決定サービス・ノード・アイコン

メッセージ・フローでのこのノードの使用法

「新規決定サービス」ウィザード (決定サービスを作成するために使用される) を、以下の方法で開くことができます。
  • 意思決定サービス ノードをダブルクリックします。
  • ファイル > 新規 > 意思決定サービスをクリックします。
  • アプリケーション、ライブラリー、または 統合プロジェクトを右クリックし、 新規 > 意思決定サービスをクリックします。
  • 「アプリケーション開発」ビューで、 新規をクリックし、次に 意思決定サービスをクリックします。
意思決定サービス ノードからウィザードを開いた場合、意思決定サービスはそのノードに関連付けられます。 その後、メッセージ・フローでそのノードを使用して、ルーティング、妥当性検査、変換などの操作を制御できます。 メニュー・オプションから意思決定サービスを作成する場合、意思決定サービスを 意思決定サービス ノードにドラッグして、ノードを構成できます。 また、ノードの「決定サービス」プロパティーを使用して、既存の決定サービスをそのノードに関連付けることもできます。
意思決定サービス ノードを含むメッセージ・フローをデプロイする前に、 MQSIMODE コマンドを使用してモード拡張を有効にする必要があります。
mqsimode -x DecisionServices

ターミナル

意思決定サービス ノードのターミナルについては、次の表に説明されています。

ターミナル 説明
In ノードが処理するメッセージを受け入れる入力ターミナル。
Out 処理が正常に完了したときに元のメッセージのルーティング先となる出力ターミナル。
Failure 処理で障害が検出された場合に、メッセージがルーティングされる出力ターミナル。

Properties

意思決定サービス ノードのインスタンスをメッセージ・フローに入れると、それを構成することができます。 詳しくは、 メッセージ・フロー・ノードの構成を参照してください。 ノードのプロパティーは「プロパティー」ビューに表示されます。 値を入力する必要のある (デフォルト値が定義されていないプロパティー) すべての必須プロパティーには、アスタリスクが表示されます。

意思決定サービス ノードをダブルクリックしても、関連付けられた意思決定サービス・ファイルがない場合は、 新規決定サービス ウィザードを開きます。 そのノードに関連付けられた決定サービス・ファイルがある場合、ノードをダブルクリックするとそのファイルが決定サービス・エディターで開きますので、そこでルールを編集します。

以下の表は、ノード・プロパティーについて説明しています。 M の見出しの列では、プロパティーが必須 かどうか (デフォルトが定義されていない場合に値を入力することが必要かどうか) を示します (必須であれば、アスタリスクのマークが付きます)。 C の見出しの列では、プロパティーが構成可能 (メッセージ・フローを BAR ファイルに追加してデプロイするとき、値を変更できる) かどうかを示します。

意思決定サービス ノードの「説明」プロパティーについては、次の表に説明されています。
プロパティー M C デフォルト 説明
ノード名 はい いいえ ノード・タイプ、 意思決定サービス ノードの名前。
簡略説明 いいえ いいえ   ノードの簡単な説明
詳細説明 いいえ いいえ   メッセージ・フロー内のノードの目的を説明するテキスト。
意思決定サービス ノードの「基本」プロパティーについては、次の表に説明されています。
プロパティー M C デフォルト 説明
決定サービス名 はい いいえ なし 既存の決定サービスを選択するには、「参照」をクリックし、使用可能なファイルから適切なファイルを選択します。

決定サービスを作成するには、ノードをダブルクリックして、「新規決定サービス」ウィザードを開きます。 ウィザードが完了すると、「決定サービス名」プロパティーが新規決定サービス・ファイルの名前に設定されます。

ルール・セット はい いいえ なし このプロパティーには、決定サービスの選択時に自動的にデータが取り込まれます。

IBM Integration Bus で作成する意思決定サービスには、単一のルール・セットが含まれます。 インポートされたルール・アプリケーション・アーカイブから作成された決定サービスには、複数のルール・セットが含まれる可能性があります。 この場合は、ルール・セットを選択して、そのパラメーターを表示することができます。

パラメーター はい いいえ なし 決定サービス・ルール・セットには 1 つ以上のパラメーターを含めることができます。 ほとんどのパラメーター値は読み取り専用ですが、データのロケーション値については、XPath 式を入力する必要があります。 XPath 式は、各パラメーターのデータのインバウンド・メッセージ内の場所を指定します。以下に例を示します。$Rootデータの場所を設定するには、パラメーターを選択して 編集をクリックします。 支援機能を使用する場合、「編集」をクリックするか Ctrl + Space を押して XPath Expression Builder を開きます。 データ・ロケーション XPath 式を追加する場合、メッセージ・ツリーの親フィールドとネストした子フィールドにアクセスしないようにしてください。 (ネストした構造に対する変更は、親構造の変更によって上書きされることがあります。)

パラメーターの方向は IN、OUT、または INOUT にすることができます。 IBM Integration Toolkitで作成された意思決定サービスの場合、INOUT パラメーターのみがサポートされます。 IBM Operational Decision Manager、IN、OUT、および INOUT パラメーターからルール・アプリケーション・アーカイブをインポートすることによって作成された意思決定サービスの場合、サポートされます。

「言語化」列には、「顧客」など、パラメーターの自然言語名 (または別名) が含まれます。 この値は、ルールの記述時にパラメーターを参照する場合に使用されます。 決定サービスがルール・アプリケーション・アーカイブをインポートして作成された場合、言語化の値は表示されません。

決定サービス・ファイルのパラメーターが変更された場合、「問題」ビューにエラー・メッセージが表示され、ノードのパラメーターと決定サービス・ファイルのパラメーターが一致しないことが示されます。 このエラーを修正するには、決定サービス・ファイルとノードのルール・セットを再選択します。

DecisionServiceRepository 構成可能サービスの使用 いいえ はい 選択されていない IBM Operational Decision Managerで作成されたルールを使用している場合は、実行時に外部リポジトリーからそれらのルールを取得できます。 外部リポジトリーに接続するには、DecisionServiceRepository 構成可能サービスを構成し、このプロパティーを選択する必要があります。 このチェック・ボックスを選択すると、ノードは外部リポジトリーからルールを取得します。 チェック・ボックスがクリアされると、ノードはローカルの決定サービスを使用します。

詳しくは、 実行時の IBM Operational Decision Manager リポジトリーからのビジネス・ルールの取得を参照してください。

ノードのモニター・プロパティーが、次の表に説明されています。
プロパティー M C デフォルト 説明
Events いいえ いいえ なし ノードに対して定義したイベントが、このタブに表示されます。 デフォルトでは、メッセージ・フローのどのノードにもモニター・イベントが定義されません。 追加編集、および 削除 を使用して、ノードのモニター・イベントを作成、変更、または削除します。詳しくは、 モニター・プロパティーを使用したモニター・イベント・ソースの構成 を参照してください。

「使用可能」チェック・ボックスを選択またはクリアすることによって、ここに表示されているイベントを使用可能および使用不可に設定できます。

ローカル環境のフィールド

決定サービスを実行すると、LocalEnvironment.DecisionServices サブツリー内のローカル環境に情報が書き込まれます。 この情報については以下の表で説明します。
エレメント名 データ・タイプ 説明
decisionService ストリング ノードによって参照される決定サービスの完全修飾名。 決定サービスがアプリケーション内またはライブラリー内にある場合、この完全修飾名がアプリケーションまたはライブラリーの名前の前に付加されます。
ruleSet ストリング 決定サービスに含まれるルール・セットの名前。
rulesMatched 整数 決定サービスによって処理されたメッセージによってトリガー (マッチング) されたルールの数。