Id: Specific building tags are replaced by generic building=yes

Created on 6 Sep 2017  路  7Comments  路  Source: openstreetmap/iD

When adding other tags to a way with a specific building value the specific building tag is replaced by a generic building=yes.

Example 1:

  1. draw a closed way, manually add building=church
  2. select church from preset
  3. resulting tags are amenity=place_of_worship, religion=christian (why is this the default?) and building=yes

Example 2:

  1. draw a closed way, manually add building=shed
  2. select toilets from preset
  3. resulting tags are amenity=toilet and building=yes
preset

Most helpful comment

This is a quite normal workflow when adding tags to an existing feature.

My first example is from a real use-case. The building did already exist in the map but the toilets didn't. I added the toilets via a preset to the existing building.

The second example is an imaginary one, that's true. I just wanted to check if the same problem exists for different presets and different building values.

All 7 comments

I can think of several situations where you'd want the current behavior. E.g. if you had something tagged building=no or building=disused, and then changed the preset to something where the building=yes should replace it.

After the preset has been assigned, iD does show the building field with the yes value in it, so it is clear to a user that they can change that value if they want it to be something else.. So let's leave the current behavior as is.

After the preset has been assigned, iD does show the building field with the yes value in it, so it is clear to a user that they can change that value if they want it to be something else.. So let's leave the current behavior as is.

Uhm, really? It isn't obvious for the user at all that the previous building value has been automatically changed by iD. Most users won't notice, especially not inexperienced ones. Even I noticed it only by accident.

Silently changing existing tags is a very bad thing. I understand your example with building=no or building=disused. However by looking at my two examples from the first post it should become clear that the current behavior is bad and needs to be fixed.

You're really not supposed to add tags and then assign a preset. I'm kind of surprised anyone would do this, to be honest.

This is a quite normal workflow when adding tags to an existing feature.

My first example is from a real use-case. The building did already exist in the map but the toilets didn't. I added the toilets via a preset to the existing building.

The second example is an imaginary one, that's true. I just wanted to check if the same problem exists for different presets and different building values.

I'm kind of surprised anyone would do this, to be honest.

I am not sure what is causing that but I noticed that many iD users are mapping shops (like https://www.openstreetmap.org/way/678166526/history ) with building=retail + name=* without shop=* tag.

Standard way of fixing that with iD in turn removes building type as mentioned in this bug report.

I wonder why the quite similar bug #6530 has been fixed while this one hasn't.

I agree that overwriting existing tags can be useful under certain conditions. However bluntly replacing all tags that are part of a preset is certainly wrong. I suggest to let the user choose which tags to replace in case of conflicts. Alternatively highlight tags which have been replaced and give the user the possibility to revert them individually.

@scaidermern #6530 is about the outdated tags validation, not about switching presets.

See https://github.com/openstreetmap/iD/issues/8006#issuecomment-694864021 for current info about this.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

rivermont picture rivermont  路  3Comments

Chaz6 picture Chaz6  路  3Comments

tordans picture tordans  路  3Comments

scaidermern picture scaidermern  路  3Comments

jidanni picture jidanni  路  3Comments