Proposed edit of some `barrier=kerb kerb=raised` nodes

If you’ve been reading my posts about kerb tagging (1, 2), then you already know that StreetComplete places kerb=raised by itself on a node where a footway meets a road to mean “you might expect a crossing and lowered kerb here but there isn’t one”. Whether there are better ways of tagging this is currently being discussed here. The problem is that iD users have added barrier=kerb to such nodes because the validator in iD told them to. This leads to issues, because it’s interpreted as a raised kerb across the road. For example it stops OSRM from routing cars along the road.

The good news is that new nodes like this will no longer be created because of a recent change in iD, disabling the suggestion to add barrier=kerb to such nodes. I’m grateful to everyone involved that this has been fixed so soon after I spotted it.

The bad news is that there are now about 1,500 nodes tagged barrier=kerb kerb=raised that really shouldn’t have the barrier=kerb tag.

How would people feel about editing them all in one go, following the automated edit code of conduct?

I propose doing something like this

  • use Overpass (query) to get all barrier=kerb kerb=raised nodes on roads (i.e. highway ~ trunk|trunk_link|primary|primary_link|secondary|secondary_link|tertiary|tertiary_link|unclassified|residential), there are 1495 of them
  • check a few dozen manually and only proceed if they are clear tagging mistakes
  • for each suspicious node, retrieve the history (example API call)
  • find the changeset that added barrier=kerb; retrieve the changeset metadata (example API call) and see if it was created_by iD with resolved:outdated_tags:incomplete_tags >= 1
  • if yes, go back further in the changeset history to find the changeset that added kerb=raised; retrieve the changeset metadata (example API call) to see if it was created_by StreetComplete with comment “Add whether there is a crossing” or “Specify whether there are crossings at intersections of paths and roads”
  • generate a couple of OSC files, e.g. one for each grid square (which resolution is appropriate? in other words, how many changesets should there be vs. how big should they be?)
  • upload here for scrutiny and check manually, then after people have had a chance to check it, commit using JOSM, with a changeset comment linking to the discussion, etc.

Importantly, this excludes all situations where barrier=kerb was added before or at the same time as kerb=raised, or where they used a different editor than iD, or where kerb=raised wasn’t added by StreetComplete. We don’t want to retag anything where a human set the barrier=kerb tag on purpose.

It would require a few read-only API calls (no more than 4500) that could be spread out over a few hours to make sure that service levels are not affected.

Why not create a Maproulette challenge?

I don’t have any experience with Maproulette, but from what I can see, I think it works best when some human intervention is required. Using the steps above we should be able rule out that someone added the barrier=kerb on purpose to mean that there is a kerb across the road, so checking each one manually would not be a good use of anyone’s time.

Any thoughts on this?

7 posts - 4 participants

Read full topic

Ce sujet de discussion accompagne la publication sur