-
Notifications
You must be signed in to change notification settings - Fork 885
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
Store more information (including name handling rules) for each category #4906
Comments
Some more potential candidates for "default names" based on my experience:
I think your suggestion to split name handling in 3 categories works well. Is it enough to define a category based only on the feature tag or do we need to categorize individual brands/features? |
All good suggestions! I'd add
I'm going to try to make it per-category, but allow override per-brand. |
This moves towards storing more information about categories in the data/* files (re: #4906)
I would consider actually that "Strict name" would be pretty rare. Even the full name of the McDonald's on the corner of my street is "McDonald's Lyon Bellecour". IMHO : we should suggest the base name but allow the user to modify it so he can enter the full name. |
I think most people would prefer that you don't map branded POIs this way. Would you be open to the idea of using |
Well "McDonald's Lyon Bellecour" is the name of the restaurant, as named by McDonald's ( https://www.restaurants.mcdonalds.fr/mcdonalds-lyon-bellecour , https://www.google.com/maps/place/McDonald's+Lyon+Bellecour/@45.7581072,4.8342199,19z/data=!4m5!3m4!1s0x47f4ea515bc1b983:0x286b4b8e903dba5a!8m2!3d45.7583331!4d4.8341668 ) It's not a branch of the brand. I can check with other mappers but I believe the use around here is to specify the full name when known. |
Add skipCollection for categories which should not do it (re: #4906)
I’d welcome additional nuance when it comes to name keys. A “default name” will be particularly useful for “community anchor institutions” that are branded by their communities just as much as by their parent organizations. For example, in the U.S., maps and directories conventionally list post offices and libraries by their individual branch names (“Springfield Post Office”) rather than their brands (“United States Post Office”) when space allows. Besides community anchor institutions, there are some brands that make a point of using unique names for each store location whenever possible, even if competing chains don’t:
In the U.S., McDonald’s uses store location names much less frequently than a chain like Apple. Do their branding practices differ significantly in France? I’ve been using Ultimately, it comes down to a matter of taste and which kind of data consumer one is optimizing for. In general, including a |
I think in the UK this perhaps varies by brand/brewery for pubs, or I guess more subtly the name is generally more important than the brand (indeed the brewery can change without you even necessarily noticing), whereas for Amazon Lockers it's the other way round, you need to find an Amazon Locker first and then find your one, it's no good finding someone's else's locker which also happens to be called Hemlock, or perhaps ironically if another company chose "Amazon" for one of their locker refs. As I mentioned in the Greene King PR: Which I think is particularly relevant for things where it's almost some sort of ref (e.g. parcel lockers, bike docks etc), you don't want to be having to deal with whether someone named it "Hemlock", "Amazon Hemlock", "Hemlock - Amazon Locker", "Amazon Locker - Hemlock", "Amazon Locker Hemlock" etc.
Possibly controversial idea, as maybe this is tagging for the renderer a bit too much, although people also seem to agree that we should be over-filling the name tag, presumably because it means the most basic data consumer can get something useful. Anyway, what about rather than name handling rules, how about name construction rules to extend your default and strict ones. So if we know Best Western Plus brand uses Also relevant: |
I am thinking of adding support for "merge strategy" property like this: "mergeStrategy": { // per-key strategy to apply when merging tag values from NSI -> OSM
// "create": NSI may set a default tag value on creation, but may not modify an existing tag value
// "replace": NSI tag value always replaces OSM tag value (the default)
// "ignore": NSI tag values will never update OSM tag value
"create": ["^building", "^name", "^takeaway$"],
"replace": [".*"],
"ignore": ["^payment:"]
}, We could define these things per-tree, per-category, or per-item. It's a little weird, but I think it's flexible enough to let us do anything we need today. I could imagine creating something in the future that would let us map "nonstandard" |
@bhousel The existing addTags/removeTags for presets is fairly tricky to implement precisely. This looks to add another layer of complexity on top of it. |
Yea for sure - It's really an attempt to remove some of the complexity from iD's validator (which tags should be replaced) and user interface (which fields should be locked) I'd still generate the presets the same way with addTags/removeTags - that interface won't change. |
I realized after talking to @bryceco that this "preserveTags": {
"description": "(optional) For tags matching these patterns, NSI should not replace an existing value in OSM",
"examples": ["^name"],
"type": "array",
"uniqueItems": true,
"items": {
"type": "string",
"format": "regex"
}
}, This property can be used as a per-category property, or a per-item property. I added
I added
|
Would it be useful to preserve |
I did! It’s the last one on the bulleted list.. |
Ah, I misinterpreted the |
No problem, I definitely want you to check my work! (in this case the |
Moving this discussion to a new issue from the Greene King PR:
"What to do with names" is really the final unresolved thing about NSI that I need to figure out before making a real v5 release - you can see on openstreetmap/iD#8305 that we're running into this same thing with Amazon Lockers (they all have unique names), and on openstreetmap/id-tagging-schema#119 the same thing with cinema chains.
I see three ways to handle a
name
tag, depending on what kind of a feature we have:I think this information should live in NSI somewhere, so we can remove the iD preset-field hack. I also think that this should be a per-category decision (maybe items can override it), but this is tricky because NSI has quite a lot of categories.
So I'll be adjusting the file formats a bit to settle on a nicer way to capture more information for each category.
Originally posted by @bhousel in #4902 (comment)
The text was updated successfully, but these errors were encountered: