Software Disclaimer

Class UML 2.3::Substitution

Description:

A substitution is a relationship between two classifiers signifies that the substituting classifier complies with the contract specified by the contract classifier. This implies that instances of the substituting classifier are runtime substitutable where instances of the contract classifier are expected.

Direct Superclasses: Realization

Direct Subclasses:

Class Precedence List: Substitution, Realization, Abstraction, Dependency, PackageableElement, ParameterableElement, NamedElement, DirectedRelationship, Relationship, Element

Properties:

contract : Classifier (1 1); -- source Substitution
substitutingClassifier : Classifier (1 1); -- source Substitution
mapping : OpaqueExpression (0 1); -- source Abstraction
client : NamedElement (1 *); -- source Dependency
supplier : NamedElement (1 *); -- source Dependency

The element(s) independent of the client element(s), in the same respect and the same dependency relationship. In some directed dependency relationships (such as Refinement Abstractions), a common convention in the domain of class-based OO software is to put the more abstract element in this role. Despite this convention, users of UML may stipulate a sense of dependency suitable for their domain, which makes a more abstract element dependent on that which is more specific.
Subsets: DirectedRelationship.target

visibility : VisibilityKind (1 1); -- source PackageableElement
owningTemplateParameter : TemplateParameter (0 1); -- source ParameterableElement
templateParameter : TemplateParameter (0 1); -- source ParameterableElement
clientDependency : Dependency (0 *); -- source NamedElement
name : String (0 1); -- source NamedElement
nameExpression : StringExpression (0 1); -- source NamedElement
namespace : Namespace (0 1); -- source NamedElement
qualifiedName : String (0 1); -- source NamedElement
source : Element (1 *); -- source DirectedRelationship
target : Element (1 *); -- source DirectedRelationship
relatedElement : Element (1 *); -- source Relationship
ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element

Constraints:

No additional constraints.

Operations:

No additional operations.



Send questions or comments to [email protected].