定義済みの種類のタグ付き値を追加

<< 目次を表示 >>

ページ位置:  Enterprise Architectの拡張(SDK) > MDGテクノロジーを独自に定義 > プロファイルの作成 > プロファイルの作成と編集 > ステレオタイプのタグ付き値の指定 >

定義済みの種類のタグ付き値を追加

タグ付き値は、モデル要素に対する汎用的なプロパティを定義・保持するために利用しますが、これらのプロパティの中には、複雑な値や構造を持つものもあります。例えば、ユーザーに上限と下限の間で値を選択させたり、日付と時刻を設定したり、パレットから色を選択したり、チェックリストを使って作業をさせたりすることが考えられます。

 

このような複雑なタグ付き値をプロファイルに含めるには、データ型要素を利用してそのタグ付き値の型を定義します。データ型要素は、ツールボックスのプロファイルグループから作成できます。

 

データ型要素を使用することで、プロファイルに固有のタグ付き値を定義することができます。そのため、異なるプロファイルで同じ名前の異なる型のタグ付き値を作成しても、それらのプロファイルから派生するMDGテクノロジーを実行する際に矛盾が生じません。

 

新規にプロファイルを作成する場合には、このページに記載の方法を利用してください。過去のバージョンとの互換性のため、以前の方法での定義も残されていますが、異なるMDGテクノロジーで同名の定義がある場合の衝突の問題がありうるため、推奨しません。

 

 

タグ付き値をステレオタイプに割り当てる

データ型要素を利用して、定義済みの種類のタグ付き値を定義した後は、ステレオタイプ要素の属性を追加し、その属性の型をデータ型要素に設定します。

 

 

タグ付き値 'StartDate' と 'EndDate' をステレオタイプ要素に設定する状況を考えます。まず、データ型要素'DateProperty'を作成します。その要素のノート欄に、定義済みの種類を指定します。この種類の指定の詳細は、「定義済みのタグ付き値の種類」のページをご覧ください。作成したデータ型要素を複数の属性に適用することもできます。今回の例では、 'StartDate' と 'EndDate' の両方に適用します。この定義と利用の方法は、他のMDGテクノロジーやプロファイルでの定義には影響を与えません。

(このダイアグラムでは、設定内容がわかりやすいように要素のノートの情報を区画として表示しています。他の画像も同様です。)

 

この例を拡張した例として、ステレオタイプ要素'Holiday' と 'Meeting' がある場合を考えます。どちらもタグ付き値 'StartDate' と 'EndDate' を持ちます。しかし、'Holiday'ステレオタイプが持つこれらの属性の型は'DateProperty' (定義: "Type=Date;") であり、'Meeting' ステレオタイプが持つ同名の属性の型は'DateTimeProperty' (定義: "Type=Timestamp;")と異なります。

 

 

作成したプロファイルを利用する場合(UMLプロファイルとして利用する場合も、MDGテクノロジーとして利用する場合も含む)、定義したステレオタイプは新規要素と既存要素の両方に割り当てることができます。ステレオタイプを割り当てると、属性として定義した内容はタグ付き値として追加されます。下の画像は、モデルブラウザのリソースタブにUMLプロファイルとして読み込んだ状況です。ダイアグラムには、ステレオタイプを何も適用していない2つのクラス要素が配置されています。

 

 

ここで、 'Meeting' のステレオタイプ要素をリソースタブから Ctrlキーを押しながらTeam Meetingsクラスにドロップします。同様に、 'Holiday' のステレオタイプを Public Holidays クラスにドロップします。どちらの要素も、ドロップしたステレオタイプが適用され、プロパティサブウィンドウの要素タブでは、ステレオタイプ名のグループ内に定義されたタグ付き値が表示されます。

 

 

タグ付き値の区画を表示するように設定した状態でTeam Meetings要素の 'Start Date' に値を設定すると、設定した内容がダイアグラム内で表示されます。

 

定義されたタグ付き値を他の既存の要素に追加したい場合には、プロパティサブウィンドウのタグタブでタグ付き値を新規追加します。タグの種類としてドロップダウンリストから、プロファイルで定義した項目を選択して追加することができます。次の画像は、2つの異なる型のタグ付き値の値がどのように表示されるかの違いも確認できます。

 

 

 

参照: