What does UML "redefines" mean?
The UML 2.5.1 defines redefinition in section 9.2.3.3 (page 100):
Any member (that is a kind of RedefinableElement) of a generalization of a specializing Classifier may be redefined instead of being inherited. Redefinition is done in order to augment, constrain, or override the redefined member(s) in the context of instances of the specializing Classifier.
For a feature such as an attribute, a property, or an operation:
Feature redefinitions may either be explicitly notated with the use of a
{redefines <x>}
property string on the Feature or implicitly by having a Feature which cannot be distinguished using isDistinguishableFrom() from another Feature in one of the owning Classifier’s more general Classifiers.
Suppose for example that you have a class Node
with two attributes: from: Node[*]
and to[*]: Node
. You could then have a specialization FamilyMember
(a node in your genealogy) and you could redefine the members: parent : FamilyMember[*] {redefines from}
and child : FamilyMember[*] {redefines from}
Another example: you have a polymorphic class Shape
with an abstract operation draw()
. You can specialize that class into a class Circle
that will have its own draw()
. You could leave the redefinition implicit (just mentioning the operation), or you could be very explicit with draw() {redefines draw()}
.
The abstract syntax diagrams apply UML to the UML metamodel. The redefinition have the same meaning, but it is explained in a shorter manner in section 6.
Let's take an example in your diagram: let's take IntervalConstraint
:
-
IntervalConstraint
inherits fromContraint
. AConstraint
is composed of a propertyspecification:ValueConstraint
(page 36), soIntervalConstraint
inherits this property. - Your diagram tells that
IntervalConstraint
is composed of a propertyspecialization: Interval
that redefines the more generalspecification
of the constraint. It's a redefinition, because it narrows down its type (fortunately,Interval
inherits fromValueSpecification
so there's no risk of inconsistency).