Class UML 2.3::ExtensionEnd
Description:
The default multiplicity of an extension end is 0..1.
Direct Superclasses: PropertyDirect Subclasses: Class Precedence List: ExtensionEnd,
Property,
StructuralFeature,
MultiplicityElement,
DeploymentTarget,
ConnectableElement,
ParameterableElement,
TypedElement,
Feature,
RedefinableElement,
NamedElement,
ElementProperties:
![](/se-interop/image/right-arrow.png)
lower : Integer (0 1); -- source
ExtensionEnd This redefinition changes the default multiplicity of association ends,
since model elements are usually extended by 0 or 1 instance of the extension
stereotype.
{
derived}
Redefines: MultiplicityElement.lower
Default value: 0
The spec does not provide a function to compute this derived property!![](/se-interop/image/down-arrow.png)
type :
Stereotype (1 1); -- source
ExtensionEnd![](/se-interop/image/right-arrow.png)
aggregation :
AggregationKind (1 1); -- source
Property Specifies the kind of aggregation that applies to the Property.
Default value: NONE
![](/se-interop/image/down-arrow.png)
association :
Association (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
associationEnd :
Property (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
class :
Class (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
datatype :
DataType (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
default : String (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
defaultValue :
ValueSpecification (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
interface :
Interface (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
isComposite : Boolean (1 1); -- source
Property![](/se-interop/image/down-arrow.png)
isDerived : Boolean (1 1); -- source
Property![](/se-interop/image/down-arrow.png)
isDerivedUnion : Boolean (1 1); -- source
Property![](/se-interop/image/right-arrow.png)
isReadOnly : Boolean (1 1); -- source
Property If true, the attribute may only be read, and not written.
Redefines: StructuralFeature.isReadOnly
Default value: FALSE
![](/se-interop/image/down-arrow.png)
opposite :
Property (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
owningAssociation :
Association (0 1); -- source
Property![](/se-interop/image/down-arrow.png)
qualifier :
Property (0 *); -- source
Property![](/se-interop/image/down-arrow.png)
redefinedProperty :
Property (0 *); -- source
Property![](/se-interop/image/down-arrow.png)
subsettedProperty :
Property (0 *); -- source
Property![](/se-interop/image/down-arrow.png)
isOrdered : Boolean (1 1); -- source
MultiplicityElement![](/se-interop/image/down-arrow.png)
isUnique : Boolean (1 1); -- source
MultiplicityElement![](/se-interop/image/down-arrow.png)
lowerValue :
ValueSpecification (0 1); -- source
MultiplicityElement![](/se-interop/image/right-arrow.png)
upper : UnlimitedNatural (0 1); -- source
MultiplicityElement Specifies the upper bound of the multiplicity interval.
{
derived}
Default value: 1
![](/se-interop/image/right-arrow.png)
upperValue :
ValueSpecification (0 1); -- source
MultiplicityElement The specification of the upper bound for this multiplicity.
{
composite}
Subsets: Element.ownedElement
![](/se-interop/image/down-arrow.png)
deployedElement :
PackageableElement (0 *); -- source
DeploymentTarget![](/se-interop/image/down-arrow.png)
deployment :
Deployment (0 *); -- source
DeploymentTarget![](/se-interop/image/right-arrow.png)
end :
ConnectorEnd (0 *); -- source
ConnectableElement Denotes a connector that attaches to this connectable element.
{
ordered,
derived}
Opposite: ConnectorEnd.role
![](/se-interop/image/down-arrow.png)
templateParameter :
ConnectableElementTemplateParameter (0 1); -- source
ConnectableElement![](/se-interop/image/down-arrow.png)
owningTemplateParameter :
TemplateParameter (0 1); -- source
ParameterableElement![](/se-interop/image/down-arrow.png)
featuringClassifier :
Classifier (0 *); -- source
Feature![](/se-interop/image/down-arrow.png)
isStatic : Boolean (1 1); -- source
Feature![](/se-interop/image/right-arrow.png)
isLeaf : Boolean (1 1); -- source
RedefinableElement Indicates whether it is possible to further redefine a RedefinableElement.
If the value is true, then it is not possible to further redefine the RedefinableElement.
Note that this property is preserved through package merge operations;
that is, the capability to redefine a RedefinableElement (i.e., isLeaf=false)
must be preserved in the resulting RedefinableElement of a package merge
operation where a RedefinableElement with isLeaf=false is merged with a
matching RedefinableElement with isLeaf=true: the resulting RedefinableElement
will have isLeaf=false. Default value is false.
Default value: FALSE
![](/se-interop/image/down-arrow.png)
redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement![](/se-interop/image/right-arrow.png)
redefinitionContext :
Classifier (0 *); -- source
RedefinableElement References the contexts that this element may be redefined from.
{
readonly}
Derived union with sources: ()
![](/se-interop/image/down-arrow.png)
clientDependency :
Dependency (0 *); -- source
NamedElement![](/se-interop/image/down-arrow.png)
name : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
nameExpression :
StringExpression (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
namespace :
Namespace (0 1); -- source
NamedElement![](/se-interop/image/right-arrow.png)
qualifiedName : String (0 1); -- source
NamedElement A name which allows the NamedElement to be identified within a hierarchy
of nested Namespaces. It is constructed from the names of the containing
namespaces starting at the root of the hierarchy and ending with the name
of the NamedElement itself.
{
readonly,
derived}
![](/se-interop/image/down-arrow.png)
visibility :
VisibilityKind (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
ownedComment :
Comment (0 *); -- source
Element![](/se-interop/image/down-arrow.png)
ownedElement :
Element (0 *); -- source
Element![](/se-interop/image/right-arrow.png)
owner :
Element (0 1); -- source
Element The Element that owns this element.
{
readonly}
Derived union with sources: (namespace, owningTemplateParameter, owningAssociation, interface, datatype, class, associationEnd)
Opposite: Element.ownedElement
Constraints:
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].