In UML-Modellen sind Schablonen Modellelemente mit nicht gebundenen formellen Parametern, mit denen Sie Familien von Klassifikationsmerkmalen, Paketen und Operationen definieren können.
Eine Schablone ist ein parametrisiertes Modellelement, welches die Vorlage für eine Gruppe von Modellelementen eines bestimmten Typs beschreibt oder identifiziert. Da Schablonen Elementtypen darstellen, können sie in Modellen nicht direkt verwendet werden. Sie müssen zunächst die Schablone instanziieren, indem Sie die dazugehörigen Werte an tatsächliche Werte binden. Durch das Binden einer Schablone an ein Modellelement wird ein neues Modellelement generiert, das auf der Schablone basiert. Anschließend können Sie das gebundene Element verwenden, um einen Teil eines Systems zu modellieren.
Anstatt für jeden Datentyp in Ihrem Modell eigene Modellelemente zu entwerfen, können Sie ein einzelnes Modellelement in Form einer Schablone erstellen (ein Klassifikationsmerkmal, ein Paket oder eine Operation), das mit verschiedenen Arten von Daten arbeitet. Beispielsweise stellt eine Klassenschablone die parametrisierte Beschreibung einer Klasse zur Verfügung, in der die entsprechenden Attribute und Operationen angegeben sind. Durch Binden mehrerer Klassen an die Schablone können Sie neue Klassen mit denselben Merkmalen wie die Schablone generieren.
Eine Schablone wird als Klassifikationsmerkmal mit gestricheltem Kästchen in der rechten oberen Ecke dargestellt.