Junction Nodes (Split from dogleg thread)

Is it not OK to discuss the use of junction=yes while we’re looking at this intersection you highlighted? Or did you only want to subject someone else’s edits to scrutiny? We can ask a moderator to split out the junction=yes discussion if that would add clarity.

Edit: The moderators did split out this topic, but it’s out of chronological order now. Sorry for the confusion.

1 Like

no by all means, I feel I explained why the junction nodes are there and also their functions. Even to the point of getting a reply such as

youre coming across as argumentative from a mere observation I provided. The point is the junction nodes were removed under a false reason of being invalid.

I don’t know what it means for the junction=yes nodes to be invalid. All I know is that, based on the (completely reasonable) rationale you provided for them, the junction=yes tag isn’t how mappers have generally handled the situation. It isn’t clear to me if you’re describing the behavior of an existing OSM-based navigation product or something more hypothetical.

Currently, no router declares general support for junction=yes in taginfo. Valhalla is listed there as supporting junction=*, because it specifically uses the combination of junction=yes and name=* to announce a named intersection, for example, “Turn left at name.” The developers originally were focused on the named traffic lights common in Japan and South Korea, but I convinced them to add support for junction=yes for similar unsignalized situations in Central America.

There’s nothing wrong with innovating a tag before the software catches up, but I pointed out an inherent ambiguity of modeling the routing hint as a specially tagged intersection node. The same issue impacts the original node-based approaches to turn on red restrictions.

1 Like

This is pretty much why I thought those nodes specifically were invalid. For routing, there’s much better ways to handle it, and for those nodes specifically, it meant nothing since you can inherently tell it’s a junction and it shouldn’t be tagged with no extra tags.

how come the junction nodes are invalid, they are very helpful to let people know what action to take at junctions, such as veer left, straight ahead, sharp right etc. they are great and helpful nodes.

They’re for actual junctions, not for when a turning lane splits off a road, plus they’re only actually needed when other information is required (i.e. a named intersection).

Tag:junction=yes for more info

the very first sentence says " The tag junction=yes explicitly declares that an object is a road junction as such (crossroads, T intersection, Y intersection, any other type…)" I have been sing these the years without anyone ever calling them “invalid” and removing them. The wiki doesnt seem any different. They are really really good for turn instructions, I have tested out everyone that I personally have placed with GPS

Feel free to add them back in, I removed them since it states it only really needs to explicitly be tagged when there’s other information, since an intersection between two ways tagged with highway tags indicates a junction anyway.

I have used them very situationally, example is when a highway bends and there is a turn lane that begins at the bend. Typically a GPS would consider this as going straight ahead placing a junction node there and the GPS says, “continue on X highway” or “take the exit to X road” instead of a simple “turn left” or simply no instruction because the GPS think youre going straight

Yeah that’s a fair use case, probably worth adding a note on there just to indicate the purpose to mappers for those ones. For an intersection like this, you’d be better off detailing things like lane tagging and destination:street tags on _links, junction=yes isn’t really valid where it was used on this intersection.

Is there any software that actually interprets a junction=yes node as a cue to issue a continue or fork instruction? It would be somewhat problematic on an intersection node, since the cross street may not need an instruction at the same point.

A relation would address this issue by clarifying the direction in which it applies. OSRM recognizes a manoeuvre relation type as a last resort for situations that don’t have another better-established alternative. And specifying turn lanes is more robust for more routing engines anyhow.

Definitely agree with this, it provides much more information with a manoeuvre relation as well.

once a again another topic has been derailed and ascended onto a subject that didnt even raise concern until someone said “these nodes are all of a sudden invalid” and removed them. Now people are agreeing to add the manoeuvre relation to standard junctions and exit lanes. ok where do we go from here.

Nobody has agreed to add manoeuvre relations to standard junctions or exit lanes, that discussion was in response to your mention of using them at points where a router thinks a road continues straight when it’s actually a bend with an intersection.