Home » railML newsgroups » railml.interlocking » [railML3.1] Signal aspect changes and simulation
[railML3.1] Signal aspect changes and simulation [message #2658] Wed, 10 February 2021 09:40 Go to next message
Victor Collod is currently offline  Victor Collod
Messages: 2
Registered: February 2021
Junior Member
Hello railML.org!

I'm part of a software development team at SNCF Réseau in charge of making OSRD, a work in progress open source railway infrastructure editor and simulator.


We're trying our best to build our tool so it can simulate any signalization system supported by railML, but we haven't yet figured out how to simulate a few things:

1. when a route is activated, some signals have to change aspect. where are these relations defined? is it what aspect relations are for? our understanding is that an aspect relation defines a link between two signals, yet we aren't sure about what makes signals change aspect in the first place
2. we need to be able to simulate distant signals, but the Simple Example Step-by-Step guide v11 says it's not supported yet: "However, with railML3.1 there can be currently no relation described between any main signal and distant signal
or repeater"
. Is it still true? If so, how do current simulators handle these cases?
3. is signalFunction relevant for the purpose of simulation?

A few things also felt odd when reading through SimpleExample:

1. rae01 is called "Cstadt RA1" but is at Bf Arnau
2. sig07 (69Va) seem to be a distant signal relaying sig04 (69A), but this link isn't specified anywhere, which seems to indicate distant signals indeed aren't supported. Is this intuition correct?
3. sig08 is switchable, yet not used anywhere in the interlocking description. What kind of signal is it?

Thanks for making railML, it's a cool thing for our community to have :)

If you believe railML or its partners may be interested in helping build OSRD, send us a message!

PS: what's the best way to contribute changes?
Re: [railML3.1] Signal aspect changes and simulation [message #2661 is a reply to message #2658] Mon, 15 February 2021 04:35 Go to previous messageGo to next message
Jörg von Lingen is currently offline  Jörg von Lingen
Messages: 55
Registered: March 2016
Dear Victor,

welcome to the community. The "simple example" is just what the name says an
example but cannot show everything possible to model with the railML schema.

1. The use of signal aspects in routes is modelled in child
<implementsSignalPlan> of <signalBox>. Refer

2. In the wiki about signalplan there is some info how to model distant signal.

3. The function is described in https://wiki3.railml.org/wiki/IL:signalIL. The
question is merely, whether your simulation model needs the information.

Concerning the simple example - it's far from being perfect. It shall give
inspiration on how to use railML. However, we will consider your input for the
further evolution of it.

Any changes needed in the schema shall be posted here explaining the details and
allowing the community to give opinion. The coordinator shall evaluate such
proposals for implementation into the schema.

Best regards,
Joerg v. Lingen - Interlocking Coordinator
Re: [railML3.1] Signal aspect changes and simulation [message #2667 is a reply to message #2661] Tue, 23 February 2021 15:16 Go to previous messageGo to next message
Victor Collod is currently offline  Victor Collod
Messages: 2
Registered: February 2021
Junior Member
Dear Jörg,

We indeed carefully read though this wiki page, but we still didn't understand a number of things:
- what's the default aspect of a signal?
- even though we understand the relations between signal aspects, we can't find how relations between the state of a route and the state of a signal are declared. For example, how can we declare that when some route is occupied, some signal must show a given aspect?

Best regards,

Victor Collod
Re: [railML3.1] Signal aspect changes and simulation [message #2668 is a reply to message #2667] Wed, 24 February 2021 08:01 Go to previous message
Joerg von Lingen is currently offline  Joerg von Lingen
Messages: 137
Registered: May 2011
Senior Member
Dear Victor,

within the interlocking schema part one can model the information needed to engineer an interlocking for a specific
station. However, the functions of an interlocking are not yet included.

Thus the handling of routes or signals depending on the situation are not part of the schema.

You may declare for a signal a @releaseDelay or for a routeEntry any nonReplacement sections. But what the interlocking
does with this information is beyond the schema.

Jörg von Lingen - Rollingstock Coordinator
Previous Topic: [railML3] Train Number Description Field / Beschreibungsfeld für Zugnummern
Goto Forum:

Current Time: Fri Feb 26 10:53:29 CET 2021