Json Attribute
Ökokonto
Der Aufbau der Ökokonto Attribute ähnelt in weiten Teilen dem der Kompensation.
Beispiel
Beispiel body (POST|PUT)
{
        "type": "MultiPolygon",
        "coordinates": [
            [
                [
                    [
                        7.764930725097654,
                        50.530801443594385
                    ],
                    [
                        7.763471603393552,
                        50.52709125717179
                    ],
                    [
                        7.761154174804686,
                        50.524581259743805
                    ],
                    [
                        7.762441635131831,
                        50.52141629007823
                    ],
                    [
                        7.766475677490232,
                        50.51950629189859
                    ],
                    [
                        7.770338058471677,
                        50.51868769758818
                    ],
                    [
                        7.778749465942381,
                        50.51928800147066
                    ],
                    [
                        7.780122756958003,
                        50.52763689111973
                    ],
                    [
                        7.775144577026365,
                        50.533965783820754
                    ],
                    [
                        7.768535614013667,
                        50.533965783820754
                    ],
                    [
                        7.764930725097654,
                        50.530801443594385
                    ]
                ]
            ]
        ],
        "properties": {
            "title": "Tolles Ökokonto",
            "deductable_surface": 10000.0,
            "responsible": {
                "conservation_office": null,
                "conservation_file_number": "123-TEST",
                "handler": {
                    "type": "710178",
                    "detail": "Firma Mustermann234"
                }
            },
            "legal": {
                "agreement_date": "2022-01-11"
            },
            "before_states": [
                {
                    "biotope": "136155",
                    "biotope_details": [ 
                        "138046", 
                        "161751"
                    ],
                    "surface": 10000.0
                }
            ],
            "after_states": [
                {
                    "biotope": "136156",
                    "biotope_details": [],
                    "surface": 10000.0
                }
            ],
            "actions": [
                {
                    "action_types": [
                        "709297",
                        "709289",
                        "709299"
                    ],
                    "action_details": [],
                    "amount": 1.0,
                    "unit": "cm",
                    "comment": ""
                }
            ],
            "deadlines": []
        }
    }
    
Attribute
type:- Muss immer 
MultiPolygonsein 
- Muss immer 
 coordinates:- Enthält die Koordinaten der Geometrie(n) (EPSG:4326)
 
properties:- Enthält die Attribute des Objektes
 
title(str):- Bezeichnung/Titel des Eintrags
 
deductable_surface(float):- Wie viel Fläche in m² für Abbuchungen zur Verfügung steht
 
responsible:- Enthält Informationen über zuständige Eintragungsstelle/Naturschutzbehörde und ausführenden Akteur ("Maßnahmenträger")
 
responsible.conservation_office(str):- Identifiziert eindeutig die zuständige Eintragungsstelle (z.B. "Kreisverwaltung XY")
 
responsible.conservation_file_number(str):- Aktenzeichen der Eintragungsstelle
 
handler:- Enthält Informationen über den Maßnahmenträger
 
handler.type(str):- Identifiziert eindeutig die Art des Maßnahmenträgers (z.b. "Stadt", "Sonstige und private Träger", ...)
 
handler.detail(str):- Weitere Details zum Maßnahmenträger
 
before_states(list):- Enthält Informationen zu einer Menge von Biotopen, welche sich vor Durchführung der Kompensation auf der angegebenen Fläche befanden
 
before_state.biotope(str):- Identifiziert eindeutig einen Biotoptyp
 
before_state.biotope_details(list):- Identifiziert eindeutig eine Menge von Zusatzmerkmalen, welche dem Biotop zugeordnet werden können
 
before_state.surface(float):- Flächenmenge des Biotops in m²
 
after_states(list):- Enthält Informationen zu einer Menge von Biotopen, welche sich nach Durchführung der Kompensation auf der angegebenen Fläche befinden
 - Aufbau identisch zu 
before_states 
actions(list):- Enthält Informationen zu einer Menge von konkreten Maßnahmen, welche durchgeführt wurden, um die beschriebene Biotopveränderung zu bewirken
 
action.action_types(list):- Identifiziert eindeutig eine Menge von Maßnahmen, die zusammengehörig durchgeführt werden
 
action.action_details(str):- Identifiziert eindeutig eine Menge von Zusatzmerkmalen, welche der Maßnahme zugeordnet werden können
 
action.amount(float):- Menge/Anzahl der Maßnahme
 
action.unit(str):- Einheitstyp für 
amount - Valide Einheiten sind: ["cm", "m", "km", "qm", "ha", "pcs"] ~(cm, m, km, m², ha, St.)
 
- Einheitstyp für 
 action.comment(str):- Kommentarfeld zur genaueren Beschreibung der Maßnahme (ehem. "Maßnahmenerläuterung")
 
deadlines(list):- Enthält Informationen zu einer Menge von Terminen bzw. Fristen
 
deadline.type(str):- Art des Termins/der Frist
 - Valide Arten sind: ["finished", "maintain", "control", "other"] ~(Umsetzung bis, Unterhaltung bis, Kontrolle am, Sonstige)
 
deadline.date(str):- Datum des Termins/der Frist (ISO Format)
 
deadline.comment(str):- Kommentarfeld zur genaueren Beschreibung des Termins/der Frist
 
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 der Titel des Eintrags geändert werden, genügt es in properties nur das title Attribut 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: []