Dev:Changes: Difference between revisions

From railML 2 Wiki
Jump to navigation Jump to search
[unchecked revision][checked revision]
(→‎{{IS:Doc|tsi}}: adding example for designator/tsi)
(→‎railML schema changes since version 2: Reservation Release railML 2.4 removed; Language adaptation)
(28 intermediate revisions by 5 users not shown)
Line 1: Line 1:
= Other information sources =
{{navi}}
This page is intended to inform about the schema changes by topics, that influence the XML output. As it starts as a stub please refer to {{site|http://forum.railml.org|the railML forum}} and {{site|http://trac.railml.org/|railML's ticket system}} too.
==Versions & Licences==
The development of the early alpha versions started in 2001. Version 1.0, the first version allotted for productive use, was published in 2005. The current {{rml}} version is 2.3, published in March 2016. It is licensed dually free under a restricted form of the {{external|https://en.wikipedia.org/wiki/Creative_Commons_license|Creative Commons licence}} ''CC-BY-NC-ND'' and ''(for certified programmes)'' in free a commercial licence. To learn more about the licence terms see {{site|http://www.railml.org/en/user/licence.html}}.


This site is intended to collect the schema changes by topics, that influence the XML output. As it starts as a stub please refer to railML forum and SVN too.
A detailed version list can be found on {{site|https://www.railml.org/en/developer/version-timeline.html}}.


= railML schema changes since version 2 =
== Schema changes in older railML versions / Other information sources ==
It is not intended to describe changes between minor versions in railML 1 as there are no records from the pre-SVN time. Also changes between the major releases (railML 1 > railML 2 or railML 2 > railML 3) could not described here, as there are to much structural and major changes in railML.


== Between railML 2.0 and railML 2.1 ==
== railML schema changes since version 2 ==
The changes between the {{rml}} 2 minor versions are available in the following descriptions:
*[[dev:changes/2.1|Changes between {{rml}} 2.0 and {{rml}} 2.1]]
*[[dev:changes/2.2|Changes between {{rml}} 2.1 and {{rml}} 2.2]]
*[[dev:changes/2.3|Changes between {{rml}} 2.2 and {{rml}} 2.3]]
*[[dev:changes/2.4|Changes between {{rml}} 2.3 and {{rml}} 2.4]]


Unfortunately no information available.
Please, employ [[template:change]] to add etries.


== Between railML 2.1 and railML 2.2 ==
=== Timetable subschema ===
To be filled.
=== Infrastructure subschema ===
==== {{IS:Doc|ocp}}/{{Attr|@abbrevation}} ====
{|
|Fact:
| The {{Attr|abbrevation}} attribute in the {{IS:Tag|ocp}} element is declared deprecated.
|-
| Reason:
| There are multiple different abbreviations for single operation or control points. They can't be defined with one attribute.
|-
| Recommendation:
| Use the new {{IS:Tag|tsi}} and/or {{IS:Tag|designator}} elements instead.
|-
| Related Trac Tickets:
| [http://trac.assembla.com/railML/ticket/112 #112]
|-
| Related SVN Commits:
| [http://trac.assembla.com/railML/changeset/335 [335]], [http://trac.assembla.com/railML/changeset/439 [439]]
|-
| Old sample (railML 2.1):
|
<syntaxhighlight lang="xml">
<ocp ... name="Passau Hbf." abbrevation="NPA"/>
</syntaxhighlight>
|-
| New sample (railML 2.2):
|
<syntaxhighlight lang="xml">
<ocp ... name='Passau Hbf.' ...>
  <tsi country="80"/>
  <designator register='RL100' entry='NPA'/>
  <designator register='ENEE' entry='80-26506-6'/>
  <designator register='IBNR' entry='8000298'/>
  <designator register='DB640' entry='Pa'/>
</ocp>
</syntaxhighlight>
|}
=== Rollingstock subschema ===
=== Common subschema ===
== Between railML 2.2 and railML 2.3 ==
=== Timetable subschema ===
=== Infrastructure subschema ===
==== {{IS:Doc|trainRadio}}, {{IS:Doc|trainRadioChange}} ====
{|
|Fact:
| The {{IS:Tag|trainRadio}} element and {{IS:Tag|trainRadioChange}} element have been introduced.
|-
| Recommendation:
| Use the new {{IS:Tag|trainRadio}} and {{IS:Tag|trainRadioChange}} elements for defining conditions describing the train radio conditions along the track.
|-
| Related Trac Tickets:
| [http://trac.railml.org/ticket/43 #43]
|-
| Related SVN Commits:
| [http://trac.railml.org/changeset/630/railML [630]]
|-
| ocs element sample:
|
<syntaxhighlight lang="xml">
<ocsElements>
  <trainRadioChanges>
    <trainRadioChange id="trc01" pos="57.46" dir="up" radioSystem="GSM-R" broadcastCalls="true">
    </trainRadioChange>
  </trainRadioChanges>
</ocsElements>
</syntaxhighlight>
|-
| infra attributes sample:
|
<syntaxhighlight lang="xml">
<infraAttrGroups>
  <infraAttributes id="ia01">
    <trainRadio radioSystem="GSM-R" broadcastCalls="true" />
  </infraAttributes>
</infraAttrGroups>
</syntaxhighlight>
|}
==== {{IS:Doc|speedChange}}/{{Attr|@vMax}} ====
{|
|Fact:
| The parameter {{Attr|vMax}} in the {{IS:Tag|speedChange}} element has been modified so that it can also handle the value "end".
|-
| Recommendation:
| Use the new value "end" in order to mark the end of a temporary speed restriction.
|-
| Related Trac Tickets:
| [http://trac.railml.org/ticket/97 #97]
|-
| Related SVN Commits:
| [http://trac.railml.org/changeset/609/railML [609]]
|-
| sample:
|
<syntaxhighlight lang="xml">
<speedChange id="sc7" pos="256.7" vMax="end" dir="up" />
</syntaxhighlight>
|}
==== {{IS:Doc|radiusChange}}/{{Attr|@geometryElementDescription}} ====
{|
|Fact:
| A new attribute named {{Attr|geometryElementDescription}} has been added to the {{IS:Tag|radiusChange}} element. It is an enumeration parameter, which provides the following entries that enable a more detailed description of transition curves:
* TS_cubicParabola
* TS_parabola4
* TS_clothoide; the usually used transition curve in modern railways, see [https://en.wikipedia.org/wiki/Euler_spiral English Wikipedia] and {{Deu|[https://de.wikipedia.org/wiki/Klothoide#Anwendung_im_Verkehrswegebau German Wikipedia]}} description
* TS_WienerBogen; a special transition curve used in Austria and Germany, see {{Deu|[https://de.wikipedia.org/wiki/Wiener_Bogen German Wikipedia]}} description
* TS_BlossBogen; a special transition curve widely in Germany, see {{Deu|[https://de.wikipedia.org/wiki/Blossbogen German Wikipedia]}} description
* TS_Sinusoide
* TS_Cosinusoide
* SC
* (any other)
|-
| Reason:
| So far, it was not possible to model transition curves in railML although they represent a basic track alignment feature.
|-
| Recommendation:
| Use the new {{Attr|geometryElementDescription}} attribute in the {{IS:Tag|radiusChange}} element for modelling the begin and end points of transition curves.
|-
| Related Trac Tickets:
| [http://trac.railml.org/ticket/251 #251]
|-
| Related SVN Commits:
| [http://trac.railml.org/changeset/616/railML [616]]
|-
| sample for transition curve begin:
|
<syntaxhighlight lang="xml">
<radiusChange ... geometryElementDescription='TS_clothoide' />
</syntaxhighlight>
|-
| sample for transition curve end:
|
<syntaxhighlight lang="xml">
<radiusChange ... geometryElementDescription='SC' />
</syntaxhighlight>
|}
==== {{IS:Doc|tsi}} ====
{|
|Fact:
| The element {{IS:Tag|tsi}} has been marked deprecated.
|-
| Reason:
| Elements dedicated for the usage in conjunction with TAP TSI shall be replaced by a more generic approach.
|-
| Recommendation:
| Instead of the element {{IS:Tag|tsi}}, please use the {{IS:Tag|designator}} element with the new register entry "PLC" (Primary Location Code) for referencing a TAF TSI relevant name of an operational control point.
|-
| Related Trac Tickets:
| [http://trac.railml.org/ticket/252 #252]
|-
| Related SVN Commits:
| [http://trac.railml.org/changeset/611/railML [611]]
|-
| old sample (railML 2.2):
|
<syntaxhighlight lang="xml">
<ocp ... name='Buchs (SG)' ...>
  <tsi country='85' location='09404' check='' />
</ocp>
</syntaxhighlight>
|-
| new sample (railML 2.3):
|
<syntaxhighlight lang="xml">
<ocp ... name='Buchs (SG)' ...>
  <designator register='PLC' entry='8509404'
</ocp>
</syntaxhighlight>
|}
==== {{IS:Doc|line}}/{{Attr|@lineCategory}} ====
{|
|Fact:
| The optional attribut {{Attr|lineCategory}} has been added to the parameters of the element {{IS:Tag|line}}.
|-
| Reason:
| The European standard EN 15528 defines several line categories for classification of railway lines depending on allowed maximum axle load and meterload paramters.
|-
| Recommendation:
| Use the new paramter {{Attr|lineCategory}} within the element {{IS:Tag|line}} to define a line category according to EN 15528. The following values are possible:
* A
* B1, B2
* C2, C3, C4
* D2, D3, D4, D4xL
* E4, E5
* (any other)
|-
| Related Trac Tickets:
| [http://trac.railml.org/ticket/259 #259]
|-
| Related SVN Commits:
| [http://trac.railml.org/changeset/620/railML [620]], [http://trac.railml.org/changeset/621/railML [621]], [http://trac.railml.org/changeset/622/railML [622]]
|-
| sample:
|
<syntaxhighlight lang="xml">
<line ... lineCategory='E4' />
</syntaxhighlight>
|}
==== {{IS:Doc|additionalName}}/{{Attr|@xml:lang}} ====
{|
|Fact:
| Although being optional, the attribut {{Attr|xml:lang}} should always be given in the {{IS:Tag|additionalName}} element.
|-
| Reason:
| In order to being able to correctly read the given additional name e.g. for an OCP, it is necessary to know in which language the additional name has been written.
|-
| Recommendation:
| Always use the optional paramter {{Attr|xml:lang}} when using the element {{IS:Tag|additionalName}}.
|-
| Related Trac Tickets:
| [http://trac.railml.org/ticket/263 #263]
|-
| Related SVN Commits:
| [http://trac.railml.org/changeset/629/railML [629]]
|-
| sample:
|
<syntaxhighlight lang="xml">
<ocp id="ocp_ΑΘΗΝ" name="ΑΘΗΝΑ">
  <additionalName name="Ἀθῆναι" xml:lang="grc"/>
  <additionalName name="ΑΘΗΝΑ" xml:lang="el-Grek"/>
  <additionalName name="ATHINA" xml:lang="el-Latn"/>
  <additionalName name="Athens" xml:lang="en"/>
  <additionalName name="Athen" xml:lang="de"/>
  <additionalName name="Athènes" xml:lang="fr"/>
</ocp>
</syntaxhighlight>
|}
==== {{IS:Doc|crossedElement}} ====
{|
|Fact:
| New optional element {{IS:Doc|crossedElement}} has been added for the elements {{IS:Doc|levelCrossing}}, {{IS:Doc|bridge}} and {{IS:Doc|tunnel}}.
|-
| Reason:
| This implementation allows to model more specific information about natural and infrastructure landmarks that are crossed by a river, a railway line or a street.
|-
| Recommendation:
| If you want to define information about a natural or infrastructure landmark that you are going to cross with your track, please use the new element {{IS:Tag|crossedElement}}.
|-
| Related Trac Tickets:
| [http://trac.railml.org/ticket/271 #271]
|-
| Related SVN Commits:
| [http://trac.railml.org/changeset/629/railML [629]]
|-
| sample for bridge:
|
<syntaxhighlight lang="xml">
<bridge id="br01" name="Marienbrücke" pos="2050">
  <crossedElements>
    <crossedElement type="highway:cycleway" id="cw01" name="Elberadweg" pos="2200" />
    <crossedElement type="highway:road" id="rd01" name="B6" pos="2150" />
    <crossedElement type="natural:river" id="ri01" name="Elbe" pos="2100" />
  </crossedElements>
</bridge>
</syntaxhighlight>
|}
=== Rollingstock subschema ===
=== Common subschema ===
[[Category:GeneralDescription]]
[[Category:GeneralDescription]]
[[category:Common Concept]]

Revision as of 14:52, 11 October 2018

RailML Trademark RGB V2.png
XML Railway exchange format
https://railML.org
Latest release: 2.5
(September 1st, 2021)
 
Main Menu
 
Subschemas
XML tree
UML diagrams
Use cases
Versions & Changes

This page is intended to inform about the schema changes by topics, that influence the XML output. As it starts as a stub please refer to the railML forum (link to the railML® website) and railML's ticket system (link to the railML® website) too.

Versions & Licences

The development of the early alpha versions started in 2001. Version 1.0, the first version allotted for productive use, was published in 2005. The current railML® version is 2.3, published in March 2016. It is licensed dually free under a restricted form of the Creative Commons licence (external link) CC-BY-NC-ND and (for certified programmes) in free a commercial licence. To learn more about the licence terms see http://www.railml.org/en/user/licence.html (link to the railML® website).

A detailed version list can be found on https://www.railml.org/en/developer/version-timeline.html (link to the railML® website).

Schema changes in older railML versions / Other information sources

It is not intended to describe changes between minor versions in railML 1 as there are no records from the pre-SVN time. Also changes between the major releases (railML 1 > railML 2 or railML 2 > railML 3) could not described here, as there are to much structural and major changes in railML.

railML schema changes since version 2

The changes between the railML® 2 minor versions are available in the following descriptions:

Please, employ template:change to add etries.