オブジェクトの初期化規則の仕組み
規則を作成するコンテキストと、規則に関連付けられたオブジェクトタイプによって、規則に影響を受けるオブジェクトが決定されます。規則がどのように機能するかをより深く理解するため、ディスカッションを次の 2 つの領域に分けることができます。
• 定義されたすべての規則は、その規則を適用するオブジェクトタイプを指定します。
オブジェクトタイプには、独自の階層があります。オブジェクトに適用する規則を決定するときに、この階層を使用します。オブジェクトタイプ階層は、最上位レベルのタイプを親タイプとして定義し、親のサブタイプはすべて親の子となります。
• すべての規則は、規則が適用される特定のコンテキスト内で定義されます。
コンテキストには独自の階層があります。特定のオブジェクトに適用する規則を決定するときに、この階層を使用します。コンテキスト階層が、サイトコンテキストを最上位レベルの親コンテキストとして定義し、作成された各組織コンテキストをサイトコンテキストの子として定義します。作成されたアプリケーションコンテキストは、それを作成した組織コンテキストの子になります。
規則はほかの規則で置き換えられませんが、適用するすべての規則をマージして、複合規則を作成できます。マージは、設定されているオブジェクトタイプおよびコンテキスト階層を使用した規則定義を組み合わせます。階層内の最下位レベルの規則定義は、親タイプおよびコンテキスト内の定義に優先します。
規則の作成時に指定されたオブジェクトタイプとコンテキストの両方が考慮されます。すべての規則が同じオブジェクトタイプに対して定義されている場合、マージ規則は確立されたコンテキスト階層のみを使用します。すべての規則が同じコンテキストで定義されている場合、マージ規則は確立されたタイプ階層のみを使用します。オブジェクトタイプとコンテキスト階層の両方がマージ規則に関係する場合、同じコンテキストではコンテキスト階層よりもオブジェクトタイプ階層が優先されます。
親から子へのタイプまたはコンテキストの継承を変更するには、特定のオブジェクト属性の AttrValue 要素、AttrConstraint 要素、または VarDef 要素にオプションの final 属性または ignore 属性を含めます。
|
wt.fc.WTObject 規則は修正または除去しないでください。
|
規則のマージ方法に関する詳細とその使用例は、
規則をマージして複合規則を作成を参照してください。