CO:speedProfile

From railML 3 Wiki
Jump to navigation Jump to search

Introduction

A speedProfile element specifies a train type for which the speed limit given by a speedSection element shall be valid. A speed profile valid for ETCS can be (among others):

  • according to UNISIG SUBSET-026, versions 2.3.0, 3.4.0 or 3.6.0, section 3.11.3.2.1:
    • a Basic Static Speed Profile (SPP) or
    • a Specific Static Speed Profile,
  • according to UNISIG SUBSET-026, versions 2.3.0, 3.4.0 or 3.6.0, section 3.11.4:
    • an Axle Load Speed Profile or
  • other speed profiles.

Note that the information of Temporary Speed Restrictions (TSR) according to UNISIG SUBSET-026, versions 2.3.0, 3.4.0 or 3.6.0, section 3.11.5, is provided in railML® by a speedSection element using attribute @isTemporary="true" and child element speedSection/isValid.

Axle Load Speed Profiles for ETCS

According to UNISIG SUBSET-026 (version 2.3.0 (d), 3.4.0 or 3.6.0), section 3.11.4, a speed limit valid for a speed section can be determined depending on the axle load. Trains with equal or higher axle load as defined for this speed section have to consider the axle load speed limit. Trains with lower axle load as defined for this speed section will ignore the axle load speed limit. It is possible to provide different speed limits for the same speed section, but each speed limit must be valid for its own axle load.

Documentation

Syntax

Autoexport from the XML-Schema for element CO:speedProfile of railML® version 3.2
Documentation This element is not documented in the schema!
Subschema common
Parents* speedProfiles
Children braking (0..1), load (0..1), name (0..*), tilting (0..1), trainType (0..*)
Attributes:
  • isBasicSpeedProfile: boolean flag to identify basic speed profiles;
    if NO, then further information need to be defined, e.g. trainType, braking or maxCantDeficiency (optional; xs:boolean),

  • mVersion: corresponds to ETCS variable M_VERSION (optional; xs:nonNegativeInteger),

  • influence: This attribute is not documented in the schema! (optional; xs:string)
Possible values:
  • decreasing
  • increasing,

  • maxCantDeficiency: the maximum cant deficiency provided in mm (80..300) (optional; xs:integer; minInclusive: 80; maxInclusive: 300),

  • id: unique identifier (obligatory; xs:string; patterns: (urn:uuid:)?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}}); compare: Dev:Identities
*Notice:
Elements may have different parent elements. As a consequence they may be used in different contexts.
Please, consider this as well as a user of this wiki as when developing this documentation further.
Aspects that are only relevant with respect to one of several parents should be explained exclusively in the documentation of the respective parent element.

Autoexport from the XML-Schema for element CO:speedProfile of railML® version 3.1
Documentation This element is not documented in the schema!
Subschema common
Parents* speedProfiles
Children braking (0..1), load (0..1), name (0..*), tilting (0..1), trainType (0..1)
Attributes:
  • influence: This attribute is not documented in the schema! (optional; xs:string)
Possible values:
  • increasing
  • decreasing,

  • id: unique identifier (optional; xs:ID; patterns: (urn:uuid:)?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}}); compare: Dev:Identities
*Notice:
Elements may have different parent elements. As a consequence they may be used in different contexts.
Please, consider this as well as a user of this wiki as when developing this documentation further.
Aspects that are only relevant with respect to one of several parents should be explained exclusively in the documentation of the respective parent element.


Changes 3.1→3.2

The children have changed.

The attributes have been changed.

Semantics

Best Practice / Examples

Static Speed Profiles for ETCS

A Basic Static Speed Profile (SPP) is uniquely described by the railML attribute isBasicSpeedProfile. The modelling in railML is:

<common id="co_01">
   <speedProfiles>
 <speedProfile id="ssp_Basic" isBasicSpeedProfile="true" mVersion="32">
    <name name="ETCS Basic SSP" description="Basic ETCS static
speed profile used by trains for which no Specific SSP matches" 
language="EN"/>
 </speedProfile>
   </speedProfiles>
</common>

Specific Speed Profile

A Specific Static Speed Profile (SPP) is uniquely described by a value for “Cant Deficiency” SSP category (corresponds to UNISIG trackside variable NC_CDDIFF) and/or by a value for “other specific” SSP categories (corresponds to UNISIG trackside variable NC_DIFF).

