First of all, some background. I’m employed by a consultancy agency, and anything traffic/mobility related is part of my job. It should also imply I’m familiar with several planning documents…
When diving into the world that is OpenStreetMap, I’ve had to realize a few things. Things in OpenStreetMap do NOT always mean what I assume they mean. Road categorisation is one of the key points here, and frequent need to repeat the explanation has finally made me create a diary post on the subject. For clarification I’ll try to explain in english, but add the corresponding terms in dutch after.
At the core of the issue is semantics. OpenStreetMap and ‘the real world’ but use certain terms, like ‘primary roads’, ‘secondary roads’, ‘tertiary roads’. These are however not synonymous, and editing OpenStreetMap just to be in line with those planning documents is often well.. wrong.
The planning context
The provincial level used to have a matching responsability for provinces to maintain some of the roads in their category. Around a decade ago, an overlap in responsabilities between Agentschap Wegen en Verkeer en Provinces was sorted out: roads maintained by Province were either transfered to Agentschap Wegen en Verkeer, or to the communities, based on functionality of the road.
In addition, note that there’s always multiple versions, where typically the ‘I’ version means connection between poles of a same scale, and the ‘II’ version means collecting traffic from a lower level. In an attempt to summarize, here’s an attempt at graphical representation of the principles behind it:
(Based on courses by Joris Willems, as I was taught at Vives Kortrijk)
The OpenStreetMap way
I’ll base the comparsion of the wiki page for the belgian conventions:
At first glance, the comparison still seems straightforward:
Hoofdwegen vs Motorway
Primaire wegen vs Primary
Secundaire wegen vs Secondary
Lokale wegen I & II vs Tertiary
Options to specify more clearly what ‘lokale wegen III’ are (paths, service roads, residential roads, …)
… leaving only ‘trunk’ as the odd one out.
Upon digging in a bit deeper however, the criteria as described are detailed in part through relation with the road numbers.
What once started as a ideal world (N1-N9 connect province capitals with Brussels, Nx0 add on to those in a radial pattern, interconnection those), with Nxx turning those basic structures into a finer mesh based on local city distribution.
Proper ‘ringroads’ around cities get an Rxx number, which lets you filter out those functions too. And where there’s only ‘partial ring roads’ around smaller towns, the part that circles around gets the Nxx number, while the old downgraded trajectory (which hopefully got an ACTUAL downgrade in profile) gets a number like Nxxa or Nxxd, or any variation of the sorts.
That seems sensible enough to link it to the categorisation (given there’s a form of similarity to the earlier stated reasoning), regardless of what interpretation (OSM vs planning) is taken into account.
Intended use versus actual use
One of the key principles we adhere to when mapping is ‘sticking to ground truth’. It’s at times a sad realisation, but many roads have a lay-out, a certain ‘look and feel’, that leans more towards a different function then the actual intended use.
This inherently implies that for cases a road that should only give access to a small residential area (highway = residential, or a ‘lokale weg III’) actually has the appearance of a tertiary road, or that what should be a major axis in the traffic network has a rather underwhelming profile making it look and feel like a lower category..
We (the belgian community, and I’d assume by extension most communities) chose not to map according to ‘vision documents’, but to what we can see / survey in the field. Especially tertiary / secondary roads are subject to different interpretations between the two.
I still don’t get the fuss - where does it actually differ?
Nothing like a good example to make a point. I’ve collected a few examples from my own region, as these were the cases that initially got me stumped.
The R32 - Ringroad around Roeselare
The R32, according to OSM logic, is a ring-road, with an Rxx number, and should therefor entirely be classified as ‘primary’ road all along the way.
However, structural planning documents disagree: rather then seeing it as an actual ‘ring-road’ to divert traffic around the city, they see it as a ‘traffic collecting road’ towards the E403 - which ‘collects’ for example traffic from the northern branch of the N32 and the N36, then ‘connects’ those streams to a higher degree network…
This would imply it being a secondary road in the sections west of the N32, and primary between N32 and E403 both ways.. which is means the majority of the length is judged differently.
In OpenStreetMap you’ll see Meiboomlaan in Roeselare marked as ‘secondary’. It carries a number (N37), and it also looks like it’s a road for a connection at a semi-high scale (watch it here ).
If we were to judge that road merely on planning documents alone, it is a ‘lokale weg II’, which boils down to a tertiary road…
In comparison, Hoogleedsesteenweg (connection to neighbouring town Hooglede) and Beversesteenweg (connection between Roeselare and part-community Beveren) which do form a connection between poles at a local level, do not exceed ‘tertiary’ status in OSM, largely due to a lack an N-number….
Somewhat ironical, within the limits of the so called ‘Kleine Ring’ (Westlaan - Noordlaan - Brugsesteenweg - Koning Leopold III-laan - Mandellaan - Kaaistraat - Koning Albert I-laan), having or not having an N-number doesn’t mean all that much - these roads are now owned and maintained by the city of Roeselare.
But my choice is the better one!
Err.. maybe it is, maybe it’s not. We need some common ground to determine how we tag things, and obtain a database (plus a rendered map) that fits as close to reality as we can get it. Sure, given the very very very similar structure and terminology it’s easy to get carried away and ‘straighten out this mess’. Believe me, I’ve been there. But I’m used to thinking in ‘planning’ and ‘networks’ and the theoretical part of how we’d like things to have. But untill that day, we should map things as they are.
We see similar patterns in other applications:
- Landuse. Something may be designated for industrial buildings, if we go there and we see it’s still entirely a meadow or farmland, we map it as such. We do not map it as an industrial zone, untill it actually is one.
- Buildings: Even if we KNOW what’s going up there, we don’t map the building as long as it’s not there. We don’t map fancy landscaping around an appartment building, if it’s still rough terrain as a building site
You didn’t mention Living Streets, School Streets, Cyclestreets, …‘
You’re absolutely right, I didn’t. These are all subcategories of what we’d call ‘Lokale wegen III’, and by default, OSM has a lot more flexibility to classify what’s what. You’ll never get overruled on these purely based on what’s in any sort of planning document. I took the liberty of considering these out of the scope of this diary post.