About city name prefixes in public transport stops

by multimob — written on 2023-05-11


Having clear guidelines is essential to avoid edit wars on the map. But recognising that despite OSM has general—worldwide—tagging standards, many conventions are defined per country.

Here is an interesting observation about how public transport names are written.

De Lijn (Belgium/Flanders)

Every stop name is prefixed by the name of the municipality. For historical reasons, sub-municipalities (deelgemeenten) or historical names are sometimes still in use. The name is written in normal case and there is a space between the town name and the main part, e.g. "Antwerpen Groenplaats".

A common tongue-in-cheek joke says that without the town name, all stops by De Lijn would be either Station (1,420 stops), Dorp (913 stops) or Kerk (1,545 stops). This is unfair, if you consider the major tribute also paid to Sporthal, Post and Watertoren.

TEC (Belgium/Wallonia)

Same rule as De Lijn, i.e. the name of the municipality and a space but to highlight the town name their convention is to write it as an all-caps name, e.g. "LIEGE Place St-Lambert".

This is interesting because it will require an extra effort to avoid bulk imports of their names onto OSM, as this violates tagging conventions. Interestingly too, the all-caps version of the name is strictly restricted to a 7-bit ASCII character code, meaning that accented characters are transformed.

Consequently, any attempt at guessing that "LIEGE" matches "Liège" because lower case text strings would be identical will fail, because of the accented E. It can even be worse for other names, such as the city of Belœil which is spelt BELOEIL in official data sets.

STIB/MIVB (Belgium/Brussels)

There is no concept of city prefix, even to highlight the municipalities of the Brussels-Capital Region. Only regular names and they ensure there is no duplicate, e.g. "De Brouckère".

The challenges for STIB/MIVB names is to make sure to honour rules about multilingual territories, as they operate both on a bilingual Region, in facilities with municipalities (Wezembeek-Oppem, Drogenbos…) and in municipalities without facilities (Dilbeek, Tervuren, Vilvoorde…). This is beyond the scope of this post.

RGTR (Luxembourg) or Connexion (Netherlands)

Those networks use the city name but separate it with a comma and a space. This is also frequently observed in German networks.

It will be important when mapping stops operated by Belgian operators outside the national borders, especially if those stops are operated by several operators. In that case, it is advised to honour the rules of the host country, i.e. use the comma in the name. This is because the name tag in OSM is the most visible tag, which serves for rendering and on which most apps will rely. We will probably require using name:De_Lijn and name:TEC to store the exact text string provided by the operator.

Dealing with the case of larger cities

Some larger cities use a standard network map, which dispenses with the name prefixes. This might particularly be useful for tram networks, as found in Antwerp, Gent and Charleroi. Brussels is not concerned because they naturally use short names (see above).

We should therefore allow an exception for those cities, for instance like this:

Take all the stops in Antwerp (and probably some close suburbs like Deurne, Hoboken, Merksem, Zwijndrecht… inside the urban network). Map the stops with a short version of the name ("Antwerpen Halewijn" becomes "Halewijn") and rely on name:De_Lijn to store the full name. This will be particularly true for premetro stations.

The tricky part will probably be to determine where this rule applies and what are the borders of the territory.


Permalink: https://blog.multimob.be/zzmaeq7ohz.htm

Back to the index

Screenshots with maps are © OpenStreetMap contributors