Dev:How to define track usage of a train in stations
This article explains basic concepts of track usage within the timetable subschema.
Dieser Artikel erklärt Grundlagen der Gleisnutzung in Bahnhöfen innerhalb des Timetable Subschemas.
Specifying of tracks and platformedges used by a train / Angabe der durch einen Zug benutzten Gleise und Bahnsteigkanten in einer Betriebsstelle
General / Allgemeines
In general there is two ways of describing what station tracks are used by a train:
- referring to infrastructure elements (station tracks, platform edges), which can describe the elements in more detail, or
- using the attribute trackInfo of the element <ocpTT> for track related information
In case the infrastructure part of a railML® file already includes information about station tracks, the first option should be used. The train schedule should refer to the infrastructure data. The two ways of describing station track usage should not be mixed within the same railML® file.
Grundsätzlich bestehen zwei alternative Möglichkeiten zur Abbildung der Gleisnutzungs-Informationen innerhalb einer Betriebsstelle:
- Referenzierung von Elementen der Infrastruktur (Bahnhofsgleise, Bahnsteigkanten) aus dem Zuglauf, welche die eigentlichen Informationen tragen
- Nutzung des Attributs trackInfo des Elements <ocpTT> für gleisbezogene Informationen
Sind in der Infrastruktur einer railML®-Datei ohnehin die Gleise einer Betriebsstelle definiert, so sollten diese auch durch den Fahrplan des Zuges referenziert werden. Innerhalb einer railML®-Datei sollte die Abbildung der Gleisnutzung einheitlich in einer der beiden Varianten erfolgen.
Referring to station tracks and platform edges / Referenzierung von Bahnhofsgleisen und Bahnsteigkanten (platformEdge)
Using this way of modeling the operation designator of a station track is not provided within a <trainPart>. Instead the infrastructure description is extended by corresponding <track> and <platformEdge> elements. These infrastructure elements are referenced by the <ocpTT>s of a <trainPart>. The infrastructure elements allow among other things to specify a code (e.g an ID from an infrastructure database) and a name (display name/public name). The code can be provided using the attribute code. The name is specified using name.
Bei dieser Abbildungsvariante wird die Bahnsteig- bzw. Gleisbezeichnung nicht innerhalb des <trainPart>s angegeben, stattdessen werden in der Infrastruktur entsprechende Elemente <track> bzw. <platformEdge> angelegt, die von der jeweiligen <ocpTT> des <trainPart>s referenziert werden. Die eigentlichen Bezeichnungen werden dann an den Elementen der Infrastruktur abgebildet. Hierfür können die Attribute code bzw. name verwendet werden, wobei code für einen externen Schlüssel (bspw. in einer Infrastruktur-Datenbank) vorgesehen ist, während name für die Angabe eines durch Menschen lesbaren Namens benutzt werden sollte.
A station track is characterized by the fact that its <trackBegin> and <trackEnd> elements refer to the same <ocp> with their ocpRef. Referring to the station track from an <ocpTT> is done using the attribute trackRef.
Ein <track> innerhalb einer <ocp> ist dadurch gekennzeichnet, dass seine jeweiligen <trackBegin>- / <trackEnd>-Elemente über das Attribut ocpRef die gleiche <ocp> referenzieren. Die Referenzierung von der <ocpTT> erfolgt über das Attribut trackRef.
Specifying a <platformEdge> is optional. That means specifying can be omitted in general or, in case including station track information is wanted, if the <track> does not have a platform edge. It is modeled as a sub element of <track> which implies that for each <platformEdge> a corresponding <track> needs to be provided. When referring to a platform edge the attribute ref of the <platformEdgeRef> element is used. Since <platformEdgeRef> is a sub element of <stopDescription>, platform edges can only be specified for <ocpTT>s which are scheduled stops of a train. Specifying the attribute pos of a <platformEdge> is not necessary for all use cases. However in the railML® schema it is declared mandatory. In case it is not needed it should be specified as "0".
The descriptive texts (attribute name of <track> and associated <platformEdge> may be identical. They do not have to, though.
Die Angabe einer <platformEdge> ist optional, d.h. sie muss nur definiert werden, wenn in der railML®-Datei Angaben zu Bahnsteigkanten enthalten sein sollen und der jeweilige <track> über eine Bahnsteigkante verfügt. Sie wird als Unterelement eines <track> abgebildet, d.h. für jede <platformEdge> muss auch ein entsprechender <track> in der Infrastruktur angelegt werden. Die Referenzierung der <platformEdge> von der <ocpTT> erfolgt über das Attribut ref des <platformEdgeRef>-Elements. Da die <platformEdgeRef> ein Child-Element einer <stopDescription> ist, können Bahnsteigkanten nur für diejenigen <ocpTT> angegeben werden, an denen der Zug hält. Die Angabe des Attributs pos der <platformEdge> ist nicht in allen Anwendungsfällen (bspw. Fahrgastinformation) fachlich relevant, wird aber durch das railML®-Schema erfordert. In diesen Fällen kann dieses Attribut auf den Wert 0 gesetzt werden. Die Bezeichnungen (Attribut name) von <track> und zugehöriger <platformEdge> können identisch sein, müssen jedoch nicht.
<track id="_tr" name="1"> <trackTopology> <trackBegin id="_tb" pos="0"> <macroscopicNode ocpRef="_OAR" /> </trackBegin> <trackEnd id="_te" pos="0"> <macroscopicNode ocpRef="_OAR" /> </trackEnd> </trackTopology> <trackElements> <platformEdges> <platformEdge id="_pe" name="2" pos="0" /> </platformEdges> </trackElements> </track> ... <ocp id="_OAR" code="OAR" name="Bf Arnau" /> ... <ocpTT ocpRef="_OAR" trackRef="_tr"> <times scope="scheduled" arrival="10:59:00" departure="11:04:00"/> <stopDescription> <platformEdgeRef ref="_pe" /> </stopDescription> </ocpTT>
The above (incomplete) example describes a train, which is scheduled to stop at the station track with the operational designation "1" using the platform edge with the name "2".
Das (unvollständige) Beispiel zeigt einen Zug, der in der Betriebsstelle "Bf Arnau" das Gleis mit der Bezeichnung "1" und die Bahnsteigkante mit der Bezeichnung "2" nutzt.
Recommended for the following usecases: Timetable information, Passenger information at stations, Passenger information inside the train
Empfohlen für die folgenden Usecases: Fahrplanauskunft, Fahrgastinformation am Bahnhof, Fahrgastinformation im Zug
The attribute trackInfo of <ocpTT> can be used for general information related to the station track used by the <train>. This may be for example a name of a <track> or a <platformEdge> for passenger information. It is not recommended to use this attribute as external key for a <track> or <platformEdge>.
Im Attribut trackInfo des Elements <ocpTT> können allgemeine Informationen über das durch den <train> genutzte Gleis einer <ocp> angegeben werden. Dies kann beispielsweise eine Gleis- oder Bahnsteigbezeichnung für die Fahrgastinformation sein. Es wird nicht empfohlen, das Attribut als externen Schlüssel auf ein Gleis oder eine Bahnsteigkante einer Betriebsstelle zu verwenden.
<ocp id="_OAR" code="OAR" name="Bf Arnau" /> ... <ocpTT ocpRef="_OAR" trackInfo="1"> <times scope="scheduled" arrival="10:59:00" departure="11:04:00"/> </ocpTT>
The above (inclomplete) example describes a train, which has a stop at station "Bf Arnau". For this stop the track related passenger information "1" is provided, which implies that the train will be stopping at track 1 of that station.
Das (unvollständige) Beispiel beschreibt einen Zug, für den in der Betriebsstelle "Bf Arnau" die Fahrgastinformation "1" definiert ist, was impliziert, dass der Zug an dieser Betriebsstelle an Gleis "1" halten wird.
Recommended for the following usecases: A timetable for a competition (call for proposals), Slot ordering, TAF/TAP TSI requirements
Empfohlen für die folgenden Usescases: Ausschreibungsfahrplan, Trassenbestellung, TAF/TAP TSI Anforderungen
Describing scheduled and current station track usage / Beschreibung von Soll- und Istgleisen
As of version 2.5 of railML® it is possible to not only describe the currently used station tracks as described above but also additionally the originally scheduled tracks. This is particularly useful for systems that create passenger information from the data imported from railML®.
To support this a new element was added below <ocpTT> named <originalTrackInfo>. It provides a structure which allows the user to describe the scheduled tracks much in the same way as described above for the current track usage. It is possible to refer to infrastructure tracks using the attribute trackRef or use the attribute trackInfo to provide generalized information on the scheduled tracks. The sub-element <trackInfo> allows specifying alternative track usage for certain <operatingPeriod>'s. The same rules apply as for the <stopDescription>'s <trackInfo>.
This means that the user can describe scheduled tracks with the same level of detail as described above for the currently used tracks.
Ab der Version 2.5 von railML® ist es möglich, nicht nur die aktuell genutzten Bahnhofsgleise (Ist-Gleise) wie oben beschrieben zu erfassen, sondern zusätzlich auch die ursprünglich geplanten Gleise (Soll-Gleise). Dies ist besonders sinnvoll bei Systemen, die aus den importierten railML® Daten Fahrgastinformationen erzeugen.
Dazu wurde unterhalb von <ocpTT> ein neues Element namens <originalTrackInfo> hinzugefügt. Es stellt eine Struktur zur Verfügung, die es dem Benutzer erlaubt, die geplanten Gleise auf die gleiche Weise zu beschreiben, wie oben für die Ist-Gleise beschrieben. Es ist möglich, mit dem Attribut trackRef auf Infrastrukturgleise zu verweisen oder das Attribut trackInfo zu verwenden, um allgemeine Informationen über die Soll-Gleise anzugeben. Das Unterelement <trackInfo> ermöglicht die Angabe einer alternativen Gleisnutzung für bestimmte <operatingPeriod>'s. Es gelten die gleichen Regeln wie für die <trackInfo> unter <stopDescription>.
Das bedeutet, dass der Benutzer Soll-Gleise mit dem gleichen Detaillierungsgrad beschreiben kann, wie oben für die aktuell verwendeten Gleise beschrieben.