Skip to content

Postleitzahlen ​

Datei: data/postal-codes.json. Die 1149 belgischen Postleitzahlen, jeweils per REFNIS-Code mit der Gemeinde verknüpft, zu der sie gehören: 1152 Einträge, weil 3 Postleitzahlen zu zwei Gemeinden gehören.

Wozu es dient ​

  • Von einer Adresse zur Gerichtslandkarte. Adressen haben eine Postleitzahl, keinen REFNIS-Code. Die Postleitzahl liefert die Gemeinde, und die Gemeinde ihre Kantone und Gerichte: findCourtsForPostalCode('9050', 'labour-court') beantwortet „welches Gericht für diese Adresse?“, soweit die Postleitzahl es kann.
  • Die Postleitzahlen einer Gemeinde. Ein Formular validieren, ein Mailing adressieren, prüfen, ob eine Adresse und ein REFNIS-Code zusammenpassen: getPostalCodes('44021').
  • Die Gemeinde jedes Gerichts, Gefängnisses und Justizhauses. Ihr address.municipality ist diese Verknüpfung, angewandt auf die Postleitzahl der veröffentlichten Adresse (#28).

Quelle und Aktualisierungen ​

QuelleDie Umrechnungstabelle von Postleitzahlen zu REFNIS-Codes von Statbel, die ab dem 1. Januar 2025 geltende Tabelle (…_va01012025.xlsx)
Gebaut durchscripts/parse/postal-codes.ts aus den wöchentlichen Snapshots. Der Build schlägt fehl, wenn ein Code auf einen REFNIS-Code zeigt, der nicht in municipalities.json steht, oder eine Gemeinde keinen Code hat
Ändert sich, wennStatbel eine neue Tabelle veröffentlicht: Gemeinden fusionieren, bpost fügt eine Postleitzahl hinzu oder zieht sie ein
Deckt abAb dem 1. Januar 2025: Nachschlagen für einen früheren Tag wirft einen RangeError (Zeit). Eine spätere Tabelle gibt den Paaren, die sie streicht, ein validTo und den Paaren, die sie hinzufügt, ein validFrom, am Tag, ab dem die Tabelle gilt
GeprüftJede Woche, durch den sources-Workflow
Lizenz© Statbel, CC BY 4.0

Statbel baut die Tabelle aus den Postämtern von bpost und den Gemeinden des FÖD Finanzen. Sie enthält auch einen Gemeindenamen pro Zeile, der hier nicht gespeichert wird: Er weicht an einigen Stellen von der eigenen REFNIS-Liste von Statbel ab (Tongeren-Borgloon, wo die Liste Tongres-Looz sagt, und Saint-Nicolas für Sint-Niklaas), und ein Eintrag verweist auf seine Gemeinde, statt sie zu kopieren. getMunicipality(record.municipality).name liefert die Namen.

Geteilte Postleitzahlen ​

Eine Gemeinde hat mehrere Postleitzahlen (Gent hat zehn), und eine Postleitzahl gehört zu einer Gemeinde, mit drei Ausnahmen:

PostleitzahlGemeinden
1040Brüssel (21004) und Etterbeek (21005)
1050Brüssel (21004) und Ixelles/Elsene (21009)
1804Vilvoorde (23088) und Zemst (23096): Cargovil

Bei diesen entscheidet die Straße. getMunicipalitiesForPostalCode gibt beide Gemeinden zurück, und findCourtsForPostalCode antwortet pro Gemeinde, sodass ein geteilter Code nie stillschweigend einer von beiden zugeordnet wird.

Felder ​

FeldTypBeschreibung
idPostalCodeIdPostleitzahl und REFNIS-Code, verbunden: 9000-44021. Keiner allein benennt einen Eintrag; zusammen sind sie amtlich und eindeutig. Siehe Identifikatoren
validFrom, validTostring?Die Tage, an denen das Paar gilt, wie die Tabellen von Statbel sie angeben; fehlend: seit Beginn des abgedeckten Zeitraums bzw. gilt weiterhin. Siehe Zeit
postalCodestringDie vierstellige Postleitzahl
municipalityMunicipalityIdDie Gemeinde, zu der die Postleitzahl gehört, per REFNIS-Code
ts
interface PostalCode {
    id: PostalCodeId // '9000-44021'
    validFrom?: string
    validTo?: string
    postalCode: string // '9000'
    municipality: MunicipalityId // '44021'
}

Was nicht enthalten ist ​

  • Teilgemeinden (deelgemeenten / sections de commune): Die Tabelle von Statbel endet bei der Gemeinde. Die eigene Postleitzahlenliste von bpost nennt die Ortschaften, enthält aber keinen REFNIS-Code und wird unter den Nutzungsbedingungen von bpost veröffentlicht (alle Rechte vorbehalten), nicht unter einer offenen Lizenz; sie wird daher nicht verwendet.
  • Die Straße. In einer auf Kantone aufgeteilten Stadt (Antwerpen, Gent, Brüssel, Lüttich, …) liefert die Postleitzahl die Gemeinde und die Gemeinde mehrere Kantone; dann entscheidet die Straße, und die Grenzen existieren nur als juristischer Fließtext in territory jedes Kantons, bis #29 sie als Geometrie hinzufügt.

Hilfsfunktionen ​

ts
import { getMunicipalitiesForPostalCode, getPostalCodes } from 'belgica/postal-codes'
import { findCourtsForPostalCode } from 'belgica'

getMunicipalitiesForPostalCode('9050').map((m) => m.name.nl) // ['Gent']
getMunicipalitiesForPostalCode('1040').map((m) => m.name.nl) // ['Brussel', 'Etterbeek']
getPostalCodes('44021').map((p) => p.postalCode) // ['9000', '9030', '9031', …]

// Pro Gemeinde: ihre Friedensgerichte und ihre Gerichte des angefragten Typs
findCourtsForPostalCode('9050', 'labour-court')
// [{ municipality: Gent, justicesOfThePeace: [gent-1 … gent-5], courts: [labour-court-gent] }]

Code unter MIT, Daten unter CC BY 4.0. Referenzdaten, keine Rechtsberatung: Prüfen Sie die amtlichen Quellen.