SCHEMA Topografie; (* Historie: 02.08.2006 - 1.011 Ergänzung von RAS-Verm-Objekten gemäß N0071 Einführung OKSTRA-ID gemäß N0073 09.09.2005 - 1.010 (1.010) Schema Topografie erstellt *) REFERENCE FROM Geometrieschema (Punktobjekt_Modell,Linienobjekt_Modell, Flaechenobjekt_Modell); REFERENCE FROM Allgemeine_Objekte (OKSTRA_Objekt,Erfassungsqualitaet, Zentimeter,Meter); REFERENCE FROM Grunderwerb (Nutzungsartflaeche_Basis); ENTITY Status_Eigenschaft ABSTRACT SUPERTYPE OF (ONEOF(Boeschung,Nutzungsartflaeche_Basis,Gebaeude, Zaun,Mauer,Gehoelz)) SUBTYPE OF (OKSTRA_Objekt); (* VERERBEN DOWN *) --- Attribute : Bestandsstatus : Bestandsstatus; --- Relationen : END_ENTITY; ENTITY Bestandsstatus; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Bestandsstatus VALUES (1,'Bestand_erfasst') INSERT INTO Bestandsstatus VALUES (2,'Bestand_amtlich') INSERT INTO Bestandsstatus VALUES (3,'geplant/neu') INSERT INTO Bestandsstatus VALUES (4,'geplant/Abriss') INSERT INTO Bestandsstatus VALUES (5,'zerstört') INSERT INTO Bestandsstatus VALUES (6,'unbekannt') END_SQL *) ENTITY Boeschung SUBTYPE OF (Flaechenobjekt_Modell,Status_Eigenschaft); --- Attribute : Art_Boeschung : Art_Boeschung; Hoehe : OPTIONAL Meter; Beginn_Interpolation : Beginn_Interpolation; --- Relationen : hat_Oberkante : LIST [1:?] OF Boeschungskantenabschnitt; hat_Unterkante : LIST [1:?] OF Boeschungskantenabschnitt; hat_Boeschungslinie : OPTIONAL SET [1:?] OF Boeschungslinie; END_ENTITY; ENTITY Art_Boeschung; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Art_Boeschung VALUES (1,'normale Böschung') INSERT INTO Art_Boeschung VALUES (2,'historische Böschung') INSERT INTO Art_Boeschung VALUES (3,'Berme') END_SQL *) ENTITY Beginn_Interpolation; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Beginn_Interpolation VALUES (1,'Anfang') INSERT INTO Beginn_Interpolation VALUES (2,'Ende') INSERT INTO Beginn_Interpolation VALUES (3,'nicht festgelegt') END_SQL *) ENTITY Boeschungskantenabschnitt SUBTYPE OF (Linienobjekt_Modell); --- Attribute : sicher : OPTIONAL BOOLEAN; --- Relationen : INVERSE ist_Oberkante_zu : SET [0:?] OF Boeschung FOR hat_Oberkante; ist_Unterkante_zu : SET [0:?] OF Boeschung FOR hat_Unterkante; WHERE ist_Oberkante_oder_Unterkante : (EXISTS(ist_Oberkante_zu) OR EXISTS(ist_Unterkante_zu)); END_ENTITY; ENTITY Boeschungslinie SUBTYPE OF (Linienobjekt_Modell); --- Attribute : Art_Boeschungslinie : Art_Boeschungslinie; --- Relationen : INVERSE gehoert_zu_Boeschung : Boeschung FOR hat_Boeschungslinie; END_ENTITY; ENTITY Art_Boeschungslinie; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Art_Boeschungslinie VALUES (1,'Gefällewechsel') INSERT INTO Art_Boeschungslinie VALUES (2,'Kehle') END_SQL *) ENTITY Gebaeude SUBTYPE OF (Linienobjekt_Modell,Flaechenobjekt_Modell, Status_Eigenschaft); --- Attribute : Gebaeudenutzung : Gebaeudenutzung; Gebaeudefunktion : OPTIONAL Gebaeudefunktion; Name : OPTIONAL STRING; Traufhoehe : OPTIONAL Meter; Firsthoehe : OPTIONAL Meter; hat_Erfassungsqualitaet : OPTIONAL Erfassungsqualitaet; --- Relationen : hat_Anschrift : SET [0:?] OF Anschrift; hat_Geschoss : LIST [0:?] OF Geschoss; END_ENTITY; ENTITY Gebaeudenutzung; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; ENTITY Gebaeudefunktion; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; ENTITY Anschrift SUBTYPE OF (OKSTRA_Objekt); --- Attribute : Hausnummer : OPTIONAL STRING; Strassenname : OPTIONAL STRING; --- Relationen : INVERSE von_Gebaeude : SET [0:?] OF Gebaeude FOR hat_Anschrift; END_ENTITY; ENTITY Geschoss SUBTYPE OF (OKSTRA_Objekt); --- Attribute : Hoehe : OPTIONAL Meter; Oberkante_Fenster : OPTIONAL Meter; Bezeichnung : OPTIONAL STRING; --- Relationen : INVERSE von_Gebaeude : Gebaeude FOR hat_Geschoss; END_ENTITY; ENTITY Zaun SUBTYPE OF (Linienobjekt_Modell,Status_Eigenschaft); --- Attribute : Hoehe : OPTIONAL Meter; wahre_Laenge : OPTIONAL Meter; Fundament_vorhanden : OPTIONAL BOOLEAN; Seite_Zaunpfaehle : OPTIONAL Seite_Zaunpfaehle; Zaunart : OPTIONAL Zaunart; Material_Zaunpfaehle : OPTIONAL Material_Zaunpfaehle; Zaunfunktion : OPTIONAL Zaunfunktion; --- Relationen : hat_Oeffnung : LIST [0:?] OF Oeffnung; INVERSE auf_Mauerabschnitt : SET [0:?] OF Mauerabschnitt FOR hat_Zaun; END_ENTITY; ENTITY Seite_Zaunpfaehle; (* KEY_NAME Kennung *) (* KEY_TYP CHAR(1) *) Kennung : STRING(1); Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Seite_Zaunpfaehle VALUES ('L','links') INSERT INTO Seite_Zaunpfaehle VALUES ('R','rechts') END_SQL *) ENTITY Zaunart; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Zaunart VALUES (1,'Holzzaun') INSERT INTO Zaunart VALUES (2,'Drahtzaun') INSERT INTO Zaunart VALUES (3,'Metallzaun') END_SQL *) ENTITY Material_Zaunpfaehle; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Material_Zaunpfaehle VALUES (1,'Zement') INSERT INTO Material_Zaunpfaehle VALUES (2,'Metall') INSERT INTO Material_Zaunpfaehle VALUES (3,'Holz') END_SQL *) ENTITY Zaunfunktion; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Zaunfunktion VALUES (1,'Wildschutzzaun') INSERT INTO Zaunfunktion VALUES (2,'Kleintierschutzzaun') INSERT INTO Zaunfunktion VALUES (3,'Amphibienschutzzaun') INSERT INTO Zaunfunktion VALUES (4,'Bauschutzzaun') INSERT INTO Zaunfunktion VALUES (5,'Weidezaun') INSERT INTO Zaunfunktion VALUES (6,'Grenzzaun') END_SQL *) ENTITY Oeffnung SUBTYPE OF (Punktobjekt_Modell); --- Attribute : Art_Oeffnung : Art_Oeffnung; --- Relationen : INVERSE von_Zaun : SET [0:1] OF Zaun FOR hat_Oeffnung; von_Mauerabschnitt : SET [0:1] OF Mauerabschnitt FOR hat_Oeffnung; von_Heckenabschnitt : SET [0:1] OF Heckenabschnitt FOR hat_Oeffnung; END_ENTITY; ENTITY Art_Oeffnung; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Art_Oeffnung VALUES (1,'Viehdurchlass') INSERT INTO Art_Oeffnung VALUES (2,'Tür') INSERT INTO Art_Oeffnung VALUES (3,'Tor') INSERT INTO Art_Oeffnung VALUES (4,'Fluchttür') INSERT INTO Art_Oeffnung VALUES (5,'offener Durchlass') END_SQL *) ENTITY Mauer SUBTYPE OF (Status_Eigenschaft); --- Attribute : Mauerfunktion : OPTIONAL Mauerfunktion; --- Relationen : hat_Mauerabschnitt : LIST [1:?] OF Mauerabschnitt; END_ENTITY; ENTITY Mauerfunktion; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Mauerfunktion VALUES (1,'Grenzmauer') INSERT INTO Mauerfunktion VALUES (2,'Stützmauer') INSERT INTO Mauerfunktion VALUES (3,'Grenz- und Stützmauer') END_SQL *) ENTITY Mauerabschnitt SUBTYPE OF (Linienobjekt_Modell); --- Attribute : Breite : Zentimeter; Hoehe : Meter; wahre_Laenge : OPTIONAL Meter; ist_Pfeiler : OPTIONAL BOOLEAN; Material_Mauerabschnitt : OPTIONAL Material_Mauerabschnitt; Lage_Bezugsgeometrie : OPTIONAL Lage_Bezugsgeometrie; --- Relationen : hat_Zaun : OPTIONAL Zaun; hat_Oeffnung : LIST [0:?] OF Oeffnung; INVERSE gehoert_zu_Mauer : Mauer FOR hat_Mauerabschnitt; END_ENTITY; ENTITY Lage_Bezugsgeometrie; (* KEY_NAME Kennung *) (* KEY_TYP CHAR(1) *) Kennung : STRING(1); Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Lage_Bezugsgeometrie VALUES ('L','linke Seite') INSERT INTO Lage_Bezugsgeometrie VALUES ('R','rechte Seite') INSERT INTO Lage_Bezugsgeometrie VALUES ('M','Mitte') END_SQL *) ENTITY Material_Mauerabschnitt; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; ENTITY Gehoelz ABSTRACT SUPERTYPE OF (ONEOF(Gebuesch,Hecke)) SUBTYPE OF (Status_Eigenschaft); --- Attribute : Gehoelzart : OPTIONAL Gehoelzart; --- Relationen : END_ENTITY; ENTITY Gehoelzart; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; ENTITY Gebuesch SUBTYPE OF (Gehoelz,Flaechenobjekt_Modell); --- Attribute : --- Relationen : END_ENTITY; ENTITY Hecke SUBTYPE OF (Gehoelz); --- Attribute : Heckenfunktion : OPTIONAL Heckenfunktion; --- Relationen : hat_Heckenabschnitt : LIST [1:?] OF Heckenabschnitt; END_ENTITY; ENTITY Heckenfunktion; (* KEY_NAME Kennung *) (* KEY_TYP INTEGER *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Heckenfunktion VALUES (1,'Grenzhecke') INSERT INTO Heckenfunktion VALUES (2,'Sichtschutz') END_SQL *) ENTITY Heckenabschnitt SUBTYPE OF (Linienobjekt_Modell); --- Attribute : Breite : Zentimeter; Hoehe : OPTIONAL Meter; wahre_Laenge : OPTIONAL Meter; --- Relationen : hat_Oeffnung : LIST [0:?] OF Oeffnung; INVERSE gehoert_zu_Hecke : Hecke FOR hat_Heckenabschnitt; END_ENTITY; END_SCHEMA; -- Topografie