Core elements: Difference between revisions

From railTOPOMODEL® Wiki
Jump to navigation Jump to search
[unchecked revision][checked revision]
(Updated image)
(Wiki Update, review by N. Gatez)
Line 1: Line 1:
{{Overview|text=Lorem ipsum...}}<br />
{{Overview|text=This chapter describes the grouping of elements of the model. It also gives a short introduction to the core elements, their characteristics and how to initially build a network.}}<br />


The RailTopoModel is described in UML notation. Like in UML the modelling concepts of RailTopoModel are grouped into language units. A language unit consists of a collection of tightly coupled modelling concepts. Each language unit deals with a specific aspect of the model.
The RailTopoModel is described in UML notation. The model is grouped into packages. Each package consists of a collection of tightly coupled modelling concepts. Therefore each package deals with a specific aspect of the model.


== Colours in the UML-Diagram ==
== Colours in the UML-Diagram ==
[[File:LanguageUnits.png|thumbnail|250px|Language Units]]
[[File:LanguageUnitsNew.png|thumbnail|250px|Language Units]]
The Model is formulated in Terms of UML. The Sections of this Chapter correspond widely with the Colors in the UML-Diagram:
The model packages are individually coloured. The meaning of the colours is as following:
* Core elements: white
* <b>Base: Grey</b><br/>This package contains basic data definitions and also the definition of the network itself.<br/><i>Example:</i> The name of the network.
* Referencing: dark green
* <b>Topology: Yellow</b><br/>This package contains the topological elements that constitute the network. Topology is implemented by a nodes & edges graph. Nodes are embodied as "NetElement" classes and edges as "Relation" classes. Important: Both classes operate at any level of view.<br/><i>Examples:</i> tracks, switches, buffer stops, routes, operational points.
* Topology: yellow
* <b>Referencing: Green</b><br/>This package contains a set of positioning methods for positioning or attaching further elements to the network.<br/><i>Examples:</i> Linear positioning (along a relation) or geometric positioning (x, y and z coordinates).
* Location: light green
* <b>Net Entities: Blue</b><br/>This package contains further entities that are in association with the network and are not topology elements. These elements are connected to or associated with the network. Each of them has an extent (point, line, area).<br/><i>Examples:</i> signals, buildings, tunnels, speed limits.
* Aggregation: Grey
<br/>


The complete RailTopoModel is available at [http://www.railtopomodel.org/en/ railtopomodel.org].<br />
The complete RailTopoModel is available at [http://www.railtopomodel.org/en/ railtopomodel.org].<br />
Language units are depicted using specific colour codes and are centered around core elements.
<br/>
<br />
<br/>
<br />
 


== Building the Model ==
== Building the Model ==
[[File:ModelPart1.png|thumbnail|200px|Model Part 1 (© railML)]]
[[File:ModelPart1.png|thumbnail|200px|Model Part 1 (© railML)]]
The first thing to be done is to list the elements comprising the core of the network. <br />
1. First you have to define the fundamental wrapping of your network using a "Network" class.<br/>
Each of those elements must have some basic characteristics: a unique identifier, a name and a validity range. So the first step is to create a generic class containing those data.  
2. Then you have to determine the topological elements comprising the network – and put them all into a class of type "NetworkResource". Since this class will be used for all view levels, name it something neutral, like "NetElements". According to the view level resp. view levels this will be elements like these:
According to the view level the network is composed of
* rails tracks, switches, buffer stops, etc. or
* parts of rail tracks, switches, buffer stops, etc. or
* tracks and operational points, or
* parts of tracks and operational points, or
* lines and major operational points or
* parts of lines and major operational points or
* ...
* ...
 
<br/>
Each of those being uniquely identified (ideally with an UUID, but any unique national identifier is allowed) and given a temporal validity range. This validity range is the first step in time dimension and versioning management, which will be extended in future versions of this model. As the model aims to be valid through all detail levels, a neutral name has to be given to those elements forming the network: the “NetElements”.
Each of the topological elements must have some basic characteristics:
* a unique identifier (UUID or any national identifier),
The common point between all those levels is that two types of NetElements have to be considered:
* a name and
* Linear elements, that have a direction (a start point and end point ) and length,
* a validity range.
* Non-Linear Elements, which do not have a clear orientation, or length. In the model, all those non-linear elements will be considered as points.
<br/>
Up to now, the model makes no distinction between those two types of elements, because they share so many characteristics.
<br/>
 


{| class="wikitable"
{| class="wikitable"
|-
|-
| '''What you should have learned'''<br />
| '''What you should have learned'''<br />
Lorem ipsum...
* You know the different packages of the model.
*  
* You also know the core elements of a network and how to initially build a network.
* Bulleted list item
|}
 
 
{| class="wikitable"
|-
! Back To !! Previous Chapter !! Next Chapter
|-
| [[RTM Modelling Concepts]] || [[Connexity graph]] || [[Levels of detail]]
|}
|}

Revision as of 08:41, 16 September 2016

Overview
This chapter describes the grouping of elements of the model. It also gives a short introduction to the core elements, their characteristics and how to initially build a network.


The RailTopoModel is described in UML notation. The model is grouped into packages. Each package consists of a collection of tightly coupled modelling concepts. Therefore each package deals with a specific aspect of the model.

Colours in the UML-Diagram

Language Units

The model packages are individually coloured. The meaning of the colours is as following:

  • Base: Grey
    This package contains basic data definitions and also the definition of the network itself.
    Example: The name of the network.
  • Topology: Yellow
    This package contains the topological elements that constitute the network. Topology is implemented by a nodes & edges graph. Nodes are embodied as "NetElement" classes and edges as "Relation" classes. Important: Both classes operate at any level of view.
    Examples: tracks, switches, buffer stops, routes, operational points.
  • Referencing: Green
    This package contains a set of positioning methods for positioning or attaching further elements to the network.
    Examples: Linear positioning (along a relation) or geometric positioning (x, y and z coordinates).
  • Net Entities: Blue
    This package contains further entities that are in association with the network and are not topology elements. These elements are connected to or associated with the network. Each of them has an extent (point, line, area).
    Examples: signals, buildings, tunnels, speed limits.


The complete RailTopoModel is available at railtopomodel.org.



Building the Model

Model Part 1 (© railML)

1. First you have to define the fundamental wrapping of your network using a "Network" class.
2. Then you have to determine the topological elements comprising the network – and put them all into a class of type "NetworkResource". Since this class will be used for all view levels, name it something neutral, like "NetElements". According to the view level resp. view levels this will be elements like these:

  • rails tracks, switches, buffer stops, etc. or
  • tracks and operational points, or
  • lines and major operational points or
  • ...


Each of the topological elements must have some basic characteristics:

  • a unique identifier (UUID or any national identifier),
  • a name and
  • a validity range.



What you should have learned
  • You know the different packages of the model.
  • You also know the core elements of a network and how to initially build a network.