I agree with you.
From the superstructure:
"
17.5.7 Classifier (from Templates)
Classifier is defined to be a kind of templateable element so that a classifier can be parameterized, and as a kind of
parameterable element so that a classifier that can be exposed as a formal template parameter, and provided as an actual
parameter in a binding of a template.
Issue 7367 - add superclass pointers
Generalizations
• “ParameterableElement (from Templates)” on page 679
• “TemplateableElement (from Templates)” on page 681
• “Classifier (from Kernel, Dependencies, PowerTypes)” on page 50 (merge increment)
Description
Classifier specializes Kernel::Classifier TemplateableElement and ParameterableElement to specify that a classifier can be
parameterized, be exposed as a formal template parameter, and can be specified as an actual parameter in a binding of a
template.
Issue 7623 - remove redundant generalization
Figure 429 - Classifier templates
TemplateableElement
TemplateSignature
ParameterableElement
RedefinableElement
(from Kernel )
TemplateParameter
RedefinableTemplateSignature
*
*
+e xt ende dSi gnatur* e
{subsets redefinedElement}
*
+/inheritedParameter
{subsets parameter}
ClassifierTemplateParameter
allowSubstitutable : Boolean = true
Classifier 1
+ownedSignature
0..1
{subsets ownedElement}
+cl assifier
{su bse ts rede finitionCont ext}
1
0..1
+ param et er
+parameteredElement
690 UML Superstructure 2.0 Draft Adopted Specification
A classifier with template parameters is often called a template classifier, while a classifier with a binding is often called
a bound classifier.
Issue 5744 - spelling of the word Use Case
By virtue of Classifier being defined here, all subclasses of Classifier (such as Class, Collaboration, Component,
Datatype, Interface, Signal and UseCases) can be parameterized, bound and used as template parameters. The same holds
for Behavior as a subclass of Class, and thereby all subclasses of Behavior (such as Activity, Interaction, StateMachine).
"
According to this, interface is a classifier, and all classifiers are templeateable elements, so you should be able to define a template for an interface and to define parameters for that template.