Binding relationships

In UML models, a binding relationship is a relationship that assigns values to template parameters and generates a new model element from the template.

The template is the supplier in the binding relationship, and the model element is the consumer. The binding does not affect the template, so you can bind the template to any number of model elements. The binding does affect the model element, however, because the model element is defined by replacing the template parameters with the template arguments that the binding relationship provides.

As you bind a model element to a template, you assign values, called template arguments, to the template parameters. Template arguments replace template parameters in model elements that you bind to a template. This action creates a new model element that has the structure of the template and that uses the values of its template arguments.

In the diagram editor, a binding relationship appears as a dashed line with an arrow that points from the diagram element to the template. Beside the connector, the keyword «bind» appears, followed by template arguments. Typically, binding relationships do not have names. For example, the MoviesCart, CDsCart, and BooksCart classes in the following diagram are connected to the Cart template through binding relationships.

A class called Cart is attached to three classes by dashed lines with open arrowheads.