Difference between revisions of "XCSG:Namespace"

From AtlasWiki
Jump to: navigation, search
(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

Template:OutEdges

Template:ListInEdges

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