Difference between revisions of "XCSG:Namespace"

From AtlasWiki
Jump to: navigation, search
(Specification: Added out edges, call to ListInEdges)
(moved direct subkinds list further up the page)
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]
 
}}
 
}}
 +
 +
{{Subkinds}}
  
 
{{OutEdges|Owns,ModelElement}}
 
{{OutEdges|Owns,ModelElement}}
Line 22: Line 24:
  
 
None.  Namespace is an abstract metaclass.  Package (rather than Namespace) maps to the more concrete notion of a C++ (or MS-IL) namespace.
 
None.  Namespace is an abstract metaclass.  Package (rather than Namespace) maps to the more concrete notion of a C++ (or MS-IL) namespace.
 
{{Subkinds}}
 
  
 
[[Category:XCSG]][[Category:XCSG Node Kinds]][[Category: XCSG Tags]]
 
[[Category:XCSG]][[Category:XCSG Node Kinds]][[Category: XCSG Tags]]

Revision as of 15:13, 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


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.