Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

name-suggestion-index

Package Overview
Dependencies
Maintainers
2
Versions
211
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

name-suggestion-index

Canonical common brand names for OpenStreetMap

  • 2.0.1
  • Source
  • npm
  • Socket score

Version published
Maintainers
2
Created
Source

Build Status npm version

name-suggestion-index

Canonical common brand names for OpenStreetMap

What is it?

The goal of this project is to maintain a canonical list of commonly used names for suggesting consistent spelling and tagging of features in OpenStreetMap.

How it's used

When mappers create features in OpenStreetMap, they are not always consistent about how they name and tag things. For example, we may prefer McDonald's tagged as amenity=fast_food but we see many examples of other spellings (Mc Donald's, McDonalds, McDonald’s) and taggings (amenity=restaurant).

Building a canonical name index allows two very useful things:

  • We can suggest the most "correct" way to tag things as users create them while editing.
  • We can scan the OSM data for "incorrect" features and produce lists for review and cleanup.

name-suggestion-index in use in iD

The name-suggestion-index is in use in iD when adding a new item

Currently used in:

  • iD (see above)
  • Vespucci
  • JOSM presets available

Browse the index

You can browse the index at http://osmlab.github.io/name-suggestion-index/brands/index.html to see which brands are missing Wikidata links, or have incomplete Wikipedia pages.

Participate!

We're always looking for help! If you have any questions or want to reach out to a maintainer, ping bhousel on:

Prerequisites

Installing

  • Clone this project, for example: git clone git@github.com:osmlab/name-suggestion-index.git
  • cd into the project folder,
  • Run npm install to install libraries

About the index

Generated files (do not edit):

Preset files (used by OSM editors):

  • dist/name-suggestions.json - Name suggestion presets
  • dist/name-suggestions.min.json - Name suggestion presets, minified
  • dist/name-suggestions.presets.xml - Name suggestion presets, as JOSM-style preset XML

Name lists:

  • dist/names_all.json - all the frequent names and tags collected from OpenStreetMap
  • dist/names_discard.json - subset of names_all we are discarding
  • dist/names_keep.json - subset of names_all we are keeping
  • dist/wikidata.json - cached brand data retrieved from Wikidata
Configuration files (edit these):
  • config/*
    • config/filters.json- Regular expressions used to filter names_all into names_keep / discardNames
  • brands/* - Config files for each kind of branded business, organized by OpenStreetMap tag
    • brands/amenity/*.json
    • brands/leisure/*.json
    • brands/shop/*.json
    • brands/tourism/*.json

:point_right: See CONTRIBUTING.md for info about how to contribute to this index.

Building the index

  • npm run build
    • Regenerates dist/names_keep.json and dist/names_discard.json
    • Any new entries from names_keep not already present in the index will be added to it
    • Outputs many warnings to suggest updates to brands/**/*.json

Other commands

  • npm run wikidata - Fetch useful data from Wikidata - labels, descriptions, logos, etc.
  • npm run docs - Updates the index summary pages
  • npm run - Lists other available tools

Updating dist/names_all.json from planet

This takes a long time and a lot of disk space. It can be done occasionally by project maintainers. You do not need to do these steps in order to contribute to the index.

  • Install osmium commandline tool
    • apt-get install osmium-tool or brew install osmium-tool or similar
  • Download the planet
    • curl -o planet-latest.osm.pbf https://planet.openstreetmap.org/pbf/planet-latest.osm.pbf
  • Prefilter the planet file to only include named items with keys we are looking for:
    • osmium tags-filter planet-latest.osm.pbf -R name -o named.osm.pbf
    • osmium tags-filter named.osm.pbf -R amenity,shop,leisure,tourism -o wanted.osm.pbf
  • Run node build_names_all wanted.osm.pbf
    • results will go in dist/names_all.json
    • git add dist/names_all.json && git commit -m 'Updated dist/names_all.json'

License

name-suggestion-index is available under the 3-Clause BSD License. See the LICENSE.md file for more details.

Keywords

FAQs

Package last updated on 08 Apr 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc