Add `ref` for `highway=emergency_access_point` and `emergency=access_point`
General
Affected tag(s) to be modified/added: highway=emergency_access_point highway=access_point Question asked: Is there a reference number on this (emergency) access point?
Checklist
Checklist for quest suggestions (see guidelines):
- [x] 🚧 To be added tag is established and has a useful purpose
- [x] 🤔 Any answer the user can give must have an equivalent tagging (Quest should not reappear to other users when solved by one) "Answer: no" would add noref=yes
- [x] 🐿️ Easily answerable by any pedestrian from the outside but a survey is necessary Regarding wiki, all access points have a number on the sign.
- [x] 💤 Not an overwhelming percentage of quests have the same answer (No spam) There are "only" around 1400 missing ref's in Germany.
- [x] 🕓 Applies to a reasonable number of map data (Worth the effort) Probably not really worth, but there a lot of similar quests which could be duplicated for this case. Regarding taginfo there are only 4-5 % of all access points without a ref-number which are worldwide 2.342 issues for this quest.
Disclaimer: I'm perfectly fine with closing the issue if it doesn't make sense.
Ideas for implementation
Element selection: (highway=emergency_access_point or emergency=access_point) and ref!=* Overpass Turbo for Germany: https://overpass-turbo.eu/s/1lVd
UI: UI and behaviour could be identical with the bus ref quest or the post_box ref quest.
emergency access point will have code almost by definition, otherwise there are useless, right?
Regarding taginfo there are only 4-5 % of all access points without a ref-number which are worldwide 2.342 issues for this quest.
2132 after limiting to nodes: https://overpass-turbo.eu/s/1lVf
A bit borderline, but this data can be actually useful (for emergency services using OSM data and for resurvey whether emergency points are actually signed).
A quest should have as "other" option:
- no, this is a assembly_point https://wiki.openstreetmap.org/wiki/Tag:emergency=assembly_point
emergency access point will have code almost by definition, otherwise there are useless, right?
I'm not an expert here unfortunately, I just noticed some of these bugs in my area on Osmose and that's where I got the idea for this quest.
If it is relevant, this is the Osmose Item / Class: https://osmose.openstreetmap.fr/en/issues/open?item=2080&class=20802 Source: https://github.com/osm-fr/osmose-backend/blob/master/plugins/TagFix_MultipleTag.py#L99
- Will the surveyor know what to look for when asked for an "emergency access point"?
- Similarly, will he know if something is an "assembly point"?
Will the surveyor know what to look for when asked for an "emergency access point"?
Good question and to be fully honest: I don't know. I for myself have never seen such a thing in reality. According to Overpass the next one in OSM is also a few hundred kilometers away, but I would have had now somehow already a green sign with a white cross in the head.
That would also be the idea for the quest icon: A white cross on a green background.
Similarly, will he know if something is an "assembly point"?
I can't answer that either. But an "assembly point" I have learned at least during my school time in "fire safety exercises" (Brandschutzübungen) and partly also had employers where this was part of the introduction.
Nevermind, I was bored and I've always wanted to create my first quest. So here is my implementation. I still wouldn't be sad if the quest doesn't fit. At least I ticked off "create your own quest" for myself.
I have used the red questionmark currently as the icon and duplicated the BusStopRef-Quest for this:

Currently the "Other" option for assembly point is missing, but I want to try myself for this:

