Scheme description / Schemenbeschreibung / Description du schéma
Position of macroscopicNode in the XML-Tree / Position von macroscopicNode im XML-Baum / position de macroscopicNode dans l’aborescence XML
Multiplicity / Anzahl / Multiplicité
Semantics / Bedeutung / Sémantique
Attributes of macroscopicNode / Attribute von macroscopicNode / Attributs de macroscopicNode
- ocpRef: This refers to the id attribute of the associated <ocp> element.
- flowDirection: This specifies how trains can pass the node. Possible values are:
- in only into the node (track --> node)
- out only out of the node (track <-- node)
- both into and out of node (track <--> node)
- unknown is restricted to a certain direction, but this direction is not known.
- other:anything: Any value that does not fit any value from the previous enumeration list, fulfilling the constraint: at minimum two characters, whitespace is not allowed. Please, apply Dev:usingAny accordingly.
Syntactic Constraints / Syntaktische Beschränkungen / Contraintes syntactiques
- ocpRef: tGenericRef (xs:IDREF); required
- flowDirection: tFlowDirection (union of (restriction of xs:string, tOtherEnumerationValue); tOtherEnumerationValue is an arbitrary string starting with 'other:' followed by at minimum two characters, white space not allowed for extending railML enumeration lists); default: both; optional
The associated ocp shall have suitable operational attributes set (e. g. as a station).
Best practice & Examples / Empfohlene Anwendung & Beispiele / Bonnes pratiques & exemples
Consider railML 2.3 example of Middle Rhine Railway by GPSinfradat.
|TrackID||LineID||BeginElementType||EndElementType||OCP Start||OCP End|
<trackBegin id="tB35113" pos="0" absPos="-110"> <macroscopicNode ocpRef="ocpFBGK"/> </trackBegin>
Consider railML 2.2 example of East Saxony railway network by FBS.
<trackBegin id='trn_DN_80.6212_1' pos='0' absPos='102100'> <macroscopicNode ocpRef='ocp_DN'/> </trackBegin>
Notes / Anmerkungen / Notes
Many simulation programs, especially in the simulation domain for complete networks, have no knowledge about the physical track layout of a station. They model a station as a "zero-dimensional vertex" in a "graph" with trains being able to switch to every "edge" (here: track) that is connected to that "vertex". The <macroscopicNode> provides means to represent this simplified infrastructure model in RailML.
- refuse the import of XML-files containing <macroscopicNode>
- convert the <macroscopicNode> internally into a set of switches and thus allowing all travel directions as the <macroscopicNode> does. This might severely mess up the infrastructure model in case of <macroscopicNode>s with many connected tracks.
- convert the <macroscopicNode> internally into openEnds and thus allowing trains to enter and leave the simulation in that point. "Warping" trains from one track of the node to another via "virtual open ends" is a semantically identical behaviour compared with a macroscopic node.
Open issues / Offene Punkte/Pendenzen / Questions ouvertes
Not yet described. / Noch nicht beschrieben. / Pas encore décrit.