Dev:Border between infrastructure managers and countries






The requirements for improved cooperation of infrastructure managers and ‘cross-border agreements’ enables seamless operations for train paths crossing borders, or ‘handover points’ (defined in the TAF TAP TSI[1] as “the point where legal responsibility changes between the infrastructure managers”).
The upper photo show an example of a ‘handover point’ at the Germany-Czech Republic border on Děčín–Dresden-Neustadt_railway (). This line is operated by two different rail operating companies, Správa_železnic (
) in the Czech Republic and DB InfraGO (
🇩🇪) in Germany, meaning there is a change in infrastructure managers.
In the source code, shown below, there are two tracks belonging to two infrastructure managers. Ownership is represented by <ownerChange> elements. Further information is given in the <infrastructureManager> element and corresponding code list (link to the railML® website). Mileage of the border was obtained from [2].
<metadata> <organizationalUnits> <infrastructureManager id="ima01" code="DBN"/> <infrastructureManager id="ima02" code="SZD"/> </organizationalUnits> </metadata> .. <track id="tr01"> <trackTopology> <trackBegin id="tb01" pos="0" absPos="0">..</trackBegin> <trackEnd id="te01" pos="11859" absPos="11859">..</trackEnd> </trackTopology> <trackElements> .. <ownerChange id="och01" pos="0" absPos="0" infrastructureManagerRef="ima01"/> .. </trackElements> </track> <track id="tr02"> <trackTopology> <trackBegin id="tb02" pos="0" absPos="11859">..</trackBegin> <trackEnd id="te02" pos="500" absPos="12359">..</trackEnd> </trackTopology> <trackElements> .. <ownerChange id="och02" pos="0" absPos="11859" infrastructureManagerRef="ima02" name="Bahnverw.grenze Bad Schandau Gr"/> .. </trackElements> </track>
It is important to ensure the correct definition of the railway tracks. Every railway track should have an <ownerChange> at the beginning of the track positioned at a zero coordinate. Additional semantic constraints apply for the <speedChange> [3].
In the example code above there are two railway tracks. Each of them has <ownerChange> positioned at the beginning. This is due to the reasoning that every track should be considered a separate system with its own properties defined. But technically one track is also enough because there is no need for the second track to represent change. See example of one track representing a "Border between infrastructure managers" below. To answer a question which example to use when, this seems to be a preference of a user. Both examples are syntactically and semantically valid and actually came from two different users of railML® 2.
<metadata> <organizationalUnits> <infrastructureManager id="ima01" code="DBN"/> <infrastructureManager id="ima02" code="SZD"/> </organizationalUnits> </metadata> .. <track id="tr01"> <trackTopology> <trackBegin id="tb01" pos="0" absPos="0">..</trackBegin> <trackEnd id="te01" pos="50000" absPos="50000">..</trackEnd> </trackTopology> <trackElements> .. <ownerChange id="och01" pos="0" absPos="0" infrastructureManagerRef="ima01"/> <ownerChange id="och02" pos="11859" absPos="11859" infrastructureManagerRef="ima02" name="Bahnverw.grenze Bad Schandau Gr"/> .. </trackElements> </track>
References
- ↑ TAP TSI and TAF TSI Sector Handbook for the Communication between Railway Undertakings and Infrastructure Managers (RU/IM Telematics Sector Handbook) Submitted on 20th October 2022 (external link)
- ↑ Variabler Infrastruktur Aggregator
- ↑ railML2 <speedChange> semantic constraints revision forum post (link to the railML® website)