SCHEMA Verkehrsstaerke;

REFERENCE FROM Strassennetz (Bezugsrichtung);

REFERENCE FROM Verkehr (Fahrstreifen_Nummer);

REFERENCE FROM Automatische_Dauerzaehlstelle (abgeleitete_Dauerzaehlstelle, automatische_Dauerzaehlstelle);

REFERENCE FROM Manuelle_Zaehlstelle (manuelle_Zaehlstelle_SVZ);

REFERENCE FROM Unfall (Angaben_zu_Unfallumstaenden);

REFERENCE FROM Allgemeine_Objekte (Anzahl, Prozent, Monat, Jahr);

ENTITY DTV;
--- Attribute :
    Fahrzeuge_pro_24h: INTEGER;
    Bezugsjahr: Jahr;
    Bezugsmonat: OPTIONAL Monat;
    Fahrzeugkollektiv: Fahrzeugkollektiv;
    Tagesgruppe: Tagesgruppe;
    Zaehltage: Anzahl;
    Gesamtstunden: Anzahl;
    Schaetzwert: BOOLEAN;
--- Relationen :
    fuer_Fahrstreifen: OPTIONAL Fahrstreifen_Nummer;
    hat_Bezugsrichtung: OPTIONAL Bezugsrichtung;
    aus_Zaehlstelle: Zaehlstelle_abstrakt;
INVERSE
    zu_Unfallumstaenden: SET [0: ?] OF Angaben_zu_Unfallumstaenden FOR hat_DTV_im_Gesamtquerschnitt;
WHERE
    Fahrstreifen_o_Bezugsrichtung: (EXISTS(fuer_Fahrstreifen)XOR EXISTS(hat_Bezugsrichtung));
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY MSV;
--- Attribute :
    Fahrzeuge_pro_h: Anzahl;
    Bezugsjahr: Jahr;
    Tagesgruppe: Tagesgruppe;
    hat_Bezugsrichtung: Bezugsrichtung;
--- Relationen :
    hat_Anteil_am_DTV: OPTIONAL SET [1: ?] OF Anteil_am_DTV;
    aus_Zaehlstelle: Zaehlstelle_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Anteil_am_DTV;
--- Attribute :
    Anteil: Prozent;
    Fahrzeuggruppe: Fahrzeuggruppe;
--- Relationen :
INVERSE
    zu_MSV: SET [0: ?] OF MSV FOR hat_Anteil_am_DTV;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Fahrzeugkollektiv
ABSTRACT SUPERTYPE OF (ONEOF(Fahrzeugart , Fahrzeuggruppe ));
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Fahrzeugart
SUBTYPE OF (Fahrzeugkollektiv);
--- Attribute :
    Kennung: STRING(10);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


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

   ('nk Kfz','nicht klassifizierbare Fahrzeuge (Sonstige)')
   ('Krad','Motorräder')
   ('Pkw(grund)','Pkw')
   ('Lfw','Lieferwagen')
   ('Pkw','Krad + Pkw(grund) + Lfw')
   ('PkwÄ','Pkw + nk Kfz')
   ('PkwA','Pkw und Lfw mit Anhänger')
   ('Lkw','Lkw mit einem zulässigen Gesamtgewicht von mehr als 3,5 t')
   ('LkwA(grund)','Lkw mit Anhänger')
   ('Sattel-Kfz','Sattelkraftfahrzeuge')
   ('LkwA','LkwA(grund) + Sattel-Kfz')
   ('Bus','Busse mit mehr als 9 Sitzplätzen')
   ('LkwÄ','PkwA + Lkw + LkwA + Bus')
   ('Kfz','PkwÄ + LkwÄ')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Fahrzeuggruppe
SUBTYPE OF (Fahrzeugkollektiv);
--- Attribute :
    Kennung: STRING(10);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


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

   ('PV','motorisierte Zweiräder, Pkw, Busse')
   ('GV','Lieferwagen, Lkw ohne Anhänger, Lastzüge')
   ('SV','Busse, Lkw ohne Anhänger, Lastzüge')
   ('KFZ','PV + GV')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Tagesgruppe
ABSTRACT SUPERTYPE OF (ONEOF(Fahrtzweckgruppe , Normalzeitbereich , weitere_Tagesgruppen ));
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Fahrtzweckgruppe
SUBTYPE OF (Tagesgruppe);
--- Attribute :
    Kennung: STRING(9);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


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

   ('W','Werktage')
   ('U','Urlaubswerktage')
   ('S','Sonn- und Feiertage')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Normalzeitbereich
SUBTYPE OF (Tagesgruppe);
--- Attribute :
    Kennung: STRING(9);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


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

   ('Mo','Montag')
   ('Di-Do','Dienstag-Donnerstag')
   ('Fr','Freitag')
   ('Sa','Samstag')
   ('So','Sonntag')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY weitere_Tagesgruppen
SUBTYPE OF (Tagesgruppe);
--- Attribute :
    Kennung: STRING(9);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


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

   ('alle Tage','alle Tage')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Zaehlstelle
ABSTRACT SUPERTYPE OF (ONEOF(automatische_Dauerzaehlstelle , abgeleitete_Dauerzaehlstelle , manuelle_Zaehlstelle_SVZ ))
SUBTYPE OF (Zaehlstelle_abstrakt);
--- Attribute :
--- Relationen :
    zu_DTV: SET [0: ?] OF DTV;
    zu_MSV: SET [0: ?] OF MSV;
    zu_Kennw_zur_Laermberechnung: SET [0: ?] OF Kennwert_zur_Laermberechnung;
    zu_Jahresganglinientyp: SET [0: ?] OF Jahresganglinientyp;
    zu_Wochenganglinientyp: SET [0: ?] OF Wochenganglinientyp;
    zu_Tagesganglinientyp: SET [0: ?] OF Tagesganglinientyp;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Zaehlstelle_abstrakt
ABSTRACT SUPERTYPE OF (ONEOF(Zaehlstelle , Zaehlstelle_Symbol ));
--- Attribute :
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Zaehlstelle_Symbol
SUBTYPE OF (Zaehlstelle_abstrakt);
--- Attribute :
    Kennung: STRING(8);
--- Relationen :
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Kennwert_zur_Laermberechnung;
--- Attribute :
    Stundengruppe: Stundengruppe;
    Kraftfahrzeuge_pro_h: Anzahl;
    Bezugsjahr: Jahr;
--- Relationen :
    aus_Zaehlstelle: Zaehlstelle_abstrakt;
    hat_Anteil_Kennwert: OPTIONAL SET [1: ?] OF Anteil_Kennwert;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Stundengruppe;
--- Attribute :
    Kennung: STRING(5);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Kennung;
END_ENTITY;


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

   ('Tag','Tag (6h-22h)')
   ('Nacht','Nacht (22h-6h)')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Anteil_Kennwert;
--- Attribute :
    Anteil: Prozent;
    Fahrzeuggruppe: Fahrzeuggruppe;
--- Relationen :
INVERSE
    zu_Kennwert_z_Laermberechnung: SET [0: ?] OF Kennwert_zur_Laermberechnung FOR hat_Anteil_Kennwert;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Jahresganglinientyp;
--- Attribute :
    Bezugsjahr: Jahr;
    Typ: Typ_Jahresganglinie;
--- Relationen :
    aus_Zaehlstelle: Zaehlstelle_abstrakt;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

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


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

   ('A','Weitgehend ausgeglichene Ganglinie mit Rückgängen für Ferien- und Feiertagswochen.')
   ('B','Weitgehend ausgeglichene Ganglinie, im Sommerhalbjahr etwas stärkerer Verkehr als im Winterhalbjahr.')
   ('C','Im Sommerhalbjahr sichtbar stärkerer Verkehr als im Winterhalbjahr.')
   ('D','Spitzen für Ferien- und Feiertagswochen.')
   ('E','Wie Typ D, jedoch gleichmäßiger Verkehrsanstieg im 1. Halbjahr.')
   ('F','Spitzen für Feiertagswochen und deutliche Spitzen für Ferienwochen.')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Wochenganglinientyp;
--- Attribute :
    Bezugsjahr: Jahr;
    Typ: Typ_Wochenganglinie;
    Bezugsrichtung: Bezugsrichtung;
