Home » railML newsgroups » railML.infrastructure » [railml3.1] speed profiles and @etcsTrainCategoryNumber (The implementation of @etcsTrainCategoryNumber does not match its purpose and it should be removed or changed)
[railml3.1] speed profiles and @etcsTrainCategoryNumber [message #2053] Mon, 24 December 2018 16:55 Go to next message
Thomas Nygreen JBD is currently offline  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 #2054 is a reply to message #2053] Tue, 25 December 2018 14:49 Go to previous messageGo to next message
Thomas Nygreen JBD is currently offline  Thomas Nygreen JBD
Messages: 68
Registered: February 2017
Member
I forgot: multiple trainType elements should be allowed in a speedProfile, to be aligned with ETCS.

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 Go to previous messageGo to next message
Torben Brand is currently offline  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 Go to previous message
Thomas Nygreen is currently offline  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
Previous Topic: usage of @branchingSpeed and @joiningSpeed
Next Topic: [railML3] extended service section facilities
Goto Forum:
  


Current Time: Thu Dec 05 13:29:46 CET 2024