OCL ステートメントのターゲット・モデル

Object Constraint Language (OCL) ステートメントを作成する場合、そのターゲット・モデルによって OCL ステートメントがアクセスできるコンテキスト要素の機能が判別されます。 ターゲット・モデルはユーザー・モデルまたはメタモデルのいずれかです。

ユーザー・モデル

ターゲット・モデルをユーザー・モデルとして指定すると、OCL ステートメントはコンテキスト要素のユーザー定義機能に限定されます。 また、ターゲット・モデルをユーザー・モデルとして指定した場合、OCL ステートメントを評価することはできません。 OCL ステートメントを解析してはじめてそのステートメントが文法的に正しいかどうかを確認できます。

例えば、ターゲット・モデルをユーザー・モデルとして指定し、コンテキスト要素としてクラスまたはインターフェースを選択すると、OCL ステートメントが下記の属性および操作に限定されます。
  • クラスまたはインターフェースによって定義される属性
  • 特定の OCL 定義動作。oclIsType() など

メタモデル

ターゲット・モデルをメタモデルとして指定すると、OCL ステートメントはコンテキスト要素のメタモデル機能、さらに コンテキスト要素に適用されるステレオタイプが提供するすべての機能にアクセスできます。 さらに、ターゲット・モデルがメタモデルの場合、OCL ステートメントを解析することで、それらの OCL ステートメントが文法的に有効であるかどうかをチェックしたり、ステートメントの出力を評価したりできます。

例えば、ターゲット・モデルをメタモデルとして指定する場合は、OCL ステートメントから下記の機能にアクセスできます。
  • コンテキスト要素を表すメタクラスによって定義されるすべての属性
  • コンテキスト要素に適用されるステレオタイプによって定義される属性
  • すべての OCL 定義メソッド
関連概念
OCL ステートメントのコンテキスト要素
関連タスク
OCL ステートメントの解析
OCL ステートメントの評価
UML モデル要素の特性の探索
ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved. (C) Copyright IBM Japan 2005