目的別ルール設定
ルールの目的は、ルール名とルールタイプの組み合わせで定義されます。最初のステップでは、参照されたルールの目的に合致するすべてのルールのリストが、ルールレゾリューションアルゴリズムによって作成されます。この例では、CreateRequestという名前のすべてのFlowActionルールが同じ目的を持っていると想定され、ルールレゾリューションアルゴリズムがルールインスタンスをリストに収集します。
各ルールインスタンスには異なるルールセットとルールセットバージョンがあるため、ルール候補の最初のリストにはルールインスタンスが多数存在する場合があります。
「Not Available」と記されたルール
このステップでは、ルールレゾリューションアルゴリズムがルール候補のリストをフィルタリングし、ルールの可用性がNot Availableに設定されているルールを削除します。
次の画像は、可用性が「Not Available」に設定されている3つのルールを強調表示したルールレゾリューションアルゴリズムを示しています。
これらのルールはルール候補のリストから削除されます。
次の画像は、可用性が「Not Available」に設定されている3つのルールを除外した後のルールレゾリューションアルゴリズムを示しています。
適用不可能なルールセット内のルール
このステップでは、ルールレゾリューションアルゴリズムが、オペレーターのルールセットリストを使用して、オペレーターがアクセスできるルール候補を決定します。
各ルール候補が結果に含まれるためには、オペレーターのルールセットリストに記載されているルールセットに属する必要があります。各ルールは、メジャーバージョン番号が同じで、マイナーバージョン番号がオペレーターのルールセットリストに記載されている指定のマイナーバージョン番号以下である必要があります。
この例では、オペレーターのルールセットリストにPurchasing:02-01とTGB:03-01が含まれている場合を考えてみます。 Purchasing:01-01-01ルールセットの3つのルールは、オペレーターのルールセットリストに定義されているメジャーバージョン(Purchasing:02-01)と一致しないため、削除されます。
次の画像は、削除対象として設定されたルールを強調表示するルールレゾリューションアルゴリズムを示しています。
次の図は、削除対象として設定されたルールを除外した後のルールレゾリューションアルゴリズムを示しています。
また、Purchasing:02-02-01ルールセットのルールは、マイナーバージョン番号(Purchasing:02-02)が、オペレーターのルールセットリストで定義されているマイナーバージョン番号(Purchasing:02-01)よりも高いため、削除されます。
TGBのルールセットのルールのうち、オペレーターのルールセットリストに記載されている現在のメジャーバージョン(TGB:03-01)と一致するルールは1つだけです。TGBルールセットのその他のルールはすべて削除されます。
次の画像は、削除対象として設定されたルールを強調表示するルールレゾリューションアルゴリズムを示しています。
次の図は、削除対象として設定されたルールを除外した後のルールレゾリューションアルゴリズムを示しています。
QuotingおよびSAEのルールセットのルールは、オペレーターのルールセットリストに記載されていないため、除外されています。
次の画像は、削除対象として設定されたルールを強調表示するルールレゾリューションアルゴリズムを示しています。
次の図は、削除対象として設定されたルールを除外した後のルールレゾリューションアルゴリズムを示しています。
クラス階層外のルール
このステップでは、残りの候補ルールが参照先ルールの継承階層にある場合に、ルールレゾリューションアルゴリズムによって候補ルールのリストでApplies to class が調べられます。
残りの候補ルールのApply toクラスが、参照されたルールのアンセスターツリーと一致していないと、結果に含まれません。参照されたルールのアンセスターツリー(パターンまたは直接継承)で見つかったルールのみがリストに保持されます。
この例では、参照されるルールはTGB-Purchasing-Work-PurchaseRequestクラスに適用されます。アンセスターツリーにないルール候補が1つあるので、リストから削除します。
次の画像は、削除対象として設定されたルールを強調表示するルールレゾリューションアルゴリズムを示しています。
次の図は、削除対象として設定されたルールを除外した後のルールレゾリューションアルゴリズムを示しています。
次の問題に答えて、理解度をチェックしましょう。
このトピックは、下記のモジュールにも含まれています。
- ルールレゾリューション v8