OCLの考え方 前回「第7回 オブジェクト制約言語の基本」まで見てきた例でOCLのイメージはつかんでいただけたのではないでしょうか。基本的に、OCLはUMLで書かれたモデル上を起点のモデル要素から属性や関連端(ロール名)を「.」(ドット)でたどる(ナビゲートする)ことによって、モデル要素間で満たさなければならない等・不等関係や数量的な大小関係、リンクやインスタンスの集合の数(collection->size())や包含関係に関する制約を表すものです。いってみれば、SQLのようなノリでオブジェクトモデル上でドット記法を用いてクエリーを定義し、それらのクエリーの間で満たすべき条件を書く、そんな使い方がOCLの一般的な利用法です。 OCLでは操作を適用する際に、2つの記法があって、適用対象がオブジェクトかそれともコレクション(オブジェクトの集合)かによって、「.」「->」を使い分けます。