User:ProgrammerInFL/sandbox
In the Unified Modeling Language (UML), an Element is an abstract class with no superclass.[1] It is used as the superclass, or base class as known by object oriented programmers, for all the metaclasses in the UML infrastructure library. All other elements in UML inherit, directly or indirectly from element. An element has a derived composition association to itself to support the general capability for elements to own other elements. As such, it has no additional attributes as part of its specification.
Associations
An association describes a set of tuples of typed instances.[2]
- ownedComment: Comment[*]: An element may own, or have associated to it, an arbitrary quantity of comments.[1] A comment is sometimes referred to as a note.[2]
- / ownedElement: Element[*]: An element may own an arbitrary quantity of elements.[1] This is called a derived union, symbolized by the forward slash notation.
- / owner: Element[0..1]: The element that owns this element.[1] This is called a derived union, symbolized by the forward slash notation. This means that an element can only have 0 to 1 owners.
The Element class belongs to the base package in UML called the Kernel. This is the package that contains the superclasses that make up the superstructure of the UML language.
Subclasses of Element provide semantics appropriate to the concept they represent. The comments for an Element add no semantics but may represent information useful to the reader of the model.[1]
Notes
Updated for the UML version 2.4.1
References
Further Reading
Weilkiens, Tim; Oestereich, Bernd (2007). UML 2 Certification Guide. Morgan Kaufman. ISBN 0-12-373585-8.
OMG Unified Modeling Language Superstructure, Object Management Group, August 2011