Skip to content
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

Surveying brand locations (using the Name Suggestion Index) #1693

Open
5 tasks done
kymckay opened this issue Jan 3, 2020 · 25 comments
Open
5 tasks done

Surveying brand locations (using the Name Suggestion Index) #1693

kymckay opened this issue Jan 3, 2020 · 25 comments
Labels
new quest accepted new quest proposal (if marked as blocked, it may require upstream work first)

Comments

@kymckay
Copy link

kymckay commented Jan 3, 2020

General

Affected tag(s) to be modified/added: brand:wikidata, not:brand:wikidata (these are the main tags, amenity, leisure, cuisine, shop, etc. can all also be updated as driven by the Name Suggestion Index).
Question asked: Is this location part of the X brand?

Checklist

Checklist for quest suggestions (see guidelines):

  • 🚧 To be added tag is established and has a useful purpose:
    • Distinguishes brand locations explicitly thanks to unique QID
    • Standardises other related brand tagging per brand (as taken from NSI)
    • The only caveat here is that the tag not:brand:wikidata is not currently widely used, however I would appeal to the fact that not: is an established prefix and the iD editor already checks for this tagging to prevent false positive brand tag suggestions
  • 🤔 Any answer the user can give must have an equivalent tagging (Quest should not reappear to other users when solved by one):
    • If it is the brand, brand:wikidata prevents future quests
    • If it's not the brand but the name is correct not:brand:wikidata explicitly marks this
    • If it's not the brand and the name is not correct then updating the name prevents the quest reappearing
  • 🐿️ Easily answerable by everyone from the outside but a survey is necessary
  • 💤 Not an overwhelming percentage of elements have the same answer (No spam)
  • 🕓 Applies to a reasonable number of elements (Worth the effort)

Ideas for implementation

This quest type would be similar to brand tagging upgrades suggested by iD, so the behind the scenes implementation could really be along the same lines as done there.

I'm not too familiar with android development or Kotlin, but if you can use the javascript package directly then you could even use the provided matcher like iD does. Otherwise I suppose it would need to be re-written in a suitable language to see the same behaviour.

Element selection:

Elements tagged matching the categories present in the NSI (shop, leisure, amenity, etc.) Then check for fuzzy matches against the name tag (NSI provides matchNames for alternate possible names that could be the brand).

Metadata needed:

I believe all metadata needed is available from the Name Suggestion Index (country codes specifying where a brand is present if it isn't global, alternate possible names and taggings, the tags that should be added to the brand). If anything needed can provided in a structure that's more convenient then that could probably be arranged too by opening up an issue to ask.

Proposed GUI:

A simple 3 possible answers question:

  • Yes this is the brand location in question
    • Adds brand:wikidata tag
  • No, but the name is the same
    • Adds not:brand:wikidata tag
  • No, the name is different
    • User is prompted to input the new name
      • Check again if the name still fuzzy matches the brand
        • If yes: add not:brand:wikidata
        • If no: update the name tag

Could show the brand logo if available alongside the question, I know that google maps does this when asking users if POIs are a brand location.

@westnordost
Copy link
Member

But how would the question look like exactly?

"Is this McDonalds part of the McDonalds brand?" does not really make sense. How to say that THE McDonalds is meant?

@westnordost westnordost added feedback required more info is needed, issue will be likely closed if it is not provided new quest accepted new quest proposal (if marked as blocked, it may require upstream work first) labels Jan 4, 2020
@kymckay
Copy link
Author

kymckay commented Jan 4, 2020

🤔 Good question, perhaps then having the brand logo available would be necessary to be able to clearly show which brand is meant.

@HolgerJeromin
Copy link
Contributor

This should take the two "netto" supermarkets in germany into account: Netto Marken-Discount and Netto. This needs the brand logo, too.

@maxerickson
Copy link

This location is named "McDonald's", does it appear to be a "McDonald's" franchise or chain store?

If StreetComplete can have links in that text, there could be a link to the wikidata entry (available in the Name Suggestion Index entry), and there could be multiple challenges with just franchises/chain stores/etc.

@pkoby
Copy link

pkoby commented Jan 5, 2020

This would probably run into similar issues as iD recently did where the logos were pulled from various external sources (including Facebook), opening up concerns about privacy. I don't know that you could have a database of logos on the device without taking up a lot of storage space, not to mention copyright concerns, and I also don't think downloading the logos for every quest is feasible for some people using mobile data.

@westnordost
Copy link
Member

westnordost commented Jan 5, 2020 via email

@matkoniecz
Copy link
Member

matkoniecz commented Jan 5, 2020

Probably combination of tracking fears and FB=evil reaction.

Both are justified but in this case what can be tracked is probably very limited (unlike Facebook pixel type of things).

Still, tracking would not be relevant as in StreetComplete it would be bundled in the app, not fetched on demand.

Question about bundling assets without an open licence still remains.

@HolgerJeromin
Copy link
Contributor

How is downloading an image from Facebook servers related to privacy?

In a web browser environment downloading results in sending a cookie to facebook. So facebook knows who you are and knows that your are editing an supermarket.
But as @matkoniecz said: Not relevant when bundled in the app, if this is allowed.

@westnordost
Copy link
Member

westnordost commented Jan 5, 2020 via email

@Atrate
Copy link
Contributor

Atrate commented Jan 5, 2020

I would advocate for bundling the images in the app, if only because someone (me) might have a hosts file that blocks all requests to FB

@HolgerJeromin
Copy link
Contributor

Why would a cookie be transmitted?

In a browser (id editor) there is no (easy?) way to prevent this.

I would advocate for bundling the images in the app, if only because someone (me) might have a hosts file that blocks all requests to FB

On mobile?
iD has a fallback to generic icons. IMO sufficiant.

@Atrate
Copy link
Contributor

Atrate commented Jan 5, 2020

On mobile?

Yes, through a custom hosts file

@matkoniecz
Copy link
Member

Why would a cookie be transmitted?

In a browser (id editor) there is no (easy?) way to prevent this.

I am pretty sure that @westnordost was asking about situation in a potential SC quest, iD design issues are really offtopic here.

@Atrate
Copy link
Contributor

Atrate commented Jan 6, 2020

If it's a simple HTTP/S get then the only thing FB will know is your IP, cookies are not required for grabbing images from there (yet I'd still prefer to avoid that)

@westnordost westnordost removed the feedback required more info is needed, issue will be likely closed if it is not provided label Jan 7, 2020
@westnordost
Copy link
Member

(This is a bit of a blue-sky quest though, because the effort to implement it is relatively high:

  • possibly the library that I currently use to get the name suggestion index data needs to be adapted to support this use case
  • (final) matching of eligible shops and amenities must be done locally with the mentioned matcher
  • relevant icons / pictures of the brands asked for must be downloaded during quest download and stored persistently in the cache (for example like the OSM avatars)
    )

@camelCaseNick
Copy link

I had thought about this potential quest before, but I had and still have multiple concerns about it.

They are mainly:

Firstly, while namespaces, such as no: and no:, are documented in the wiki, they were neither subject to the proposal process, nor are they widely used.

Secondly, there has been no discussion, which I am aware of, regarding the the name-suggestion-index and its bindingness. And since a user of StreetComplete should be allowed to be unaware of OpenStreetMap's tagging schemes only the most uncontroversial tags should be used. And while the OpenStreetMap wiki entry suggest to discuss changes prior to a pull request, there is no effective checking for that. Something that could lead to a controvery is that in the name suggestion index, one finds English Wikipedia article references for German brands only or mostly present in Germany.

Thirdly, a store might match multiple chains/brands or not the correct/most specific one, even though the correct one is in the index. E.g. there is Aldi, Aldi Nord and Aldi Süd in the index. When the name matching from the index is used, a store named Aldi would match the Aldi entry, even though it is not the most specific entry, which should be preferred over the more generic one, making it less likely that someone would add the tags describing the chain. With a more advanced matcher, which would, on top of it, need to be developed from scratch, Aldi Nord stores with a tag for not brand Aldi Süd or alike could get into OpenStreetMap, which would it make even less likely that another one would try to add brand/chain specific tags.

@matkoniecz
Copy link
Member

matkoniecz commented Jan 8, 2020

on topic of English Wikipedia article references for German brands only present in Germany

Is German community expecting to use German-language wikipedia in such cases? If yes, please open issues (or pull requests) for this kind of problem at https://github.com/osmlab/name-suggestion-index (I fixed ones that I spotted in Poland).

Feel free to ping me there (include @matkoniecz in issue/PR text to make more likely that I will notice and process it).

and its bindingness

It is not binding at all. It may have mistakes and many were spotted fixed already. At this moment it is of a quite good quality, but as with any preset there will be always some issue lurking, especially as world changes and/or new entries get added.

@camelCaseNick
Copy link

@matkoniecz Actually, I don't care, I avoid wikipedia tags at all cost and use wikidata for multiple reasons. I only know of one case, where someone didn't like the chosen language. And yes, the quality of the index is good. I just wanted to point out that it is a difference between something getting merged into a github repo for a preset or getting proposed and used tens of thousands of times – regardless of the quality or that I am not (yet?) aware of any serious problems with wikipedia links.

