I see that iD now gives a warning when saving when a touched feature contains an intersection without junction. I presume this was added in #5217 and related. I think this is a useful validation, particularly for those of us who run routing engines and see this kind of problem repeatedly.
However, having accepted the option "Connect the features", which helpfully adds a connecting node, it also adds highway=crossing, which is inappropriate in many cases.
For instance, a shared-use pavement cycleway which has driveways crossing over it continually would not normally be considered to be constituting a series of crossings, even informal crossings. Similarly, two roads that meet at a crossroads does not constitute a crossing (although there may be an associated crossing).
The behaviour should be modified simply not to add any tags but create the connectivity. The user can then add a crossing if that's what they really intended.
NB Routing engines like (our) CycleStreets will add a weighting for a crossing and a straight-over junction differently, because they are different situations. This change denies that kind of subtlety.
@mvl22 Thanks for sharing your thoughts. It's great to hear from people who actually use and process OSM data.
highway=crossing is added as a convenience when road-like features cross path-like features, so say a sidewalk crossing a residential road but not crossing residential roads or crossing cycleways. If the path has crossing=marked, that tag is added to the vertex as well.
I agree it doesn't really make sense to add this to path/driveway intersections鈥擨'll change that. What do you think about cycleways crossing roads? Are those usually considered crossings?
I think that under no circumstances should any tags be added automatically as a result of this feature that don't already exist. The aim of this feature is surely to ensure a properly-connected graph. I think it is overloading that concept then to start to make assumptions of any kind as to what the infrastructure at that connected junction might be. That really must be for the user to add manually (or be specifically prompted whether they really want a crossing, with a clear explanation of what a 'crossing' actually means).
If you pan around any satellite imagery of any city, you will find that the vast, vast majority of intersecting paths/roads do not form a crossing. A crossing is a specific feature that is added in certain situations but is not the norm. Crossings generally do not happen at the exact intersection point anyway* - they tend to be offset from a junction because to do otherwise is unsafe engineering.
Here is my local area. As you can see, there are a large number of places where there are four streets/paths meeting. The only places where there are crossings are where there is a yellow dot. This all correctly marked - there are no crossings missing and those that do exist are marked with the yellow dot. Most of the rest of the world will be similar. I think this clearly shows how crossings should not be inferred to be present at any kind of intersection of four spurs.

I would again also flag up that a crossing can interpreted by good routing software as inferring a delay different to a junction, for the simple reason that human behaviour is different in these two scenarios. A crossing implies that vehicles on the main flow may be delayed by vehicles/pedestrians on the opposing flow, with the extent of the delay relative to the nature of the crossing (e.g. signalised vs unsignalised) and that the chance of this depends on the flow level. A simple intersection of two streets has a different meaning in delay terms, which will generally be a function of the two street highway types. In general I would always encourage that crossings should specify their type, as they have different behaviours (informal vs formal vs zebra crossing in the UK, etc.) and will be country-specific.
A crossing can also indicate in transport planning terms that a specific intervention has taken place to improve the pedestrian environment. It is unsafe to bias OSM data by users accidentally adding in such crossings. For instance, it may be a useful analysis to determine pedestrian level of service by counting the density of crossings provided in different cities. Areas where pedestrian traffic is considered important will generally have a higher density, because crossings specifically give pedestrians increased priority against vehicles.
If the path has
crossing=marked, that tag is added to the vertex as well.
I think that might be acceptable, but that sounds like double-counting to me. I think that if a crossing is represented as a drawn geometry, with its path entering and existing (rather just as a point on a road with no pavement), that geometry more accurately reflects what is on the ground. To tag the point also as a crossing to me seems unnecessary, as that is almost like saying there is a crossing within a crossing. Again see my point * below.
What do you think about cycleways crossing roads? Are those usually considered crossings?
One can't assume that a cycleway crossing a road isn't in fact two independent cycleways that happen to funnel into the road on opposite sides. That's not uncommon, and the fact it's lazily drawn as a single line doesn't infer anything as cycleways rarely have distinct names anyway so people don't bother to split them into two. My general comments above apply - it's unsafe to assume crossing infrastructure is present, but that is what a tag means.
--
[*] I leave aside here the general problem in the OSM model that spaces are represented as flows, and neither model is ultimately correct, resulting in slightly nasty compromises - but that is a matter for a SOTM talk I keep saying I will give sometime!
@mvl22 It seems like you're really passionate about this! In the future it would be helpful to those following the thread if you could keep things more concise.
It seems like we have a difference of understanding on a few points.
highway=crossing on the connection node, regardless of whether crossing infrastructure or markings exist.crossing=marked (or until recently something like crossing=zebra). Unmarked crossings can optionally be tagged crossing=unmarked.We can safely assume that a foot path crossing a road will be a natural crossing almost 100% of the time, so it's a missed opportunity to not add highway=crossing at the point of creation. This is the same logic as adding railway=level_crossing every time a road crosses a railways.
It's recommended to mark crossings as nodes as well as ways since road routers won't necessarily process the paths. If statisticians care about this difference they can collapse the features themselves.
Okay:

