Software Disclaimer

Abstract Class UML 2.5::Element


An Element is a constituent of a model. As such, it has the capability of owning other Elements.

Direct Superclasses:

Direct Subclasses: TemplateableElement, TemplateSignature, TemplateParameterSubstitution, TemplateParameter, Slot, Relationship, QualifierValue, ParameterableElement, NamedElement, MultiplicityElement, LinkEndData, Image, ExceptionHandler, Comment, Clause

Class Precedence List: Element


ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element

The Element that owns this Element.
Derived union with sources: ()
Opposite: Element.ownedElement


No additional constraints.


Signature: isWithinCMOFSubset() : Boolean;
Expression: self.oclIsKindOf(Association) or self.oclIsKindOf(Class) or self.oclIsKindOf(Comment) or self.oclIsKindOf(Constraint) or self.oclIsKindOf(DataType) or self.oclIsKindOf(ElementImport) or self.oclIsKindOf(Enumeration) or self.oclIsKindOf(EnumerationLiteral) or self.oclIsKindOf(Generalization) or self.oclIsKindOf(InstanceValue) or self.oclIsKindOf(LiteralBoolean) or self.oclIsKindOf(LiteralInteger) or self.oclIsKindOf(LiteralNull) or self.oclIsKindOf(LiteralReal) or self.oclIsKindOf(LiteralString) or self.oclIsKindOf(LiteralUnlimitedNatural) or self.oclIsKindOf(OpaqueExpression) or self.oclIsKindOf(Operation) or self.oclIsKindOf(Package) or self.oclIsKindOf(PackageImport) or self.oclIsKindOf(PackageMerge) or self.oclIsKindOf(Parameter) or self.oclIsKindOf(PrimitiveType) or self.oclIsKindOf(Property)

Signature: mustBeOwned() : Boolean;
Description: The query mustBeOwned() indicates whether Elements of this type must have an owner. Subclasses of Element that do not require an owner must override this operation.
Expression: result = (true)

Signature: allOwnedElements() : Element;
Description: The query allOwnedElements() gives all of the direct and indirect ownedElements of an Element.
Expression: result = (ownedElement->union(ownedElement->collect(e | e.allOwnedElements()))->asSet())

Send questions or comments to