{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Architektur-Planungs-App Datenmodell", "version": "1.0", "definitions": { "Projekt": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Eindeutige Projekt-ID" }, "label": { "type": "string", "description": "Projektbezeichnung" }, "statusProzess": { "type": "array", "items": { "type": "string", "enum": [ "Eingang", "Analyse", "Studie", "Planung", "Baurechtsverfahren", "Umsetzung", "Archiv" ] }, "description": "Aktuelle(r) Projektstatus/-stati" }, "perimeter": { "type": "array", "items": { "$ref": "#/definitions/Parzelle" }, "description": "Parzellen im Projektperimeter" }, "dokumenteBauherrschaft": { "type": "array", "items": { "$ref": "#/definitions/Dokument" }, "description": "Dokumente der Bauherrschaft" }, "dokumentePlanung": { "type": "array", "items": { "$ref": "#/definitions/Dokument" }, "description": "Planungsdokumente" }, "geoBaulinie": { "type": "array", "items": { "$ref": "#/definitions/GeoPunkt" }, "description": "Geografische Punkte der Baulinie" }, "kontextInformationen": { "type": "array", "items": { "$ref": "#/definitions/Kontext" }, "description": "Kontextuelle Projektinformationen" } }, "required": ["id", "label"] }, "Dokument": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Eindeutige Dokument-ID" }, "label": { "type": "string", "description": "Dokumentbezeichnung" }, "versionsbezeichnung": { "type": "string", "description": "Versionsnummer oder -bezeichnung" }, "typ": { "type": "string", "enum": ["Datei", "Url"], "description": "Art des Dokuments" }, "format": { "type": "string", "description": "Dateiformat (z.B. PDF, DWG, URL)", "examples": ["PDF", "DWG", "IFC", "DXF", "URL"] }, "tags": { "type": "array", "items": { "$ref": "#/definitions/Tag" }, "description": "Kategorisierungs-Tags" }, "dokumentReferenz": { "type": "string", "description": "Pfad oder URL zum Dokument" } }, "required": ["id", "label", "typ", "dokumentReferenz"] }, "Tag": { "type": "string", "enum": [ "Kataster Objekte", "Kataster Werkeleitungen", "Kataster Belastete Standorte", "Kataster Bäume", "Zonenplan", "Planungs- und Baugesetz (PGB)", "Bau- und Zonenordnung (BZO)", "Parkplatzverordnung", "Eigentümerauskunft", "Grundbuchauszug" ], "description": "Vordefinierte Dokumentkategorien" }, "Parzelle": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Eindeutige Parzellen-ID" }, "label": { "type": "string", "description": "Parzellenbezeichnung" }, "parzellenNummern": { "type": "array", "items": { "type": "string" }, "description": "Offizielle Parzellennummern" }, "eigentuemerschaaft": { "type": "string", "description": "Eigentümer der Parzelle" }, "nachbarEigentuemer": { "type": "array", "items": { "$ref": "#/definitions/Parzelle" }, "description": "Angrenzende Parzellen" }, "kontextLand": { "$ref": "#/definitions/Land", "description": "Land der Parzelle" }, "kontextKanton": { "$ref": "#/definitions/Kanton", "description": "Kanton der Parzelle" }, "kontextGemeinde": { "$ref": "#/definitions/Gemeinde", "description": "Gemeinde der Parzelle" }, "kontextInformationen": { "type": "array", "items": { "$ref": "#/definitions/Kontext" }, "description": "Parzellenspezifische Kontextinformationen" }, "strasseNr": { "type": "string", "description": "Straße und Hausnummer" }, "geoUmfang": { "type": "array", "items": { "$ref": "#/definitions/GeoPunkt" }, "description": "Geografische Umfangspunkte der Parzelle" }, "bauzone": { "type": "string", "description": "Bauzonenbezeichnung" }, "spezifischeDokumente": { "type": "array", "items": { "$ref": "#/definitions/Dokument" }, "description": "Parzellenspezifische Dokumente" }, "hochwasserschutzzone": { "type": "string", "description": "Hochwasserschutzzone (falls zutreffend)" }, "laermschutzzone": { "type": "string", "description": "Lärmschutzzone" }, "grundwasserschutzzone": { "type": "string", "description": "Grundwasserschutzzone (falls zutreffend)" }, "parzelleBebaut": { "$ref": "#/definitions/JaNein", "description": "Ist die Parzelle bebaut?" }, "parzelleErschlossen": { "$ref": "#/definitions/JaNein", "description": "Ist die Parzelle erschlossen?" }, "hanglage": { "$ref": "#/definitions/JaNein", "description": "Liegt die Parzelle in Hanglage?" }, "az": { "type": "number", "description": "Ausnützungsziffer" }, "bz": { "type": "number", "description": "Bebauungsziffer" }, "vollgeschossZahl": { "type": "integer", "description": "Anzahl zulässiger Vollgeschosse" }, "anrechenbarDachgeschoss": { "type": "number", "description": "Anrechenbarer Anteil Dachgeschoss" }, "anrechenbarUntergeschoss": { "type": "number", "description": "Anrechenbarer Anteil Untergeschoss" }, "gebaeudehoehe_max": { "type": "number", "description": "Maximale Gebäudehöhe in Metern" }, "regelnGrenzabstand": { "type": "string", "description": "Regelungen zum Grenzabstand" }, "regelnMehrlaengenzuschlag": { "type": "string", "description": "Regelungen zum Mehrlängenzuschlag" }, "regelnMehrhoehenzuschlag": { "type": "string", "description": "Regelungen zum Mehrhöhenzuschlag" } }, "required": ["id", "label"] }, "Gemeinde": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Eindeutige Gemeinde-ID" }, "label": { "type": "string", "description": "Gemeindename" }, "plz": { "type": "string", "description": "Postleitzahl" }, "dokumente": { "type": "array", "items": { "$ref": "#/definitions/Dokument" }, "description": "Gemeindedokumente" }, "kontextInformationen": { "type": "array", "items": { "$ref": "#/definitions/Kontext" }, "description": "Gemeindespezifische Kontextinformationen" }, "bzoAktuell": { "$ref": "#/definitions/Dokument", "description": "Aktuelle Bau- und Zonenordnung" }, "bzoRevision": { "$ref": "#/definitions/Dokument", "description": "BZO in Revision" } }, "required": ["id", "label"] }, "Kanton": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Eindeutige Kanton-ID" }, "label": { "type": "string", "description": "Kantonsname" }, "dokumente": { "type": "array", "items": { "$ref": "#/definitions/Dokument" }, "description": "Kantonale Dokumente" }, "kontextInformationen": { "type": "array", "items": { "$ref": "#/definitions/Kontext" }, "description": "Kantonsspezifische Kontextinformationen" }, "baureglementAktuell": { "$ref": "#/definitions/Dokument", "description": "Aktuelles Baureglement" }, "baureglementRevision": { "$ref": "#/definitions/Dokument", "description": "Baureglement in Revision" }, "bauverordnungAktuell": { "$ref": "#/definitions/Dokument", "description": "Aktuelle Bauverordnung" }, "bauverordnungRevision": { "$ref": "#/definitions/Dokument", "description": "Bauverordnung in Revision" } }, "required": ["id", "label"] }, "Land": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Eindeutige Land-ID" }, "label": { "type": "string", "description": "Landesname" }, "dokumente": { "type": "array", "items": { "$ref": "#/definitions/Dokument" }, "description": "Nationale Dokumente" }, "kontextInformationen": { "type": "array", "items": { "$ref": "#/definitions/Kontext" }, "description": "Nationale Kontextinformationen" } }, "required": ["id", "label"] }, "GeoPunkt": { "type": "object", "properties": { "x": { "type": "number", "description": "X-Koordinate (Ost)" }, "y": { "type": "number", "description": "Y-Koordinate (Nord)" }, "z": { "type": "number", "description": "Z-Koordinate (Höhe)" }, "referenzen": { "type": "array", "items": { "$ref": "#/definitions/GeoTag" }, "description": "Kategorisierung des Geopunkts" } }, "required": ["x", "y"] }, "GeoTag": { "type": "string", "enum": [ "Referenzpunkt Kat. 1", "Referenzpunkt Kat. 2", "Referenzpunkt Kat. 3", "Geometeraufnahme" ], "description": "Kategorien für Geopunkte" }, "JaNein": { "type": "string", "enum": ["", "Ja", "Nein"], "description": "Ja/Nein/Leer Wert" }, "Kontext": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Eindeutige Kontext-ID" }, "thema": { "type": "string", "description": "Thema der Kontextinformation", "examples": [ "Vorgaben zur Erdgeschossnutzung", "Dienstbarkeiten", "Anforderung Parkplätze", "Ausnützungsübertragungen", "Schadstoffbelastungen auf Parzellen", "Aktive Gestaltungspläne", "Lärmempfindlichkeitsstufen", "Mögliche Wärmenutzung", "Baumbestand auf privaten Grundstücken", "Isos (Ortsbild, Schutzstatus, Denkmalschutz, Weilergebiet, etc.)", "Naturgefahren", "Verweis auf Revisionen" ] }, "inhalt": { "type": "string", "description": "Detaillierter Inhalt der Kontextinformation" } }, "required": ["id", "thema", "inhalt"] } } }