diff --git a/api-v1-json-properties.md b/api-v1-json-properties.md index fb02e3a..797bf9a 100644 --- a/api-v1-json-properties.md +++ b/api-v1-json-properties.md @@ -1,37 +1,5 @@ # Json Attribute ## Eingriff -* `type`: Muss immer `MultiPolygon` sein -* `coordinates`: Enthält die Koordinaten der Geometrie(n) (EPSG:4326) -* `properties`: Enthält die Attribute des Eingriffsobjektes -* `title` (str): Bezeichnung/Titel des Eingriffs -* `responsible`: Enthält Informationen zu zuständigen Akteuren (Zulassungsbehörde, Naturschutzbehörde, Eingriffsverursacher) -* `responsible.registration_office` (str): Identifiziert eindeutig eine Zulassungsbehörde (bspw. "untere Baubehörde - Kreisverwaltung XY") -* `responsible.registration_file_number` (str): Aktenzeichen der Zulassungsbehörde -* `responsible.conservation_office` (str): Identifiziert eindeutig eine Eintragungsstelle/Naturschutzbehörde (bspw. "Kreisverwaltung XY") -* `responsible.conservation_file_number` (str): Aktenzeichen der Eintragungsstelle -* `responsible.handler`: Enthält Informationen zum Eingriffsverursacher -* `responsible.handler.type` (str): Identifiziert eindeutig die Art des Verursachers (bspw. "Stadt", "Sonstige und private Träger", ...) -* `responsible.handler.details` (str): Details zum Eingriffsverursacher -* `legal`: Enthält Informationen zum rechtlichen Status des Eingriffs -* `legal.registration_date` (str): Zulassungsdatum (ISO Format) -* `legal.binding_date` (str): Bestandskraftdatum/Ende der Widerspruchsfrist (ISO Format) -* `legal.process_type` (str): Identifiziert eindeutig einen Verfahrenstyp für den Eingriff (bspw. "Genehmigung", "Kenntnisgabe", ...) -* `legal.laws` (list): Identifiziert eine Menge von Gesetzen auf deren Grundlage der Eingriff genehmigt wurde -* `payments` (list): Enthält Informationen zu einer Menge von Ersatzzahlungen -* `payment.amount` (float): Zahlungsbetrag in € -* `payment.due_on` (str): Zahlungstermin (ISO Format) -* `payment.comment` (str): Kommentar zur Zahlung (Falls kein Termin angegeben werden kann, soll erklärt werden weshalb) - -### Pflichtattribute -#### beim Anlegen -Initial wird per API mindestens ein `title` und eine (ggf. leere) Geometrie erwartet. Alle übrigen Informationen können nachträglich per `PUT` bearbeitet/hinzugefügt werden. - -#### beim Bearbeiten -Es werden nur die Attribute in `properties` ausgewertet, die vorhanden sind. Soll z.B. nur ein Aktenzeichen des Eingriffs geändert werden, genügt es in `properties` nur das `responsible` Objekt und darin nur z.B. `registration_file_number` mitzusenden. Alle übrigen Daten bleiben unverändert. - -**Achtung:** -Dieser Ablauf bezieht sich nur auf Attribute in `properties`. Die aktuell zu verwendende Geometrie muss immer mitgeschickt werden. - ### Beispiel
@@ -105,4 +73,67 @@ Dieser Ablauf bezieht sich nur auf Attribute in `properties`. Die aktuell zu ver } ``` -
\ No newline at end of file + + +### Attribute +* `type`: + * Muss immer `MultiPolygon` sein +* `coordinates`: + * Enthält die Koordinaten der Geometrie(n) (EPSG:4326) +* `properties`: + * Enthält die Attribute des Eingriffsobjektes +* `title` (str): + * Bezeichnung/Titel des Eingriffs +* `responsible`: + * Enthält Informationen zu zuständigen Akteuren (Zulassungsbehörde, Naturschutzbehörde, Eingriffsverursacher) +* `responsible.registration_office` (str): + * Identifiziert eindeutig eine Zulassungsbehörde (bspw. "untere Baubehörde - Kreisverwaltung XY") +* `responsible.registration_file_number` (str): A + * ktenzeichen der Zulassungsbehörde +* `responsible.conservation_office` (str): + * Identifiziert eindeutig eine Eintragungsstelle/Naturschutzbehörde (bspw. "Kreisverwaltung XY") +* `responsible.conservation_file_number` (str): + * Aktenzeichen der Eintragungsstelle +* `responsible.handler`: + * Enthält Informationen zum Eingriffsverursacher +* `responsible.handler.type` (str): + * Identifiziert eindeutig die Art des Verursachers (bspw. "Stadt", "Sonstige und private Träger", ...) +* `responsible.handler.details` (str): + * Details zum Eingriffsverursacher +* `legal`: + * Enthält Informationen zum rechtlichen Status des Eingriffs +* `legal.registration_date` (str): + * Zulassungsdatum (ISO Format) +* `legal.binding_date` (str): + * Bestandskraftdatum/Ende der Widerspruchsfrist (ISO Format) +* `legal.process_type` (str): + * Identifiziert eindeutig einen Verfahrenstyp für den Eingriff (bspw. "Genehmigung", "Kenntnisgabe", ...) +* `legal.laws` (list): + * Identifiziert eine Menge von Gesetzen auf deren Grundlage der Eingriff genehmigt wurde +* `payments` (list): + * Enthält Informationen zu einer Menge von Ersatzzahlungen +* `payment.amount` (float): + * Zahlungsbetrag in € +* `payment.due_on` (str): + * Zahlungstermin (ISO Format) +* `payment.comment` (str): + * Kommentar zur Zahlung (Falls kein Termin angegeben werden kann, soll erklärt werden weshalb) + +### Pflichtattribute +#### beim Anlegen +Initial wird per API mindestens ein `title` und eine (ggf. leere) Geometrie erwartet. Alle übrigen Informationen können nachträglich per `PUT` bearbeitet/hinzugefügt werden. + +#### beim Bearbeiten +Es werden nur die Attribute in `properties` ausgewertet, die vorhanden sind. Soll z.B. nur ein Aktenzeichen des Eingriffs geändert werden, genügt es in `properties` nur das `responsible` Objekt und darin nur z.B. `registration_file_number` mitzusenden. Alle übrigen Daten bleiben unverändert. + +**Achtung:** +Dieser Ablauf bezieht sich nur auf Attribute in `properties`. Die aktuell zu verwendende Geometrie muss immer mitgeschickt werden. + +### Null Werte +Falls ein Attribut gelöscht werden soll, kann beim nächsten `PUT` der leere Wert `null` für dieses Attribut angegeben werden. Für Listenattribute wird hingegen die leere Liste [] genutzt. + +### Auswertung von Listen +Listenattribute werden, falls angegeben, immer vollständig ausgewertet. Soll also eine gesetzte Liste ["a", "b", "c"] mittels `PUT` überarbeitet werden und z.B. "b" entfernt werden, muss die Liste wie folgt beim nächsten `PUT` angegeben werden: ["a", "c"]. +Sollen alle Einträge in der Liste entfernt werden, wird die leere Liste übergeben: [] + +