Software Disclaimer

Class UML 2.4.1::TemplateBinding

Description:

A template binding represents a relationship between a templateable element and a template. A template binding specifies the substitutions of actual parameters for the formal parameters of the template.

Direct Superclasses: DirectedRelationship

Direct Subclasses:

Class Precedence List: TemplateBinding, DirectedRelationship, Relationship, Element

Properties:

boundElement : TemplateableElement (1 1); -- source TemplateBinding
parameterSubstitution : TemplateParameterSubstitution (0 *); -- source TemplateBinding
signature : TemplateSignature (1 1); -- source TemplateBinding

The template signature for the template that is the target of the binding.
Subsets: DirectedRelationship.target

source : Element (1 *); -- source DirectedRelationship
target : Element (1 *); -- source DirectedRelationship

Specifies the targets of the DirectedRelationship.
{readonly}
Derived union with sources: (signature)
Subsets: Relationship.relatedElement

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

Constraints:

Signature: parameter_substitution_formal() : Boolean;
Description: Each parameter substitution must refer to a formal template parameter of the target template signature.
Expression: parameterSubstitution->forAll(b | template.parameter->includes(b.formal))

Signature: one_parameter_substitution() : Boolean;
Description: A binding contains at most one parameter substitution for each formal template parameter of the target template signature.
Expression: template.parameter->forAll(p | parameterSubstitution->select(b | b.formal = p)->size() <= 1)

Operations:

No additional operations.



Send questions or comments to xmi-interop@omg.org.