Dev:Codelists: Difference between revisions

From railML 2 Wiki
Jump to navigation Jump to search
[checked revision][checked revision]
No edit summary
 
(18 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{rml}} provides a number of XML '''codelists'''. From version 2.3 onwards, they are organized and actualized separately from the schema.  Your [[Dev:Downloading and using railML|{{rml}} download]] will usually contain the codelists in a directory ''codelists'', next to documentation and schema. These codelists reflect the state of the codelists at the time of the publication of the respective {{rml}} version.
{{mirror}}
 
For the current codelist see [https://svn.railml.org/railML2/trunk/codelists https://svn.railml.org/railML2/trunk/codelists].
==Concept==
The code lists are intended to address certain frequently used entities with a single code, as to avoid repetitious work as well as ambiguity errors. For instance, using {{CO:Tag|infrastructureManager}}, you can address the [https://en.wikipedia.org/wiki/Austrian_Federal_Railways Austrian Federal Railways] (ÖBB) with their code ''ÖBB'': <infrastructureManager code=ÖBB>. In this way, you inherit all information that is collected about the ÖBB in the code list, in this case name, country code and company code:
<syntaxhighlight lang="xml">
<infrastructureManager code="ÖBB">
  <name>ÖBB Infra</name>
  <isoCountryCode>AT</isoCountryCode>
  <companyCode>0081</companyCode>
</infrastructureManager>
</syntaxhighlight>
Moreover, the separation of schema and codelists allows actualizing the codelists in very short cycles.
==Missing entries==
Are you missing an entry? Did you find a mistake? We try to serve you with current, comprehensive and correct codelists and will try to add necessary entries as soon as possible. The actualization of the codelists does not follow the usual {{rml}} actualization cycles but happens in short terms.
 
* Inform the {{rml}} coordinator about a missing, incomplete or faulty entry — see https://www.railml.org/en/user/subschemes.html for the contact data.
* The coordinator will check your supplements and, where appropriate, include them into the regarding code list.
* The actualized codelist will be published in the SVN under [https://svn.railml.org/railML2/trunk/codelists https://svn.railml.org/railML2/trunk/codelists].
 
==Current codelists==
The current codelists are:
===InfrastructureManagers===
The list [[InfrastructureManagers.xml]] contains infrastructure managing companies. The items are named <infrastructureManager> with the following specification:
*Attributes
**{{attr|code}}: a code, that should be referred to from within an railML file, typically a short name for the infrastructure manager in latin letters. It links the {{rml}} element {{CO:Tag|infrastructureManager}} with the code list.
*Children
**<name>: The company name, with attribute {{attr|}}
**<isoCountryCode>: The two-digit country code of the company according to [https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 ISO 3166-1 alpha-2].
**<companyCode>: Company codes according TAF TAP TSI B.8 or UIC IRS/leaflet 920-1:2006.
 
For an example entry see [[#Concept]].
 
===Registers===
The file [[Registers.xml]] contains list of registers, databases, handbooks etc. The items are named <register> with the following specification:
*Attributes
**{{attr|code}}: A code, that should be referred to from within an {{rml}} file
*Children
**<name>: Internationalized name of the operation or control point register
**<organization>: Organization name that is responsible for the register
**<remarks>: Internationalized remarks for the operation or control point register
;Example entry
<syntaxhighlight lang=xml>
<register code="RL100">
<name xml:lang="de-DE">Betriebsstellenverzeichnis</name>
<organization xml:lang="de-DE">DB</organization>
<remarks xml:lang="de-DE">auch/früher als DS100 oder Ril100 bezeichnet</remarks>
<remarks xml:lang="en">also/former known as DS100 or Ril100</remarks>
</register>
</syntaxhighlight>
 
===TrainClearanceGauges===
A list of [https://en.wikipedia.org/wiki/Loading_gauge clearance gauge] standards. It provides data related to a particular train clearance gauge class. The items are named <trainClearanceGauge> with the following specification:
*Attributes
**{{attr|code}}: A code, that should be referred to from within a railML file, typically a short name for the train clearance gauges in latin letters
*Children
**<description>: Internationalized name of the clearance gauge.
**<validFor>: Gives indication, whether the clearance gauge is valid for only a national, several national or all TSI-compliant networks.
;Example entry
<syntaxhighlight lang=xml>
<trainClearanceGauge code="GA">
<description>stucture gauge GA according European standard</description>
<validFor>interoperable</validFor>
</trainClearanceGauge>
</syntaxhighlight>
 
===TrainProtectionSystems===
List of [https://en.wikipedia.org/wiki/Train_protection_system train protection systems]. It provides two container elements for track bound systems and train bound systems respectively:
====At track====
*<trainProtectionSystemsAtTrack>: Container for train protection systems, installed "at the track"
**<trainProtectionSystem>: Single entries for each train protection system, installed "at track"
***{{attr|code}}: A code that should be referred to from within an railML file, typically a short name for the train protection system in latin letters.
***<name>: Name of the system.
***<validFor>: If the code for the system differs between vehicle and track installation, put the mapping in this container element.
****<vehicleSystem>: Train protection system code of the according vehicle system.
;Example entry
<syntaxhighlight lang=xml>
<trainProtectionSystem code="Crocodile">
<name/>
<validFor>
  <vehicleSystem>Crocodile</vehicleSystem>
  <vehicleSystem>Memor</vehicleSystem>
  <vehicleSystem>Memor2</vehicleSystem>
</validFor>
</trainProtectionSystem>
</syntaxhighlight>
====On Vehicle====
*<trainProtectionSystemsOnVehicle>: Container for train protection systems, installed "on the vehicle"
**<trainProtectionSystem>: Single entries for each train protection system, installed "on vehicle"
***{{attr|code}}: A code, that should be referred to from within an railML file, typically a short name for the train protection system in latin letters.
***<name>: Name of the system.
***<validFor>: If the code for the system differs between vehicle and track installation, put the mapping in this container element.
****<trackSystem>: Train protection system code of the according track system.
;Example entry
<syntaxhighlight lang=xml>
<trainProtectionSystem code="CIR-ELKE2">
<name/>
<validFor>
  <trackSystem>LZB</trackSystem>
  <trackSystem>CIR-ELKE</trackSystem>
  <trackSystem>CIR-ELKE2</trackSystem>
</validFor>
</trainProtectionSystem>
</syntaxhighlight>
 
[[category:Common Concept]]

Latest revision as of 11:25, 24 January 2020

🗒️ This page is mirrored from page Dev:Codelists in The railML® 3 wiki.

railML® provides a number of XML codelists. From version 2.3 onwards, they are organized and actualized separately from the schema. Your railML® download may contain the codelists in a directory codelists, next to documentation and schema. These codelists reflect the state of the codelists at the time of the publication of the respective railML® version.

If your download does not contain our codelists (as is usual in railML® 3) or if you need the most current codelists, you can retrieve them from https://development.railml.org/railml/shared/-/tree/master/codelists (link to the railML® website)

Concept

The code lists are intended to address certain frequently used entities with a single code, as to avoid repetitious work as well as ambiguity errors. For instance in railML® 2, using <infrastructureManager>, you can address the Austrian Federal Railways (external link) (ÖBB) with their code ÖBB: <infrastructureManager code=ÖBB>. In this way, you inherit all information that is collected about the ÖBB in the code list, in this case name, country code and company code:

<infrastructureManager code="ÖBB">
  <name>ÖBB Infra</name>
  <isoCountryCode>AT</isoCountryCode>
  <companyCode>0081</companyCode>
</infrastructureManager>

Moreover, the separation of schema and codelists allows actualizing the codelists in very short cycles.

Missing entries

Are you missing an entry? Did you find a mistake? We try to serve you with current, comprehensive and correct codelists and will try to add necessary entries as soon as possible. The actualization of the codelists does not follow the usual railML® actualization cycles (link to the railML® website) but happens in short terms.

Current codelists

The current codelists are:

InfrastructureManagers

→Main Article: Codelist InfrastructureManagers

The list InfrastructureManagers.xml contains infrastructure managing companies. The items are named <infrastructureManager> with the following specification:

  • Attributes
    • code: a code, that should be referred to from within an railML file, typically a short name for the infrastructure manager in latin letters. In railML® 2, it links the railML® element <infrastructureManager> with the code list.
  • Children
    • <name>: The company name, with attribute
    • <isoCountryCode>: The two-digit country code of the company according to ISO 3166-1 alpha-2] (external link).
    • <companyCode>: Company codes according TAF TAP TSI B.8 or UIC IRS/leaflet 920-1:2006.

For an example entry see #Concept.

Registers

→Main Article: Codelist Registers

The file Registers.xml contains a list of railway related registers, databases, handbooks etc. The items are named <register> with the following specification:

  • Attributes
    • code: A code, that should be referred to from within an railML® file
  • Children
    • <name>: Internationalized name of the operation or control point register
    • <organization>: Organization name that is responsible for the register
    • <remarks>: Internationalized remarks for the operation or control point register

TrainClearanceGauges

→Main Article: Codelist TrainClearanceGauges

TrainClearanceGauges.xml delivers a list of clearance gauge standards (external link). It provides data related to a particular train clearance gauge class. The items are named <trainClearanceGauge> with the following specification:

  • Attributes
    • code: A code, that should be referred to from within a railML file, typically a short name for the train clearance gauges in latin letters
  • Children
    • <description>: Internationalized name of the clearance gauge.
    • <validFor>: Gives indication, whether the clearance gauge is valid for only a national, several national or all TSI-compliant networks.

TrainProtectionSystems

→Main Article: Codelist TrainProtectionSystems

TrainProtectionSystems.xml delivers a list of train protection systems (external link). It provides two container elements for track bound systems and train bound systems respectively:

At track

  • <trainProtectionSystemsAtTrack>: Container for train protection systems, installed "at the track"
    • <trainProtectionSystem>: Single entries for each train protection system, installed "at track"
      • code: A code that should be referred to from within an railML file, typically a short name for the train protection system in latin letters.
      • <name>: Name of the system.
      • <validFor>: If the code for the system differs between vehicle and track installation, put the mapping in this container element.
        • <vehicleSystem>: Train protection system code of the according vehicle system.

On Vehicle

  • <trainProtectionSystemsOnVehicle>: Container for train protection systems, installed "on the vehicle"
    • <trainProtectionSystem>: Single entries for each train protection system, installed "on vehicle"
      • code: A code, that should be referred to from within an railML file, typically a short name for the train protection system in latin letters.
      • <name>: Name of the system.
      • <validFor>: If the code for the system differs between vehicle and track installation, put the mapping in this container element.
        • <trackSystem>: Train protection system code of the according track system.