Dev:Codelists

From railML 2 Wiki
Revision as of 14:58, 29 January 2018 by RailML Coord Documentation (talk | contribs) (Ferri Leberl moved page CO:Codelists to Dev:Codelists: Vereinheitlichung)
Jump to navigation Jump to search

railML® provides a number of XML codelists. From version 2.3 onwards, they are organized and actualized separately from the schema. Your railML® 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 railML® version.

For the current codelist see https://svn.railml.org/railML2/trunk/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, 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 but happens in short terms.

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
    • 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 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

The file Registers.xml contains a list of 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
Example entry
<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>

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.
Example entry
<trainClearanceGauge code="GA">
 <description>stucture gauge GA according European standard</description>
 <validFor>interoperable</validFor>
</trainClearanceGauge>

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.
Example entry
<trainProtectionSystem code="Crocodile">
 <name/>
 <validFor>
  <vehicleSystem>Crocodile</vehicleSystem>
  <vehicleSystem>Memor</vehicleSystem>
  <vehicleSystem>Memor2</vehicleSystem>
 </validFor>
</trainProtectionSystem>

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.
Example entry
<trainProtectionSystem code="CIR-ELKE2">
 <name/>
 <validFor>
  <trackSystem>LZB</trackSystem>
  <trackSystem>CIR-ELKE</trackSystem>
  <trackSystem>CIR-ELKE2</trackSystem>
 </validFor>
</trainProtectionSystem>