-
-
Notifications
You must be signed in to change notification settings - Fork 366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Map Maintenance: Handling of fixme=name
and suspicious combinations of name=*+noname=yes
#5934
Comments
Why not always ask for the name if A note regarding implementation: What if the name is already (partly) set? I am thinking about multilingual names. The previous name(s) should also be shown in the form, if they aren't, yet. |
Makes sense
Will have to check how that works. |
Obviously neither an AE nor MapRoulette seem to be favoured by anyone, so I'm binning that idea. Using SC to remove the tag when a name is changed still seems like a good idea to me. |
Agreed! When SC users answers a name quest, |
@westnordost I was playing around with the data a bit today. I tried just setting the title for the normal "LocalizedNameForm" to "please confirm the name of this ...", and have the user actively enter or select the name again. Does that feel strange? If so, I'd need to somehow a) argument the current localized names into the form and b) have them selected / input as the default value. Any tips on how that would be achieved the easiest? |
You mean if all the names are actually already present, but there is a |
Yes, whereby all could also mean only one. If I want to get rid of |
Hmm, I am not sure if the form currently supports pre-filling it with pre-existing data. If it does, then your proposed solution will work, I'd say. For the opening hours re-check quest, there is a special UI for that, for the localized names, there surely isn't. Alternatively, you could also just show the form blank, i.e. ignore pre-existing names. This is consistent with many other "re-check" quests, where the user is just asked for the current situation on-site, ignoring (i.e. not show to the user) how it is tagged currently. Implementation-wise, this would be the easiest solution. And I really don't know if it is worth it to implement for the rather special case of Alternatively alternatively, this case could also be ignored, i.e. not trigger the quest. So that quest would only trigger if |
Agreed, probably not worth special casing. There are about 8k such combinations, and about 27k StreetComplete users. So, assuming random distribution, only every 3rd user will ever to enter the name from scratch once, before all the tags are fixed. So the complexity here is IHMO unneeded (especially as hopefully that combination will not be increasing exponentially). |
Thanks guys! |
Before I get slightly annoyed at myself: @westnordost are tags in the elementFilter case-sensitive? So, do I have to make the filter include |
I would support |
There are currently 151k |
I would just compile it and test on some test case present in OSM data maybe check relevant tests in repository that test matching IIRC it is not ignoring case, but I may be mistaken (similarly I expect that surface quests are not asked on |
I already designed some testcases, I'll just make sure to check the casing as well. Thanks for your input! |
It's case sensitive |
Is there a performance gain or loss (while applying any "this now has a name" answer), checking if there are any (data\osm\edits\update_tags\StringMapChangesBuilder.kt):
|
Note that this is not core functionality of StringMapChangesBuilder and thus shouldn't be in that file. Should be rather somewhere in Also, why not check if And of course there is performance loss if you do more, but this code looks like it would be negligible. |
Looking at taginfo, the only thing that really seems worthwhile to check for (it is even documented, not bad) is |
While nobody is probably a big fan of hardcoded lists in any case, but in this case I think it is quite warranted. Only certain very specific That removal of Details & examples: There are other situations which would match
All of the above are real-life examples retrieved via overpass https://overpass-turbo.eu/s/1XyD TL;DR: Thus, I think we should be conservative here and exclusively go only with fixed hardcoded list of known |
There is a lot less of them, true, but checking a few of them (mentioned above) does seem to add up to about 10% of the use cases of just main But if simplicity is absolutely paramount here, then yes, just |
I'll just go down to Draft PR to follow when I got all tests working |
Discussed in #5928
Originally posted by kmpoppe September 26, 2024
Situation
There are currently ~160k objects tagged with
fixme=name
.Understandably, SC currently ignores
fixme
tags completely - IMHO most values of that key would be impossible to survey without deeper investigation.Yet,
fixme=name
seems like a very straight-forward request: "I (the last mapper) was unable to determine what the name of this feature is, please help out".Proposal
I therefore would suggest for SC to work the following way:
a) remove
fixme=name
(if present) when the user answers quests/road_name or quests/place_name with either a real name ornoname=yes
(because otherwise, things like this (noname=yes
set,fixme=name
persited) or this (name
set,fixme=name
persisted) happen)b) the aforementioned quests should force a survey of the name when a
fixme=name
is older than one year to get rid of it, because all viable answer paths from there (name=*
,noname=yes
or changing the type of road that doesn't get asked for a name again) lead to a situation where thefixme
is no longer relevant.c)
FIXME=name
,Fixme=name
,fixme=name?
,Fixme=Name
, ... could be handled the same way.SCEE
I do not think that this option should only be something relevant for SCEE, because the handling is purely under to hood and there's no expert knowledge necessary to answer those already existing quests.
AEAn automated edit of things that are "clear cut" as proposed by @matkoniecz is planned, SC's tagging cleanup is nevertheless needed for remaining instances of fixme occurances.The text was updated successfully, but these errors were encountered: