SCHEMA Administration;

REFERENCE FROM Strassennetz (Bereichsobjekt_hist, Streckenobjekt_hist, Strasse_abstrakt);

REFERENCE FROM Bauwerke (Routing, Bauwerk_abstrakt, Bauwerk_Netzzuordnung, Teilbauwerk_abstrakt);

REFERENCE FROM Strassenausstattungen (Leitung, Strassenentwaesserung);

REFERENCE FROM Dynamische_Beschilderung (verwaltungstechn_Zuordnung_dyn);

REFERENCE FROM Historisierung (Ereignis, historisches_Objekt);

REFERENCE FROM Allgemeine_Objekte (Datum);

REFERENCE FROM Geometrieschema (Flaechenobjekt_Modell);

REFERENCE FROM Umfeldmessstelle (verwaltungstechn_Zuordnung_UM);

REFERENCE FROM Automatische_Dauerzaehlstelle (verwaltungstechn_Zuordnung_AD);

REFERENCE FROM Unfall (DV_Merkmale_StaLa, Unfallfahrzeug, Angaben_zum_Unfallort);

REFERENCE FROM Manuelle_Zaehlstelle (verwaltungstechn_Zuordnung_MZ);

REFERENCE FROM Vermessungspunkt (Vermessungspunkt);

REFERENCE FROM Kataster (Gemarkung);

ENTITY ASB_Bezeichnung
ABSTRACT SUPERTYPE OF (ONEOF(Verwaltungsbezirk , Strassenbaudienststelle , Baulast_Dritter , sonstige_UI_Partner ));
--- Attribute :
    Bezeichnung_Lang: OPTIONAL STRING(29);
    Bezeichnung_Mittel: OPTIONAL STRING(19);
    Bezeichnung_Kurz: OPTIONAL STRING(11);
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Verwaltungsbezirk
ABSTRACT SUPERTYPE OF (ONEOF(Bundesland , Regierungsbezirk , Kreis_kreisfreie_Stadt , Gemeindebezirk , Ortsteil ))
SUBTYPE OF (Bereichsobjekt_hist, ASB_Bezeichnung, Flaechenobjekt_Modell, Verwaltungsbezirk_abstrakt);
--- Attribute :
--- Relationen :
    von_verwaltungstechn_Zuordnung: OPTIONAL SET [1: ?] OF verwaltungstechn_Zuordnung;
    von_Strasse: OPTIONAL SET [1: ?] OF Strasse_abstrakt;
    von_Unfallort: OPTIONAL SET [1: ?] OF Angaben_zum_Unfallort;
    enthaelt_Vermessungspunkt: OPTIONAL SET [1: ?] OF Vermessungspunkt;
    hat_gemeldetes_Kfz: OPTIONAL SET [1: ?] OF Unfallfahrzeug;
    zu_DV_Merkmalen_StaLa: OPTIONAL SET [1: ?] OF DV_Merkmale_StaLa;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Verwaltungsbezirk_abstrakt
ABSTRACT SUPERTYPE OF (ONEOF(Verwaltungsbezirk , Verwaltungsbezirk_Symbol ));
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Verwaltungsbezirk_Symbol
SUBTYPE OF (Verwaltungsbezirk_abstrakt);
--- Attribute :
    Kennung: STRING(10);
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Bundesland
SUBTYPE OF (Verwaltungsbezirk);
--- Attribute :
    Kennung_Bundesland: STRING(2) FIXED;
--- Relationen :
    enthaelt_Regierungsbezirk: OPTIONAL SET [1: ?] OF Verwaltungsbezirk_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Regierungsbezirk
SUBTYPE OF (Verwaltungsbezirk);
--- Attribute :
    Kennung_Regierungsbezirk: STRING(3) FIXED;
--- Relationen :
    ist_in_Bundesland: SET [1: ?] OF Verwaltungsbezirk_abstrakt;
    enthaelt_Kreis_kreisfr_Stadt: OPTIONAL SET [1: ?] OF Verwaltungsbezirk_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Kreis_kreisfreie_Stadt
SUBTYPE OF (Verwaltungsbezirk);
--- Attribute :
    Kennung_Kreis: STRING(5) FIXED;
    Kreisart: OPTIONAL Kreisart;
--- Relationen :
    ist_in_Regierungsbezirk: SET [1: ?] OF Verwaltungsbezirk_abstrakt;
    enthaelt_Gemeindebezirk: OPTIONAL SET [1: ?] OF Verwaltungsbezirk_abstrakt;
    hat_Kreisverwaltung: SET [1: ?] OF Kreisverwaltung;
    enthaelt_Gemarkung: OPTIONAL SET [1: ?] OF Gemarkung;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Kreisart;
--- Attribute :
    Kennung: STRING(1);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


