Difference between revisions of "Dev:Changes"

From wiki.railML.org
Jump to: navigation, search
[unchecked revision][checked revision]
(Rollingstock subschema: vehicleIdentification)
m (Ferri Leberl moved page Dev:changes to Dev:Changes)
 
(27 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= Other information sources =
+
{{mirror}}
 
 
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.
 
 
 
= railML schema changes since version 2 =
 
 
 
== Between railML 2.0 and railML 2.1 ==
 
 
 
Unfortunately no information available.
 
 
 
== 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='PLC' entry='DE18274'/>
 
  <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='CH9404' />
 
</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.
 
|-
 
|style="vertical-align:top" | 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]]
 
|-
 
|style="vertical-align:top" | 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 ===
 
 
 
==== {{RS:Doc|vehicleIdentification}} ====
 
{|
 
|Fact:
 
| The {{RS:Doc|vehicleIdentification}} element in the {{RS:Tag|operator}} was introduced for storing UIC numbers.
 
|-
 
| Reason:
 
| The UIC has developed two variants for unique identification numbers of vehicles, i.e. locomotives and wagons. Both types consists of 12 digits. As the identification encodes also the vehicle owner/operator it was included as part of the {{RS:Tag|operator}} element to have a clear relation to validity period.
 
|-
 
| Recommendation:
 
| Use the new {{RS:Tag|vehicleIdentification}} element for each {{RS:Tag|operator}} element defined for the particular vehicle.
 
|-
 
| Related SVN Commits:
 
| [http://trac.assembla.com/railML/changeset/643 [643]]
 
|-
 
| New sample (railML 2.3):
 
|
 
<syntaxhighlight lang="xml">
 
  <xs:complexType name="eOperator">
 
  <xs:complexContent>
 
    <xs:extension base="rail:tOperator">
 
  <xs:sequence>
 
    <xs:element name="vehicleIdentification" type="rail:tVehicleIdentification" minOccurs="0" maxOccurs="1">
 
      <xs:annotation>
 
        <xs:documentation>vehicle identification as described by EU paper DV51EN01 annex P or UIC 438</xs:documentation>
 
        <xs:documentation source="http://wiki.railml.org/index.php?title=RS:vehicleIdentification" />
 
      </xs:annotation>
 
    </xs:element>
 
  </xs:sequence>
 
    </xs:extension>
 
  </xs:complexContent>
 
  </xs:complexType>
 
 
 
  <xs:complexType name="tVehicleIdentification">
 
    <xs:annotation>
 
      <xs:documentation>container for the vehicle identification described by EU paper DV51EN01 annex P or UIC 438</xs:documentation>
 
    </xs:annotation>
 
    <xs:attributeGroup ref="rail:aVehicleIdentification" />
 
  </xs:complexType>
 
 
 
  <xs:attributeGroup name="aVehicleIdentification">
 
  <xs:attribute name="uicIdentNumber" type="rail:tTwelveDigits" use="required">
 
    <xs:annotation>
 
      <xs:documentation>the UIC identification number with 12 digits</xs:documentation>
 
    </xs:annotation>
 
  </xs:attribute>
 
    <xs:attribute name="countryCode" type="rail:tThreeLetterString">
 
    <xs:annotation>
 
      <xs:documentation>code for the registered country (one to three letters)</xs:documentation>
 
    </xs:annotation>
 
    </xs:attribute>
 
    <xs:attribute name="vehicleKeeperMarking" type="rail:tFiveLetterString">
 
    <xs:annotation>
 
      <xs:documentation>code for the vehicle ownwer (one to five letters)</xs:documentation>
 
    </xs:annotation>
 
    </xs:attribute>
 
  </xs:attributeGroup>
 
</syntaxhighlight>
 
|}
 
 
 
=== Common subschema ===
 
[[Category:GeneralDescription]]
 

Latest revision as of 16:31, 18 May 2020

Note.png This page is mirrored from page Dev:Changes in The railML® 3 wiki.
railML®
XML Railway exchange format
https://railML.org
Latest release: 2.4
(October 7th, 2018)
 
Main Menu
 
Subschemas
XML tree
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 within version 2

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

Please, employ template:change to add etries.

railML schema changes within version 3

Currently only one published version exists (railML®3.1). railML®3.2 is scheduled for 2021.