SCHEMA Kataster;

REFERENCE FROM Administration (Verwaltungsbezirk_abstrakt);

REFERENCE FROM Entwurf (allgemeine_Eigenschaften);

REFERENCE FROM Geometrieschema (Flaechenobjekt_Modell, Linienobjekt_Modell, Punktobjekt_Modell);

REFERENCE FROM Allgemeine_Objekte (Quadratmeter, Kilometer);

REFERENCE FROM Grunderwerb (Grundbuch, Paechter_Mieter, Person_Flurstueck, Flurstueck_Grundbuch, Belastung, Nutzungsartteilflaeche, Erwerbsflaeche, Attribut_Flurstueck);

REFERENCE FROM Vermessungspunkt (sonstiger_Vermessungspunkt, Sicherungspunkt, Aufnahmepunkt, Festpunkt, Vermessungspunkt);

ENTITY Flurstueck
SUBTYPE OF (Flaechenobjekt_Modell);
--- Attribute :
    Flurstueck_Zaehler: STRING(5);
    Flurstueck_Nenner: OPTIONAL STRING(3);
    Flaeche: OPTIONAL Quadratmeter;
    Lage: OPTIONAL STRING(100);
    Baukilometer: OPTIONAL Kilometer;
    Liegenschaftsbuch: OPTIONAL STRING(5);
    Flurkarte: OPTIONAL STRING(50);
    Bemerkung: OPTIONAL STRING(100);
--- Relationen :
    hat_Attribute: OPTIONAL SET [1: ?] OF Attribut_Flurstueck;
    hat_Erwerbsflaechen: OPTIONAL SET [1: ?] OF Erwerbsflaeche;
    hat_Nutzungsartteilflaechen: OPTIONAL SET [1: ?] OF Nutzungsartteilflaeche;
    hat_Belastungen: OPTIONAL SET [1: ?] OF Belastung;
    in_Gemarkung: Gemarkung;
    in_Flur: OPTIONAL Flur;
INVERSE
    in_Grundbuch: SET [0: ?] OF Flurstueck_Grundbuch FOR Flurstueck;
    zu_Person: SET [0: ?] OF Person_Flurstueck FOR Flurstueck;
    hat_Paechter_Mieter: SET [0: ?] OF Paechter_Mieter FOR von_Flurstueck;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Flur;
--- Attribute :
    Kennung: STRING(3);
--- Relationen :
INVERSE
    hat_Flurstuecke: SET [0: ?] OF Flurstueck FOR in_Flur;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY besondere_Flurstuecksgrenze
SUBTYPE OF (Linienobjekt_Modell);
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Grenzpunkt;
--- Attribute :
--- Relationen :
    ist_Vermessungspunkt: OPTIONAL SET [1: ?] OF Vermessungspunkt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Gemarkung;
--- Attribute :
    Schluessel: STRING(4);
--- Relationen :
    in_Verwaltungsbezirk: OPTIONAL SET [1: ?] OF Verwaltungsbezirk_abstrakt;
INVERSE
    hat_Flurstuecke: SET [0: ?] OF Flurstueck FOR in_Gemarkung;
    hat_Grundbuch: SET [0: ?] OF Grundbuch FOR zu_Gemarkung;
    enthaelt_Festpunkt: SET [0: ?] OF Festpunkt FOR liegt_in_Gemarkung;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY ALKIS_Objekt
ABSTRACT SUPERTYPE OF (ONEOF(ALKIS_Objekt_Punkt , ALKIS_Objekt_Linie , ALKIS_Objekt_Flaeche , Aufnahmepunkt , Sicherungspunkt , sonstiger_Vermessungspunkt ));
--- Attribute :
    Identifikator: STRING;
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY ALKIS_Objekt_Punkt
SUBTYPE OF (Punktobjekt_Modell, allgemeine_Eigenschaften, ALKIS_Objekt);
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY ALKIS_Objekt_Linie
SUBTYPE OF (Linienobjekt_Modell, allgemeine_Eigenschaften, ALKIS_Objekt);
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY ALKIS_Objekt_Flaeche
SUBTYPE OF (Flaechenobjekt_Modell, allgemeine_Eigenschaften, ALKIS_Objekt);
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

END_SCHEMA; -- Kataster