Annex C: Keywords

UML キーワードは UML 表記法になくてはならない予約語であり、普通は UML 図表要素に付属したテキスト註釈として、あるいは UML 図式内のテキスト行の部分として現れる。

UML において、キーワードは三個の異なる目的に用いられる。

  1. 特定の UML 概念(メタクラス)を、同じ一般的な図表的形式を共有する他の概念と区別するため。例えば、分類子矩形の見出し箱にある «interface» キーワードは Interface を他の種類の Classifiers と区別するために用いられる。

  2. UML 概念間の特定の種類の関係(メタ関連)を、同じ一般的な図表的形式を共有する他の関係と区別するため。例えば、要素間の破線は、

    • Dependencies や

    • UseCases と拡張 UseCases の関係

    など、さまざまな関係に用いられる。

  3. UML 概念に付属した修飾子の値(メタ属性値)を指定するため。例えば、ある Activity 内に出現するキーワード «singleExecution» は、その Activity の isSingleExecution 属性値が真であることを意味する。

    Keywords are always enclosed in guillemets («keyword»), which serve as visual cues to more readily distinguish when a keyword is being used.

この引用符は特別な引用符であり、利用可能な文字集合がこの引用符を含んでいない場合を除き、>> または << と混同、置換するべきではない。

«…» はキーワードの識別に加えて、ステレオタイプの用法を区別するためにも用いられる。

  • «…» の間に現れる言葉のすべてが必ずしもキーワードであるとは限らないし、

  • «…» の間に現れる言葉がステレオタイプを表すとは限らない。

複数のキーワードまたはステレオタイプまたはその両方が同じモデル要素に適用される場合、ステレオタイプそれぞれは別々の «…» で括り、一つずつ列記してよい。もしくは同じ «…» の間にカンマ区切りですべてを表示してもよい:

‘«’ <label> [‘,’ <label>]* ‘»’

<label> ::= <keyword> | <stereotype-label>

キーワードは文脈依存的で、同じキーワードが異なる文脈で異なる目的に用いられる例が少しはある。例えばキーワード «create» はコンストラクター操作を指示するために、操作名の隣に表示することが可能であり、二つの Classes 間の Usage 依存関係をラベルして、一方の Class が他方のオブジェクトを生成することを指示するのに用いることも可能だ。

Table C.1 Keywords

標準 UML の一部として現在定義されているキーワードをアルファベット順に並べてある。

  • 列 Keywords はキーワードの正確な綴り方だ。

  • 列 Metamodel Element はキーワードが示す UML メタモデルの要素を指定する。メタクラスまたはメタクラス特徴のどちらか。

  • 列 Semantics はキーワードの語義の大意の記述だ。より詳しい説明は対応するメタクラス記載の節 Notation にある。次の書式が使われる:

    1. UML メタクラス・特徴の名前が含まれている場合、そのキーワードは対応するメタクラス・特徴を識別するために単に使用されることを含意する。

    2. 制約である場合、そのキーワードでタグ付けされたメタモデル要素に適用される制約を規定する。

  • 列 Notation Placement はキーワード出現箇所を指示する。

    1. box header はキーワードが分類子矩形の名前区画に現れることを意味する。

    2. dashed-line label はキーワードが何かの破線上のラベルとして用いられることを意味する。

    3. line label はキーワードが何らかの線上のラベルとして用いられることを意味する。

    4. inline label はキーワードが属性定義などのテキスト行の部分(通常は先頭)として現れることを意味する。

    5. swimlane header はキーワードが活動図のレーンの見出しとして現れることを意味する。

    6. note label はキーワードが付註釈記号で用いられることを意味する。

    7. top left corner はキーワードが記号の左上隅に現れることを意味する。

    8. after name はキーワードが関連要素の名前の後に現れることを意味する。