Home » railML newsgroups » railML.infrastructure » How to mark the end of a speed restriction?
How to mark the end of a speed restriction? [message #559] Thu, 12 June 2014 07:30 Go to next message
Christian Rahmig is currently offline  Christian Rahmig
Messages: 151
Registered: January 2011
Senior Member
Dear railML users,

brought up by Dirk Bräuer from iRFP we discussed the question: How to
model the end of a speed restriction?
The idea was to use the <speedChange> element as follows:

<speedChange id="sc7" pos="256.7" vMax="end" dir="up" />

The problem resulting from this approach relates to the data type that
is used for defining the maximum speed, tSpeed. Currently, it does not
support the mix of numeric values with other entries. A quick solution
can be to define vMax="-1" as the valid expression for the end of a
speed restriction. What is your opinion about this idea?

[1] https://trac.railml.org/ticket/41

Best regards

--
Christian Rahmig
railML.infrastructure coordinator
Re: How to mark the end of a speed restriction? [message #1228 is a reply to message #559] Thu, 12 June 2014 23:32 Go to previous messageGo to next message
Susanne Wunsch railML is currently offline  Susanne Wunsch railML
Messages: 0
Registered: January 2020
Hi Christian,

Christian Rahmig <coord(at)infrastructurerailmlorg> writes:
>
> brought up by Dirk Bräuer from iRFP we discussed the question: How to
> model the end of a speed restriction?
> The idea was to use the <speedChange> element as follows:
>
> <speedChange id="sc7" pos="256.7" vMax="end" dir="up" />
>
> The problem resulting from this approach relates to the data type that
> is used for defining the maximum speed, tSpeed. Currently, it does not
> support the mix of numeric values with other entries.

Why not to enhance this type with an xs:union and restricted xs:string
for the xs:enumeration value "end"? It would be the same way, as already
done with "rail:tOtherEnumerationValue".

Kind regards...
Susanne

--
Ingenieurbüro gleisBezug; Susanne Wunsch; +49-351-46927070
Adresse: Schrammsteinstraße 8; 01309 Dresden; Ust-Id: DE273670238
Re: How to mark the end of a speed restriction? [message #1229 is a reply to message #1228] Fri, 20 June 2014 07:15 Go to previous messageGo to next message
Christian Rahmig is currently offline  Christian Rahmig
Messages: 151
Registered: January 2011
Senior Member
Dear Susanne,

Am 12.06.2014 23:32, schrieb Susanne Wunsch:
> [...]
>
> Why not to enhance this type with an xs:union and restricted xs:string
> for the xs:enumeration value "end"? It would be the same way, as already
> done with "rail:tOtherEnumerationValue".

Thank you very much for your input. And this is how I implemented:
I introduced a new simple data type "tVMax", which may contain a speed
value in kmph as well as the string value "end":

<xs:simpleType name="tVMax">
<xs:union>
<xs:simpleType>
<xs:restriction base="rail:tSpeedKmPerHour" />
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="end" />
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>

The speedChange's attribute @vMax uses this data type.

I hope this solution solves the problem with the undefined maximum speed
at the end of a temporary speed restriction zone and I appreciate your
comments about it...

Best regards

--
Christian Rahmig
railML.infrastructure coordinator
Re: How to mark the end of a speed restriction? [message #1230 is a reply to message #1229] Fri, 20 June 2014 09:03 Go to previous messageGo to next message
Susanne Wunsch railML is currently offline  Susanne Wunsch railML
Messages: 0
Registered: January 2020
Hi Christian,

Christian Rahmig <coord(at)infrastructurerailmlorg> writes:
>
> <xs:simpleType name="tVMax">
> <xs:union>
> <xs:simpleType>
> <xs:restriction base="rail:tSpeedKmPerHour" />
> </xs:simpleType>
> <xs:simpleType>
> <xs:restriction base="xs:string">
> <xs:pattern value="end" />
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
>
> The speedChange's attribute @vMax uses this data type.
>
> I hope this solution solves the problem with the undefined maximum
> speed at the end of a temporary speed restriction zone and I
> appreciate your comments about it...

Great!

You have chosen the regular expression option in XML schema. I would
admit, that there is another possibility to define the value "end",
allowing to comment this value:

<xs:enumeration value="end" >
<xs:annotation>
<xs:documentation>The value 'end' should be used for temporary
speed restrictions, otherwise define the next speed aspect.</xs:documentation>
</xs:annotation>
</xs:enumeration>

The railML schemas currently use the regular expression method only in
cases, where there is no XML schema alternative, e.g. constraining the
"other-enumeration-value".

See also http://stackoverflow.com/questions/13974148/pattern-vs-enume ration-in-schema-xml

Kind regards...
Susanne

--
Ingenieurbüro gleisBezug; Susanne Wunsch; +49-351-46927070
Adresse: Schrammsteinstraße 8; 01309 Dresden; Ust-Id: DE273670238
Re: How to mark the end of a speed restriction? [message #1231 is a reply to message #1230] Fri, 20 June 2014 11:22 Go to previous messageGo to next message
Christian Rahmig is currently offline  Christian Rahmig
Messages: 151
Registered: January 2011
Senior Member
Dear Susanne,

Am 20.06.2014 09:03, schrieb Susanne Wunsch:
> [...]
>
> You have chosen the regular expression option in XML schema. I would
> admit, that there is another possibility to define the value "end",
> allowing to comment this value:
>
> <xs:enumeration value="end" >
> <xs:annotation>
> <xs:documentation>The value 'end' should be used for temporary
> speed restrictions, otherwise define the next speed aspect.</xs:documentation>
> </xs:annotation>
> </xs:enumeration>
>
> The railML schemas currently use the regular expression method only in
> cases, where there is no XML schema alternative, e.g. constraining the
> "other-enumeration-value".
>
> See also http://stackoverflow.com/questions/13974148/pattern-vs-enume ration-in-schema-xml
>
> Kind regards...
> Susanne
>

thank you very much for your clarification on the topic. Indeed, the
enumeration solution seems to be better understandable. Therefore I
implemented it in SVN revision 609.

Best regards

--
Christian Rahmig
railML.infrastructure coordinator
Re: How to mark the end of a speed restriction? [message #3146 is a reply to message #1231] Fri, 20 October 2023 12:28 Go to previous message
Larissa Zhuchyi is currently offline  Larissa Zhuchyi
Messages: 38
Registered: November 2022
Member
Dear all

There is a suggestion to deprecate the "end" value of @maxSpeed os <speedSection> in railML3 as it seems to be redundant to linear locations of RailTopoModel. What do you think about this?

In the model of railML2 <speedChange> is a spot element which makes it hard to deal with considering that speed is valid from point A to point B. But then in railML3:
- modelling was improved with the introduction of linear locations of RailTopoModel, i.e. @maxSpeed can be explicitly defined from linearCoordinateBegin to linearCoordinateEnd, or intrinsic ones.
- there is a mechanism to link signals with the beginning and end of a speed section with a corresponding child <refersToBeginOfSpeedSection>

Furthermore, in railML2, this issue (end of a speed restriction) from 2014 seems to intersect with the need for a definition of speed at the beginning or end of a track from 2022 [1].

From what I can see, if the definition of speed change is mandatory at the beginning of a track (let's say not restricted one) and then restriction appears one can probably model an end of a restriction just by defining another change with a value equaling to the beginning. See the example code below.

<speedChange id="111" pos="0" dir="up" profileRef="all" vMax="80" signalised="false">
<speedChange id="222" pos="100" dir="up" profileRef="all" vMax="30" signalised="true"> <!-- begining of speed restriction -->
<speedChange id="333" pos="200" dir="up" profileRef="all" vMax="80" signalised="true"> <!-- end of speed restriction -->

[1] https://development.railml.org/railml/version2/-/issues/425


Larissa Zhuchyi – Ontology Researcher
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org

[Updated on: Fri, 20 October 2023 12:34]

Report message to a moderator

Previous Topic: [railML3] Booster transformers in RailML
Next Topic: Requirements for RTCI-a (Infrastructure) UC
Goto Forum:
  


Current Time: Fri Jul 12 20:54:19 CEST 2024