Canton Basel-Stadt Suburb and Neighborhood Import

From OpenStreetMap Wiki
Jump to: navigation, search
This is work in progress and should not be reviewed / commented yet.
Canton Basel Stadt Suburb and Neighborhood Import is an on-time manual import of data provided by the local authorities, covering the canton Basel-Stadt in Switzerland. The import is currently (as of Oct 24th 2017) at the planning stage.


The goal is to import suburb and neighborhood boundaries, which do not exist yet in OpenStreetMap at all (except for the three municipalities Basel, Riehen, Bettingen).


The import of the 88 boundaries will take place in the last quarter of 2017.

Import Data


Data is provided by the authorities of the Canton Basel-Stadt (a Swiss "state", actually the smallest one, only 37km²).

Data source site:
Data license:
Type of license: Public Domain with Attribution
Link to permission: In the responsible person states that mentioning the source in the contributors list fulfills the requirement of attribution
OSM attribution (if required):
ODbL Compliance verified: yes, see

OSM Data Files

The processed data, ready to be imported:

Import Type

This is a one-time import. The boundaries are not expected to change in decades. At most maybe a new neighborhood might be added.

Data Preparation

Tagging Plans

We will *not* use admin_level tags, as the suburbs and neighborhoods have no administrative significance.

The following tags will be used for each relation representing a boundary:

  • name={name}, name prefixed by "Wohnbezirk " in case the name might be confused with a suburb or a street.
  • type=boundary
  • place=suburb/neighbourhood
  • wikipedia=de:Basel-{name} (just for suburbs)

Changeset Tags

Every changeset will be tagged with the source="Geodaten Kanton Basel-Stadt" and description=

Data Selection

We will not import all neighborhoods, as some of their names are not familiar to the general public, but seem to exist for administrative statistical purposes only. We will give reasons for every neighborhood not imported in the following:

Reasons to not import Neighborhood names
Is identical or very similar to a street name Bernerring, Bischoffhöhe, Delsbergerallee, Haltingerstrasse, Luftmatt, Schützenmatte, Zürcherstrasse
exist twice with different outlines Spalen, Steinen
Incomplete name: Would be known suffixed by "vorstadt", but then it's identical to some street name Aeschen, Alban
Is a person name, not known even if suffixed by "quartier" or "viertel" Gottfried Keller, Leonhard, Oekolampad, Pestalozzi, Peter, Peter Merian, Theodor
Not familiar as a neighborhood name, no reference in media Batterie-Nord, Batterie-Süd, Bettingen-Dorf, Bläsi, Blauen, Burgviertel, Clarahof, Claramatte, Dreirosen, Flora, Friedmattviertel, Heumatt, Kleinriehen-Nord, Kleinriehen-Süd, Klingental, Landskron, Moos, Margarethen, Riehen-Dorf, Rosengarten, Solitude, Schützenmatte, Thierstein, Thiersteinerrain, Wasgenring-Ost, Wasgenring-West, Weierhof, Wenken
Identical or very similar to a suburb Kleinhüningen, St.Johann, St.Johann und Universität
Generic word Geschäftsviertel, Moos, Markthalle
Not sure yet Eglisee
Reasons to import Neighborhood names
Quartierverein exists Kornfeld, Lehenmatte -> Lehenmatt, Niederholz, Pfaffenloh, Neubad (is addition to authority data)
generally known, media reference Albantal -> St. Alban-Tal, Erlenmatt, Gellert, Holee, Kannenfeld, Messe -> Messequartier, Paulus -> Paulusquartier, Stettenfeld, St.Jakob-Dreispitz
isolated neighborhood Chrischona

Data Merge Workflow

Team Approach

The import was discussed on the Swiss OSM local mailing list (talk-ch):


The workflow is done using the JOSM editor.

  • Order the data from the Geodaten-Shop under "Planung und Gebäude" / "Statistische Wohnviertel und -bezirke", as "Esri Shapefile" in coordinate system LV95, select datasets "Wohnviertel" (suburbs) und "Wohnbezirke" (neighborhoods). Processing the data typically takes a few minutes, you will get an email with a download link. Unzip the received archive.
  • Open Wohnviertel.shp to import the suburbs.
    • For every way, change the tag "TYPE" to "name", and add place=suburb. Remove all other tags.
    • Remove Riehen and Bettingen, as they are already contained as municipalities.
  • Open Wohnbezirke.shp to import the neighborhoods.
    • For every way, change the tag "TYPE" to "name", and add place=neighborhood. Remove all other tags.
  • Merge the layer for the suburbs into the layer for the neighborhoods. Many nodes are on the same position and will be merged automatically.
  • Remove inconsistencies in the data.
    • Zoom in to 10 steps but max (with "Zoom steps to get double scale" set to 2).
    • Select all nodes and execute "Join node to way".
    • Select all boundaries and execute "Simplify Area" provided by the respective JOSM plugin, with the plugin's default settings.
    • Fix all parts of the boundaries that overlap, so they consist of the exactly same sequence of nodes.
  • Factorize the boundaries. (The boundaries of the suburbs cover each of the 3 municipalities fully, except for the Rhine river crossing Basel. The boundaries of the neighborhoods cover each of the 19 suburbs fully.)
    • Split the boundaries into the minimum number of parts such that every boundary is expressed as set of parts, and all parts are disjoint globally.
    • Convert the boundaries to become relations of such parts, where all parts have role=outer in the relation. Add type=boundary, and the wikipedia tag as described above.
  • Manually factorize the outer boundaries with the municipality/canton/Swiss state boundaries (imported already).
  • Upload the boundaries.


Conflation will happen manually in JOSM. We need to conflate the imported boundaries with the existing boundaries of the three municipalities, the boundary of the canton itself, and the boundary of the federal state.