[railml3.1] speed profiles and @etcsTrainCategoryNumber [message #2053] |
Mon, 24 December 2018 16:55 |
Thomas Nygreen JBD
Messages: 68 Registered: February 2017
|
Member |
|
|
The categorisation of speed profiles has been greatly improved from 2.x to 3.1. Still, (at least) one issue remains:
speedProfile/trainType/@etcsTrainCategoryNumber is currently implemented the same way in 3.1 as in 2.22.4, namely as an integer in the range 0-15. The wiki points to the value table for NC_TRAIN in ERA_ERTMS_040001 "Assignment of values to ETCS variables" v1.21 from 2016-10-20. The document is now in v1.26, released just a few days ago, but the relevant content is not changed. As is stated in the same document, since v1.4 of 2011-04-08, "The variables previously referred in sections [...] 3.7 (NC_TRAIN) [...] considered as baseline dependent [...]. However the list of their previously assigned values is kept in this document for recording purpose." (paragraph 1.3.4). So, even if this document is still actively maintained, it has not been a reference for train categories since 2011, and should not be used as such by railML.
Train categories used in ETCS are defined on at least two levels. First, on a legislative level, through of the "technical specification for interoperability relating to the 'operation and traffic management' subsystem of the rail system in the European Union" (TSI OPE). Since 2011, the train categories have been specified in its Appendix A, maintained by ERA. Second, in the System Requirements Specification (SRS) for each baseline of ETCS. As far as I can determine, each version of TSI OPE Appendix A is based on the "current" baseline of ETCS, so there is some synchronisation of the two.
Currently, the TSI (Annex B on page 79 in Appendix A) specifies 18 operational train categories. The categories are not numbered, but labelled PASS 13, TILT 17, FP 14 and FG 14 respectively, each corresponding to a combination of type of train (passenger, tilting passenger, freight), type of brake (P, G) and cant deficiency (11 levels from 80 to 300 mm).
The SRS subset 26 chapter 3 (current version 3.6.0 of 2016-05-13) defines how a train should choose the correct Static Speed Profile (SSP).
The cant deficiency categories and passenger/freight categories that were previously mixed in ERA_ERTMS_040001 have now been separated into two different sets of categories:
3.11.3.3.1 A maximum of 31 train categories is defined to match the SSP categories. 16 "Cant Deficiency" train categories and 15 "other international" train categories.
3.11.3.3.2 A train shall always belong to one and only one "Cant Deficiency" train category and may optionally belong to one or more "other international" train categories.
Consequently, there is no atomic "ETCS train category number". Suggestion: delete @etcsTrainCategoryNumber
If we move to chapter 7, it defines the packets used to transmit information to and from the trains. Here, the variables NC_CDTRAIN (integer 015) and NC_TRAIN (bitset, 16 bits) describe respectively the "cant deficiency" and "other international" train categories that a train belongs to. The corresponding NC_CDDIFF (integer 015) and NC_DIFF (integer 015) are used to specify which categories an SSP applies to. Multiple categories may be given for one SSP.
The current options for the variables NC_TRAIN and NC_DIFF are
* Freight train braked in "P" position
* Freight train braked in "G" position
* Passenger train
* 13 currently unused spare values/bits
The distinction between freight and passenger trains is already covered by speedProfile/trainType/@type, but the "type of brake" (P/G) is not covered in railML 3.1. Suggestion: add @brakePosition
The current cant deficiency options for the variables NC_CDTRAIN and NC_CDDIFF already covered by speedProfile/trainType/@cantDeficiency. However, I am not sure if the current restriction to a value in the range 80300 is necessary. I think we should either just require a positive integer or use the enumerated set of values from the SRS.
Best regards and happy holidays!
Thomas
Best regards,
Thomas Nygreen
Railway capacity engineer
Jernbanedirektoratet
|
|
|
|
Re: [railml3.1] speed profiles and @etcsTrainCategoryNumber [message #3402 is a reply to message #2054] |
Wed, 27 November 2024 09:19 |
Torben Brand
Messages: 169 Registered: March 2016
|
Senior Member |
|
|
Documentation and multiplicity of etcsSpeedProfile@etcsTrainCategoryNumber
The documentation of etcsSpeedProfile@etcsTrainCategoryNumber found in [1] is a bit ambiguous:
"etcsTrainCategoryNumber: this information shall be derived from trainType, airBrakeApplicationPosition and maxCantDeficiency. Shall not be used as leading information, but rather as derived additional description. (obligatory; xs:integer; minInclusive: 0; maxInclusive: 15)"
I assume since the value is limited to 15 it's the "NC_TRAIN" parameter that shall be used? Thomas post above from 24.12.2018 is very informative. But I am uncertain of the conclusion.
As referred to in railML2 speedProfile@etcsTrainCategory: "(introduced with version 2.5) The international train category number as specified on page 38 in ERA_ERTMS_040001 "Assignment of values to ETCS variables" v1.9 from 10/07/12." [2]
PS. There is a newer version out of "ASSIGNMENT OF VALUES TO ETCS VARIABLES" [3] version 1.35 of 25/06/2024 here the "NC_TRAIN: INTERNATIONAL CATEGORY TO WHICH BELONGS THE TRAIN" is listed on page 59.
It seems that in railML3.3 <etcsSpeedProfile> is limited to a multiplicity of 1. But can the speed profile not have multiple ETCS speed profiles? For instance a passenger train that can run with 300 mm cant deficiency (category 9) can also run on a profile limited to only passenger trains (category 12) or any speed profile with a lower cant deficiency criteria than 300mm (category 1,2,3,4,5,6,7,8,13 and 14)? Reading Thomas post above you would then use a multiplicity of the parent element <trainType> (which is unlimited) and repeat the trainType@type value for all ETCS speed profiles?
[1] https://wiki3.railml.org/wiki/CO:etcsSpeedProfile
[2] https://wiki2.railml.org/wiki/IS:speedProfile
[3] https://www.era.europa.eu/system/files/2023-02/ETCS%20variab les%20and%20values.pdf
|
|
|
Re: [railml3.1] speed profiles and @etcsTrainCategoryNumber [message #3403 is a reply to message #3402] |
Fri, 29 November 2024 16:46 |
Thomas Nygreen
Messages: 79 Registered: March 2008
|
Member |
|
|
Dear Torben,
NC_TRAIN is not an integer between 0 and 15, it is a bitset with 16 bits (bit 0 to bit 15), each of which can be set to 0 or 1 (corresponding to an integer between 0 and 65535). Different releases of SUBSET-026 have different definitions of NC_TRAIN.
A question to the community: Given that our ETCS working group has determined that the etcsTrainCategoryNumber should only be supplementary information, is it maybe redundant and can be removed, instead of continuing to create confusion?
Best regards,
Thomas
Thomas Nygreen – Common Schema Coordinator
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org
|
|
|