The UNISIG variable NC_CDDIFF is represented by the railML® attribute <speedProfile>@maxCantDeficiency.

The UNISIG variable NC_DIFF in the meaning of ETCS Baseline 3 is represented by the combination of the railML attributes <speedProfile>/<braking>@airBrakeApplicationPosition and <speedProfile>/<trainType>@type.

Cant Deficiency SSP category

Below is an example of the modelling in railML® for a “cant deficiency” SSP category:

<common id="co_01">
   <speedProfiles>
<speedProfile id="ssp_cd1" isBasicSpeedProfile="false" 
 maxCantDeficiency="100" mVersion="32">
    <name name="ETCS Specific SSP for Cant Deficiency 1" 
  description="Specific ETCS static speed profile used by trains 
  which can handle a cant deficiency of 100mm means NC_CDDIFF=1" 
  language="EN"/>
 </speedProfile>
   </speedProfiles>
</common>
“Other Specific” SSP category

Below are 3 examples for the modelling in railML of an “other specific” SSP category (brake type depending category):

<common id="co_01">
   <speedProfiles>

 <speedProfile id="ssp_freightTrainP" isBasicSpeedProfile="false" 
  mVersion="32">
    <name name="ETCS Specific SSP for freight trains braked in P position" 
  description="Specific ETCS static speed profile used by freight trains 
  braked in P position means NC_DIFF=0" language="EN"/>
    <braking airBrakeApplicationPosition="P"/>
    <trainType type="freight">
    </trainType>
 </speedProfile>

 <speedProfile id="ssp_freightTrainG" isBasicSpeedProfile="false" 
mVersion="32">
    <name name="ETCS Specific SSP for freight trains braked in G position" 
  description="Specific ETCS static speed profile used by freight trains 
  braked in G position means NC_DIFF=1" language="EN"/>
    <braking airBrakeApplicationPosition="G"/>
    <trainType type="freight">
    </trainType>
 </speedProfile>

 <speedProfile id="ssp_passengerTrainP" isBasicSpeedProfile="false" 
mVersion="32">
    <name name="ETCS Specific SSP for passenger trains braked in P position" 
description="Specific ETCS static speed profile used by passenger 
trains braked in P position means NC_DIFF=2" language="EN"/>
    <braking airBrakeApplicationPosition="P"/>
    <trainType type="passenger">
    </trainType>
 </speedProfile>

   </speedProfiles>
</common>
Combinations of Cant Deficiency SPP and “Other Specific” SSP

An “ETCS operational Train Category” is uniquely described by the combination of the following 3 variables: “type of the train”, “type of brake” and “cant deficiency”.


ETCS Operational Train Categories (Source: TSI OPE Version 4)

Note: The presented page 79 of Figure 2 is taken from Appendix A (version 4) of the Technical Specifications „Operation and traffic management“ from 30/06/15 (File „Appendix A to TSI OPE (EN).pdf“ which is downloaded from https://www.era.europa.eu/activities/technical-specifications-interoperability_en).

The added information in Figure 2 concerning the UNISIG variables NC_DIFF and NC_CDDIFF is based on UNISIG SUBSET-026 (version 3.4.0 or 3.6.0), section 7.5.1.82.1 and 7.5.1.83.

Examples

The ETCS operational train category “PASS 2” can be modelled in railML® as illustrated below:

<common id="co_01">
   <speedProfiles>
<speedProfile id="ssp_PASS2" isBasicSpeedProfile="false" 
 maxCantDeficiency="130" mVersion="32">
    <name name="Speed Profile PASS 2" description="ETCS static speed profile 
  for ETCS Operational Train Category PASS 2 means NC_DIFF=2 with 
  NC_CDDIFF=2" language="EN"/>
    <braking airBrakeApplicationPosition="P"/>
    <trainType type="passenger"/>
 </speedProfile>
   </speedProfiles>
</common>

The ETCS operational train category “TILT 6” can be modelled in railML as illustrated below:

<common id="co_01">
   <speedProfiles>
 <speedProfile id="ssp_TILT6" isBasicSpeedProfile="false" 
  maxCantDeficiency="275" mVersion="32">
    <name name="Speed Profile TILT 6" description="ETCS static speed profile 
  for ETCS Operational Train Category TILT 6 means NC_DIFF=2 with 
  NC_CDDIFF=9" language="EN"/>
    <braking airBrakeApplicationPosition="P"/>
    <trainType type="passenger">
    </trainType>
 </speedProfile>
   </speedProfiles>
</common>

Static Speed Profiles for ETCS Baseline 2

An “International Train Category” according to ETCS Baseline 2 can be modelled in railML as illustrated below:

<common id="co_01">
   <speedProfiles>
 <speedProfile id="ssp_cat12" isBasicSpeedProfile="false" mVersion="16">
    <name name="ETCS Specific SSP CAT 12" description="specific static speed 
profile valid for trains belonging to the International Train Category 
12 (valid for M_VERSION=16 or 17)" language="EN"/>
    <trainType>
      <etcsSpeedProfile etcsTrainCategoryNumber="12">
      <etcsSpeedProfile>
    </trainType>
 </speedProfile>
   </speedProfiles>
</common>

Note that an “International Train Category” according to ETCS Baseline 2 can be transformed either into a Cant Deficiency SSP category or an “Other Specific” SSP category according to ETCS Baseline 3 as shown in Table 1 which is based on UNISIG SUBSET-026 (versions 3.4.0 or 3.6.0) section 6.5.1.5.34 in conjunction with sections 7.5.1.82.1 and 7.5.1.83.

In consequence, the speedProfile example “ssp_cat12” above can be alternatively modelled in railML® as combination of the 3 railML® attributes speedProfile/@maxCantDeficiency (= A *), speedProfile/trainType/@type (= B *) and speedProfile/braking/@airBrakeApplicationPosition (= C *) according to Table 1:

<common id="co_01">
   <speedProfiles>
 <speedProfile id="ssp_passengerTrainP" isBasicSpeedProfile="false" 
mVersion="16">
    <name name="ETCS Specific SSP for passenger trains braked in P position" 
description="Specific ETCS static speed profile used by passenger 
trains braked in P position means NC_DIFF=2 (BL3) or CAT=12 (BL2)" language="EN"/>
    <braking airBrakeApplicationPosition="P"/>
    <trainType type="passenger">
    </trainType>
 </speedProfile>
   </speedProfiles>
</common>

The value of attribute speedProfile/@mVersion is the difference between this example and example 3 above.

Transformation table:

1 2 3 4 5 6 7 8
International Train Category
ETCS Baseline 2 ETCS Baseline 3 representation in railML
UNISIG variable UNISIG variables railML variables
NC_DIFF (BL2) Q_DIFF NC_CDDIFF NC_DIFF (BL3) A* B* C*
1 0 0 9 (=275mm) (not used in P27 due to Q_DIFF=0) 275 (not used) (not used)
2 1 0 0 (=80mm) (not used in P27 due to Q_DIFF=0) 80 (not used) (not used)
3 2 0 1 (=100mm) (not used in P27 due to Q_DIFF=0) 100 (not used) (not used)
4 3 0 2 (=130mm) (not used in P27 due to Q_DIFF=0) 130 (not used) (not used)
5 4 0 3 (=150mm) (not used in P27 due to Q_DIFF=0) 150 (not used) (not used)
6 5 0 4 (=165mm) (not used in P27 due to Q_DIFF=0) 165 (not used) (not used)
7 6 0 5 (=180mm) (not used in P27 due to Q_DIFF=0) 180 (not used) (not used)
8 7 0 7 (=225mm) (not used in P27 due to Q_DIFF=0) 225 (not used) (not used)
9 8 0 10 (=300mm) (not used in P27 due to Q_DIFF=0) 300 (not used) (not used)
10 9 1 (not used in P27 due to Q_DIFF=1) Freight train braked in “P” position (not used) freight P
11 10 1 (not used in P27 due to Q_DIFF=1) Freight train braked in “G” position (not used) freight G
12 11 1 (not used in P27 due to Q_DIFF=1) Passenger train (braked in “P” position) (not used) passenger P
13 12 0 8 (=245mm) (not used in P27 due to Q_DIFF=0) 245 (not used) (not used)
14 13 0 6 (=210mm) (not used in P27 due to Q_DIFF=0) 210 (not used) (not used)
15 14 The international train category 15 shall never be used. (This is according to the remark in “Assignment of values to ETCS variables” (ERA_ERTMS_040001) (e.g. version 1.30 from 22/02/21), section A.6.2: “This value shall never be used.”)

Table 1: Transformation Table for "ETCS International Train Categories" (BL2 <-> BL3)

Note: The UNISIG variable NC_DIFF was re-defined in ETCS Baseline 3 with different semantic as used in ETCS Baseline 2.


  • ** *** Best Practice / Examples

Static speed profiles diagram track A.svg
Example Static Speed Profiles for a railway track section

'Extract of a corresponding railML modelling according to ETCS Baseline 3 (part 1 of 2)
<common id="co_01">
   <speedProfiles>
 <speedProfile id="ssp_b0" isBasicSpeedProfile="true" mVersion="32">
    <name name="Basic ETCS speed profile" description="international static 
speed profile valid in general if no specific profile is applicable 
for a train" language="EN"/>
 </speedProfile>
…
<speedProfile id="ssp_freightTrainP" isBasicSpeedProfile="false" mVersion="32">
    <name name="ETCS Specific SSP for freight trains braked in P position" 
  description="Specific ETCS static speed profile used by freight trains 
  braked in P position means NC_DIFF=0" language="EN"/>
    <braking airBrakeApplicationPosition="P"/>
    <trainType type="freight">
    </trainType>
 </speedProfile>
…
 <speedProfile id="ssp_passengerTrainP" isBasicSpeedProfile="false" mVersion="32">
    <name name="ETCS Specific SSP for passenger trains braked in P position" 
description="Specific ETCS static speed profile used by passenger 
trains braked in P position means NC_DIFF=2" language="EN"/>
    <braking airBrakeApplicationPosition="P"/>
    <trainType type="passenger">
    </trainType>
 </speedProfile>
   </speedProfiles>
</common>
Extract of a corresponding railML modelling according to ETCS Baseline 3 (part 2 of 2)
<infrastructure id="is_01">
   <functionalInfrastructure>
…
     <speeds>
 <speedSection id="spsec100" maxSpeed="80" isTemporary="false" isSignalized="false">
  <name name="Speed section Line_1 track_A from KM_11.200 to KM_11.600" description="Speed section" language="EN"/>
  <linearLocation id="spsec100_lloc" applicationDirection="normal">
   <associatedNetElement netElementRef="ne_102" keepsOrientation="true" posBegin="200.0" posEnd="600.0">
    <linearCoordinateBegin positioningSystemRef="lps01" measure="11200.0"/>
    <linearCoordinateEnd positioningSystemRef="lps01" measure="11600.0"/>
   </associatedNetElement>
  </linearLocation>
  <validForSpeedProfile ref="ssp_basic"/>
 </speedSection>
 <speedSection id="spsec101_0" maxSpeed="100" isTemporary="false" isSignalized="false">
  <name name="Speed section Line_1 track_A from KM_11.600 to KM_12.300" description="Speed section" language="EN"/>
  <linearLocation id="spsec101_0_lloc" applicationDirection="normal">
   <associatedNetElement netElementRef="ne_102" keepsOrientation="true" posBegin="600.0" posEnd="1300.0">
    <linearCoordinateBegin positioningSystemRef="lps01" measure="11600.0"/>
    <linearCoordinateEnd positioningSystemRef="lps01" measure="12300.0"/>
   </associatedNetElement>
  </linearLocation>
  <validForSpeedProfile ref="ssp_basic"/>
 </speedSection>
 <speedSection id="spsec101_1" maxSpeed="120" isTemporary="false" isSignalized="false">
  <name name="Speed section Line_1 track_A from KM_11.600 to KM_12.300" description="Speed section" language="EN"/>
  <linearLocation id="spsec101_1_lloc" applicationDirection="normal">
   <associatedNetElement netElementRef="ne_102" keepsOrientation="true" posBegin="600.0" posEnd="1300.0">
    <linearCoordinateBegin positioningSystemRef="lps01" measure="11600.0"/>
    <linearCoordinateEnd positioningSystemRef="lps01" measure="12300.0"/>
   </associatedNetElement>
  </linearLocation>
  <validForSpeedProfile ref="ssp_passengerTrainP"/>
 </speedSection>


 <speedSection id="spsec102_0" maxSpeed="100" isTemporary="false" isSignalized="false">
  <name name="Speed section Line_1 track_A from KM_12.300 to KM_13.500" description="Speed section" language="EN"/>
  <linearLocation id="spsec102_0_lloc" applicationDirection="normal">
   <associatedNetElement netElementRef="ne_102" keepsOrientation="true" posBegin="1300.0" posEnd="2500.0">
    <linearCoordinateBegin positioningSystemRef="lps01" measure="12300.0"/>
    <linearCoordinateEnd positioningSystemRef="lps01" measure="13500.0"/>
   </associatedNetElement>
  </linearLocation>
  <validForSpeedProfile ref="ssp_basic"/>
 </speedSection>
 <speedSection id="spsec102_1" maxSpeed="110" isTemporary="false" isSignalized="false">
  <name name="Speed section Line_1 track_A from KM_12.300 to KM_13.500" description="Speed section" language="EN"/>
  <linearLocation id="spsec102_1_lloc" applicationDirection="normal">
   <associatedNetElement netElementRef="ne_102" keepsOrientation="true" posBegin="1300.0" posEnd="2500.0">
    <linearCoordinateBegin positioningSystemRef="lps01" measure="12300.0"/>
    <linearCoordinateEnd positioningSystemRef="lps01" measure="13500.0"/>
   </associatedNetElement>
  </linearLocation>
  <validForSpeedProfile ref="ssp_freightTrainP"/>
 </speedSection>
 <speedSection id="spsec102_2" maxSpeed="140" isTemporary="false" isSignalized="false">
  <name name="Speed section Line_1 track_A from KM_12.300 to KM_13.500" description="Speed section" language="EN"/>
  <linearLocation id="spsec102_2_lloc" applicationDirection="normal">
   <associatedNetElement netElementRef="ne_102" keepsOrientation="true" posBegin="1300.0" posEnd="2500.0">
    <linearCoordinateBegin positioningSystemRef="lps01" measure="12300.0"/>
    <linearCoordinateEnd positioningSystemRef="lps01" measure="13500.0"/>
   </associatedNetElement>
  </linearLocation>
  <validForSpeedProfile ref="ssp_passengerTrainP"/>
 </speedSection>
     </speeds>
…
   </functionalInfrastructure>
</infrastructure>

Axle Load Speed Profiles for ETCS

Example 1

This example shows an axle load speed profile for ETCS baseline 2. The modelling in railML is:

<common id="co_01">
   <speedProfiles>
 <speedProfile id="asp_20-5t" isBasicSpeedProfile="false" mVersion="16">
    <name name="ETCS Axle Load Speed Profile 20.5 tons" 
description="ETCS axle load speed profile for trains with an axle load 
equal or higher than 20.5 tons using UNISIG Version 2.3.0d" 
language="EN"/>
    <load exceedsAxleLoad="20.5"/>
 </speedProfile>
   </speedProfiles>
</common>

For ETCS baseline 2, the axle load is presented by axle load limits, given by UNISIG variable M_AXLELOAD defined in SUBSET-026 (version 2.3.0(d)) section 7.5.1.62. The values of M_AXLELOAD (represented by railML® attribute @exceedsAxleLoad) can define a limit in tons (with resolution 0.5t) in the range from 0.0t to 40.0t (means 0.0t, 0.5t, 1.0t, …, 20.0t, …, up to 40.0t). The special value “axle load above 40t” shall be represented in railML® by @exceedsAxleLoad="40.5".

Example 2

For ETCS baseline 3, the axle load is presented by axle load categories, given by UNISIG variable M_AXLELOADCAT defined in SUBSET-026 (version 3.4.0 or 3.6.0) section 7.5.1.62. The values of M_AXLELOADCAT can be for example: A, HS17, B1, B2, D4XL and others.

The ETCS baseline 3 axle load categories shall be modelled in railML® by the attribute load/@exceedsAxleLoad using the corresponding limit in tons as given by UNISIG SUBSET-026 (version 3.4.0 or 3.6.0), section 6.6.3.4.5 [3d] illustrated in the table below:

M axleloadcat.svg

Transformation from M_AXLELOADCAT to M_AXLELOAD (Source: UNISIG SUBSET-026, version 3.6.0, section 6.6.3.4.5 [3d])

Additional Information

Notes

Open Issues