Skip to content

Posta kodları ​

Dosya: data/postal-codes.json. 1149 Belçika posta kodu, her biri ait olduğu belediyeye REFNIS koduyla bağlı: 1152 kayıt, çünkü 3 posta kodu iki belediyeye aittir.

Ne işe yarar ​

  • Bir adresten adli haritaya. Adresler REFNIS koduyla değil, posta koduyla gelir. Posta kodu belediyeyi verir, belediye de kantonlarını ve mahkemelerini: findCourtsForPostalCode('9050', 'labour-court') "bu adres için hangi mahkeme?" sorusunu posta kodunun izin verdiği ölçüde yanıtlar.
  • Bir belediyenin posta kodları. Bir formu doğrulamak, toplu posta göndermek, bir adresle bir REFNIS kodunun uyuştuğunu kontrol etmek: getPostalCodes('44021').
  • Her mahkemenin, cezaevinin ve justitiehuis / maison de justice'in belediyesi. Bunların address.municipality alanı, yayımlanan adresin posta koduna uygulanan bu bağlantıdır (#28).

Kaynak ve güncellemeler ​

KaynakStatbel'in posta kodlarından REFNIS kodlarına dönüşüm tablosu, 1 Ocak 2025'ten itibaren geçerli tablo (…_va01012025.xlsx)
OluşturanHaftalık anlık görüntülerden scripts/parse/postal-codes.ts. Bir kod municipalities.json içinde olmayan bir REFNIS koduna işaret ederse ya da bir belediyenin hiç kodu yoksa build başarısız olur
Değiştiği zamanStatbel yeni bir tablo yayımladığında: belediyeler birleştiğinde, bpost bir posta kodu eklediğinde veya kaldırdığında
Kapsam1 Ocak 2025 ve sonrası: daha önceki bir gün için yapılan sorgular RangeError fırlatır (zaman). Daha sonraki bir tablo, çıkardığı çiftlere bir validTo, eklediği çiftlere bir validFrom verir; tarih olarak tablonun yürürlüğe girdiği gün kullanılır
KontrolHer hafta, kaynaklar workflow'u tarafından
Lisans© Statbel, CC BY 4.0

Statbel tabloyu bpost'un postanelerinden ve FOD Financiën / SPF Finances'ın (federal maliye bakanlığı) belediyelerinden oluşturur. Tablo her satırda bir belediye adı da taşır, ancak bu ad burada saklanmaz: birkaç yerde Statbel'in kendi REFNIS listesinden farklıdır (listenin Tongres-Looz dediği yerde Tongeren-Borgloon, Sint-Niklaas için Saint-Nicolas) ve bir kayıt belediyesini kopyalamak yerine ona bağlanır. Adlar getMunicipality(record.municipality).name içindedir.

Ortak posta kodları ​

Bir belediyenin birkaç posta kodu vardır (Gent'in on tane), ve bir posta kodu tek bir belediyeye aittir; üç istisna dışında:

Posta koduBelediyeler
1040Brussel (21004) ve Etterbeek (21005)
1050Brussel (21004) ve Elsene (21009)
1804Vilvoorde (23088) ve Zemst (23096): Cargovil

Bunlarda sokak belirleyicidir. getMunicipalitiesForPostalCode iki belediyeyi de döndürür, findCourtsForPostalCode da belediye başına yanıt verir; böylece ortak bir kod hiçbir zaman sessizce bunlardan birine indirgenmez.

Alanlar ​

AlanTürAçıklama
idPostalCodeIdPosta kodu ve REFNIS kodu, birleştirilmiş: 9000-44021. Tek başına hiçbiri bir kaydı adlandırmaz; birlikte hem resmî hem benzersizdir. Bkz. tanımlayıcılar
validFrom, validTostring?Çiftin geçerli olduğu günler, Statbel tablolarının verdiği şekliyle; yoksa: kapsamın başlangıcından beri ya da hâlâ geçerli. Bkz. zaman
postalCodestringDört haneli posta kodu
municipalityMunicipalityIdPosta kodunun ait olduğu belediye, REFNIS koduyla
ts
interface PostalCode {
    id: PostalCodeId // '9000-44021'
    validFrom?: string
    validTo?: string
    postalCode: string // '9000'
    municipality: MunicipalityId // '44021'
}

Neler yok ​

  • Alt belediyeler (deelgemeenten, sections de commune): Statbel'in tablosu belediye düzeyinde durur. bpost'un kendi posta kodu listesi yerleşim yerlerini adlandırır, ancak REFNIS kodu taşımaz ve açık bir lisansla değil, bpost'un kullanım koşullarıyla (tüm hakları saklıdır) yayımlanır; bu yüzden kullanılmaz.
  • Sokak. Kantonlara bölünmüş bir şehirde (Antwerpen, Gent, Brussel, Luik, …) posta kodu belediyeyi, belediye de birkaç kantonu verir; bundan sonra sokak belirleyicidir. Sınırlar ise, #29 bunları geometri olarak ekleyene kadar, yalnızca her kantonun territory alanındaki hukuki metin olarak vardır.

Yardımcı fonksiyonlar ​

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', …]

// Belediye başına: vredegerecht'leri ve istenen türdeki mahkemeleri
findCourtsForPostalCode('9050', 'labour-court')
// [{ municipality: Gent, justicesOfThePeace: [gent-1 … gent-5], courts: [labour-court-gent] }]

Kod MIT lisansıyla, veriler CC BY 4.0 lisansıyla. Referans verileridir, hukuki tavsiye değildir: resmî kaynakları kontrol edin.