From OpenStreetMap Wiki
- Use existing keys if you can. When you use a key, check to see if there's an existing value that matches what you are mapping. To go looking, put your key into the following URL where it says "shop": Key:shop
- Use existing tags if you can. When you use a tag (key=value), check to see if an existing tag is already documented. Don't use it in a different way if it's already documented. To go looking, change this URL where it says "shop=car": Tag:shop=car
- Never invent a tag which you don't have a concrete use for. But if you're using a tag, document your use of the tag, so that other people won't use your tag to mean something else. Define your tag so that it is verifiable.
- If you disagree with the definition of the key or value, then create a new key or value with a different name, use it in your editing, document it in the wiki, AND (this is important) edit the page for the tag you disagree with so that it mentions your tag as an alternative so that people understand that there is disagreement. Link to Taginfo so that people can find out which is more often used in practice.