Let's talk about highway classification in OSM

This thread is still going on with no consensus? Jesus Christ…

oh wait it’s OSM what did I expect?

4 Likes

Let’s no nitpick here. We are considering grade-separation road-by-road. On most service interchanges, the major road is grade-separated, while the minor road isn’t. (Of course, you need to use more precise terminology when describing “compact grade-separation”. Again, let’s not overextend the discussion. I suppose everyone knows what’s the extent of grade-separation being discussed here. )

Umm, if you have solved it when using expressway= , is there a problem about the single interchange then? Anyway, for both access_control= and expressway= , considering the definition, it should be examined between significant junctions that aren’t connecting with =service or =track (and perhaps =residential ) roads, so between junctions from =motorway down to =unclassified at least.
access_control=yes should be avoided, as =yes should mean unspecified positive. It can be =full or =partial , used to say there’s some access control, but not decided yet.
For =partial , again, is there’s a question on the definition of expressway=yes as well? It would be akin to the lowest common denominator internationally. Widely spaced intersections or roundabouts, and very few =service or =track connected in between. The exact details is determined nationally, and the classification examined case-by-case, again same as expressway=yes for you and others.

Did you read that 376 comments across 2 years too, only a month here (although nearing 200) Railway=station as an area?

So in relation to my latest summarising post, the goals are:

  1. Introduce importance=* tagging on highways, in many cases double-tagged with tags like highway=secondary.
  2. Replace highway=trunk in Europe with expressway=yes.
  3. Introduce adequate tagging to official classification, something like highway:category.
  4. Introduce new highway=* values.

My first point relates to your first point and my fourth point relates to your second point though the latter can’t be done right away because of software support unless someone gives a good reasoning for e.g. highway=road + road=motorway/expressway/etc..

Yeah, because it’s got a very broad scope. That’s nothing special with OSM threads anyway, take as an extreme example the polish discussion about highway=trunk.

I feel like a road shouldn’t suddenly be an expressway without anything notable changing i.e. a sign or an additional lane.

Well, what makes a road partially access-controlled if a single interchange implies full access control?

For Poland, not really but overall some countries will probably need to tweak their definition.

For roundabouts or at-grade intersections in the middle of a longer access-controlled road, I used short access_control=partial segments and no expressway=yes. A roundabout that could be still tagged as expressway=yes would probably have to be something like this.

1 Like

These are not “goals” or “purpose” in the sense I’m suggesting, they are methods for achieving goals. Replacing tags just to replace tags is an academic exercise that is unlikely to get global buy-in.

I want to know what the underlying purpose that you are trying to achieve is, not how you think you might get there. What do you want to express that you cannot express right now?

6 Likes

The English Wikipedia article on limited-access highways doesn’t correspond one-for-one with the concept of an expressway that expressway=yes represents. There are a variety of schemes for classifying or characterizing a highway along different axes. Expressway is part of the freeway/expressway scheme, while that article is part of the controlled-access/limited-access scheme. In other words, access control is orthogonal to whether a highway is an expressway. Wikipedia intentionally conflates related concepts to avoid short stubs or highly similar articles.

The whole idea behind expressway=yes is to provide an outlet for the sort of observable classification by intuition that formerly went in highway=trunk in some regions. It represents a design phenomenon that can’t quite be observed from each way in isolation. In some regions, that can include signage differences in addition to geometric differences. To the extent that we need to distinguish subclassifications of expressways, we can use other values besides yes, but so far most mappers haven’t bothered.

2 Likes

If you came to this thread expecting an effort toward consensus building, you came to the wrong place. As the title suggests, this thread is a place to vent. Try it, it’s cathartic.

5 Likes

My reaction to all four of these points is the same: why? What actual problems would be solved by these changes?

5 Likes

Why do I have to repeat myself again? It’s been said at the start of the thread.

Half the highway values depend on functionality while the other half has it’s definition up in the air. Some countries base it off importance (replaced by 1.), others base it off official classification (replaced by 3.) and some base it off parameters (replaced by 4.). There’s also the most problematic value being highway=trunk which in some countries depends on importance and in others — on parameters (replaced by 2. & 4.).

Because in 190+ messages, there has not developed a shared consensus of what the problem statement is.

If we can develop consensus about what the problem statement is, then we can weigh possible strategies for achieving it against each other.

Talking about strategies and methods without having consensus on the problem will result in many of the circular discussions we’re having in this and other threads.

8 Likes

I agree with Adam and Zeke. You’re proposing solutions but not actually describing who is harmed by the current tagging scheme which would necessitate a change. What if we juat change nothing? Why is that not OK?

6 Likes

While the usual case is to be grade separated out of convenience for a perpendicular road crossing the freeway, this aspect is optional when there is no crossing. Controlled access just means intersections and driveways are eliminated in favor of ramps. A typical American roundabout is controlled access despite the lack of grade separation. There’s also lots of RO-RO interchanges in California, particularly on old freeways like the Pasadena Freeway, these also aren’t grade separated.

Take it to your blog, please.

1 Like

Well I explained what the deal was multiple times on different platforms so I don’t know what I should’ve done differently.

