From dbdd7ee5c2aaed1c0a2eb6c3486bcefee7150281 Mon Sep 17 00:00:00 2001 From: KAI Date: Thu, 9 Jul 2026 16:04:24 +0200 Subject: [PATCH] Doku: geo_reverse (Reverse-Geocoding) + Workflow karte-verorten --- CHANGELOG.md | 6 ++++++ tasks/geo_reverse.md | 31 +++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 tasks/geo_reverse.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 8427a49..773fd38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 2026-07-09 — geo_reverse + Workflow karte-verorten + +- **geo_reverse** — Reverse-Geocoding: Punkt (GeoJSON 25833 aus geo_erfassen oder ost/nord) → Ort, Ortsteil, PLZ, Straße. Transform via utm33ToWgs84 (require-route), Abfrage Nominatim/OSM. Der ALKIS-WFS liefert keine PLZ/Ortsteil. +- **Workflow karte-verorten** (Server, workflows/karte-verorten.xml): Punkt auf der Karte anklicken (geo_erfassen) → geo_reverse → Ort/Ortsteil/PLZ anzeigen. Start: start.php?xml=karte-verorten; auch als Kachel auf der Startseite. + + ## 2026-07-09 — personen_liste: anrede-Spalte - **personen_liste** liefert zusätzlich `anrede` (get_Anrede(false) = „Frau/Herr Nachname"). Genutzt im Posteingang-Workflow: die Select-Option trägt `data-anrede`, JS schreibt sie ins Feld `empfaenger_anrede` → E-Mail-Anrede „Hallo Frau Hielscher,". Mail neu strukturiert (HTML `
`, {{{BESCHREIBUNG}}} ist roh), Datei-Zeile entfernt. Neu: `{{ICH.anrede}}` in start.php. diff --git a/tasks/geo_reverse.md b/tasks/geo_reverse.md new file mode 100644 index 0000000..b38a8a7 --- /dev/null +++ b/tasks/geo_reverse.md @@ -0,0 +1,31 @@ +# `geo_reverse` — Reverse-Geocoding (Punkt → Ort/Ortsteil/PLZ) + +**Zweck:** Ermittelt zu einem Punkt den Ort (Gemeinde), Ortsteil, die Postleitzahl und die Straße. Transformiert die 25833-Koordinate nach WGS84 (`utm33ToWgs84`, require-route.php) und fragt einen Reverse-Geocoder ab (Default **Nominatim/OpenStreetMap**). Nötig, weil der amtliche ALKIS-WFS nur Ort/Gemarkung liefert — **PLZ und Ortsteil sind nicht katasterlich**. + +**Parameter** + +| Name | Pflicht? | Default | Beschreibung | +|---|---|---|---| +| `punkt` | ja¹ | — | GeoJSON-Punkt in EPSG:25833 (z. B. `{{klick_geojson}}` aus `geo_erfassen`). | +| `ost` / `nord` | ja¹ | — | Alternative: direkte 25833-Koordinaten. | +| `zoom` | nein | `18` | Nominatim-Detailstufe (18 = Adresse). | +| `output_var` | nein | `ort` | Präfix. | + +¹ Entweder `punkt` (GeoJSON) **oder** `ost`+`nord`. + +**Ausgangswerte:** `{{_ort}}`, `{{_ortsteil}}`, `{{_plz}}`, `{{_strasse}}`, `{{_anzeige}}` (voller Name), `{{_lon}}` / `{{_lat}}` (WGS84), `{{_json}}` (Rohantwort). + +```xml + + + {{klick_geojson}} + ort + + +``` + +Typische Kette: `geo_erfassen` (typen=punkt) → `geo_reverse` → `html_form` (Anzeige). + +**Hinweise** +- Quelle Nominatim: öffentlicher Server mit Ratelimit (1 Anfrage/s) + Attributionspflicht; für gelegentliches Klicken unkritisch. User-Agent wird korrekt gesetzt. +- Für den amtlichen Ort/die Gemarkung ist zusätzlich der ALKIS-WFS (`geo_wfs` `ave:VerwaltungsEinheit` / `ave:KatasterBezirk`) möglich.