Difference between revisions of "XCSG:ModelElement"

From AtlasWiki
Jump to: navigation, search
(Specification: switching to node template)
Line 1: Line 1:
The ModelElement kind, represents an abstraction drawn from the system being modeled.  Model elements have names and may be associated with a [[namespace]]
+
An XCSG [[ModelElement]] is either a [[ModelNode|node]] or [[ModelEdge|edge]] in an XCSG graph.
A distinct id identifies the element in the graph.  It may be composed of the element’s name and a number, or take any other form that ensures the id is unique within the definition of the overall graph that contains the element.
+
  
Documentation may optionally be associated with model elements, representing comments or other descriptions.
+
All XCSG model elements have a source correspondence attribute, which indicates their origin.
 +
 
 +
XCSG model elements also have an <code>id</code> attribute, which uniquely identifies that element; the <code>id</code> attribute should enable those familiar with the analyzer which produced that node or edge to determine whether the graph already contains a node or edge representing a particular entity or relationship. No two model elements with equal IDs can exist in the same graph, to ensure each modeled element or relationship has a single representation in the graph.
  
Model elements may also be stereotyped.
 
 
== Specification ==
 
== Specification ==
{{ Node
+
{{Metaclass
 
| description = An abstraction drawn from the system being modeled.
 
| description = An abstraction drawn from the system being modeled.
 
}}
 
}}
  
 
{{Attribute
 
{{Attribute
| name = Name
+
| name = sourceCorrespondence
| description = The name of the element within its [[Namespace]]
+
| description = An object describing the origin of the element, such as source file and offset range.
| type = String
+
 
}}
 
}}
  
 
{{Attribute
 
{{Attribute
| name = ID
+
| name = id
 
| description = The ID that uniquely identifies the model element.
 
| description = The ID that uniquely identifies the model element.
| type = [[Path]]
 
 
}}
 
}}
 
{| class="atlaswikitable"  style="width:100%"
 
! width="160"|Enumeration
 
| [[Visibility]]
 
|-
 
! Description
 
| The visibility of the element in the namespace (if any)
 
|-
 
|-
 
! Required
 
| No
 
|}
 
 
{| class="atlaswikitable"  style="width:100%"
 
! width="160"|In Edge
 
| [[Owns]]
 
|-
 
! Description
 
| The namespace to which the element belongs (if any)
 
|-
 
! Multiplicity
 
| 0 .. 1
 
|}
 
 
{| class="atlaswikitable"  style="width:100%"
 
! width="160"|Out Edge
 
| [[Documentation]]
 
|-
 
! Description
 
| An optional comment, description, or other explanation of the element
 
|-
 
! Multiplicity
 
| 0 .. 1
 
|}
 

Revision as of 19:33, 9 April 2014

An XCSG ModelElement is either a node or edge in an XCSG graph.

All XCSG model elements have a source correspondence attribute, which indicates their origin.

XCSG model elements also have an id attribute, which uniquely identifies that element; the id attribute should enable those familiar with the analyzer which produced that node or edge to determine whether the graph already contains a node or edge representing a particular entity or relationship. No two model elements with equal IDs can exist in the same graph, to ensure each modeled element or relationship has a single representation in the graph.

Specification

Metaclass ModelElement
Description An abstraction drawn from the system being modeled.
Direct Subkinds Edge, Node
Attribute sourceCorrespondence
Description An object describing the origin of the element, such as source file and offset range.
Required Yes
Attribute id
Description The ID that uniquely identifies the model element.
Required Yes