Software Disclaimer

Abstract Class UML 2.4.1::ParameterableElement

Description:

A parameterable element is an element that can be exposed as a formal template parameter for a template, or specified as an actual parameter in a binding of a template.

Direct Superclasses: Element

Direct Subclasses: PackageableElement, Operation, ConnectableElement

Class Precedence List: ParameterableElement, Element

Properties:

owningTemplateParameter : TemplateParameter (0 1); -- source ParameterableElement

The formal template parameter that owns this element.
Subsets: Element.owner, ParameterableElement.templateParameter
Opposite: TemplateParameter.ownedParameteredElement

templateParameter : TemplateParameter (0 1); -- source ParameterableElement

The template parameter that exposes this element as a formal parameter.
Opposite: TemplateParameter.parameteredElement

ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element

Constraints:

No additional constraints.

Operations:

Signature: isTemplateParameter() : Boolean;
Description: The query isTemplateParameter() determines if this parameterable element is exposed as a formal template parameter.
Expression: result = templateParameter->notEmpty()

Signature: isCompatibleWith(p : ParameterableElement; ) : Boolean;
Description: The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. Subclasses should override this operation to specify different compatibility constraints.
The OCL used here is not normative.
Editor's notes: oclType(), not oclType. No oclType in OCL AFAIK. I have one though,.
Expression: result = p->oclIsKindOf(self.oclType())
Original: result = p->oclIsKindOf(self.oclType)



Send questions or comments to [email protected].