I don’t think you’re being serious because I have explained over and over what is wrong, including in my very previous post.
The biggest thing is the 1100+ post thread on the Polish forum about the usage of highway=trunk. There’s an inconsistency caused by half of Europe because there highway=trunk is used for access-controlled roads which makes some Euro-centric routers not permit bicycle movement on trunk roads in the rest of the world and other parts of Europe e.g. in the UK.
Another thing is Lithuania’s absurd way of classifying roads where each paved road is automatically highway=secondary.
In Czechia roads are tagged based on the official classification which causes inconsistencies between borders.

You must’ve seriously missed the discussion if you don’t know about these cases.

Trust me, many of us are consistently reading along in all of these discussions. I’ve have read the entirety of all 3 Polish threads, the wiki, the voting, and many more forum threads here and elsewhere.

What I am asking for (and I believe others are as well) is a discussion about what the problems are that we are trying to fix. I have my own strong thoughts about what some goals should be, but I have been trying to encourage you to state your goals without prejudicing the list with my own.

From this message I hear you allude to two goals:

  1. Bring consistency to highway=trunk usage.
  2. Ensure cross-boarder highway=* consistency.

These are both good goals and I support both of them. Before we dive into how to best achieve those goals, what are other goals that you (and others reading this thread) think are important?

1 Like

In addition to these two

I would add:

  • An ability to identify roads that are built to top-quality motorway standards, but have a local/within-city network-importance.

There is only one thing: have consistency among highway=* values and make them all depend on one thing – functionality, instead of the current mix of functionality, importance, official classification and parameters. Fixing this mess is a huge help to data consumers.

Now that can be dissected further into things that can be introduced:

  1. importance=* – to correspond to the importance interpretation (the correct interpretation acording to the approved proposal) – to be used in the e.g. UK, USA, Poland, Spain
  2. official classification (something similar to highway:category, still debating on the best name) – to correspond to equating the highway=* value with country’s classification – to be used in e.g. Germany, Czechia, Slovakia
  3. motorway=* and expressway=* – the former could be used for consistency or motorways in cities but it’s not really a requirement while the latter to correspond to Europe’s usage of highway=trunk – to be used in over half of Europe among other continents

These things can be introduced right away and double-tagged.

The last phase will require either coining a new/temporary tag like road=*, highway2=*, highway:quality=*, etc. meaning it could also be introduced right away, or would have to come with preparations to introduce new highway=* values that correspond to the functionality interpretation.

Let me try to help here.

If you were phrasing this in the form of a problem statement, it might look like this:

Bicycle routers are unable to determine whether to route bicycles over trunk roads, because in some places, highway=trunk implies bicycle=no or bicycle=very_bad_idea, and in some cases it doesn’t.

If that is true, that would be a very good problem statement – a specific data consumer is unable to resolve an ambiguity in tagging. :+1: from me. However, your statement “some Euro-centric routers” also implies that this might just be a software defect in some routers, and that they could just fix the issue by doing whatever the other routers are doing.

If everyone agrees that this isn’t something that can be fixed in software, that orients the discussion towards how to fix the tagging to resolve things.

Much of what you’re describing as a problem, is simply stating that “there are inconsistencies between places”. I agree that there are inconsistencies. However, you haven’t stated why that’s a problem or even if that’s a problem. Why is it a problem that there are inconsistencies? That is where you will find your problem statement, if there is one.

Is it a problem for routers that the highway classification is inconsistent? If so, why? Is it a problem for renderers? if so, why? etc. We are looking for the problem to be very clearly defined and agreed upon so that everyone can try to work on a problem that we all agree is a problem. That is why the debate in Poland hasn’t gone anywhere – nobody has a clear handle on the problem, and inconsistency by itself isn’t enough. It needs to actually be harmful to some specific use case(s).

We are truly not trying to be difficult here. The lack of strong problem statements is why there is so much friction in find a solution: nobody agrees on what we’re trying to solve.

The issue in Lithuania is caused by a single mapper who has asserted unilateral control over all tagging in his country and will not be swayed by anything anyone writes here. I would strongly encourage :grimacing: stepping back away slowly from using Lithuania specifically as part of your rationale. The short answer is that the situation in Lithuania is wrong and no proposal will change it.

4 Likes

All of the 3 routers on osm.org are of German origin and I’m pretty sure 2 of them don’t route on trunk roads and one doesn’t route even with bicycle=yes present. Yes, the other routers should probably adapt like GraphHopper seems to do that but maybe OSRM and Valhalla just want to be for Germany specifically which is not the best thing to put on the very osm.org site.

On the page Tag:motorroad=yes it says:

Depending on interpretation, highway=trunk may imply motorroad=yes .

So when the routers allow bicycles on these roads, some routers might incorrectly route bicycles through those roads when it’s not permitted. I hope you can see the ambiguity here.

Generally a road in Czechia or Slovakia could be important and have a lower highway=* value than it should and vice versa which is just incorrect data in OSM.

Also places like these are problematic:

I think you get the point.

If the current tagging stays the same, the country can be “saved” by an importance=* tag which will correctly show the importance.

The problem with the current tagging is the ambiguity — let’s really think about what a ‘secondary highway’ means. Logically and by the professional terms, it means a road of lesser importance from a primary road. But that’s not entirely straightforward as one could interpret it as a road of lower parameters from a primary road or even as just a grade which could depend on virtually anything. More specific naming like importance=regional would help and leave no room for equating it with parameters or road pavement.