Difference between revisions of "XCSG:Namespace"
From AtlasWiki
(switching to template for subkinds) |
(→Specification: Added out edges, call to ListInEdges) |
||
Line 14: | Line 14: | ||
| references = [5, p. 2-14, Figure 2-5], [5, pp. 2-49, 2-68] | | references = [5, p. 2-14, Figure 2-5], [5, pp. 2-49, 2-68] | ||
}} | }} | ||
+ | |||
+ | {{OutEdges|Owns,ModelElement}} | ||
+ | |||
+ | {{ListInEdges}} | ||
== Language mappings == | == Language mappings == |
Revision as of 13:38, 20 March 2014
A Namespace “owns” the model elements that appear in it, and no model element may appear in more than one namespace.
Semantics
The semantics of Namespace are those defined by UML [5, pp. 2-49, 2-68]. Elements appearing within the namespace, other than generalizations, must have unique names.
Subtypes of Namespace may restrict the types of model elements that the name space contains.
Specification
Metaclass | Namespace |
---|---|
Extends | ModelElement |
Description | A model element that contains (owns) a set of uniquely named model elements. Each contained element is owned by at most a single namespace. The concrete subclasses of Namespace constrain the type of elements the Namespace may contain. Namespace is an abstract metaclass. |
References | [5, p. 2-14, Figure 2-5], [5, pp. 2-49, 2-68] |
Direct Subkinds | Classifier, Package |
---|
Language mappings
None. Namespace is an abstract metaclass. Package (rather than Namespace) maps to the more concrete notion of a C++ (or MS-IL) namespace.
Direct Subkinds | Classifier, Package |
---|