# Swisstopo Swiss Address File

An address in the Swisstopo dataset, which covers Switzerland and Liechtenstein.

Fields are grouped by the upstream Swisstopo product they come from: the building address directory (`gebaeudeadressverzeichnis`), the street directory (`strassenverzeichnis`) and the official directory of towns and cities (`amtovz`).

Records marked as multilingual upstream are split into one address per street name, so `language` identifies the language of the street name.

## Example Record

| Field                               | Example               | Type      |
| ----------------------------------- | --------------------- | --------- |
| [`id`](#id)                         | swt\_102410972\|de    | `string`  |
| [`dataset`](#dataset)               | swt                   | `string`  |
| [`country`](#country)               | Switzerland           | `string`  |
| [`country_iso`](#country_iso)       | CHE                   | `string`  |
| [`country_iso_2`](#country_iso_2)   | CH                    | `string`  |
| [`language`](#language)             | de                    | `string`  |
| [`canton`](#canton)                 | Basel-Stadt           | `string`  |
| [`address`](#address)               | 15.1                  | `string`  |
| [`line_1`](#line_1)                 | Brohegasse 15.1       | `string`  |
| [`line_2`](#line_2)                 | Empty in this example | `string`  |
| [`latitude`](#latitude)             | `47.571268381201655`  | `number`  |
| [`longitude`](#longitude)           | `7.663107983521497`   | `number`  |
| [`adr_egaid`](#adr_egaid)           | `102410972`           | `number`  |
| [`str_esid`](#str_esid)             | `10025136`            | `number`  |
| [`bdg_egid`](#bdg_egid)             | `243057973`           | `number`  |
| [`adr_edid`](#adr_edid)             | `0`                   | `number`  |
| [`stn_label`](#stn_label)           | Brohegasse            | `string`  |
| [`adr_number`](#adr_number)         | 15.1                  | `string`  |
| [`bdg_category`](#bdg_category)     | non\_residential      | `string`  |
| [`bdg_name`](#bdg_name)             | Empty in this example | `string`  |
| [`zip_label`](#zip_label)           | 4126 Bettingen        | `string`  |
| [`com_fosnr`](#com_fosnr)           | `2702`                | `number`  |
| [`com_name`](#com_name)             | Bettingen             | `string`  |
| [`com_canton`](#com_canton)         | BS                    | `string`  |
| [`adr_status`](#adr_status)         | real                  | `string`  |
| [`adr_official`](#adr_official)     | `false`               | `boolean` |
| [`adr_modified`](#adr_modified)     | 23.07.2024            | `string`  |
| [`adr_easting`](#adr_easting)       | 2616891.820           | `string`  |
| [`adr_northing`](#adr_northing)     | 1268975.560           | `string`  |
| [`str_type`](#str_type)             | Street                | `string`  |
| [`str_status`](#str_status)         | real                  | `string`  |
| [`str_official`](#str_official)     | `true`                | `boolean` |
| [`str_modified`](#str_modified)     | 23.07.2024            | `string`  |
| [`str_easting`](#str_easting)       | 2616922.086           | `string`  |
| [`str_northing`](#str_northing)     | 1268999.001           | `string`  |
| [`ortschaftsname`](#ortschaftsname) | Bettingen             | `string`  |
| [`plz4`](#plz4)                     | 4126                  | `string`  |
| [`zusatzziffer`](#zusatzziffer)     | 00                    | `string`  |
| [`zip_id`](#zip_id)                 | `2531`                | `number`  |
| [`gemeindename`](#gemeindename)     | Bettingen             | `string`  |
| [`bfs_nr`](#bfs_nr)                 | `2702`                | `number`  |
| [`kantonskürzel`](#kantonskürzel)   | BS                    | `string`  |
| [`sprache`](#sprache)               | de                    | `string`  |
| [`validity`](#validity)             | 2008-07-01            | `string`  |

```json
{
  "id": "swt_102410972|de",
  "dataset": "swt",
  "country": "Switzerland",
  "country_iso": "CHE",
  "country_iso_2": "CH",
  "language": "de",
  "canton": "Basel-Stadt",
  "address": "15.1",
  "line_1": "Brohegasse 15.1",
  "line_2": "",
  "latitude": 47.571268381201655,
  "longitude": 7.663107983521497,
  "adr_egaid": 102410972,
  "str_esid": 10025136,
  "bdg_egid": 243057973,
  "adr_edid": 0,
  "stn_label": "Brohegasse",
  "adr_number": "15.1",
  "bdg_category": "non_residential",
  "bdg_name": "",
  "zip_label": "4126 Bettingen",
  "com_fosnr": 2702,
  "com_name": "Bettingen",
  "com_canton": "BS",
  "adr_status": "real",
  "adr_official": false,
  "adr_modified": "23.07.2024",
  "adr_easting": "2616891.820",
  "adr_northing": "1268975.560",
  "str_type": "Street",
  "str_status": "real",
  "str_official": true,
  "str_modified": "23.07.2024",
  "str_easting": "2616922.086",
  "str_northing": "1268999.001",
  "ortschaftsname": "Bettingen",
  "plz4": "4126",
  "zusatzziffer": "00",
  "zip_id": 2531,
  "gemeindename": "Bettingen",
  "bfs_nr": 2702,
  "kantonskürzel": "BS",
  "sprache": "de",
  "validity": "2008-07-01"
}
```

Every field is documented below.

## Core Metadata

* `id` string

  ID

  Example: `swt_102410972|de`

* `dataset` string

  Dataset

  Example: `swt`

  Enum: "swt"

* `country` string

  Country

  Full country names (ISO 3166)

  Example: `Switzerland`

  Enum: "Switzerland", "Liechtenstein"

* `country_iso` string

  Country ISO

  3 letter country code (ISO 3166-1)

  Example: `CHE`

  Enum: "CHE", "LIE"

* `country_iso_2` string

  Country ISO 2

  2 letter country code (ISO 3166-1)

  Example: `CH`

  Enum: "CH", "LI"

* `language` string

  Language

  Language represented by 2 letter ISO Code (639-1)

  Example: `de`

  Enum: "de", "fr", "it", "rm"

* `canton` string

  Canton

  Canton name, in the language of the address (e.g. `"Basel-Stadt"`, `"Grigioni"`, `"Grischun"`). For Liechtenstein addresses this is the district.

  Can be empty string `""` if not present.

  Example: `Basel-Stadt`

## Address Components

* `address` string

  Address

  House number. Same value as `adr_number`.

  Can be empty string `""` if not present.

  Example: `15.1`

* `line_1` string

  Address Line 1

  First address line. The building name where present, otherwise the street name and house number.

  Can be empty string `""` if not present.

  Example: `Brohegasse 15.1`

* `line_2` string

  Address Line 2

  Second address line. The street name and house number where `line_1` holds a building name.

  Can be empty string `""` if not present.

  Example: Empty in this example

## Geolocation

* `latitude` string

  Latitude

  Example: `47.571268381201655`

* `longitude` string

  Longitude

  Example: `7.663107983521497`

## Building Directory (Gebäudeadressverzeichnis)

* `adr_egaid` integer

  Address EGAID

  Federal building address identifier (Eidgenössischer Gebäudeadressidentifikator).

  Example: `102410972`

* `bdg_egid` integer

  Building EGID

  Federal building identifier (Eidgenössischer Gebäudeidentifikator).

  Example: `243057973`

* `adr_edid` integer

  Address EDID

  Entrance identifier within the building.

  Example: `0`

* `stn_label` string

  Street Name

  Street name label. For French and Italian addresses the leading street type is lowercased (e.g. `"rue de la Gare"`).

  Example: `Brohegasse`

* `adr_number` string

  Address Number

  House/address number (e.g. `"12"`, `"12A"`).

  Can be empty string `""` if not present.

  Example: `15.1`

* `bdg_category` string

  Building Category

  Building category from the Federal Building and Dwelling Register (GWR), e.g. `"residential"`, `"non_residential"`.

  Example: `non_residential`

* `bdg_name` string

  Building Name

  Building name.

  Can be empty string `""` if not present.

  Example: Empty in this example

* `zip_label` string

  ZIP Label

  Postal code and locality label (e.g. `"8001 Zürich"`).

  Example: `4126 Bettingen`

* `com_fosnr` integer

  Commune FOS Number

  Federal municipality number assigned by the Federal Statistical Office (FSO/BFS).

  Example: `2702`

* `com_name` string

  Commune Name

  Municipality name.

  Example: `Bettingen`

* `com_canton` string

  Commune Canton

  Canton abbreviation (e.g. `"ZH"`, `"BE"`).

  Can be empty string `""` if not present.

  Example: `BS`

* `adr_status` string

  Address Status

  Address status from the GWR, e.g. `"real"`, `"projected"`.

  Example: `real`

* `adr_official` boolean

  Address Official

  Whether the address is an official address.

  Example: `false`

* `adr_modified` string

  Address Modified

  Date the address record was last modified, formatted `DD.MM.YYYY`.

  Example: `23.07.2024`

* `adr_easting` string

  Address Easting

  Easting coordinate of the address in the Swiss coordinate system CH1903+/LV95 (EPSG:2056), in metres.

  Example: `2616891.820`

* `adr_northing` string

  Address Northing

  Northing coordinate of the address in the Swiss coordinate system CH1903+/LV95 (EPSG:2056), in metres.

  Example: `1268975.560`

## Street Directory (Strassenverzeichnis)

* `str_esid` integer

  Street ESID

  Federal street identifier (Eidgenössischer Strassenidentifikator). Joins the address to the street directory.

  Example: `10025136`

* `str_type` string

  Street Type

  Street type, e.g. `"Street"`, `"Area"`.

  Example: `Street`

* `str_status` string

  Street Status

  Street status, e.g. `"real"`, `"projected"`.

  Example: `real`

* `str_official` boolean

  Street Official

  Whether the street name is official.

  Example: `true`

* `str_modified` string

  Street Modified

  Date the street record was last modified, formatted `DD.MM.YYYY`.

  Example: `23.07.2024`

* `str_easting` string

  Street Easting

  Easting coordinate of the street centroid in the Swiss coordinate system CH1903+/LV95 (EPSG:2056), in metres.

  Example: `2616922.086`

* `str_northing` string

  Street Northing

  Northing coordinate of the street centroid in the Swiss coordinate system CH1903+/LV95 (EPSG:2056), in metres.

  Example: `1268999.001`

## Locality Directory (Ortschaftenverzeichnis)

* `ortschaftsname` string

  Locality Name

  Locality name from the Official Directory of Towns and Cities (Amtliches Ortschaftenverzeichnis).

  Can be empty string `""` if the address does not match a locality record.

  Example: `Bettingen`

* `plz4` string

  Postcode (PLZ4)

  4-digit Swiss postal code, zero padded.

  Can be empty string `""` if the address does not match a locality record.

  Example: `4126`

* `zusatzziffer` string

  Postcode Suffix

  2-digit supplementary code distinguishing localities that share a 4-digit postal code.

  `null` if the address does not match a locality record.

  Example: `00`

* `zip_id` integer

  ZIP ID

  Unique identifier for the postal code record.

  `null` if the address does not match a locality record.

  Example: `2531`

* `gemeindename` string

  Municipality Name

  Municipality name (Gemeindename) from the locality directory.

  `null` if the address does not match a locality record.

  Example: `Bettingen`

* `bfs_nr` integer

  BFS Number

  Federal municipality number assigned by the Federal Statistical Office (BFS-Nr).

  `null` if the address does not match a locality record.

  Example: `2702`

* `kantonskürzel` string

  Canton Abbreviation

  Canton abbreviation from the locality directory (e.g. `"ZH"`, `"GE"`).

  Can be empty string `""` if not present.

  Example: `BS`

* `sprache` string

  Locality Language

  Language of the address, mirroring `language`.

  Example: `de`

* `validity` string

  Validity

  Date the postal code record became valid, formatted `YYYY-MM-DD`.

  Example: `2008-07-01`
