Clearer IS:electrificationSection modelling
Links
- Forum discussion:
- Christian Rahmig, 24.05.2024: https://www.railml.org/forum/index.php?t=msg&goto=3247&#msg_3247
- Related issues:
Summary
The structure of IS:electrificationSection is not intuitive , and two of the attributes have an undocumented value space (fixed in railML 3.3). It is not possible to explicitly specify that a section is not electrified. (added 2025-12-04)
Details
IS:electrificationSection has several subelements:
-
energyCatenary: catenary energy parameters-
@allowsRegenerativeBraking: whether the use of regenerative braking is allowed -
maxTrainCurrent: maximum current that can be accessed in the described electrification section-
@maxCurrent: maximum allowed current in Ampere -
@trainType: train category for which the maximum train current constraint is valid ("all","freight","highspeed"or"passenger") -
@operationType: type of operation for maximum train current: standstill or driving (integer"driving"or"standstill") -
@validFor: application of maximum train current: train or pantograph (integer"pantograph"or"train")
-
-
-
energyPantograph: pantograph energy parameters-
@requiresTSIcompliance: whether a TSI compliant pantograph head is required -
@compliantTSITypes: space separated list of accepted TSI compliant pantograph heads -
@nationalPanHeadTypes: space separated list of accepted other pantograph heads -
@contactStripMaterials: space separated list of permitted contact strip materials
-
-
energyRollingstock: rollingstock energy parameters-
@requiresPowerLimitation: whether a current or power limitation on board is required -
@permittedStaticContactForce: value of the permitted static contact force of the pantograph, in [N] -
@permittedMaxContactForce: value of the permitted maximum (dynamic) contact force of the pantograph, in [N] -
@requiresAutomaticDroppingDevice: whether an automatic dropping device at the pantographs is required -
@requiredFireCategory: information on the required fire category of the rolling stock ("A","B"or"none")
-
-
hasContactWire: construction details of the contact wire-
@minHeight: minimum height of contact wire above top of rail, in [m] -
@maxHeight: maximum height of contact wire above top of rail, in [m] -
@maxDisplacement: maximum lateral displacement of the contact wire from centre of track including stagger and wind forces, in [m]
-
-
pantographSpacing: pantograph spacing parameters-
@numberPantographsRaised: number of pantographs raised simultaneously on moving train -
@spacingPantographsRaised: minimum spacing between raised pantographs of a train, in [m] -
@speed4PantographSpacing: related maximum speed for the given pantograph spacing limit, in [km/h]
-
There is no property in IS:electrificationSection or in CO:electrificationSystem to specify that a section (or system) is unelectrified. (added 2025-12-04)
The issue
- What is the difference between
energyPantographandenergyRollingstock? The attributes ofenergyPantographdo not seem to be energy related. Only one of the attributes ofenergyRollingstocklooks energy related, and most of them concern the pantograph. -
energyCatenary/@operationTypeandenergyCatenary/@validForare of typeinteger, but it is not documented how the integer values should be interpreted. These should probably be enumerations. - Differences in terminology: "contact line"/"contact wire" and "overhead"/"catenary"/"contact wire". Which differences are intended and which are not?
- How to specify that a section is not electrified? See also #679. (added 2025-12-04)
Possible solutions
- Refactor
energyPantographandenergyRollingstock. -
Create enumerations for(done in railML 3.3)energyCatenary/@operationTypeandenergyCatenary/@validFor. - Consider modifying/aligning terminology and document any intended terminology differences.
- Remodel either
electrificationSectionorelectrificationSystemto allow specifying that a section is unelectrified and prevent simultaneously providing electrification properties. (added 2025-12-04)
Solution for railML 3.3
- Change enumeration data type for
\\energyCatenary\maxTrainCurrent\@operationTypefrom integer to tMaxTrainCurrentOperation with values"driving"and"standstill" - Change enumeration data type for
\\energyCatenary\maxTrainCurrent\@validForfrom integer to tMaxTrainCurrentValid with values"pantograph"and"train"
Edited by CO Coordination