The example was just to present the possibilities and to give an explanation for what I mean with being cautious. Since the usage of specific keys and tags for StreetComplete was cautious I thought also theoretical, still valid, concerns should be pointed out.

@kymckay
Copy link
Author

kymckay commented Jan 8, 2020

I personally don't really care for wikipedia tagging since wikidata tagging provides the same information by proxy (and actually is more useful since wikipedia articles move around a bunch anyway).

Such a quest could always leave the wikipedia tags out if they're contentious.

@Binnette
Copy link
Contributor

Hi everyone, can I suggest to close this issue?

I think this "quest" is not relevant for StreetComplete. It does not need a survey. If the building is named "Food Me", it's because someone tag it like that, so i can be confident on the fact that this shop is branded "Food Me Inc". If the shop is renammed "Shoes Me", so i will change the brand according to it and there is still no need of survey.

The only think we need to do if to find any shops named "Food Me" and then add the tag "brand=Food Me Inc", "brand:wikidata=QXXXXXX", "brand:wikipedia=en:Food Me", ...

For me, the best way to do so, is to use an Overpass query to find shops by name without tag brand, then you will edit the map to add brand tags.

You can also use apps like MapRoulette, here is a challenge I made to add brand tags to a burger company: https://maproulette.org/browse/challenges/12036
You will find on the challenge the overpass query I used to do so.

I really hope that it helps you. I really encourage you to try Overpass queries, you can look for any brand you want, then extract all data to JOSM and edit them manually.

@camelCaseNick
Copy link

camelCaseNick commented Jan 16, 2020

Hi everyone, can I suggest to close this issue?

You can. I don't understand why you would though.

The only think we need to do if to find any shops named "Food Me" and then add the tag "brand=Food Me Inc", "brand:wikidata=QXXXXXX", "brand:wikipedia=en:Food Me", ...

For me, the best way to do so, is to use an Overpass query to find shops by name without tag brand, then you will edit the map to add brand tags.

One reason to tag brand name and brand references to LOD projects, is to make sure those stores really are part of that brand. Especially important is this, if the brand names are somewhat generic like Burger King. (see way 165659335, if it hadn't not:brand:wikidata=Q177054 one couldn't determine it's non-existent connection with the Burger King chain, so remote edits should be performed properly.)

You can also use apps like MapRoulette, here is a challenge I made to add brand tags to a burger company: https://maproulette.org/browse/challenges/12036
You will find on the challenge the overpass query I used to do so.

I don't recommend doing that for generic sounding brands.

I really hope that it helps you. I really encourage you to try Overpass queries, you can look for any brand you want, then extract all data to JOSM and edit them manually.

You can use Overpass or another Query service at will, but editing brand tags without knowledge about the shop from survey or another usable source, like street-level imagery, is not a fully manual edit.

@Binnette
Copy link
Contributor

Hi @camelCaseNick, and thank you. I think that i occulted a whole part of the issue here. I was only considering "generic brands". Sorry about that.

@peternewman
Copy link
Collaborator

I think there are also two other issues here @Binnette . Firstly brands which have gone away, although I think iD was looking to cover that, see for example:
https://osm.mathmos.net/ghosts/

Secondly actually validating on the ground that the shop is still there, and of that brand etc (i.e. it hasn't closed or been replaced by something else). Otherwise I wonder if it's a bit of an automated edit:
https://wiki.openstreetmap.org/wiki/Automated_edits

That seems like the main benefit of this quest to me, it allows things to effectively be re-surveyed.

Also what about suggesting these names on the existing shop/amenity names, to avoid the inconsistency of Mc Donald's, McDonalds, McDonald’s?

@peternewman
Copy link
Collaborator

Also what about suggesting these names on the existing shop/amenity names, to avoid the inconsistency of Mc Donald's, McDonalds, McDonald’s?

Having just done a bunch of shops in a high street, using NSI's names as a suggestion when tagging shop names would also really help, e.g. type:
McD and it asks (did you mean the brand McDonalds) do that 10-20 times and it's a lot quicker and more accurate than typing them out manually. Yes you still need to do the independents and smaller shops, but it would help a lot for the others.

@rugk
Copy link
Contributor

rugk commented Apr 25, 2021

Then check for fuzzy matches against the name tag (NSI provides matchNames for alternate possible names that could be the brand).

And fuzzy-match brand= to convert that tag into a machine-readable one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new quest accepted new quest proposal (if marked as blocked, it may require upstream work first)
Projects
None yet
Development

No branches or pull requests