Class UML 2.4.1::ExtensionEnd
Description:
An extension end is used to tie an extension to a stereotype when extending
a metaclass.The default multiplicity of an extension end is 0..1.
Direct Superclasses: PropertyDirect Subclasses: Class Precedence List: ExtensionEnd,
Property,
StructuralFeature,
ConnectableElement,
TypedElement,
ParameterableElement,
MultiplicityElement,
Feature,
RedefinableElement,
DeploymentTarget,
NamedElement,
ElementProperties:
lower : Integer (0 1); -- source
ExtensionEnd type :
Stereotype (1 1); -- source
ExtensionEnd aggregation :
AggregationKind (1 1); -- source
Property association :
Association (0 1); -- source
Property associationEnd :
Property (0 1); -- source
Property class :
Class (0 1); -- source
Property datatype :
DataType (0 1); -- source
Property default : String (0 1); -- source
Property defaultValue :
ValueSpecification (0 1); -- source
Property interface :
Interface (0 1); -- source
Property isComposite : Boolean (1 1); -- source
Property isDerived : Boolean (1 1); -- source
PropertyIf isDerived is true, the value of the attribute is derived from information
elsewhere. Specifies whether the Property is derived, i.e., whether its
value or values can be computed from other information.
Default value: FALSE
isDerivedUnion : Boolean (1 1); -- source
Property isID : Boolean (1 1); -- source
Property isReadOnly : Boolean (1 1); -- source
Property opposite :
Property (0 1); -- source
Property owningAssociation :
Association (0 1); -- source
Property qualifier :
Property (0 *); -- source
Property redefinedProperty :
Property (0 *); -- source
Property subsettedProperty :
Property (0 *); -- source
Property end :
ConnectorEnd (0 *); -- source
ConnectableElement templateParameter :
ConnectableElementTemplateParameter (0 1); -- source
ConnectableElement owningTemplateParameter :
TemplateParameter (0 1); -- source
ParameterableElement isOrdered : Boolean (1 1); -- source
MultiplicityElement isUnique : Boolean (1 1); -- source
MultiplicityElement lowerValue :
ValueSpecification (0 1); -- source
MultiplicityElement upper : UnlimitedNatural (0 1); -- source
MultiplicityElement upperValue :
ValueSpecification (0 1); -- source
MultiplicityElement featuringClassifier :
Classifier (0 *); -- source
Feature isStatic : Boolean (1 1); -- source
Feature isLeaf : Boolean (1 1); -- source
RedefinableElement redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement redefinitionContext :
Classifier (0 *); -- source
RedefinableElement deployedElement :
PackageableElement (0 *); -- source
DeploymentTarget deployment :
Deployment (0 *); -- source
DeploymentTarget 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 visibility :
VisibilityKind (0 1); -- source
NamedElement ownedComment :
Comment (0 *); -- source
Element ownedElement :
Element (0 *); -- source
Element owner :
Element (0 1); -- source
ElementConstraints:
Signature: multiplicity() : Boolean;
Description: The multiplicity of ExtensionEnd is 0..1 or 1.
Expression: (self->lowerBound() = 0 or self->lowerBound() = 1) and self->upperBound() = 1
Signature: aggregation() : Boolean;
Description: The aggregation of an ExtensionEnd is composite.
Expression: self.aggregation = #composite
Operations:
Signature: lowerBound() : Integer;
Description: The query lowerBound() returns the lower bound of the multiplicity as an
Integer. This is a redefinition of the default lower bound, which normally,
for MultiplicityElements, evaluates to 1 if empty.
The OCL used here is not normative.Editor's notes: removed lowerBound = ... but IntegerValue is not defined
Expression: 1
Original: result = lowerBound = if lowerValue->isEmpty() then 0 else lowerValue->IntegerValue() endif
Send questions or comments to
[email protected].