Preferred:

I see your point that bike lanes mapped as separate ways crossing roads shouldn't be tagged as pedestrian crossings. I might change the cycleway/road intersection behavior.
Upon further consideration, I don't think service roads should be treated differently. I removed the exception I added yesterday.
For instance, a shared-use pavement cycleway which has driveways crossing over it continually would not normally be considered to be constituting a series of crossings, even informal crossings
For what it is worth I add highway=crossing in such situations when I edit with JOSM.
- Anywhere that is the natural place for a pedestrian following a path to cross a road should be tagged
highway=crossingon the connection node, regardless of whether crossing infrastructure or markings exist.
Yes, that is not the traditional means of tagging as I have experienced over the last 10 years. A crossing is either a distinct piece of infrastructure for where people are encouraged to cross, or can be informal when marked with crossing=unmarked (but I would expect such a crossing to have a degree of community consensus that this is a place where people do commonly cross).
In both of those images, I cannot see a crossing in the satellite imagery where the two nodes have been tagged, so I would not expect a crossing tag. There may be excellent road safety reasons why people don't cross there. The pedestrian lines only exist for connectivity reasons.
I would say that this change in iD as it stands is fundamentally trying to change the meaning of highway=crossing. In general I don't think a Github ticket is the place to propose changes to tagging, especially when it is a side-effect of an otherwise excellent and much-needed (and well-implemented!) feature. This should be on a suitable mailing list. So I would encourage you to revert the addition of any tags but raise the point there.
NB Bear in mind that in countries outside e.g. the US, the concept of jaywalking doesn't exist. People can and do cross everywhere.
NB Bear in mind that in countries outside e.g. the US, the concept of jaywalking doesn't exist. People can and do cross everywhere.
This is exactly why it's important to connect up all the paths and roads and indicate where people may likely be crossing, even if there isn't any marked infrastructure there. If it's dangerous to cross then remove the tag or don't connect the features there.
I would say that this change in iD as it stands is fundamentally trying to change the meaning of
highway=crossing. In general I don't think a Github ticket is the place to propose changes to tagging
We're not proposing a tagging change and we didn't make this up. Many mappers have used this tagging pattern for awhile now, particularly those that care a lot about pedestrian routes.
an otherwise excellent and much-needed (and well-implemented!) feature
Thank you for the compliment!
Just because some people have been doing it doesn't mean it's common or generally accepted...
At the very least it would appear to be completely, or almost completely, redundant - that much is clear from the statement that almost all crossing points should be tagged in this way. When something is the default like that it's not normal to tag it explicitly if only because it's wasteful.
That said I suspect there's something of a UK vs US disconnect here with US users used to having rules about where they are (at least officially) allowed to cross while UK users are used to being allowed to cross where they want and only needing to have crossings with infrastructure pointed out as a special case.
Most helpful comment
Just because some people have been doing it doesn't mean it's common or generally accepted...
At the very least it would appear to be completely, or almost completely, redundant - that much is clear from the statement that almost all crossing points should be tagged in this way. When something is the default like that it's not normal to tag it explicitly if only because it's wasteful.
That said I suspect there's something of a UK vs US disconnect here with US users used to having rules about where they are (at least officially) allowed to cross while UK users are used to being allowed to cross where they want and only needing to have crossings with infrastructure pointed out as a special case.