Class: Xmi::Uml::Base
- Inherits:
-
Lutaml::Model::Serializable
- Object
- Lutaml::Model::Serializable
- Xmi::Uml::Base
- Defined in:
- lib/xmi/uml/base.rb
Overview
Common base for concrete UML element classes.
Each concrete UML class redeclares the same xmi:type discriminator,
xmi:id, and UML namespace boilerplate. Inheriting from Base
removes that duplication — subclasses declare only their unique
attributes and root element name.
Verified via spike: lutaml-model inherits attribute declarations,
namespace, and map_attribute lines from the parent's xml do block.
Subclasses override root and add their own attributes/mappings.
Classes that don't fit this pattern (reference holders like AnnotatedElement/MemberEnd/Type, or UmlDi-namespaced elements like Bounds/Waypoint/Diagram) stay direct from Serializable.
Direct Known Subclasses
AssociationGeneralization, InterfaceRealization, OwnedAttribute, OwnedComment, OwnedEnd, OwnedLiteral, OwnedOperation, OwnedParameter, PackagedElement, Precondition, Profile, ProfileApplication, Slot, Specification, UmlModel, ValueSpecification