Skip to content

Senza JavaScript ​

I file JSON in data/ sono la fonte di verità; il TypeScript aggiunge solo tipi e helper. Puoi leggerli da qualsiasi linguaggio:

  • dal package npm (node_modules/belgica/data/);
  • come git submodule;
  • da un URL raw fissato a un release tag.
https://raw.githubusercontent.com/pieterjanscheir/belgica/v0.6.1/data/cantons.json

Fissa un tag invece di main, così i dati cambiano solo quando decidi tu di aggiornare.

Python ​

python
import json
from urllib.request import urlopen

BASE = "https://raw.githubusercontent.com/pieterjanscheir/belgica/v0.6.1/data"

cantons = json.load(urlopen(f"{BASE}/cantons.json"))

def cantons_for_municipality(refnis: str) -> list[dict]:
    return [c for c in cantons if any(m["municipality"] == refnis for m in c["municipalities"])]

print([c["id"] for c in cantons_for_municipality("44021")])  # gent-1 … gent-5

Tassi d'interesse ​

I periodi sono inclusivi a entrambi gli estremi e le date sono YYYY-MM-DD, quindi il confronto tra stringhe funziona:

python
rates = json.load(urlopen(f"{BASE}/interest-rates.json"))

def interest_rate(day: str, kind: str, contract_after_20130316: bool = False) -> float | None:
    for p in rates[kind]["periods"]:
        if p["from"] <= day <= p["to"]:
            older = p.get("rateForContractsBefore20130316")
            return older if older is not None and not contract_after_20130316 else p["rate"]
    return None

CSV ​

Ogni release include uno zip con i dati in JSON e come tabelle CSV (UTF-8, separate da virgole), con gli schemi e datapackage.json. I valori annidati sono tabelle a sé: i contatti di un tribunale stanno in court-contacts.csv, con l'id del tribunale come chiave; i comuni di un cantone in canton-municipalities.csv. La geometria dei confini dei cantoni non è tabellare e resta nel JSON; canton-boundaries.csv contiene gli identificatori dell'NGI per ogni cantone. In Excel, aprili con Dati > Da testo/CSV.

File ​

FileContenuto
data/judicial-areas.jsonI 5 distretti giudiziari (corti d'appello)
data/arrondissements.jsonI 12 arrondissement giudiziari e il loro distretto giudiziario
data/cantons.jsonTutti i 162 cantoni giudiziari
data/canton-boundaries.jsonIl confine di ogni cantone come geometria GeoJSON (23 MB)
data/municipalities.jsonI 565 comuni con codice REFNIS, provincia e regione
data/regions.jsonLe 3 regioni, con il nome in tre lingue
data/provinces.jsonLe 10 province, con la loro regione
data/courts.jsonOgni corte, tribunale, sezione e sede presente sul portale dei tribunali
data/prisons.jsonLe carceri e le case di detenzione
data/houses-of-justice.jsonLe justitiehuizen / maisons de justice delle Comunità fiamminga e francese
data/postal-codes.jsonOgni codice postale con il comune a cui appartiene
data/interest-rates.jsonTassi d'interesse legale e per le transazioni commerciali

Le strutture sono descritte nelle pagine sui dati e nel riferimento API.

Licenza ​

I dati sono CC BY 4.0: riutilizzali liberamente, anche a fini commerciali, citando questo progetto e le fonti indicate per ogni dataset. Dati sui comuni © Statbel; confini dei cantoni © Istituto geografico nazionale (NGI).

Codice sotto licenza MIT, dati sotto CC BY 4.0. Dati di riferimento, non consulenza legale: verifica le fonti ufficiali.