Re: Double switch crossing: 'crossingRef' attribute for the fictive switches [message #352 is a reply to message #341] |
Sat, 08 September 2012 11:00 |
Christian Rahmig
Messages: 151 Registered: January 2011
|
Senior Member |
|
|
Hello Dirk and anyone interested,
> In general, there is no objection against linking of two switches in
> RailML which are already linked in practice because it is one diamond
> crossing.
>
> But we should stay as general as possible, which means: We should take
> into account that this is not bound to diamond crossings but also to
> other kinds of points such as three-way points. More extreme, it may
> also be used to implement a turntable or such in RailML as a grouped set
> of virtual points.
>
> So, I would omit the term "crossing" but name it more as a grouping of
> virtual points to one physical element.
thank you for your interesting remark. I agree that it might be useful
to group "microscopic" infrastructure elements to "macroscopic" ones and
in fact the double switch crossing consisting of 4 switches, 1 crossing
and 4 short tracks is only one example.
However, in case we want to extend this approach, we need to think about
the possible implementation again: In my previous post I suggested an
attribute "crossingRef", which allows to refer to a crossing element. If
we generalize the attribute, e.g. "infrastructureElementRef", we may get
the problem that the destination's type of the reference is not clear by
only evaluating the reference value. In particular, the "microscopic"
switch may belong to a diamond crossing or a turntable, which are based
on different types.
But still I am a big fan of the idea of grouping infrastructure
elements. Therefore I want to suggest an alternative approach, which
defines macroscopic infrastructure elements such as diamond crossings or
turntables and let them refer to microscopic elements. The example of
the double switch crossing mentioned above might look like this
(simplified syntax):
<doubleSwitchCrossing id="dkw01">
<elementRef type="crossing" ref="c01">
<elementRef type="switch" ref="s01">
<elementRef type="switch" ref="s02">
<elementRef type="switch" ref="s03">
<elementRef type="switch" ref="s04">
<elementRef type="track" ref="t01c01">
<elementRef type="track" ref="t02c01">
<elementRef type="track" ref="c01t03">
<elementRef type="track" ref="c01t04">
</doubleSwitchCrossing>
Please feel free to comment on that suggestion, but keep in mind that it
might not be compatible with a railML 2.2 coming up soon.
Regards
--
Christian Rahmig
railML.infrastructure coordinator
|
|
|