Стереотип языка UML - механизм расширения для существующих понятий данного языка, а также элемент модели, который использован для классификации (или разметки) других элементов UML таким образом, чтобы они в определенном смысле становились образцами новых виртуальных или псевдометамодельных классов, форма которых основана на существующих базовых метамодельных классах. Стереотипы расширяют механизм классификации на основе встроенной в язык UML иерархии метамодельных классов. Ниже приведены краткие описания стереотипов, использованных в настоящем стандарте. Более подробное описание приведено в [2].
В настоящем стандарт используют следующие стереотипы:
a) "Туре" (тип) - класс, используемый для определения области экземпляров объектов вместе с операциями, применимыми к этим объектам. Тип может иметь атрибуты и ассоциации;
b) "Enumeration" (перечисление) - тип данных, экземпляры которого образуют список именованных значений, в который включено как имя значения, так и его обозначение. Перечисление означает краткий список хорошо понятных потенциальных значений внутри класса;
c) "DataType" (тип данных) - дескриптор набора значений, для которых отсутствует идентичность и чьи операции не имеют побочных эффектов. Типы данных включают в себя примитивные предопределенные типы и типы, определяемые пользователем. Предопределенные типы включают в себя числа, строки и время; определяемые пользователем - перечисления;
d) "CodeList" (список кодов) - гибкое перечисление, которое используется для описания более открытого перечисления. Списки кодов полезны для выражения длинного списка потенциальных значений. Если элементы списка полностью известны, то может использоваться перечисление; если известны только вероятные значения элементов, то список кодов;
e) "Union" ("Объединение") - описание выбора одного из конкретно указанных типов. Определяет набор альтернативных классов/типов, которые могут быть использованы без необходимости создания общего супертипа/класса;
f) "Abstract" (абстракт) - класс (или классификатор), который не может быть непосредственно описан. Обозначение в языке UML - указание имени курсивом;
g) "Metaclass" (метакласс) - класс, чьи экземпляры - классы. Метаклассы обычно используют при конструировании метамоделей. Метакласс является объектным классом, главное назначение которого состоит в том, чтобы содержать метаданные о другом классе;
h) "Interface" (интерфейс) - определенный набор операций, характеризующий поведение элемента;
i) "Package" (пакет) - группа логически родственных компонентов, содержащих подпакеты;
j) "Leaf" (лист) - пакет, который содержит определения и не имеет подпакетов.