Will the surveyor know what to look for when asked for an "emergency access point"?
In my opinion: yes At least if they find them
Similarly, will he know if something is an "assembly point"?
I know them in germany with always the same sign. Other countries? But as this an menu item we can not have an icon direct visible.
I've created a fork and pushed all commits to an own branch. Let me know if it's fine if I create a Pull Request for this Quest or if I should delete the branch.
If it's worth to continue, I would need help with the "Other Answer".
I would continue with this in the AddAccessPointRefForm.kt:
override val otherAnswers = listOf( AnswerItem(R.string.quest_accessPointRef_answer_assembly_point) { applyAnswer(AccessPointRefAnswer.ASSEMBLY_POINT) } )
But I don't get it how to add the ASSEMBLY_POINT in AccessPointRefAnswer.
That's cool, congratulations! A few remarks of what you showed so far:
- Title question does not need to mention "emergency access point" because it is already mentioned in the hint below
- I guess if the emergency access point has a
name(or anything else that could be used otherwise to reference it), it also should not be asked - It probably needs a "does not exist here" option? Though, this is a bit dangerous of course, if the emergency access point looks different than one would expect and the user answers this erronously
Regarding your question: See for example SmoothnessAnswer on how to add "out of the line" answer options.
Regarding the eligibility of this quests, my concerns are:
- with
noref=yes,nameandrefexcluded, how many elements are these exactly worldwide? Is this even worth the effort then? (A number has been cited earlier but I think it did not takenameandnorefinto account) - not sure if "the average Joe" would be able to identify an emergency access point as one? Maybe a picture can help - if they don't look very different across countries i.e. their appearance is somewhat international. Needs some research
- not sure if "the average Joe" would know what an "assembly point" is. Maybe a picture can help, i.e. when the user taps on "is assembly point", a picture is shown, asking "so something like this is visible?". (The same is done for when the user answers that something is a living street in the maxspeed quest). That too, depends on whether there is some kind of international symbol maybe?
In any case, even if this turns out to be too problematic for Streetcomplete, maybe Helium would include this in his "expert" edition, so I think it is fine to create a PR once you think it is done.
1. Title question does not need to mention "emergency access point" because it is already mentioned in the hint below 2. I guess if the emergency access point has a
name(or anything else that could be used otherwise to reference it), it also should not be asked
Fixed both of them.
3. It probably needs a "does not exist here" option? Though, this is a bit dangerous of course, if the emergency access point looks different than one would expect and the user answers this erronously
I can't get it to work yet, this seems to be too complex for me at the moment, as a lot of references to other functions have to be created. For this I would have to read up more deeply but I will do some more attempts to add more functionality.
- with
noref=yes,nameandrefexcluded, how many elements are these exactly worldwide? Is this even worth the effort then? (A number has been cited earlier but I think it did not takenameandnorefinto account)
Including all filters there are 1117 items remaining worldwide (Overpass)
I've added already a quest icon, so that's the current state:

Yeah, maybe @Helium314 could hand over at this point if interested.
I can't get it to work yet, this seems to be too complex for me at the moment, as a lot of references to other functions have to be created. For this I would have to read up more deeply but I will do some more attempts to add more functionality.
add
override val isDeleteElementEnabled = true
add
override val isDeleteElementEnabled = true
Thank you! That works.
Now the Other Answer -> Assembly Point also works:

If that's the case, the tags"highway=emergency_access_point" and "emergency=access=point" are removed.
Overwrite works fine with tags["emergency"] = "assembly_point" in is IsAssemblyPointAnswer
For the removal I only find tags.remove() but this removes the complete highway Tag.
Shouldn't be a big problem at all, because there are only 37 Nodes which would be affected worldwide, but a few of them have highway=milestone which would then be deleted.

Overpass: https://overpass-turbo.eu/s/1lWg
Is there a way to only remove highway with emergency_access_point?
Edit: Just found out that it's rendered in the Emergency Map
@mcliquid You can check tag value - for example in AddTactilePavingKerb
override fun applyAnswerTo(answer: Boolean, tags: Tags, timestampEdited: Long) {
tags.updateWithCheckDate("tactile_paving", answer.toYesNo())
if (tags["kerb"] != "no") {
tags["barrier"] = "kerb"
}
}
@mcliquid You can check tag value - for example in
AddTactilePavingKerb
Nice, thank you! That worked.

I've tested it with multiple nodes and I would say the quest works really well now. I will create a PR for more review.
The ticket will be closed automatically after the PR has been merged. Since the PR includes new string, this will happen in preparation of the v48.0 release, latest on the 30th of September.
Just to clarify @westnordost, will the strings for translation be available on 30th of September, or would 48.0 itself be released on 30th, and translation are supposed to be finished before that?
@mnalis As I understand 30th of September is planned to be date of alpha release and date when strings become available for translations (so it would be initial step in v48 release cycle)
Oh, OK, thanks @matkoniecz. So 48.0-alpha1 gets released on 2022-09-30 along with translation strings, and actual 48.0 releases some weeks after that (depending on the feedback).
Although as a translator I wouldn't mind at all (i.e. would like it) if translation strings were released few days before 48.0-alpha1 (so if I'm quick I might get a chance to test my strings live in 48.0-alpha1, and then maybe then tweak them a little for final 48.0). But not a critical thing, just would be nice.