|
|
(22 intermediate revisions by 3 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='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]] | | [[Category:GeneralDescription]] |
| | [[category:Common Concept]] |