Class UML 2.3::ElementImport
Description:
An element import identifies an element in another package, and allows
the element to be referenced using its name without a qualifier.
Direct Superclasses: DirectedRelationshipDirect Subclasses: Class Precedence List: ElementImport,
DirectedRelationship,
Relationship,
ElementProperties:
alias : String (0 1); -- source
ElementImport importedElement :
PackageableElement (1 1); -- source
ElementImport importingNamespace :
Namespace (1 1); -- source
ElementImport visibility :
VisibilityKind (1 1); -- source
ElementImport Specifies the visibility of the imported PackageableElement within the
importing Package. The default visibility is the same as that of the imported
element. If the imported element does not have a visibility, it is possible
to add visibility to the element import.
Default value: PUBLIC
source :
Element (1 *); -- source
DirectedRelationship target :
Element (1 *); -- source
DirectedRelationship relatedElement :
Element (1 *); -- source
Relationship ownedComment :
Comment (0 *); -- source
Element ownedElement :
Element (0 *); -- source
Element owner :
Element (0 1); -- source
ElementConstraints:
Signature: CMOF_14_3_7b() : Boolean;
Description: see also: https://sites.google.com/site/metamodelingantipatterns/catalog/mof/element-import-is-not-public
see also: https://sites.google.com/site/metamodelingantipatterns/catalog/mof/element-import-has-alias
Expression: visibility = VisibilityKind::public and alias->isEmpty()
Signature: visibility_public_or_private() : Boolean;
Description: The visibility of an ElementImport is either public or private.
Expression: self.visibility = #public or self.visibility = #private
Signature: imported_element_is_public() : Boolean;
Description: An importedElement has either public visibility or no visibility at all.
Expression: self.importedElement.visibility.notEmpty() implies self.importedElement.visibility = #public
Operations:
Signature: getName() : String;
Description: The query getName() returns the name under which the imported PackageableElement will be known in the importing namespace.
Expression: result = if self.alias->notEmpty() then
self.alias
else
self.importedElement.name
endif
Send questions or comments to
[email protected].