Timo Wicki arbeitet bei der Stadt Luzern und verwaltet Daten im Sozial-, Bau- und Energiebereich. Um bei der Erstellung von Datenmodellen Zeit einzusparen und flexibel zu bleiben, greift der Umweltingenieur auf ein eigenes erstelltes Python Skript auf Basis der ArcPy-Funktionen zurück.
Ein Gastbeitrag von Timo Wicki, MSc GIS, MSc Umweltingenieur, Projektleiter GIS, Stadt Luzern
“In der GIS-Abteilung der Stadt Luzern erstellen wir für alle städtischen Dienststellen GIS-Applikationen zur Erfassung ihrer Daten. Die Anforderungen sind sehr breit gefächert, wir verwalten Daten im Sozial-, Bau- und Energiebereich. Dies hat zur Folge, dass wir fast täglich mit der Erstellung neuer Datenmodelle oder der Aktualisierung bestehender Datenmodelle beschäftigt sind.
Zum einen erstellen wir Datenmodelle mit dem GEONIS-Framework der Firma VertiGIS. Innerhalb dieses Frameworks können Datenmodelle in einer xml-Datei konfiguriert werden. Allerdings sind die so erstellten Datenmodelle speziell für dieses Framework angepasst, weshalb sich die so erstellten Datenmodelle nicht als Grundlage für andere Tools eignen.
Zunehmend erstellen wir unsere Anwendungen jedoch mit anderen Tools, zum Beispiel mit dem ArcGIS Experience Builder oder mit der ArcGIS Maps SDK for JavaScript. Dabei bietet ein Esri-Datenmodell mit Beziehungsklassen, Attributregeln, Domänen usw. viele Vorteile. Wir haben also damit begonnen, Datenmodelle in ArcGIS Pro Schritt für Schritt mit Hilfe von Geoverarbeitungswerkzeugen und integrierten Verwaltungswerkzeugen zu erstellen. Wir erkannten jedoch bald die Nachteile gegenüber der Erstellung mit Hilfe einer Eingabedatei, bei der das Datenmodell in einem Zug konfiguriert werden kann.
Deshalb habe ich ein Python Skript auf Basis der ArcPy-Funktionen erstellt, mit dem ein Datenmodell auf Grundlage einer JSON-Eingabedatei erstellt und aktualisiert werden kann. Das Skript hat sich bei uns mittlerweile sehr bewährt und die manuelle Erstellung des Datenmodells in ArcGIS Pro abgelöst. Folgende Vorteile sehen wir bei der Erstellung eines Datenmodells mit Hilfe einer JSON-Datei gegenüber der manuellen Erstellung in ArcGIS Pro:
- Zeitersparnis: Die Erstellung eines Datenmodells mithilfe einer JSON-Datei ist schneller als die manuelle Erstellung in ArcGIS Pro, da das gesamte Modell auf einmal erstellen werden kann, anstatt jedes Element einzeln zu erstellen.
- Wiederverwendbarkeit: Ein einmal in einer JSON-Datei konfiguriertes Datenmodell kann mehrfach wiederverwendet werden. Dies ermöglicht zum Beispiel die einfache Erstellung des Datenmodells in verschiedenen Umgebungen (Test, Integration, Produktion).
- Flexibilität: JSON ist ein flexibles Format, das es ermöglicht, Komponenten des Datenmodells bei Bedarf einfach hinzuzufügen, zu entfernen oder zu modifizieren.
- Nachvollziehbarkeit: Mit dem Skript kann ein bestehendes Datenmodell mittels JSON-Dateien aktualisiert werden. Die Dokumentation von Änderungen am Datenmodell in JSON-Dateien ermöglicht es, die Entwicklung des Modells im Laufe der Zeit leicht nachzuvollziehen.
- Zusammenarbeit: JSON-Dateien können von mehreren Personen leicht geteilt und bearbeitet werden, was die Zusammenarbeit bei der Erstellung und Modifikation des Datenmodells erleichtert. Die Konfiguration des Modells kann schnell und einfach von einer anderen Person überprüft werden.
Das Skript kann vom GitHub-Repository heruntergeladen werden. Dort sind auch einige Tutorials enthalten, die die Möglichkeiten aufzeigen und den Einstieg in die Nutzung des Skripts erleichtern.”
Wir danken Timo Wicki für den Einblick in seine tägliche Arbeit mit GIS-Software und wie er sich mit ein paar Tricks die Arbeit erleichtert.