Whats the issue?
Railway stations in europe are tagged with uic_ref, which should refer to the id given by the International Union of Railways (UIC) (released with the MERITS dataset).
In the past these have been falsely understood as equivalent to the ids used by the distribution system of Deutsche Bahn and their timetable information system, which uses IBNR (Interne Bahnhofsnummer) Codes internally.
While both codes start with the same country code the assignment differs and for most countries is not related.
This leads to many uic_ref annotations to wrongly state IBNR numbers and if you expect every uic_ref to be IBNR vice versa.
An Example:
The UIC Code of Hamburg Hbf is 8001071, the IBNR is 8002549 (Other values for other parts of the station for both codes).
The osm node uic_ref currently says 8002549. Wiki data already has both ids and correctly separates IBNR and UIC codes.
How to test which id is a uic code and which an IBNR?
IBNRs can be looked up here and validated by typing in the station code into the trip search of bahn.de or fahrplan.oebb.at.
The only source to validate UIC codes I found to be the Eurail timetable search. If you know any other way to collect or validate the ids please add this here.
Trainline also offers a list of uic codes and IBNRs (labled as db_id) (please see comment for link list).
How could we solve it?
To avoid further confusion, I propose to make use of namespace specific (ref:) id tags:
-
ref:ibnr → For real IBNR codes (already used about 3k times)
-
ref:uic → For real uic codes (Not used yet - besides a small test in Czechia)
-
uic_ref should be removed as soon as its value has been applied to the correct reference.
This way we ensure consistency and make use of the correct namespacing.
As I do have a list of all european stations with all asigned codes ready, semi automatic import might be possible in the future.
If this thead is conclusive I would update the OSM wiki to provide more detailed information about the issue and how to tackle it.
What do you think about the proposal? Do you know any systems that currently rely on the uic_ref tag?
Related issues
Besides clarifying the use of ids, many stations are actually split up into substations by IBNR or UIC reference. This should be addressed correctly while mapping, avoiding binding multiple of the same id type (e.g. having uic_ref_2 as a tag) to the same station. While we clear the confusion of IBNR and UIC ref, please look out for some related issues.