ヘッダーをスキップ
Oracle Fusion Middleware Oracle Business Rulesユーザーズ・ガイド
11
g
リリース1(11.1.1)
B55917-01
索引
次へ
目次
タイトルおよび著作権情報
はじめに
対象読者
ドキュメントのアクセシビリティについて
関連ドキュメント
表記規則
サポートおよびサービス
1
Oracle Business Rulesの概要
1.1
ビジネス・ルールとは
1.1.1
ルール条件とは
1.1.2
ルール・アクションとは
1.1.3
デシジョン表とは
1.1.4
ファクトおよびバケット・セットとは
1.1.5
ルールセットとは
1.1.6
デシジョン関数とは
1.1.7
デシジョン・ポイントとは
1.1.8
ディクショナリとは
1.2
Oracle Business Rulesのランタイム要素とデザインタイム要素
1.2.1
SOAコンポジット・アプリケーションでのデシジョン・コンポーネント(Business Rules)
1.2.2
Java EEアプリケーションにおけるOracle Business RulesのRules Engineの使用
1.2.3
Oracle Business Rules RL Language
1.2.4
Oracle Business Rules SDK
1.2.5
Rules Designer
1.3
Oracle Business Rules Engineのアーキテクチャ
1.3.1
宣言ルール
1.3.2
Reteアルゴリズム
1.3.3
作業メモリーとは
1.3.4
ルールの起動とルール・セッション
2
データ・モデル要素の使用
2.1
データ・モデル要素の使用の概要
2.2
ディクショナリとディクショナリ・リンクの使用
2.2.1
ディクショナリとディクショナリ・リンクの概要
2.2.2
Rules Designerを使用してSOA層にディクショナリを作成する方法
2.2.3
Rules Designerを使用してビジネス層にディクショナリを作成する方法
2.2.4
ディクショナリ設定の表示および編集方法
2.2.5
ディクショナリまたはディクショナリ・パッケージの名前の変更方法
2.2.6
ディクショナリにリンクする方法
2.2.7
リンク先ディレクトリの更新方法
2.2.8
ディクショナリ・リンクに関する必須情報
2.2.9
ディクショナリ・リンクおよびディクショナリ・コピーに関する必須情報
2.2.10
デプロイされたディクショナリへのディクショナリ・リンクに関する必須情報
2.2.11
BPELでのビジネス・ルールの入力および出力に関する必須情報
2.3
Oracle Business Rulesグローバルの使用
2.3.1
Oracle Business Rulesグローバルの追加方法
2.3.2
Oracle Business Rulesグローバルの編集方法
2.3.3
ファイナルオプションと定数オプションに関する必須情報
2.4
デシジョン関数の使用
2.5
Oracle Business Rules関数の使用
2.5.1
Oracle Business Rules関数の概要
2.5.2
Oracle Business Rules関数の追加方法
3
ファクトとバケット・セットの使用
3.1
ファクトとバケット・セットの使用の概要
3.2
XMLファクトの使用
3.2.1
XMLスキーマをインポートしてXMLファクトを追加する方法
3.2.2
XMLファクトの表示および編集方法
3.2.3
スキーマが更新されたXMLファクトをリロードする方法
3.2.4
XMLファクトに関する必須情報
3.3
Javaファクトの使用
3.3.1
JavaクラスをインポートしてJavaファクトを定義する方法
3.3.2
Javaファクトの表示および編集方法
3.3.3
Javaファクトに関する必須情報
3.4
RLファクトの使用
3.4.1
RLファクトの定義方法
3.4.2
RLファクトを表示および編集してRLファクトのプロパティを追加する方法
3.4.3
RLファクトに関する必須情報
3.5
ADF Business Componentsファクトの使用
3.5.1
ADF Business Componentsファクトをインポートおよび定義する方法
3.5.2
ADF Business Componentsファクトのクラスパスに関する必須情報
3.5.3
ADF Business Componentsの循環参照に関する必須情報
3.5.4
ADF Business Componentsファクトに関する必須情報
3.6
バケット・セットの使用
3.6.1
値リスト・グローバル・バケット・セットの定義方法
3.6.2
範囲リスト・グローバル・バケット・セットの定義方法
3.6.3
XMLタイプからの列挙タイプ(列挙)バケット・セットの定義方法
3.6.4
Javaタイプからの列挙タイプ(列挙)バケット・セットの定義方法
3.6.5
値リスト・バケット・セットに関する必須情報
3.6.6
範囲バケット・セットに関する必須情報
3.6.7
バケット・セットの「アクションで許可済」オプションに関する必須情報
3.6.8
バケット値に関する必須情報
3.7
バケット・セットのファクトおよび関数との関連付け
3.7.1
バケット・セットをファクト・プロパティに関連付ける方法
3.7.2
バケット・セットを関数または関数の引数に関連付ける方法
4
ルールセットとルールの使用
4.1
ルールセットとルールの使用の概要
4.2
ルールセットの使用
4.2.1
ルールセットの作成方法
4.2.2
ルールセットの有効日の設定方法
4.2.3
フィルタを使用してルールセット内で一致するルールを表示する方法
4.3
ルールの使用
4.3.1
ルールの追加方法
4.3.2
ルールでのテストの定義方法
4.3.3
ルールでの範囲テストの定義方法
4.3.4
ルールでのセット・テストの定義方法
4.3.5
ルールでのアクションの定義方法
4.3.6
ルール・アクションに関する必須情報
4.4
ディクショナリの検証
4.4.1
データ・モデル検証
4.4.2
ルール検証
4.4.3
デシジョン表の検証
4.4.4
ディクショナリの検証方法
4.5
ルールおよびデシジョン表での詳細設定の使用
4.5.1
ルールまたはデシジョン表の詳細設定の表示と非表示を切り替える方法
4.5.2
拡張モード・オプションの選択方法
4.5.3
アクティブ・オプションの選択方法
4.5.4
論理オプションの選択方法
4.5.5
ルールの優先度の設定方法
4.5.6
有効日の指定方法
4.6
ネスト・テストの使用
4.6.1
ネスト・テストの使用方法
4.7
拡張モードのルールの使用
4.7.1
拡張モードのパターン一致オプションの使用方法
4.7.2
拡張モードの一致したファクト名の使用方法
4.7.3
拡張モードのアクション・フォームの使用方法
4.7.4
拡張モードの集計条件の使用方法
4.7.5
拡張モードのルールに関する必須情報
4.8
ツリー・モードのルールの使用
4.8.1
ツリー・モードのルールの概要
4.8.1.1
ツリー・モードのルール(非拡張モード)
4.8.1.2
拡張ツリー・モードのルール
4.8.2
単純ツリー・モードのルールの作成方法
4.8.3
拡張ツリー・モードのルールの作成方法
4.8.4
ツリー・モードのルールに関する必須情報
4.9
日付ファクトの使用、日付関数および有効日の指定
4.9.1
現在の日付ファクトの使用方法
4.9.2
ルールの有効日の設定方法
4.9.3
有効日に関する必須情報
4.9.4
Duration、JavaDate、OracleDateおよびXMLDateメソッドの使用方法
4.10
式ビルダーの使用
4.10.1
式ビルダーの概要
4.10.2
式ビルダーの使用方法
4.11
ルールにおけるオプション値の制約としてのバケット・セットの使用
4.11.1
範囲リスト・バケット・セットをファクト・プロパティの制約として使用する方法
4.11.2
値リスト・バケット・セットをファクト・プロパティの制約として使用する方法
4.11.3
バケット・セットを使用してテスト式のオプションを指定する方法
5
デシジョン表の使用
5.1
デシジョン表の使用の概要
5.1.1
デシジョン表とは
5.1.1.1
デシジョン表の条件に関する必須情報
5.1.1.2
デシジョン表のアクションに関する必須情報
5.1.1.3
デシジョン表のルールに関する必須情報
5.1.2
デシジョン表の値
5.1.3
デシジョン表のループに関する必須情報
5.2
デシジョン表の作成
5.2.1
デシジョン表の作成方法
5.2.2
デシジョン表への条件行の追加方法
5.2.3
デシジョン表へのアクションの追加方法
5.2.4
デシジョン表へのルールの追加方法
5.3
デシジョン表の操作の実行
5.3.1
デシジョン表の操作の概要
5.3.1.1
デシジョン表の分割操作と圧縮操作
5.3.1.2
デシジョン表の移動操作
5.3.1.3
デシジョン表のギャップ分析
5.3.1.4
デシジョン表の競合分析
5.3.2
デシジョン表の圧縮または分割方法
5.3.3
デシジョン表内の条件のマージまたは分割方法
5.3.4
条件セルのマージ、分割および考慮されない条件セルの指定
5.3.5
デシジョン表のギャップ分析の実行方法
5.3.6
デシジョン表の競合分析の実行方法
5.3.7
自動競合解決オプションの選択方法
5.4
Oracle Business Rulesデシジョン表アプリケーションの作成と実行
5.4.1
注文承認アプリケーションのソース・ファイルの取得方法
5.4.2
注文承認アプリケーションの作成方法
5.4.3
注文承認のビジネス・ルール・サービス・コンポーネントの作成方法
5.4.4
注文承認のデータ・モデル要素の表示方法
5.4.5
注文承認のデータ・モデルへのバケット・セットの追加方法
5.4.6
バケット・セットとOrderプロパティおよびCreditScoreプロパティを関連付ける方法
5.4.7
注文承認用デシジョン表の追加方法
5.4.7.1
デシジョン表のセルの分割とアクションの追加
5.4.7.2
デシジョン表の圧縮
5.4.7.3
1つの一般ルールによる複数の限定的ルールの置換
5.4.7.4
一般ルールの追加
5.4.8
注文承認のビジネス・ルール検証ログのチェック方法
5.4.9
注文承認アプリケーションのデプロイ方法
5.4.10
注文承認アプリケーションのテスト方法
6
デシジョン関数の使用
6.1
デシジョン関数の概要
6.2
デシジョン関数の使用
6.2.1
デシジョン関数の追加または編集方法
6.3
デシジョン関数に関する必須情報
6.3.1
デシジョン関数での元に戻す操作に関する必須情報
6.3.2
ルール・デバッグ用の「ルール起動制限」オプションに関する必須情報
6.3.3
デシジョン関数の引数に関する必須情報
6.3.4
「Webサービスとして起動」オプションに関する必須情報
6.3.5
デシジョン関数の「ステートレス」オプションに関する必須情報
7
Rules SDKデシジョン・ポイントAPIの使用
7.1
Rules SDKとレンタカー・サンプル・アプリケーションの概要
7.1.1
デシジョン・ポイントAPIの概要
7.1.2
レンタカー・サンプル・アプリケーションの入手方法
7.1.3
レンタカー・サンプル・アプリケーションとプロジェクトを開く方法
7.2
デシジョン・ポイントで使用するディクショナリの作成
7.2.1
デシジョン・ポイントで使用するデータ・モデル要素の作成方法
7.2.2
デシジョン・ポイントからコールするデシジョン関数の表示方法
7.2.3
デシジョン関数のルールまたはデシジョン表の作成方法
7.2.4
デシジョン表を使用したレンタカー・サンプルの使用に関する必須情報
7.3
Rules SDKデシジョン・ポイントを使用したJavaアプリケーションの作成
7.3.1
デシジョン・ポイント・ビルダーを使用したデシジョン・ポイントの追加方法
7.3.2
事前ロード済のディクショナリでデシジョン・ポイントを使用する方法
7.3.3
エグゼキュータ・サービスを使用してデシジョン・ポイントでスレッドを実行する方法
7.3.4
デシジョン・ポイント・インスタンスの作成および使用方法
7.4
レンタカー・サンプルの実行
7.5
本番環境でのデシジョン・ポイントの使用に関する必須情報
8
ビジネス・ルールのテスト
8.1
デザインタイムでのOracle Business Rulesのテスト
8.1.1
Rules Designerでテスト関数を使用してルールをテストする方法
8.1.2
Oracle Business Rules関数によるテストに関する必須情報
8.1.3
Oracle Business Rules関数によるデシジョン関数のテスト方法
8.1.4
デシジョン関数のテストに関する必須情報
8.2
実行時のOracle Business Rulesのテスト
9
ルール対応の非SOA Java EEアプリケーションの作成
9.1
等級サンプル・アプリケーションの概要
9.2
等級サンプル・アプリケーション用のアプリケーションとプロジェクトの作成
9.2.1
等級サンプル・アプリケーション用のFusion Webアプリケーションの作成方法
9.2.2
Gradesプロジェクトの作成方法
9.2.3
Gradesプロジェクト内でのXMLスキーマの追加方法とJAXBクラスの生成方法
9.2.4
Gradesプロジェクト内でのOracle Business Rulesディクショナリの作成方法
9.3
等級サンプル・アプリケーション用のデータ・モデル要素とルールの作成
9.3.1
等級サンプル・アプリケーション用のバケット・セットの作成方法
9.3.2
等級サンプル・アプリケーション用のデシジョン表の追加方法
9.3.3
等級サンプル・アプリケーション用のデシジョン表でのアクションの追加方法
9.3.4
等級サンプル・アプリケーション用のデシジョン関数名の変更方法
9.4
Rules SDKコールを含む等級アプリケーションのサーブレットの追加
9.4.1
Gradesプロジェクトへのサーブレットの追加方法
9.5
等級サンプル・アプリケーション用HTMLテスト・ページの追加
9.5.1
GradesプロジェクトへのHTMLテスト・ページの追加方法
9.6
デプロイメントのための等級サンプル・アプリケーションの準備
9.6.1
等級サンプル・アプリケーション用のWARファイルの作成方法
9.6.2
等級サンプル・アプリケーションへのルール・ライブラリの追加方法
9.6.3
等級サンプル・アプリケーションへのMDSデプロイメント・ファイルの追加方法
9.6.4
等級サンプル・アプリケーションへのEARファイルの追加方法
9.7
等級サンプル・アプリケーションのデプロイと実行
9.7.1
等級サンプル・アプリケーションのデプロイ方法
9.7.2
等級サンプル・アプリケーションの実行方法
10
Oracle Business RulesとADF Business Componentsの使用
10.1
Business RulesとADF Business Componentsの使用の概要
10.1.1
Oracle Business RulesのADF Business Componentsファクト・タイプ
10.1.2
Oracle Business Rulesのデシジョン・ポイントのアクション・タイプ
10.2
ADF Business Componentsファクトを使用する場合のデシジョン・ポイントの使用
10.2.1
ADF Business Componentsファクトによるデシジョン・ポイントのコール方法
10.2.1.1
デシジョン・ポイント・トランザクションの設定
10.2.1.2
ランタイム・プロパティの設定
10.2.1.3
ADF Business Componentsルールに使用するinvokeメソッドのコール
10.2.1.4
デシジョン・ポイントの起動に関する必須情報
10.2.2
Javaデシジョン・ポイント・インタフェースによるデシジョン関数のコール方法
10.2.3
ADF Business Componentsによるデシジョン関数の構成に関する必須情報
10.3
ADF Business Componentsファクトを使用したBusiness Rulesアプリケーションの作成
10.3.1
ADF Business Componentsファクトを使用するアプリケーションの作成方法
10.3.2
Chapter10汎用プロジェクトの追加方法
10.3.3
Business RulesのADF Business Componentsアプリケーションの作成方法
10.3.4
Business Rulesサンプル・アプリケーションのビュー・オブジェクト・チューニングの更新方法
10.3.5
Oracle Business Rulesのディクショナリの作成方法
10.3.6
デシジョン・ポイント・ディクショナリ・リンクの追加方法
10.3.7
ADF Business Componentsファクトをインポートする方法
10.3.8
外部マネージャ・ルールセットの追加および実行方法
10.3.8.1
外部マネージャ・ルールセットおよびデシジョン関数の追加方法
10.3.8.2
ActionTypeのJava実装クラスの作成方法
10.3.8.3
メッセージ・アクションのJavaファクトをインポートする方法
10.3.8.4
マネージャ検索ルールの追加方法
10.3.8.5
外部マネージャ・ファインダ・クラスの追加方法
10.3.8.6
ローカル・ディクショナリ・アクセスのADF META INFの更新方法
10.3.8.7
外部マネージャ・ファインダをチェックするプロジェクトの作成および実行方法
10.3.9
部門マネージャ・ルールセットの追加および実行方法
10.3.9.1
部門マネージャ・ファインダ・ルールセットの追加方法
10.3.9.2
部門マネージャ・ファインダ・ルールセットの検索ルールの追加方法
10.3.9.3
従業員取消しルールセットの追加方法
10.3.9.4
部門マネージャ検索デシジョン関数の追加方法
10.3.9.5
部門マネージャ・ファインダJavaクラスの追加方法
10.3.9.6
MDSでアクセス可能な場所にディクショナリをコピーする方法
10.3.9.7
マネージャ検索ルールをチェックするプロジェクトの作成および実行方法
10.3.10
従業員昇給ルールセットと従業員取消しルールセットの追加および実行方法
10.3.10.1
昇給ルールセットの追加方法
10.3.10.2
昇給ActionTypeのJava実装クラスの作成方法
10.3.10.3
昇給アクションのJavaファクトをインポートする方法
10.3.10.4
12年昇給ルールの追加方法
10.3.10.5
従業員昇給デシジョン関数の追加方法
10.3.10.6
従業員昇給Javaクラスの追加方法
10.3.10.7
ディクショナリのコピー方法
10.3.10.8
昇給ルールをチェックするプロジェクトの作成および実行方法
11
SOAアプリケーションでのデシジョン・コンポーネントの使用
11.1
デシジョン・コンポーネントの概要
11.2
デシジョン・コンポーネントの使用
11.2.1
デシジョン・コンポーネント・メタデータの使用
11.2.1.1
デシジョン・サービス・メタデータ(.decs)ファイル
11.2.1.2
SCAコンポーネント・タイプ(.componentType)ファイル
11.2.1.3
composite.xml内のデシジョン・コンポーネント・エントリ
11.2.2
デシジョン関数を公開するデシジョン・コンポーネントの使用
11.2.3
デシジョン・コンポーネントとのステートフルな相互作用の使用
11.2.4
デシジョン・コンポーネントとのステートフルな相互作用に関する必須情報
11.3
デシジョン・サービスのアーキテクチャ
A
Oracle Business Rulesのファイルと制限事項
A.1
Rules Designerのネーミング規則
A.1.1
ルールセットのネーミング
A.1.2
ディクショナリのネーミング
A.1.3
別名のネーミング
A.1.4
XMLスキーマのターゲット・パッケージのネーミング
B
Rulesの拡張メソッド
B.1
Duration拡張メソッド(oracle.rules.rl.extensions.Duration)
B.2
JavaDate拡張メソッド(oracle.rules.rl.extensions.JavaDate)
B.3
XMLDate拡張メソッド(oracle.rules.rl.extensions.XMLDate)
B.4
OracleDateメソッド(oracle.rules.sdk2.extensions.OracleDate)
B.5
OracleDurationメソッド(oracle.rules.sdk2.extensions.OracleDuration)
C
Oracle Business Rulesに関するよくある質問
C.1
JavaオブジェクトをファクトとしてアサートしてからModifyアクションを使用せずに変更すると、ルールが起動しないのはなぜですか。
C.2
Oracle Business Rules RL LanguageとJavaの相違はなんですか。
C.3
RuleSessionでは並行性と同期化はどのように処理されますか。
C.4
自己結合を正しく表現するにはどうすればよいですか。
C.5
Oracle Business Rulesではプロパティ変更リスナーをどのように使用しますか。
C.6
Oracle Business Rulesでデシジョン・サービスを使用する場合にどのような制限がありますか。
C.7
ディクショナリ名またはディクショナリ・パッケージ名を変更するにはどうすればよいですか。
C.8
ルールにJavaコードを挿入するにはどうすればよいですか。
C.9
BPELでデシジョン・サービスにJavaベース・ファクトを使用することはできますか。
C.10
BPELデシジョン・サービスでデバッグ機能を有効化するにはどうすればよいですか。
C.11
Oracle Business Rulesでバージョニングをサポートするにはどうすればよいですか。
C.12
ルールおよびルールセットで優先度を使用する場合、優先度の順序はどうなりますか。
C.13
xsd:string入力済要素を持つXMLスキーマをタイプJAXBElementとしてインポートするのはなぜですか。
C.14
Javaクラスに加えた変更がデータ・モデルに反映されないのはなぜですか。
C.15
Rules SDKを使用して式にNULLを含めるにはどうすればよいですか。
C.16
ディクショナリを格納するためのリポジトリとしてWebDAVがサポートされていますか。
D
Oracle Business Rulesのトラブルシューティング
D.1
非表示のgetterメソッドとsetterメソッド
D.2
プロパティのsetterのみを使用したJavaクラス
D.3
ディクショナリまたはディクショナリ・パッケージの名前の変更
D.4
実行時のNoClassDefFoundエラー
D.5
RL固有のキーワード・ネーミング競合エラー
D.6
ビジネス・ルール・サービス・ランタイムからのjava.lang.IllegalAccessError
D.7
JAXB 1.0ディクショナリとRLのMultipleInheritanceException
D.8
アンダースコアを持つXMLスキーマでJAXBコンパイルに失敗するのはなぜですか。
D.9
デシジョン・サービスの入力と出力はどのように制限されますか。
E
Oracle Business RulesとJSR-94実行セットの使用
E.1
Oracle Business RulesとJSR-94ルール実行セットの概要
E.2
Oracle Business RulesルールセットからのJSR-94ルール実行セットの作成
E.2.1
Oracle Business RulesのRL Languageテキストからのルール実行セットの作成
E.2.2
URLで指定したOracle RLテキストからのルール実行セットの作成
E.2.3
複数のソースからのルールセットを持つルール実行セットの作成
E.3
JSR-94インタフェースをOracle Business Rulesとともに使用
E.3.1
createRuleExecutionSetを使用したルール実行セットの作成
E.3.2
createRuleSessionを使用したルール・セッションの作成
E.3.3
JSR-94メタデータの使用
E.3.4
Oracle Business RulesのJSR-94拡張機能の使用
E.3.4.1
拡張されたcreateRuleExecutionSetを使用したルール実行セットの作成
E.3.4.2
JSR-94でのRL Language関数の起動
F
ルール・レポータの使用
F.1
ルール・レポータの使用の概要
F.1.1
ルール・レポータのHTMLスタイルシートに関する必須情報
F.1.2
RuleReporter APIに関する必須情報
F.1.3
ルール・レポータの依存Jarファイルに関する必須情報
F.2
ルール・レポータのコマンドライン・インタフェースの使用
F.2.1
ルール・レポータのコマンドラインでディクショナリの内容をリスト表示する方法
F.3
Javaでのルール・レポータの使用
F.3.1
Javaを使用してルール・レポータでディクショナリの内容をリスト表示する方法
索引