Ein Stereotyp ist eine spezielle Klasse und um Sie von herkömmlichen Klassen zu unterscheiden wird das Attribut («stereotype») angegeben.
Wie jede andere Klasse auch, kann es über Attribute verfügen, die bei Stereotypen als Eigenschaftsdefinitionen (engl. tag definition) bezeichnet werden. Ein Stereotyp kann auch Operationen deklarieren.
Auch sind abstrakte Stereotypen erlaubt und sinnvoll, wenn mehrere Stereotypen in Generalisierungshierachien angeordnet werden.
Mittels einer Erweiterung kann ein Stereotyp auf eine bestimmte Metaklasse angewendet werden.
Es gibt folgende Klassen für Sterotypen:Klasse «interface»
– keine Attribute
– abstrakte Operationen
– keine Instanzen
Klasse «type»
– Attribute
– abstrakte Operationen
– Assoziationen mit anderen Typen
Klasse «entity»
– viele Attribute
– viele primitive Operationen
– wenige komplexe Operationen
Klasse «control»
-wenige Attribute
– transient, kurze Lebensdauer
– komplexe Operationen
Klasse «boundary»
– keine eigenen Operationen
– delegieren Operationsaufrufe weiter
– keine fachliche Logik
– fast nur abgeleitete oder ableitbare Attribute
– keine Persistenz, keine Zustände
– oft Singletons
Klasse «primitive»
– elementare Klassen und Standardklassen
– wenige Attribute
– einfache Operationen
Klasse «enumeration»
– ähnliche wie bei primitiven Klassen
– fast nur in Deklarationen für Attribute
Klasse «structure»
– ausschließlich Attributdefinitionen
– keine Operationen
– Datenstrukturen werden zum Datenaustausch verwendet
Klasse «utility»
– Klassenattribute
– Klassenoperationen
– Sammlungen von globalen Variablen und Funktionen