(* zulaessige Werte, in der Form (Kennung,Langtext):

   ('S','Stadtkreis')
   ('L','Landkreis')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Gemeindebezirk
SUBTYPE OF (Verwaltungsbezirk);
--- Attribute :
    Kennung_Gemeinde: STRING(8) FIXED;
    Baulast_Strassenklasse: OPTIONAL Baulast_Strassenklasse;
    Gemeinde_Funktion: OPTIONAL Gemeinde_Funktion;
--- Relationen :
    ist_in_Kreis_kreisfreie_Stadt: SET [1: ?] OF Verwaltungsbezirk_abstrakt;
    enthaelt_Ortsteil: OPTIONAL SET [1: ?] OF Verwaltungsbezirk_abstrakt;
    hat_Gemeindeverwaltung: SET [1: ?] OF Gemeindeverwaltung;
    enthaelt_Gemarkung: OPTIONAL SET [1: ?] OF Gemarkung;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Baulast_Strassenklasse;
--- Attribute :
    Kennung: STRING(1);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


(* zulaessige Werte, in der Form (Kennung,Langtext):

   ('B','in OD für B-, L- und ' ||
    'Kreisstraßen')
   ('L','in OD für L- und Kreisstraßen')
   ('K','für Kreisstraßen')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Gemeinde_Funktion;
--- Attribute :
    Kennung: STRING(3) FIXED;
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


(* zulaessige Werte, in der Form (Kennung,Langtext):

   ('O','Ober-Zentrum')
   ('M','Mittel-Zentrum')
   ('U/G','Unter-/Grund-Zentrum')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Ortsteil
SUBTYPE OF (Verwaltungsbezirk);
--- Attribute :
    Kennung_Ortsteil: STRING(10) FIXED;
--- Relationen :
    ist_in_Gemeindebezirk: SET [1: ?] OF Verwaltungsbezirk_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Strassenbaudienststelle
ABSTRACT SUPERTYPE OF (ONEOF(Land_Ministerium , Regierungspraesidium_Landesamt , Amt , Meisterei , Kreisverwaltung , Gemeindeverwaltung ))
SUBTYPE OF (Bereichsobjekt_hist, ASB_Bezeichnung, Baulasttraeger, Strassenbaudienststelle_abstrakt, UI_Partner);
--- Attribute :
    Strasse: OPTIONAL STRING(29);
    Postleitzahl: OPTIONAL STRING(6);
    Ort: OPTIONAL STRING(29);
--- Relationen :
    von_Teilbauwerk: OPTIONAL SET [1: ?] OF Teilbauwerk_abstrakt;
    von_Bauwerk: OPTIONAL SET [1: ?] OF Bauwerk_abstrakt;
    von_Routing: OPTIONAL SET [1: ?] OF Routing;
    von_verwaltungstechn_Zuordnung: OPTIONAL SET [1: ?] OF verwaltungstechn_Zuordnung;
    hat_Ereignis: OPTIONAL SET [1: ?] OF Ereignis;
    von_Unfallort: OPTIONAL SET [1: ?] OF Angaben_zum_Unfallort;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Strassenbaudienststelle_abstrakt
ABSTRACT SUPERTYPE OF (ONEOF(Strassenbaudienststelle , Strassenbaudienststelle_Symbol ));
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Strassenbaudienststelle_Symbol
SUBTYPE OF (Strassenbaudienststelle_abstrakt);
--- Attribute :
    Kennung: STRING(6);
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Land_Ministerium
SUBTYPE OF (Strassenbaudienststelle);
--- Attribute :
    Schluessel_Land_Ministerium: STRING(2) FIXED;
--- Relationen :
    ist_vorgesetzt: OPTIONAL SET [1: ?] OF Strassenbaudienststelle_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Regierungspraesidium_Landesamt
SUBTYPE OF (Strassenbaudienststelle);
--- Attribute :
    Schluessel_Regpraes_Landesamt: STRING(3) FIXED;
--- Relationen :
    untersteht_Land_Ministerium: SET [1: ?] OF Strassenbaudienststelle_abstrakt;
    ist_vorgesetzt: OPTIONAL SET [1: ?] OF Strassenbaudienststelle_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Amt
SUBTYPE OF (Strassenbaudienststelle);
--- Attribute :
    Schluessel_Amt: STRING(4) FIXED;
--- Relationen :
    untersteht_Regierungspr_Ldsamt: SET [1: ?] OF Strassenbaudienststelle_abstrakt;
    ist_vorgesetzt: OPTIONAL SET [1: ?] OF Strassenbaudienststelle_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Meisterei
SUBTYPE OF (Strassenbaudienststelle);
--- Attribute :
    Schluessel_Meisterei: STRING(6) FIXED;
--- Relationen :
    untersteht_Amt: SET [1: ?] OF Strassenbaudienststelle_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Kreisverwaltung
SUBTYPE OF (Strassenbaudienststelle, Baulasttraeger);
--- Attribute :
--- Relationen :
INVERSE
    von_Kreis_kreisfreie_Stadt: SET [1: ?] OF Kreis_kreisfreie_Stadt FOR hat_Kreisverwaltung;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Gemeindeverwaltung
SUBTYPE OF (Strassenbaudienststelle, Baulasttraeger);
--- Attribute :
    Baulast_Strassenklasse: OPTIONAL STRING(1);
    Gemeindefunktion: OPTIONAL STRING(1);
--- Relationen :
INVERSE
    von_Gemeindebezirk: SET [1: ?] OF Gemeindebezirk FOR hat_Gemeindeverwaltung;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY sonstige_UI_Partner
SUBTYPE OF (UI_Partner, ASB_Bezeichnung);
--- Attribute :
    Kennzeichen: OPTIONAL STRING(6);
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY UI_Vereinbarung
SUBTYPE OF (Bereichsobjekt_hist);
--- Attribute :
    Vertragsdatum: OPTIONAL Datum;
--- Relationen :
    mit_UI_Partner: SET [1: ?] OF UI_Partner;
INVERSE
    von_Bauwerk_Netzzuordnung: SET [0: ?] OF Bauwerk_Netzzuordnung FOR hat_UI_Vereinbarung;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY UI_Partner
ABSTRACT SUPERTYPE OF (ONEOF(Strassenbaudienststelle , sonstige_UI_Partner ))
SUBTYPE OF (historisches_Objekt);
--- Attribute :
--- Relationen :
INVERSE
    hat_UI_Vereinbarung: SET [0: ?] OF UI_Vereinbarung FOR mit_UI_Partner;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Baulast
SUBTYPE OF (Bereichsobjekt_hist);
--- Attribute :
    Art_Baulast: OPTIONAL Art_Baulast;
--- Relationen :
    von_Baulasttraeger: Baulasttraeger;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Art_Baulast;
--- Attribute :
    Kennung: STRING(1);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


(* zulaessige Werte, in der Form (Kennung,Langtext):

   ('H','Hauptbaulast')
   ('G','Gemeindebaulast')
   ('D','Baulast Dritter')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Baulasttraeger
ABSTRACT SUPERTYPE OF (ONEOF(Strassenbaudienststelle , Kreisverwaltung , Gemeindeverwaltung , Baulast_Dritter ));
--- Attribute :
--- Relationen :
INVERSE
    hat_Baulast: SET [0: ?] OF Baulast FOR von_Baulasttraeger;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Baulast_Dritter
SUBTYPE OF (Baulasttraeger, ASB_Bezeichnung);
--- Attribute :
    Kennung: INTEGER;
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


(* zulaessige Werte, in der Form (Kennung,Langtext):

   (1,'Deutsche Bahn AG')
   (2,'Bundeswasserstraßenverwaltung')
   (3,'Bundesfinanzverwaltung')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Dokument;
--- Attribute :
    Kennzeichen_Aktenzeichen: OPTIONAL STRING(30);
    Seite: OPTIONAL INTEGER;
    verfuegt: OPTIONAL BOOLEAN;
    Datum: OPTIONAL Datum;
    von_Benutzer: OPTIONAL STRING(12);
    Wirksamkeitsdatum_Dokument: OPTIONAL Datum;
    Text: OPTIONAL STRING(64);
--- Relationen :
INVERSE
    von_Strassenentwaesserung: SET [0: ?] OF Strassenentwaesserung FOR hat_Dokument;
    von_Leitung: SET [0: ?] OF Leitung FOR hat_Dokument;
    ist_Grundlage_fuer_Ereignis: SET [0: ?] OF Ereignis FOR hat_Dokument_zur_Erlaeuterung;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY OD_FS
SUBTYPE OF (Streckenobjekt_hist);
--- Attribute :
    OD_FS: Tab_OD_FS;
--- Relationen :
INVERSE
    von_Unfallort: SET [0: ?] OF Angaben_zum_Unfallort FOR Ortslage_gemaess_SIB;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Tab_OD_FS;
--- Attribute :
    Kennung: STRING(1);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


(* zulaessige Werte, in der Form (Kennung,Langtext):

   ('O','Ortsdurchfahrt')
   ('V','Verknüpfungsbereich')
   ('E','Erschließungsbereich')
   ('F','Freie Strecke')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Widmung
SUBTYPE OF (Streckenobjekt_hist);
--- Attribute :
    rechtsgueltig_ab: Datum;
    Widmung: Tab_Widmung;
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Tab_Widmung;
--- Attribute :
    Kennung: INTEGER;
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


(* zulaessige Werte, in der Form (Kennung,Langtext):

   (0,'nicht gewidmet')
   (1,'gewidmet')
   (2,'gewidmet, wird umgestuft')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY verwaltungstechn_Zuordnung
ABSTRACT SUPERTYPE OF (ONEOF(verwaltungstechn_Zuordnung_UM , verwaltungstechn_Zuordnung_AD , verwaltungstechn_Zuordnung_MZ , verwaltungstechn_Zuordnung_dyn ));
--- Attribute :
--- Relationen :
    hat_Strassenbaudienststelle: Strassenbaudienststelle_abstrakt;
    hat_Verwaltungsbezirk: Verwaltungsbezirk_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

ENTITY Polizeidienststelle;
--- Attribute :
    Behoerdenkennung: STRING(6);
--- Relationen :
INVERSE
    zu_Unfallort: SET [0: ?] OF Angaben_zum_Unfallort FOR bei_Polizeidienststelle;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION << - VERSION >>

END_SCHEMA; -- Administration