61060: How can railML detect whether a train is traveling in direction 1 or direction 2?

In the inner city public transport it is often customary to assign trips to one of two directions. For this purpose, the two directions of travel are usually related to a line profile: A line with a fixed path is defined; rides in the direction of definition of the lines are then, e.g. direction 1, travels opposite the direction of definition are direction 2. The assignment of a direction would therefore always be bound to the assignment of a line.

This philosophy has not traditionally existed in the railway world; therefore there is no directional definition or possibility of the explicit specification of a direction in this sense in railML (as of 2017 up to and including railML 2.3).

One of the reasons is that traditionally no (official) line data are found in railway timetables. There have been and are occasional lines with increasing tendency, and also in railML there is an optional attribute for a line specification. Contrary to the above-mentioned definition from the inner city public transport, such lines are rather "soft", the trains do not hold strictly to the lines; there are numerous "outliers" or "crossbillers" - apart from empty, service or freight trains.

Some countries use the parity of the train number as a kind of direction indication: straight train numbers into one, odd in the other direction. In general, this is quite typical and regular across all national boundaries for all railway timetables. One might think, then, that the directional information sought could easily be deduced from the parity. However, this is only practicable in the fewest cases:

  • The definition of parity is usually the route (infrastructure), not the (traffic) line. It therefore often does not match the expected value in detail.
  • Many infrastructure operators tend to be inconsistent with the parity rule. In particular, if a train "changes direction" - so turn around or change the route - usually no new train number is assigned. This would also have other disadvantages, such as the continuous travel chain (transfer freedom) would no longer be recognizable.
  • In the few cases where rail traffic is strictly regulated to the parity rule - as is the case at the TGV in France, for example - many trains consistently have two train numbers of different parities and regularly alternate between one and the other train number during the journey, on which (infrastructural) route they are on the road.

Conclusion for railML:

A directional identification is not usual in railway timetables and can not be derived from a trivial point of view. Therefore, there is no directional label in railML. It remains to programs that need such directional indications, only the way over a comparison of the paths of all the trains concerned (forming lines of paths) and assigning the trains to the routes thus formed in the direction of definition (direction 1) or opposite to the direction of definition (direction 2). In contrast to the usual inner-city public transport, this will inevitably often lead to routes which are only used in one direction.

Last update on 21.01.2020 by iRFP Support.

Go back