SCHEMA Strassennetz; (* Historie: 02.08.2006 - 1.011 Einführung OKSTRA-ID gemäß N0073 Explizite Ordnung von Routenkomponenten in Routen gemäß N0084 09.09.2005 - 1.010 (1.010) Anpassung an ASB-ING, Stand 2004 Einführung der Ganglinie Schema Arbeitsstelle_an_Strassen erstellt 29.06.2004 - 1.005 (1.009) Anpassung an ASB-Netzdaten, Stand September 2002 03.09.2003 - 1.004 (1.008) Anbindung der Schemata Kostenberechnung und Ökologie Korrektur der Relation zu Verwaltungsbezirk Korrektur der historischen Gültigkeitsdaten (SQL) 31.05.2002 - 1.003 (1.007) Erweiterung des Strassenpunkts gemäß Dokument N0031 12.09.2001 - 1.002 (1.004) Referenzen zum Schema Entwurf angepasst in Folge des Änderungsantrags A0006 Referenzen zum Schema Unfall angepasst 11.12.2000 - 1.001 (1.002) Integration symbolischer Verweise für Teilbauwerk, oertliche_Zuordnung, oertliche_Zuordnung_SP, Strasse, nicht_nach_ASB_Klass_Strasse, Netzknoten, Nullpunkt, Abschnitt_oder_Ast und Verwaltungsbezirk 15.10.1999 - 1.000 (1.000) Erste Version des OKSTRA verabschiedet *) REFERENCE FROM Administration (UI_Vereinbarung,Strassenbaudienststelle,Baulast,ASB_Objekt, Verwaltungsbezirk,Verwaltungsbezirk_abstrakt,OD_FS,Widmung); REFERENCE FROM Verkehr (Beschraenkung_verkehrlich,Anzahl_Fahrstreifen, Strassenbeschreibung_verkehrl); REFERENCE FROM Bauwerke (Teilbauwerk,Sachverhalt); REFERENCE FROM Strassenzustandsdaten (ZEB_Objekt); REFERENCE FROM Strassenausstattungen (Ausstattung_und_Anlagen, Strassenentwaesserung); REFERENCE FROM Bauliche_Strasseneigenschaften (Hindernis,Schutzzone,Durchlass, Schichtbegrenzung,Streifenbegrenzung,Radweg,Fussweg, Fahrbahnbreite,Trassenbreite,Fahrbahntrennung,Schicht, Fahrbahnquerneigung,Fahrbahnlaengsneigung,Bauklasse_Oberbau, Bauweise_Oberbau,Regelquerschnitt,Querschnittstreifen, Bahnigkeit); REFERENCE FROM Entwurf (Trasse); REFERENCE FROM Ausstattung (Beschilderung_Lichtsignalanl,Fahrbahnmarkierungen, Schutz_und_Leiteinrichtungen); REFERENCE FROM Statische_Beschilderung (Wegweiser,stat_verkehrsreg_Beschilderung, Position,raeumlicher_Gueltigkeitsber, Standort,Wegweiserinhalt); REFERENCE FROM Dynamische_Beschilderung (SB_Wirkungsbereiche, WW_Wirkungsbereiche,Wirkungsbereich_SP, Anordnung_des_Messsystems,Aufstellvorrichtung); REFERENCE FROM Manuelle_Zaehlstelle (oertliche_Zuordnung_MZ, raeuml_Gueltigkeitsbereich_MZ); REFERENCE FROM Automatische_Dauerzaehlstelle (oertliche_Zuordnung_DZ, automatische_Dauerzaehlstelle,abgeleitete_Dauerzaehlstelle); REFERENCE FROM Verkehrsstaerke (Ganglinie_Punktobjekt,Ganglinie_Bereichsobjekt); REFERENCE FROM Historisierung (historisches_Objekt,Teilabschnitt_IdNT); REFERENCE FROM Allgemeine_Objekte (OKSTRA_Objekt,Datum,Meter,Kilometer,Winkel,Dokument_abstrakt); REFERENCE FROM Geometrieschema (Punktobjekt_Modell,Linienobjekt_Modell,BoundingBox); REFERENCE FROM Umfeldmessstelle (oertliche_Zuordnung_UM); REFERENCE FROM Unfall (Angaben_zum_Unfallort,Unfallort_Strassenpunkt); REFERENCE FROM Lichtsignalanlage (oertliche_Zuordnung_LS); REFERENCE FROM Kostenberechnung(Projektkennzeichnung_Kostra); REFERENCE FROM Oekologie (Standortbeschreibung_Baum,Baumassnahme); REFERENCE FROM Kreuzungen (Kreuzung); REFERENCE FROM Arbeitsstelle_an_Strassen (Arbeitsstelle_an_Strassen, verkehrliche_Angaben_Arbeitsst, Umleitung_Strecke); ENTITY Strassenklasse; -- ASB 97, 3.1 (* KEY_NAME Kennung *) (* KEY_TYP CHAR(1) *) Kennung : STRING(1); Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Strassenklasse VALUES ('A','Bundesautobahn') INSERT INTO Strassenklasse VALUES ('B','Bundesstraße') INSERT INTO Strassenklasse VALUES ('L','Landesstraße') INSERT INTO Strassenklasse VALUES ('S','Staatsstraße') INSERT INTO Strassenklasse VALUES ('K','Kreisstraße') INSERT INTO Strassenklasse VALUES ('G','Gemeindestraße') END_SQL *) TYPE Strassennummer = INTEGER; -- ASB 97, 3.1 WHERE maximal_vierstellig : { 0 < SELF <= 9999 }; (* BEDINGUNG ( SELF > 0 ) AND ( SELF <= 9999 ) *) END_TYPE; TYPE Zusatzbuchstabe = STRING(1); -- ASB 97, 3.1 WHERE erlaubte_Buchstaben : { 'A' <= SELF <= 'Z' }; (* BEDINGUNG ( SELF >= 'A' ) AND ( SELF <= 'Z' ) *) END_TYPE; FUNCTION Zusatzbuchstabe_oder_Leerzeichen(zb:Zusatzbuchstabe) : STRING(1); IF EXISTS(zb) THEN RETURN(zb); END_IF; RETURN(' '); END_FUNCTION; ENTITY Strassenbezeichnung; -- ASB 97, 3.1 (* KONZEPTUELL J *) --- Attribute : Strassenklasse : Strassenklasse; Strassennummer : Strassennummer; Zusatzbuchstabe : OPTIONAL Zusatzbuchstabe; --- Relationen : DERIVE Strassenname : STRING(6) := Strassenklasse.Kennung + FORMAT( Strassennummer, '4I' ) + Zusatzbuchstabe_oder_Leerzeichen (Zusatzbuchstabe); END_ENTITY; ENTITY Strasse -- ASB 97, 3 SUBTYPE OF (ASB_Objekt,historisches_Objekt,Strasse_abstrakt); --- Attribute : hat_Strassenbezeichnung : Strassenbezeichnung; --- Relationen : hat_Abschnitt_oder_Ast : SET [1:?] OF Abschnitt_oder_Ast_abstrakt; (* O *) hat_BAB_Knotennummer : OPTIONAL SET [1:?] OF BAB_Knotennummer; (* O *) in_Verwaltungsbezirk : OPTIONAL SET [1:?] OF Verwaltungsbezirk_abstrakt; (* D *) (* O *) enthaelt_Block : OPTIONAL SET [1:?] OF Block; von_Unfallort : OPTIONAL SET [1:?] OF Angaben_zum_Unfallort; muendet_ein_am_Anfg_von_Unfall: OPTIONAL SET [1:?] OF Angaben_zum_Unfallort; muendet_ein_am_Ende_von_Unfall: OPTIONAL SET [1:?] OF Angaben_zum_Unfallort; zu_Projektkennzeichnung_Kostra: OPTIONAL SET [1:?] OF Projektkennzeichnung_Kostra; zu_Baumassnahme : OPTIONAL SET [1:?] OF Baumassnahme; hat_Arbeitsstelle : OPTIONAL SET [1:?] OF Arbeitsstelle_an_Strassen; END_ENTITY; ENTITY Strasse_abstrakt -- ASB 97, 3 ABSTRACT SUPERTYPE OF (ONEOF(Strasse,Strasse_Symbol)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Strasse_Symbol -- ASB 97, 3 SUBTYPE OF (Strasse_abstrakt); --- Attribute : Kennung : STRING(16); --- Relationen : END_ENTITY; TYPE TK25_Blattnummer = STRING(4) FIXED; END_TYPE; TYPE lfd_NK_Nummer = STRING(3) FIXED; END_TYPE; ENTITY Knotenart; -- ASB 97, 1.1.4 (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Knotenart VALUES (1,'plangleich (höhengleich)') INSERT INTO Knotenart VALUES (2,'planfrei (höhenungleich)') INSERT INTO Knotenart VALUES (3,'teilplanfrei') INSERT INTO Knotenart VALUES (0,'fiktiver Netzknoten') END_SQL *) ENTITY Knotenpunktsform; -- ASB 97, 1.1.6 (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Knotenpunktsform VALUES (01,'Einmündung oder Kreuzung von 2-streifigen Straßen') INSERT INTO Knotenpunktsform VALUES (02,'Einmündung oder Kreuzung von 2-bahnigen mit 2-streifigen Straßen in der Regel mit Lichtsignalanlage') INSERT INTO Knotenpunktsform VALUES (03,'Einmündung oder Kreuzung von 2-bahnigen Straßen mit Lichtsignalanlage') INSERT INTO Knotenpunktsform VALUES (04,'planfreie Kreuzung von 2-streifigen oder 2-bahnigen Straßen') INSERT INTO Knotenpunktsform VALUES (05,'teilplanfreie Kreuzung von 2-streifigen oder 2-bahnigen Straßen') INSERT INTO Knotenpunktsform VALUES (06,'Kreuzung 2-streifiger Straßen als Versatz') INSERT INTO Knotenpunktsform VALUES (07,'Aufgeweitete Einmündung oder Kreuzung mit mindestens einer 2-bahnigen Straße') INSERT INTO Knotenpunktsform VALUES (08,'kleiner Kreisverkehrsplatz, d < 30 m') INSERT INTO Knotenpunktsform VALUES (09,'großer Kreisverkehrsplatz, d > 30 m') INSERT INTO Knotenpunktsform VALUES (11,'Einmündung oder Kreuzung von 2-streifigen Straßen mit Lichtsignalanlage') INSERT INTO Knotenpunktsform VALUES (12,'Einmündung oder Kreuzung von 2-bahnigen mit 2-streifigen Straßen mit Lichtsignalanlage') INSERT INTO Knotenpunktsform VALUES (13,'planfreie Kreuzung mit Lichtsignalanlagen') INSERT INTO Knotenpunktsform VALUES (14,'Kreuzung 2-streifiger Straßen als Versatz mit Lichtsignalanlage') END_SQL *) ENTITY Knotenpunktsystem; -- ASB 97, 1.1.7 (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Knotenpunktsystem VALUES (01,'Trompete') INSERT INTO Knotenpunktsystem VALUES (02,'Birne') INSERT INTO Knotenpunktsystem VALUES (03,'Dreieck mit 3 zweigeschossigen Bauwerken') INSERT INTO Knotenpunktsystem VALUES (04,'Dreieck mit 1 dreigeschossigen Bauwerk') INSERT INTO Knotenpunktsystem VALUES (05,'Kleeblatt') INSERT INTO Knotenpunktsystem VALUES (06,'Kleeblatt, abgewandelt mit halbdirekter Führung eines Linksabbiegestromes') INSERT INTO Knotenpunktsystem VALUES (07,'Kleeblatt, abgewandelt mit zügiger halbdirekter Führung eines Linksabbiegestromes') INSERT INTO Knotenpunktsystem VALUES (08,'halbes Kleeblatt') INSERT INTO Knotenpunktsystem VALUES (09,'halbes Kleeblatt, asymmetrisch') INSERT INTO Knotenpunktsystem VALUES (10,'halbes Kleeblatt, asymmetrisch mit innen- und hintereinanderliegenden Linksabbiegespuren') INSERT INTO Knotenpunktsystem VALUES (11,'halbes Kleeblatt, asymmetrisch mit innen- und nebeneinanderliegenden Linksabbiegespuren') INSERT INTO Knotenpunktsystem VALUES (12,'halbes Kleeblatt, symmetrisch') INSERT INTO Knotenpunktsystem VALUES (13,'Raute mit innen- und hintereinanderliegenden Linksabbiegespuren') INSERT INTO Knotenpunktsystem VALUES (14,'Raute mit innen- und nebeneinanderliegenden Linksabbiegespuren') INSERT INTO Knotenpunktsystem VALUES (15,'Raute mit aufgeweiteter Kreuzung') INSERT INTO Knotenpunktsystem VALUES (16,'Raute mit außenliegenden Linksabbiegespuren') INSERT INTO Knotenpunktsystem VALUES (17,'Sondersystem') END_SQL *) ENTITY Netzknoten -- ASB 97, 1.1 SUBTYPE OF (ASB_Objekt,Punktobjekt_Modell,historisches_Objekt,Netzknoten_abstrakt); (* KEY_TYP CHAR(7) *) --- Attribute : Numerierungsbezirk : TK25_Blattnummer; Nummer : lfd_NK_Nummer; Knotenart : OPTIONAL Knotenart; Knotenname : OPTIONAL STRING(60); Knotenpunktsform : OPTIONAL Knotenpunktsform; Knotenpunktsystem : OPTIONAL Knotenpunktsystem; --- Relationen : hat_BAB_Knotennummer : OPTIONAL SET [1:?] OF BAB_Knotennummer; (* O *) hat_Nullpunkt : SET [1:?] OF Nullpunkt_abstrakt; (* O *) enthaelt_Strassenelement : OPTIONAL SET [1:?] OF Strassenelement_abstrakt; (* O *) hat_Netzknotenskizze : OPTIONAL SET [1:?] OF Dokument_abstrakt; (* O *) hat_Einmessskizze : OPTIONAL SET [1:?] OF Dokument_abstrakt; (* O *) Beginn_von : OPTIONAL SET [1:?] OF WW_Wirkungsbereiche; (* O *) Ende_von : OPTIONAL SET [1:?] OF WW_Wirkungsbereiche; (* O *) auf_Trasse : OPTIONAL SET [1:?] OF Trasse; (* O *) hat_Wegweiser : OPTIONAL SET [1:?] OF Wegweiser; END_ENTITY; ENTITY Netzknoten_abstrakt -- ASB 97, 1.1 ABSTRACT SUPERTYPE OF (ONEOF(Netzknoten,Netzknoten_Symbol)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Netzknoten_Symbol -- ASB 97, 1.1 SUBTYPE OF (Netzknoten_abstrakt); --- Attribute : Kennung : STRING(7) FIXED; --- Relationen : END_ENTITY; ENTITY TK25Blatt SUBTYPE OF (OKSTRA_Objekt); --- Attribute : Nummer : TK25_Blattnummer; Bezeichnung : OPTIONAL STRING(30); --- Relationen : hat_Bereich : OPTIONAL BoundingBox; -- optional, da ableitbar aus der Nummer hat_Zuordnung : OPTIONAL SET [1:?] OF Nummernintervall; END_ENTITY; ENTITY Nummernintervall SUBTYPE OF (OKSTRA_Objekt); --- Attribute : von : lfd_NK_Nummer; bis : lfd_NK_Nummer; --- Relationen : fuer_Land : SET [1:?] OF Verwaltungsbezirk_abstrakt; (* D *) INVERSE gehoert_zu_TK25Blatt : TK25Blatt FOR hat_Zuordnung; END_ENTITY; ENTITY BAB_Knotennummer SUBTYPE OF (ASB_Objekt,historisches_Objekt); --- Attribute : Knotennummer : INTEGER; Buchstabe : OPTIONAL STRING(1); --- Relationen : auf_Strasse : SET [1:?] OF Strasse_abstrakt; (* D *) (* O *) von_Netzknoten : SET [1:?] OF Netzknoten_abstrakt; (* D *) (* O *) END_ENTITY; ENTITY Stadium SUBTYPE OF (OKSTRA_Objekt); --- Attribute : unter_Verkehr : BOOLEAN; Stadium : Tab_Stadium; Verkehrsfreigabe : Datum; --- Relationen : END_ENTITY; ENTITY Tab_Stadium; (* KEY_NAME Kennung *) (* KEY_TYP CHAR(3) *) Kennung : STRING(3); Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Tab_Stadium VALUES ('VP','Vorplanung hat begonnen') INSERT INTO Tab_Stadium VALUES ('UVA','Umweltverträglichkeitsstudie bzw. Variantenuntersuchung hat begonnen') INSERT INTO Tab_Stadium VALUES ('UVE','Umweltverträglichkeitsstudie bzw. Variantenuntersuchung ist abgeschlossen') INSERT INTO Tab_Stadium VALUES ('LBV','Unterlagen für Linienbestimmung/Trassenfestlegung werden aufgestellt') INSERT INTO Tab_Stadium VALUES ('LBE','Linie bestimmt/Trassenführung festgelegt') INSERT INTO Tab_Stadium VALUES ('VE','Vorentwurf hat begonnen') INSERT INTO Tab_Stadium VALUES ('VEG','Vorentwurf genehmigt') INSERT INTO Tab_Stadium VALUES ('PA','Planfeststellungsverfahren beantragt') INSERT INTO Tab_Stadium VALUES ('PB','Planfeststellungsbeschluss ergangen') INSERT INTO Tab_Stadium VALUES ('PU','Planfeststellungsbeschluss bestandskräftig') INSERT INTO Tab_Stadium VALUES ('BAU','Durchführung der Bauarbeiten begonnen') INSERT INTO Tab_Stadium VALUES ('VFV','Verkehrsfreigabe der Gesamtstrecke der Verkehrseinheit ist erfolgt') INSERT INTO Tab_Stadium VALUES ('EPL','Erneuerung/Ersatzneubau in Planung') INSERT INTO Tab_Stadium VALUES ('EAU','Erneuerung/Ersatzneubau in Ausführung') INSERT INTO Tab_Stadium VALUES ('IPL','Instandsetzung in Planung') INSERT INTO Tab_Stadium VALUES ('IAU','Instandsetzung in Ausführung') END_SQL *) ENTITY Abschnitt_oder_Ast -- ASB 97, 2.1/2.2 ABSTRACT SUPERTYPE OF (ONEOF(Abschnitt,Ast)) SUBTYPE OF (ASB_Objekt,Linienobjekt_Modell,historisches_Objekt,Abschnitt_oder_Ast_abstrakt); (* KEY_TYP CHAR(16) *) (* ARTEN J *) (* SAMMELN J *) --- Attribute : Laenge : OPTIONAL Kilometer; Herkunft_Laenge : OPTIONAL Herkunft_Laenge; Stadium : OPTIONAL Stadium; Betriebsmerkmal : OPTIONAL Betriebsmerkmal; Abschnitts_Astnummer : OPTIONAL STRING(7); Abschnitts_Astbezeichnung : OPTIONAL STRING(60); --- Relationen : beginnt_bei_NP : SET [1:?] OF Nullpunkt_abstrakt; (* D *) (* O *) endet_bei_NP : SET [1:?] OF Nullpunkt_abstrakt; (* D *) (* O *) gehoert_zu_Strasse : SET [1:?] OF Strasse_abstrakt; (* D *) (* O *) enthaelt_Strassenelement : OPTIONAL SET [1:?] OF Strassenelement_abstrakt; (* O *) hat_Teilabschnitt : OPTIONAL SET [1:?] OF Teilabschnitt; (* O *) hat_Strassenpunkt : OPTIONAL SET [1:?] OF Strassenpunkt; (* O *) zu_Baumassnahme : OPTIONAL SET [1:?] OF Baumassnahme; END_ENTITY; ENTITY Herkunft_Laenge; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Herkunft_Laenge VALUES (1,'vor Ort gemessen') INSERT INTO Herkunft_Laenge VALUES (2,'Bauunterlagen') INSERT INTO Herkunft_Laenge VALUES (3,'Planungsunterlagen') INSERT INTO Herkunft_Laenge VALUES (4,'aus der Digitalisierung') END_SQL *) ENTITY Abschnitt_oder_Ast_abstrakt -- ASB 97, 2.1/2.2 ABSTRACT SUPERTYPE OF (ONEOF(Abschnitt_oder_Ast,Abschnitt_oder_Ast_Symbol)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Abschnitt_oder_Ast_Symbol -- ASB 97, 2.1/2.2 SUBTYPE OF (Abschnitt_oder_Ast_abstrakt); --- Attribute : Kennung : STRING(16); --- Relationen : END_ENTITY; ENTITY Abschnitt -- ASB 97, 2.1 SUBTYPE OF (Abschnitt_oder_Ast); (* SAMMELN J *) --- Attribute : Seitenarm : OPTIONAL BOOLEAN; getrennt_verlaufende_Fahrbahn : OPTIONAL Zweig_der_Trennung; Abschnittsfolgenummer : OPTIONAL STRING(4); --- Relationen : END_ENTITY; ENTITY Zweig_der_Trennung; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Zweig_der_Trennung VALUES (1,'getrennt verlaufende Fahrbahn, Zweig 1 (in Stationierungsrichtung befahren)') INSERT INTO Zweig_der_Trennung VALUES (2,'getrennt verlaufende Fahrbahn, Zweig 2 (gegen Stationierungsrichtung befahren)') END_SQL *) ENTITY Ast -- ASB 97, 2.2 SUBTYPE OF (Abschnitt_oder_Ast); (* SAMMELN J *) --- Attribute : Funktion : Funktion_des_Astes; --- Relationen : END_ENTITY; ENTITY Funktion_des_Astes; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Funktion_des_Astes VALUES (1,'Einfahrt / Ausfahrt') INSERT INTO Funktion_des_Astes VALUES (2,'Parallelfahrbahn (baulich getrennt)') INSERT INTO Funktion_des_Astes VALUES (3,'Fahrbahn des Kreisverkehrs') END_SQL *) ENTITY Betriebsmerkmal; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Betriebsmerkmal VALUES (1,'durchgehende Strecke') INSERT INTO Betriebsmerkmal VALUES (2,'Verbindungsrampe') END_SQL *) TYPE Nullpunktkennung = STRING(1); -- ASB 1.2 WHERE Buchstabe : {'A' <= SELF <= 'Z'} OR SELF = ' '; (* BEDINGUNG ( ( SELF >= 'A' AND SELF <= 'Z' ) OR ( SELF = ' ' ) ) *) END_TYPE; ENTITY Nullpunkt -- ASB 97, 1.2 SUBTYPE OF (ASB_Objekt,Punktobjekt_Modell,historisches_Objekt,Nullpunkt_abstrakt); (* KEY_TYP CHAR(8) *) --- Attribute : Zusatz : Nullpunktkennung; Nullpunktart : Nullpunktart; --- Relationen : in_Netzknoten : SET [1:?] OF Netzknoten_abstrakt; (* D *) (* O *) Beginn_von_Abschnitt_oder_Ast : OPTIONAL SET [1:?] OF Abschnitt_oder_Ast_abstrakt; (* O *) Ende_von_Abschnitt_oder_Ast : OPTIONAL SET [1:?] OF Abschnitt_oder_Ast_abstrakt; (* O *) hat_Nullpunktsort : SET [1:?] OF Nullpunktsort; (* O *) hat_Strassenelement : OPTIONAL SET [1:?] OF Strassenelement_abstrakt; (* O *) ist_Verbindungspunkt : OPTIONAL SET [1:?] OF Verbindungspunkt_abstrakt; (* O *) WHERE Beginn_von_oder_Ende_von : EXISTS(Beginn_von_Abschnitt_oder_Ast) OR EXISTS(Ende_von_Abschnitt_oder_Ast); END_ENTITY; ENTITY Nullpunktart; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Nullpunktart VALUES (1,'zentraler Nullpunkt') INSERT INTO Nullpunktart VALUES (2,'Nullpunkt') INSERT INTO Nullpunktart VALUES (0,'fiktiver Nullpunkt') END_SQL *) ENTITY Nullpunkt_abstrakt -- ASB 97, 1.2 ABSTRACT SUPERTYPE OF (ONEOF(Nullpunkt,Nullpunkt_Symbol)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Nullpunkt_Symbol -- ASB 97, 1.2 SUBTYPE OF (Nullpunkt_abstrakt); --- Attribute : Kennung : STRING(8) FIXED; --- Relationen : END_ENTITY; ENTITY Strassenpunkt -- ASB 97, 2.9.1.1 ABSTRACT SUPERTYPE OF (ONEOF(Strassenpunkt_TA,Strassenpunkt_PO,Nullpunktsort, Strassenpunkt_PoB)); (* VERERBEN DOWN *) (* KONZEPTUELL J *) --- Attribute : Station : Kilometer; Abstand_zur_Bestandsachse : OPTIONAL Meter; Abstand_zur_Fahrbahnoberkante : OPTIONAL Meter; --- Relationen : auf_Abschnitt_oder_Ast : Abschnitt_oder_Ast_abstrakt; (* O *) END_ENTITY; ENTITY Bezugsrichtung; (* KEY_NAME Kennung *) (* KEY_TYP CHAR(1) *) Kennung : STRING(1); Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Bezugsrichtung VALUES ('B','beide Richtungen') INSERT INTO Bezugsrichtung VALUES ('R','in Stationierungsrichtung') INSERT INTO Bezugsrichtung VALUES ('G','gegen Stationierungsrichtung') END_SQL *) ENTITY Strassenpunkt_PO SUBTYPE OF (Strassenpunkt); (* KONZEPTUELL J *) --- Attribute : --- Relationen : INVERSE gehoert_zu_PO : Punktobjekt FOR bei_Strassenpunkt; END_ENTITY; ENTITY Punktobjekt -- ASB 97, C.1.1.1 ABSTRACT SUPERTYPE OF (ONEOF(Punktobjekt_stat,Punktobjekt_hist)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : bei_Strassenpunkt : Strassenpunkt_PO; END_ENTITY; ENTITY Punktobjekt_stat ABSTRACT SUPERTYPE OF (ONEOF(Position,stat_verkehrsreg_Beschilderung,Standort, Unfallort_Strassenpunkt,Anordnung_des_Messsystems, oertliche_Zuordnung_SP,Sachverhalt, Wirkungsbereich_SP,Standortbeschreibung_Baum, Ganglinie_Punktobjekt)) SUBTYPE OF (Punktobjekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Punktobjekt_hist ABSTRACT SUPERTYPE OF (ONEOF(Schichtbegrenzung,Streifenbegrenzung,Durchlass, Kilometrierung,Aufstellvorrichtung,Kreuzung, Teilbauwerk)) SUBTYPE OF (Punktobjekt,historisches_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY oertliche_Zuordnung -- ISSUE 175 ABSTRACT SUPERTYPE OF (ONEOF(oertliche_Zuordnung_UM,oertliche_Zuordnung_DZ, oertliche_Zuordnung_MZ,oertliche_Zuordnung_LS)) SUBTYPE OF (OKSTRA_Objekt); --- Attribute : --- Relationen : liegt_auf_Strassenpunkt : OPTIONAL oertliche_Zuordnung_SP; liegt_auf_nicht_klass_Strasse : OPTIONAL nicht_nach_ASB_klass_Strasse; WHERE Strassenpunkt_o_nicht_klassif : EXISTS(liegt_auf_Strassenpunkt) XOR EXISTS(liegt_auf_nicht_klass_Strasse); (* BEDINGUNG ( ( liegt_auf_Strassenpunkt IS NOT NULL ) OR ( liegt_auf_nicht_klass_Strasse IS NOT NULL ) ) AND ( ( liegt_auf_Strassenpunkt IS NULL ) OR ( liegt_auf_nicht_klass_Strasse IS NULL ) ) *) END_ENTITY; ENTITY oertliche_Zuordnung_SP SUBTYPE OF (Punktobjekt_stat); -- ISSUE 158 --- Attribute : --- Relationen : INVERSE von_oertlicher_Zuordnung : SET [0:?] OF oertliche_Zuordnung FOR liegt_auf_Strassenpunkt; END_ENTITY; ENTITY nicht_nach_ASB_klass_Strasse SUBTYPE OF (OKSTRA_Objekt); --- Attribute : Strassenklasse : STRING(50); Nummer : INTEGER; Lage : STRING(28); --- Relationen : INVERSE von_oertlicher_Zuordnung : SET [0:?] OF oertliche_Zuordnung FOR liegt_auf_nicht_klass_Strasse; zu_Projektkennzeichnung_Kostra: SET [0:?] OF Projektkennzeichnung_Kostra FOR hat_nicht_nach_ASB_klass_Str; END_ENTITY; ENTITY Strassenpunkt_TA SUBTYPE OF (Strassenpunkt); (* KONZEPTUELL J *) --- Attribute : --- Relationen : INVERSE Beginn_von_TA : SET [0:1] OF Teilabschnitt FOR beginnt_bei_SP; Ende_von_TA : SET [0:1] OF Teilabschnitt FOR endet_bei_SP; WHERE entweder_Beginn_oder_Ende : EXISTS(Beginn_von_TA) XOR EXISTS(Ende_von_TA); END_ENTITY; ENTITY Nullpunktsort -- ASB 97, 1.2.2 SUBTYPE OF (ASB_Objekt,Strassenpunkt); --- Attribute : --- Relationen : bei_Nullpunkt : SET [1:?] OF Nullpunkt_abstrakt; (* D *) (* O *) END_ENTITY; ENTITY Strassenpunkt_PoB SUBTYPE OF (Strassenpunkt); (* KONZEPTUELL J *) --- Attribute : --- Relationen : INVERSE Punktobjekt_o_Bereichsobjekt : SET [0:?] OF Punktobjekt_o_Bereichsobjekt FOR ist_Punktobjekt; END_ENTITY; ENTITY Punktobjekt_o_Bereichsobjekt ABSTRACT SUPERTYPE OF (ONEOF(Beschilderung_Lichtsignalanl,Fahrbahnmarkierungen, Schutz_und_Leiteinrichtungen)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : ist_Punktobjekt : OPTIONAL Strassenpunkt_PoB; ist_Bereichsobjekt : OPTIONAL Netzbereich; WHERE Punktobjekt_o_Bereichsobjekt : EXISTS(ist_Punktobjekt) XOR EXISTS(ist_Bereichsobjekt); END_ENTITY; ENTITY Netzbereichskomponente ABSTRACT SUPERTYPE OF (ONEOF(Teilabschnitt_NB,Netzbereich,Strecke)); (* ARTEN J *) (* BEMERKUNG Arten anpassen *) (* ERSETZEN Teilabschnitt_NB,Netzbereichskomponente *) --- Attribute : --- Relationen : INVERSE in_Netzbereich : SET [0:?] OF Netzbereich FOR enthaelt_Netzbereichskomp; (* S 1 *) END_ENTITY; ENTITY Netzbereich SUBTYPE OF (ASB_Objekt,Netzbereichskomponente,historisches_Objekt); (* BUENDELN J *) (* EINMAL Abschnitt_oder_Ast_abstrakt *) (* BEMERKUNG Stations-Attribute umbenennen *) --- Attribute : --- Relationen : enthaelt_Netzbereichskomp : SET [1:?] OF Netzbereichskomponente; INVERSE zu_Bereichsobjekt : SET [1:?] OF Bereichsobjekt FOR hat_Netzbereich; (* D *) Punktobjekt_o_Bereichsobjekt : SET [0:?] OF Punktobjekt_o_Bereichsobjekt FOR ist_Bereichsobjekt; END_ENTITY; ENTITY Bereichsobjekt ABSTRACT SUPERTYPE OF (ONEOF(Bereichsobjekt_stat,Bereichsobjekt_hist)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : hat_Netzbereich : SET [1:?] OF Netzbereich; (* D *) END_ENTITY; ENTITY Bereichsobjekt_stat ABSTRACT SUPERTYPE OF (ONEOF(Ganglinie_Bereichsobjekt)) SUBTYPE OF (Bereichsobjekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Bereichsobjekt_hist ABSTRACT SUPERTYPE OF (ONEOF(UI_Vereinbarung,Strassenbaudienststelle, Baulast,Verwaltungsbezirk,Schutzzone,Teilnetz_ASB)) SUBTYPE OF (Bereichsobjekt,historisches_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Teilnetz_ASB SUBTYPE OF (ASB_Objekt,Bereichsobjekt_hist); --- Attribute : Teilnetzklasse : Teilnetzklasse; -- In den Teilnetzklassen 80-98 koennen -- laenderspezifische Attribute abgebildet werden. Nummer_in_Teilnetz : STRING(7); Name_in_Teilnetz : STRING(60); Winterdienstprioritaet : OPTIONAL Winterdienstprioritaet; Richtung : OPTIONAL Bezugsrichtung; --- Relationen : END_ENTITY; ENTITY Teilnetzklasse; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Teilnetzklasse VALUES (1,'Europastraße') INSERT INTO Teilnetzklasse VALUES (2,'Kraftfahrstraße') INSERT INTO Teilnetzklasse VALUES (3,'Planungsnetz') INSERT INTO Teilnetzklasse VALUES (4,'Regionales Netz') INSERT INTO Teilnetzklasse VALUES (5,'Touristische Straße') INSERT INTO Teilnetzklasse VALUES (6,'Bedarfsumleitung') INSERT INTO Teilnetzklasse VALUES (7,'Fahrverbot (für Gefahrgut)') INSERT INTO Teilnetzklasse VALUES (8,'Weiße Strecken (kein Winterdienst)') INSERT INTO Teilnetzklasse VALUES (9,'Hochwasser gefährdete Strecken') INSERT INTO Teilnetzklasse VALUES (10,'Höhenklasse') INSERT INTO Teilnetzklasse VALUES (11,'Winterdienstpriorität') INSERT INTO Teilnetzklasse VALUES (12,'MilGeo-Netze') END_SQL *) ENTITY Winterdienstprioritaet; (* KEY_NAME Kennung *) Kennung : INTEGER; Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Winterdienstprioritaet VALUES (1,'hohe Winterdienstpriorität') INSERT INTO Winterdienstprioritaet VALUES (2,'mittlere Winterdienstpriorität') INSERT INTO Winterdienstprioritaet VALUES (3,'geringe Winterdienstpriorität') END_SQL *) ENTITY Teilabschnitt -- ASB 97, 2.9.2.1 ABSTRACT SUPERTYPE OF (ONEOF(Teilabschnitt_SO,Teilabschnitt_NB, Teilabschnitt_Str,Teilabschnitt_IdNT)); (* VERERBEN DOWN *) (* KONZEPTUELL J *) --- Attribute : --- Relationen : beginnt_bei_SP : Strassenpunkt_TA; endet_bei_SP : Strassenpunkt_TA; auf_Abschnitt_oder_Ast : Abschnitt_oder_Ast_abstrakt; (* O *) END_ENTITY; ENTITY verallgemeinerte_Strecke ABSTRACT SUPERTYPE OF (ONEOF(Teilabschnitt_SO,Strecke_SO,Strassenelement)); (* VERERBEN DOWN *) (* ERSETZEN Strecke *) --- Attribute : --- Relationen : INVERSE zu_Streckenobjekt : SET [0:?] OF Streckenobjekt FOR hat_Strecke; (* D *) END_ENTITY; ENTITY Teilabschnitt_SO SUBTYPE OF (Teilabschnitt,verallgemeinerte_Strecke); (* KONZEPTUELL J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Streckenobjekt -- ASB 97, C.1.1.1.2 ABSTRACT SUPERTYPE OF (ONEOF(Streckenobjekt_stat,Streckenobjekt_hist)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : hat_Strecke : SET [1:?] OF verallgemeinerte_Strecke; (* D *) END_ENTITY; ENTITY Streckenobjekt_stat ABSTRACT SUPERTYPE OF (ONEOF(Fahrbahntrennung,Trassenbreite,Fahrbahnbreite, Fussweg,Radweg,ZEB_Objekt,Strassenentwaesserung, Beschraenkung_verkehrlich, Strassenbeschreibung_verkehrl,Anzahl_Fahrstreifen, Entwurfselement,Teilbauwerk,Sachverhalt, Arbeitsstelle_an_Strassen,verkehrliche_Angaben_Arbeitsst, Umleitung_Strecke)) SUBTYPE OF (Streckenobjekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Streckenobjekt_hist ABSTRACT SUPERTYPE OF (ONEOF(Fahrbahnlaengsneigung,Widmung,Querschnittstreifen, Fahrbahnquerneigung,OD_FS,Schicht,Hindernis,Block, Bauklasse_Oberbau,Bauweise_Oberbau,Bahnigkeit, Regelquerschnitt,raeumlicher_Gueltigkeitsber, SB_Wirkungsbereiche,Ausstattung_und_Anlagen, automatische_Dauerzaehlstelle,abgeleitete_Dauerzaehlstelle, raeuml_Gueltigkeitsbereich_MZ,Strassenelement_auf_Abschnitt_oder_Ast)) SUBTYPE OF (Streckenobjekt,historisches_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Teilabschnitt_Str SUBTYPE OF (Teilabschnitt); (* KONZEPTUELL J *) --- Attribute : --- Relationen : INVERSE in_Strecke : Strecke FOR entlang_Teilabschnitt; END_ENTITY; ENTITY Teilabschnitt_NB SUBTYPE OF (Teilabschnitt,Netzbereichskomponente); (* KONZEPTUELL J *) (* ERBEN NONE *) --- Attribute : --- Relationen : WHERE Teilabschnitt_NB_existiert : EXISTS(SELF\Netzbereichskomponente. in_Netzbereich); END_ENTITY; ENTITY Strecke -- ASB 97, 2.9.2.2 SUPERTYPE OF (Strecke_SO) SUBTYPE OF (ASB_Objekt,Netzbereichskomponente,historisches_Objekt); (* EINMAL Abschnitt_oder_Ast_abstrakt *) (* BEMERKUNG Reihenfolge und Stationen anpassen *) --- Attribute : --- Relationen : entlang_Teilabschnitt : LIST [1:?] OF Teilabschnitt_Str; END_ENTITY; ENTITY Strecke_SO SUBTYPE OF (Strecke,verallgemeinerte_Strecke); --- Attribute : --- Relationen : END_ENTITY; ENTITY Teilnetzkomponente ABSTRACT SUPERTYPE OF (ONEOF(Strassenelement,Teilnetz,Route)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : INVERSE in_Teilnetz : SET [0:?] OF Teilnetz FOR enthaelt_Teilnetzkomponente; END_ENTITY; ENTITY Teilnetz -- ASB 97, 3.7 SUBTYPE OF (ASB_Objekt,Teilnetzkomponente,historisches_Objekt); --- Attribute : Kennzeichen_Teilnetz : OPTIONAL STRING(6); Beschreibung_Teilnetz : OPTIONAL STRING(60); --- Relationen : enthaelt_Teilnetzkomponente : SET [1:?] OF Teilnetzkomponente; END_ENTITY; ENTITY Routenkomponente ABSTRACT SUPERTYPE OF (ONEOF(Strassenelement,Route)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : INVERSE in_Route : SET [0:?] OF Route FOR entlang_Routenkomponente; END_ENTITY; ENTITY Route SUBTYPE OF (ASB_Objekt,Teilnetzkomponente,Routenkomponente,historisches_Objekt); --- Attribute : --- Relationen : entlang_Routenkomponente : LIST [1:?] OF Routenkomponente; END_ENTITY; ENTITY Strassenelement SUBTYPE OF (ASB_Objekt,Teilnetzkomponente,Routenkomponente,historisches_Objekt, Linienobjekt_Modell,verallgemeinerte_Strecke,Strassenelement_abstrakt); (* KEY_TYP CHAR(24) *) --- Attribute : GDF_ID : OPTIONAL STRING; -- GDF_ID benötigt man zusätzlich, wenn man persistente GDF-Identifier unterstützen will Verkehrsrichtung : OPTIONAL Verkehrsrichtung_SE; --- Relationen : beginnt_bei_VP : SET [1:?] OF Verbindungspunkt_abstrakt; (* D *) (* O *) endet_bei_VP : SET [1:?] OF Verbindungspunkt_abstrakt; (* D *) (* O *) stationiert_auf_AoA : OPTIONAL SET [1:?] OF Strassenelement_auf_Abschnitt_oder_Ast; (* D *) in_Nullpunkt : OPTIONAL SET [1:?] OF Nullpunkt_abstrakt; (* D *) (* O *) zwischen_Kreuzungsbereichen : OPTIONAL SET [1:?] OF Abschnitt_oder_Ast_abstrakt; (* D *) (* O *) im_Kreuzungsbereich : OPTIONAL SET [1:?] OF Netzknoten_abstrakt; (* D *) (* O *) Beginn_von_verbotener_Fahrbez : OPTIONAL SET [1:?] OF Verbotene_Fahrbeziehung; (* D *) Mitte_von_verbotener_Fahrbez : OPTIONAL SET [1:?] OF Verbotene_Fahrbeziehung; (* D *) Ende_von_verbotener_Fahrbez : OPTIONAL SET [1:?] OF Verbotene_Fahrbeziehung; (* D *) von_Wegweiserinhalt : OPTIONAL SET [1:?] OF Wegweiserinhalt; (* D *) nach_Wegweiserinhalt : SET [0:?] OF Wegweiserinhalt; (* D *) END_ENTITY; ENTITY Verkehrsrichtung_SE; (* KEY_NAME Kennung *) (* KEY_TYP CHAR(1) *) Kennung : STRING(1); Langtext : STRING; UNIQUE Kennung_eindeutig : Kennung; END_ENTITY; (* SQL : INSERT INTO Verkehrsrichtung_SE VALUES ('R','Verkehrsrichtung von Von-VP nach Nach-VP') INSERT INTO Verkehrsrichtung_SE VALUES ('G','Verkehrsrichtung von Nach-VP nach Von-VP') INSERT INTO Verkehrsrichtung_SE VALUES ('B','In beiden Richtungen') END_SQL *) ENTITY Strassenelement_abstrakt ABSTRACT SUPERTYPE OF (ONEOF(Strassenelement,Strassenelement_Symbol)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Strassenelement_Symbol SUBTYPE OF (Strassenelement_abstrakt); --- Attribute : Kennung : STRING(24); --- Relationen : END_ENTITY; ENTITY Strassenelement_auf_Abschnitt_oder_Ast SUBTYPE OF (Streckenobjekt_hist); --- Attribute : --- Relationen : INVERSE zu_Strassenelement : SET [1:?] OF Strassenelement FOR stationiert_auf_AoA; END_ENTITY; ENTITY Verbindungspunkt SUBTYPE OF (ASB_Objekt,historisches_Objekt,Punktobjekt_Modell,Verbindungspunkt_abstrakt); --- Attribute : Nummerierungsbezirk : TK25_Blattnummer; Nummer : INTEGER; GDF_ID : OPTIONAL STRING; -- GDF_ID benötigt man zusätzlich, wenn man persistente GDF-Identifier unterstützen will --- Relationen : in_Nullpunkt : OPTIONAL SET[1:?] OF Nullpunkt_abstrakt; (* D *) (* O *) Beginn_von_Strassenelement : OPTIONAL SET [1:?] OF Strassenelement_abstrakt; (* D *) (* O *) Ende_von_Strassenelement : OPTIONAL SET [1:?] OF Strassenelement_abstrakt; (* D *) (* O *) WHERE Beginn_oder_Ende : ( EXISTS(Beginn_von_Strassenelement) OR EXISTS(Ende_von_Strassenelement) ); END_ENTITY; ENTITY Verbindungspunkt_abstrakt ABSTRACT SUPERTYPE OF (ONEOF(Verbindungspunkt,Verbindungspunkt_Symbol)) SUBTYPE OF (OKSTRA_Objekt); (* ARTEN J *) --- Attribute : --- Relationen : END_ENTITY; ENTITY Verbindungspunkt_Symbol SUBTYPE OF (Verbindungspunkt_abstrakt); --- Attribute : Kennung : STRING(12); --- Relationen : END_ENTITY; ENTITY Verbotene_Fahrbeziehung SUBTYPE OF (ASB_Objekt,historisches_Objekt); --- Attribute : --- Relationen : von_Strassenelement : SET [1:?] OF Strassenelement_abstrakt; (* D *) (* O *) ueber_Strassenelement : OPTIONAL SET [1:?] OF Strassenelement_abstrakt; (* D *) (* O *) nach_Strassenelement : SET [1:?] OF Strassenelement_abstrakt; (* D *) (* O *) END_ENTITY; ENTITY Kilometrierung SUPERTYPE OF (Betriebskilometer) SUBTYPE OF (ASB_Objekt,Punktobjekt_hist); --- Attribute : Kilometrierung : Kilometer; Bezugsrichtung : OPTIONAL Bezugsrichtung; historischer_Strassenname : OPTIONAL STRING(14); --- Relationen : END_ENTITY; ENTITY Betriebskilometer SUBTYPE OF (Kilometrierung); (* ERBEN UP *) (* ERSETZEN Kilometrierung *) --- Attribute : --- Relationen : in_Block : SET [1:?] OF Block; (* D *) INVERSE ist_Anfang_von_Block : SET [1:?] OF Block FOR Betriebskilometer_Anfang; (* O *) ist_Ende_von_Block : SET [1:?] OF Block FOR Betriebskilometer_Ende; (* O *) von_Angaben_zum_Unfallort : SET [0:?] OF Angaben_zum_Unfallort FOR bei_Betriebskilometer; von_Sachverhalt : SET [0:?] OF Sachverhalt FOR hat_Betriebskilometer; END_ENTITY; ENTITY Block SUBTYPE OF (ASB_Objekt,Streckenobjekt_hist); --- Attribute : Blocknummer : STRING(8); --- Relationen : auf_Strasse : SET [1:?] OF Strasse_abstrakt; (* D *) (* O *) Betriebskilometer_Anfang : OPTIONAL SET [1:?] OF Betriebskilometer; (* O *) Betriebskilometer_Ende : OPTIONAL SET [1:?] OF Betriebskilometer; (* O *) INVERSE enthaelt_Betriebskilometer : SET [0:?] OF Betriebskilometer FOR in_Block; END_ENTITY; ENTITY Entwurfselement ABSTRACT SUPERTYPE OF (ONEOF(Entwurfselement_Kreisbogen, Entwurfselement_Klothoide,Entwurfselement_Gerade)) SUBTYPE OF (Streckenobjekt_stat); --- Attribute : Richtungsw_Tangente_am_Anfang : OPTIONAL Winkel; --- Relationen : beginnt_bei_Vermessungspunkt : INTEGER; -- Verm_Punkt; endet_bei_Vermessungspunkt : INTEGER; -- Verm_Punkt; END_ENTITY; ENTITY Entwurfselement_Kreisbogen SUBTYPE OF (Entwurfselement); --- Attribute : Radius : Meter; --- Relationen : END_ENTITY; ENTITY Entwurfselement_Klothoide SUBTYPE OF (Entwurfselement); --- Attribute : Radius_am_Anfang : Meter; Radius_am_Ende : OPTIONAL Meter; Parameter : Meter; --- Relationen : END_ENTITY; ENTITY Entwurfselement_Gerade SUBTYPE OF (Entwurfselement); --- Attribute : --- Relationen : END_ENTITY; END_SCHEMA; -- Strassennetz