Dev:changes/2.4
Jump to navigation
Jump to search
| ||||||||
| ||||||||
railML® 3 Wiki – RailTopoModel® Wiki |
railML® schema changes between railML® 2.3 and railML® 2.4
This site is intended to collect the schema changes between railML® 2.3 and railML® 2.4.
A complete diff comparison can be found under Dev:changes/2.4/diff
Changes are also marked on the element pages with (introduced with version 2.4) for introduced components and (deprecated with version 2.4) for components that became obsolete. All occurances of these tags are listed in Category:Intro/2.4 respectively Category:Depr/2.4.
For changes with other version upgrades see Dev:changes.
Timetable Subschema
|
Fact: | <places>@category has been extended to allow for values related to TAF TAP categories |
Reason: | The demand for more distinguished categories appeared in this discussion (link to the railML® website) |
Related Development Tickets: | #250 |
Related Commits: | [618] (Note on legacy SVN commits) |
New attribute(s): | <places>@tapTsiType9039Code |
Updated attribute(s): | <places>@category |
Updated element(s): | <places> |
Element <stopDescription> has been expanded by the children <stopActivities>
Fact: | The new element <stopActivities> can be used to group <stopActivity>-elements which describe the purposes of a stop more detailed. The detailed purpose of a stop is described in the attribute type of a <stopActivity>. For the possible values for attribute type, a list of values has been drawn up to illustrate the most common holding purposes of various companies. |
Recommendation: | Use the new <stopActivity>-elements to describe the detailed purposes of a stop. Use if possible the standard values for the attribute type of <stopActivity>-elements. |
ocpTT element sample: | <ocpTT offset="383.220001" alignment="center" ocpType="begin" ocpRef="ocp-35154097"> <times scope="published" departure="00:22:00"/> <sectionTT> <trackRef ref="gleiskante1027"/> <runTimes minimalTime="PT84S"/> </sectionTT> <stopDescription onOff="both" commercial="true"> <stopTimes minimalTime="PT180S"/> <stopActivities> <stopActivity type="reverse"/> <stopActivity type="crewChange"/> </stopActivities> </stopDescription> </ocpTT> |
Updated XSD file(s): | timetableTypes.xsd |
New attributes: |
|
New elements: |
|
Element <stopDescription> has been expanded by the children <trackInfo>
Fact: | The new element <trackInfo> can be used to specify seasonal track usage. That means that it is now possible to specify a train to arrive at a station at one track in general but during a certain time, specified via a reference to an operating period, to arrive at a different track without the need to break apart the <trainPart>. |
ocpTT element sample: | <trainPart id="..." > <operatingPeriodRef ref="op_Daily" /> <ocpsTT> ... <ocpTT sequence="23" ocpRef="ocp_FF" ocpType="stop"> <times scope="scheduled" arrival="12:23:36" departure="12:25:48"/> <stopDescription commercial="true"> <trackInfo operatingPeriodRef="op_Monday-Friday" track="Track 4" /> <trackInfo operatingPeriodRef="op_Saturday+Sunday_in_Winter" track="Track 7" platform="7A" /> <trackInfo operatingPeriodRef="op_Saturday+Sunday_in_Summer" track="Track 5" platform="5.1" /> </stopDescription> </ocpTT> ... </ocpsTT> </trainPart> |
Updated XSD file(s): |
|
New attributes: |
|
New elements: |
|
Element <trainPartSequence> has been expanded by the children <topologyReference>
Fact: | With the new <topologyReference> element, the underlying topology used to determine the route and calculate journey times can be referenced. A <topologyReference> can be set for a <trainPartSequence>. By specifying the attributes register and entry, the version(s) and/or variant(s) to be used are referenced within the external topology. This presupposes that the reading system also knows the topology register and can interpret the version(s)/variant(s). If the validity periods are not uniquely defined by the specifications register and entry, they must be specified using the attributes startDate and EndDate. If several references are specified, they must have disjoint validity periods and, in combination, cover at least the operating days of the train. |
train element sample: | <train type="operational" id="train-1455532037" processStatus="actual"> <trainPartSequence sequence="1"> <trainPartRef ref="train-part-1" /> <topologyReference register="UNO" entry="183000-01012017" startDate="2017-02-01" endDate="2017-08-31" /> <topologyReference register="UNO" entry="120000-08012017" startDate="2017-09-01" endDate="2017-12-31" /> </trainPartSequence> </train> |
Updated XSD file(s): | timetableTypes.xsd |
New attributes: |
|
New elements: |
|
Element <train> has been expanded by the children <replacements>
Fact: | The new <replacements> element is used to group <replacementOf> elements within <train> elements. Using the element <replacementOf> a relationship is defined between the train described in the XML tree and a train that has been cancelled or partially cancelled. The meaning of the relationship is that the train described in the XML tree replaces the cancelled train or the cancelled parts of a train (specified by <uniqueTrainKey> or <tafTapTsiTrainID>) on the specified operating days (specified by <operatingPeriodRef>) |
train element sample: | <train id="train-zug-BLSP-90111-001" trainNumber="90111" additionalTrainNumber="1" cancellation="false" processStatus="actual" description="Bern-Muensingen-Thun"> <trainPartSequence sequence="1"> <trainPartRef ref="trainPart1001"/> </trainPartSequence> <replacements> <replacementOf> <operatingPeriodRef ref="operating-period-KW47-MoFr-18" /> <uniqueTrainKey trainNumber="111" scope="primary" additionalTrainNumber="1" /> </replacementOf> </replacements> </train> |
Updated XSD file(s): |
|
New attributes: |
|
New elements: |
|
Element <blocks> in <rostering> has been made optional
Fact: | Element <blocks> in <rostering> has been made optional |
Reason: | See the forum discussion: https://www.railml.org/forum/index.php?t=msg&th=571&start=0& (link to the railML® website) |
Related Development Tickets: | #331 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated XSD file(s): | timetable.xsd |
Updated element(s): | /railml/timetable/rosterings/rostering/blocks |
Infrastructure Subschema
|
Subschema <infrastructureVisualizations> has been reintroduced
Fact: | Subschema <infrastructureVisualizations> has been reintroduced |
Reason: | The scheme <infrastructureVisualization> has been marked DEPRECATED with version 2.1 without proper alternative implementation |
Related Development Tickets: | #104 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated element(s): | <infrastructureVisualizations> and subsidiaries |
OCP example added to wiki page <ocp>
Fact: | OCP example Pulsnitz (from example file East Saxony) has been added to railML® wiki page IS:ocp |
Related Development Tickets: | #112 |
Related Commits: | [618] (Note on legacy SVN commits) |
<lineDescr> and <trackDescr> DEPRECATED
Fact: | <lineDescr> and <trackDescr> are marked DEPRECATED with version 2.4 |
Reason: | The elements are not being used |
Recommendation: | For additional description of line or track, please use the attributes <track>@description and <line>@description |
Related Development Tickets: | #113 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | |
Updated element(s): |
|
<signal>@sigSystem
Fact: | <signal>@sigSystem is currently not used by the railML® community and thus is marked DEPRECATED with version 2.4 |
Related Development Tickets: | #162 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | <signal>@sigSystem |
Specification of <balise>@staticTelegram changed
Fact: | The string data type is combined with a pattern for the HEX format: [0-9a-fA-F]* |
Reason: | The attribute shall be used to represent the binary balise telegram as HEX string |
Related Development Tickets: | #163 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | <balise>@staticTelegram |
New target for <infraAttrGroupRef>
Fact: | XSD inline documentation of element <infraAttrGroupRef> has been adapted to reference an <infraAttributes> instance |
Reason: | According to schema, the element <infraAttrGroupRef> shall provide a reference to a <infraAttrGroup> element, which does not exist |
Related Development Tickets: | #233 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated element(s): | <infraAttrGroupRef> |
New attributes for <controller>
Fact: | <controller> has been extended with:
|
Reason: | <controller> used to be only an empty placeholder element. It needed further attributes for macroscopic description of the controller for operational purposes. |
Related Development Tickets: | #304 |
Related Commits: | [618] (Note on legacy SVN commits) |
New attribute(s): |
|
Updated element(s): | <controller> |
New Element <ocpRef> as child of <controller>
Fact: | Child <ocpRef> has been added to <controller> |
Reason: | Allows to reference one or multiple OCPs from one controller. One OCP can be referenced from more than one controller. |
Related Development Tickets: | #304 |
Related Commits: | [618] (Note on legacy SVN commits) |
New element(s): | <ocpRef> |
<ocsElements> extended with <locks>→<lock>
Fact: | Implementation of <lock> with container element <locks> under <ocsElements> |
Reason: | It is not possible to model locks that are used for logical locking connections between switches, derailers, level crossings etc. Like a signal, the lock is a physical signalling element and shall be added to the model. |
Related Development Tickets: | #305 |
Related Commits: | [618] (Note on legacy SVN commits) |
New element(s): | *<locks>
|
Updated element(s): | <ocsElements> |
<track>@type: value stationTrack deprecated
Fact: | <track>@type: value stationTrack deprecated |
Reason: | Not used |
Related Development Tickets: | #318 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | <track>@type |
New child element <maxTrainCurrent> for <electrificationChange> and <electrification>
Fact: | New child elements <maxTrainCurrent> for <electrificationChange> and <electrification>:
attributes @maxCurrent [A], @type [driving/standstill], @validFor [train/pantograph] and @##any for specific constraints |
Related Development Tickets: | #319 |
Related Commits: | [618] (Note on legacy SVN commits) |
New element(s): | |
Updated element(s): |
Several Attributes of <signal> DEPRECATED
Fact: | <signal>@maskableRoute, <signal>@maskableATC, <signal>@sight, <signal>@distNearestDangerPoint are currently not used by the railML® community and thus are marked DEPRECATED with version 2.4 |
Related Development Tickets: | #322 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | |
Updated element(s): | <signal> |
several default values in <levelCrossing> removed
Fact: | Default values for <levelCrossing> attributes @length, @angle and @protection removed |
Reason: | Current implementation of a level crossing contains some attributes with default values that are source of errors |
Related Development Tickets: | #323 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): |
|
Updated element(s): | <levelCrossing> |
Changed Value Set for <ocp><propOperational>@operationalType
Fact: |
|
Related Development Tickets: | #327 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | <propOperational>@operationalType |
Updated element(s): | <propOperational> |
Changed Value Set for <ocp><propOperational>@trafficType
Fact: |
|
Related Development Tickets: | #328 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | <propOperational>@trafficType |
Updated element(s): | <propOperational> |
Extension of time reference in <state>
Fact: | <state> has been extended with new attributes @startTime, @endTime and @endDayOffset |
Reason: | Existing <state> implementation is missing a clear time reference. Currently, there is only the attribute @operatingPeriodRef that links to a (timetable focused) operating period |
Related Development Tickets: | #329 |
Related Commits: | [618] (Note on legacy SVN commits) |
New attribute(s): |
|
Updated element(s): | <state> |
<state> added to <infrastructure>
Fact: | <infrastructure> gets child <states>, with the same specification as other occurances of <states> |
Reason: | railML® provides a <state> element already for several infrastructure elements. However, it is currently not possible to tag the whole <infrastructure> tree with a state. |
Related Development Tickets: | #337 |
Related Commits: | [618] (Note on legacy SVN commits) |
New element(s): | <state> and successors |
Updated element(s): | <infrastructure> |
<signal><levelCrossing>@type with new value "supervision"
Fact: | <signal><levelCrossing>@type has been extended with new value "supervision" |
Reason: | railML® lacks a final level crossing supervision signal that is located immediately before the level crossing |
Related Development Tickets: | #338 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | {IS:Tag |
<levelCrossing>@type
|nelem= |uelem={IS:Tag|signal}}<levelCrossing>@type }}
More sophisticated usage of <state>
Fact: | Implementation of <state> has been fused with <ocp><propOther>@status: |
Reason: | Current implementation of <state> allows only for distinguishing between disabled and not disabled; more states are needed |
Related Development Tickets: | #339 |
Related Commits: | [618] (Note on legacy SVN commits) |
New attribute(s): | <state>@status |
Updated attribute(s): | <ocp><propOther>@status |
New element(s): | <propOther><states> |
Updated element(s): |
New attribute <crossSection>@ocpCenterSide to indicate the direction in which the train driver has to look to see the (virtual) operator
Fact: | New attribute <crossSection>@ocpCenterSide to indicate the direction in which the train driver has to look to see the (virtual) operator (values: left / right / above / below / ahead / behind / none) |
Reason: | The center of the OCP is a virtual point and from operational perspective it is defined by the place where the operation/control is done. This can be, but it is not necessarily the station building. |
Related Development Tickets: | #340 |
Related Commits: | [618] (Note on legacy SVN commits) |
New attribute(s): | <crossSection>@ocpCenterSide |
Updated element(s): | <crossSection> |
Deprecated Attributes of <propOther>
Fact: | @frontier and @chargeFrontier of <propOther> have been declared deprecated. |
Reason: | The attributes are currently not used by railML® community and lack obvious applications. |
Related Development Tickets: | #341 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): |
|
Updated element(s): | <propOther> |
Rolling stock Subschema
New element <technicalStopActivity> at <formation>
Fact: | New element <technicalStopActivity> at <formation> introduced |
Related Development Tickets: | #342 (technical stopping times for formation) |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated element(s): |
Extension of list of tPlaceCategory
Fact: | Extension of list of tPlaceCategory, adding service.types and places.categories |
Updated elements: | <places> |
Updated attributes: | category |
service@name and service@count optional instead mandatory in schema
Fact: | <service>@name and <service>@count optional instead mandatory in schema |
Updated elements: | <service> |
Updated attributes: |
|
Change <vehicleBrakeOperation> to optional [0..*] to maintain backwards compatibility
Fact: | Change <vehicleBrakeOperation> to optional [0..*] to maintain backwards compatibility |
Updated Elements: |
@etcsTrainCategory as new attribute at formation
Fact: | @etcsTrainCategory as new attribute at <formation> |
Updated Elements: | <formation> |
Updated Attributes: | etcsTrainCategory |
Adding speedProfileRef in formation
Fact: | Adding <speedProfileRef> in <formation> |
Related Development Tickets: | #336 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated element(s): |
New attributes and sub element for <doors>
Related Development Tickets: | #335 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | |
Updated element(s): |
Added <trainBrakeOperation> for <formation> and <vehicleBrakes>
Fact: | Added <trainBrakeOperation> for <formation> and <vehicleBrakes> |
Related Development Tickets: | #313 (RS: Deceleration table) |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated element(s): |
Adding resistance factors for calculating train resistance by well-known formulas as alternative
Fact: | Adding resistance factors for calculating train resistance by well-known formulas as alternative |
Related Development Tickets: | #312 (RS: Resistance factors for calculating train resistance) |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): |
|
Updated element(s): | <trainResistance> |
Adding <formation>/<trainEngine>@trainMinTimeHoldSpeed
Fact: | <formation>/<trainEngine>@trainMinTimeHoldSpeed |
Related Development Tickets: | #311 (RS: Minimum time to hold speed) |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): | trainMinTimeHoldSpeed |
Updated element(s): | <trainEngine> |
Descriptive names included in TrainProtectionSystems
Fact: | Descriptive names have been added to the codelist TrainProtectionSystems |
tEffortNewton migrated to tForceNewton
Fact: | Attribute type tEffortNewton has been migrated to tForceNewton |
Reason: | railML® simple data types, e.g. for physical units, are not consistently being used |
Related Development Tickets: | #332 |
Related Commits: | [618] (Note on legacy SVN commits) |
Updated attribute(s): |
|
Updated element(s): |
Common parts
|
Codelists
|