--- Relationen :
    aus_Zaehlstelle: Zaehlstelle;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

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


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

   ('A','Wochenende stark abfallend, ausgeprägtes Minimum Sonntag.')
   ('B','Wochenende stark abfallend, Minimum Sonntag.')
   ('C','Maximum Freitag, Wochenende abfallend.')
   ('D','(Lokales) Maximum Montag, Freitag, Sonntag, Minimum Samstag.')
   ('E','Maximum Freitag, Samstag überdurchschnittlich.')
   ('F','Ausgeprägtes Maximum Sonntag.')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Tagesganglinientyp;
--- Attribute :
    Bezugsjahr: Jahr;
--- Relationen :
    Typ: Tagesgruppe_Typ;
    Bezugsrichtung: Bezugsrichtung;
    Stundenindex: OPTIONAL SET [1: ?] OF INTEGER;
    aus_Zaehlstelle: Zaehlstelle;
END_ENTITY;

-- SCHEMA - OKSTRA - INDEX - VERSION <<

ENTITY Tagesgruppe_Typ;
--- Attribute :
    Tagesgruppe: STRING(7);
    Buchstabe: STRING(1);
    Langtext: STRING;
--- Relationen :
UNIQUE
    Kennung_eindeutig: Tagesgruppe,Buchstabe;
END_ENTITY;


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

   ('Montag','A','Stark ausgeprägte Morgenspitze.')
   ('Montag','B','Morgenspitze, geringe Nachmittagsspitze.')
   ('Montag','C','Relativ ausgeglichene Verkehrsverteilung tagsüber.')
   ('Montag','D','Doppelspitze (Morgen / Nachmittag).')
   ('Montag','E','Nachmittagsspitze, geringe Morgenspitze')
   ('Montag','F','Stark ausgeprägte Nachmittagsspitze.')
   ('Montag','G','Überdurchschnittliche Anteilswerte frühmorgens, nach Morgenspitze stetig abfallend.')
   ('Di – Do','A','Stark ausgeprägte Morgenspitze.')
   ('Di – Do','B','Morgenspitze, geringe Nachmittagsspitze.')
   ('Di – Do','C','Relativ ausgeglichene Verkehrsverteilung tagsüber.')
   ('Di – Do','D','Doppelspitze (Morgen / Nachmittag).')
   ('Di – Do','E','Nachmittagsspitze, geringe Morgenspitze.')
   ('Di – Do','F','Stark ausgeprägte Nachmittagsspitze.')
   ('Freitag','A','Stark ausgeprägte Morgenspitze.')
   ('Freitag','B','Morgenspitze, gegenüber Mittag höhere Verkehrsstärken nachmittags.')
   ('Freitag','C','Relativ ausgeglichene Verkehrsverteilung tagsüber.')
   ('Freitag','D','Morgenspitze, breites Maximum am Nachmittag.')
   ('Freitag','E','Breites Maximum am Nachmittag.')
   ('Freitag','F','Stark ausgeprägtes, breites Maximum am Nachmittag.')
   ('Samstag','A','Relativ ausgeglichene Verkehrsverteilung tagsüber.')
   ('Samstag','B','Nach Vormittagsspitze stetig abfallend.')
   ('Samstag','C','Doppelspitze (Vormittag / Nachmittag).')
   ('Samstag','D','Breite Nachmittagsspitze.')
   ('Samstag','E','Abendspitze.')
   ('Samstag','F','Nach ausgeprägter Vormittagsspitze stetig abfallend.')
   ('Samstag','G','Stetig ansteigend zu ausgeprägter Nachmittagsspitze, danach stetig fallend.')
   ('Samstag','H','Stark ausgeprägte Abendspitze.')
   ('Sonntag','A','Relativ ausgeglichene Verkehrsverteilung tagsüber.')
   ('Sonntag','B','Mittagsspitze.')
   ('Sonntag','C','Nachmittagsspitze.')
   ('Sonntag','D','Abendspitze.')
   ('Sonntag','E','Ausgeprägte Mittagsspitze.')
   ('Sonntag','F','Ausgeprägte Nachmittagsspitze.')
   ('Sonntag','G','Ausgeprägte Abendspitze.')

*)

-- SCHEMA - OKSTRA - INDEX - VERSION <<

END_SCHEMA; -- Verkehrsstaerke