FGSV-Nr. FGSV 002/122
Ort Bergisch Gladbach
Datum 15.05.2018
Titel OKSTRA à la carte - Bildung von OKSTRA-Ausschnitten mit Profilen
Autoren Dr.-Ing. Jochen Hettwer
Kategorien OKSTRA
Einleitung

Mit OKSTRA®-Profilen lassen sich Ausschnitte des OKSTRA®-Datenmodells definieren sowie Einschränkungen von Kardinalitäten und Attributwerten vornehmen. Damit besteht eine einfache Möglichkeit zur formalen Beschreibung derjenigen Teile des OKSTRA®, die für einen bestimmten Anwendungsfall von Bedeutung sind. Zur Erzeugung von OKSTRA®-Profilen und ihrer Verwendung zur Validierung von OKSTRA®-Daten steht zudem kostenlos erhältliche Software zur Verfügung. Dieser Beitrag beschreibt die Funktionsweise und die Anwendungsmöglichkeiten von OKSTRA®-Profilen.

PDF
Volltext

Der Fachvortrag zur Veranstaltung ist im Volltext verfügbar. Das PDF enthält alle Bilder und Formeln.

 

1          Einleitung

Das Datenmodell des Objektkatalogs für das Straßen- und Verkehrswesen (OKSTRA®) ist umfangreich. Es umfasst mehrere hundert Objektarten und ist nicht auf bestimmte Einsatzbereiche beschränkt, sondern soll prinzipiell beliebige im Straßen- und Verkehrswesen auftretende Anwendungsfälle unterstützen. Diese Ausgangslage führt dazu, dass der OKSTRA® in der Regel nicht unmittelbar eingesetzt werden kann, sondern dass zunächst die für den jeweiligen Anwendungsfall relevanten Teile des OKSTRA® identifiziert werden müssen.

OKSTRA®-Profile, über die bereits beim OKSTRA®-Symposium 2015 berichtet wurde (Hettwer 2015), bieten die Möglichkeit zur Beschreibung von Ausschnitten des OKSTRA®-Datenmodells und stellen eine Referenz für entsprechende Prüfungen dar. Mittlerweile existiert eine technische Infrastruktur, mit der Profile erzeugt und zur Validierung von OKSTRA®-Datensätzen eingesetzt werden können. Die vorhandenen Möglichkeiten werden in den nachfolgenden Abschnitten näher beschrieben.

2          Funktionsweise, Softwareunterstützung

Zur Darstellung von OKSTRA®-Profilen dient ein XML-Datenformat, das im technischen OKSTRA®-Dokument T0009 (OKSTRA®-Pflegestelle 2017) beschrieben wird;

Das Bild 1 zeigt ein diesem Dokument entnommenes Beispielprofil. Zur Erstellung neuer sowie zur Editierung bestehender Profile steht auf http://www.okstra.de der interaktiv bedienbare OKSTRA®-Profileditor kostenlos zum Download bereit. Die OKSTRA®-Klassenbibliothek (Weidner, Vogelsang et al. 2017) sowie das darauf basierende OKSTRA®-Werkzeug, die ebenfalls kostenlos von der genannten Website heruntergeladen werden können, sind in der Lage, Datensätze bei der Prüfung auf OKSTRA®-Konformität zusätzlich gegen ein vorgegebenes Profil zu validieren. Dabei wird überprüft, ob der Datensatz den im Profil definierten Vorgaben entspricht, Abweichungen werden in einem Prüfprotokoll festgehalten. Damit steht softwareseitig eine ausreichende Unterstützung für den Einsatz von OKSTRA®-Profilen in der Praxis bereit.

 

3          Inhaltliche Festlegungen

Ein OKSTRA®-Profil kann insbesondere folgende Festlegungen enthalten:

  • Die zu verwendende OKSTRA®-Version,
  • das bzw. die zu nutzenden Koordinatenreferenzsysteme,
  • die zu verwendende Fachbedeutungsliste,
  • die erlaubten Objektarten.

Darüber hinaus sind weitere Festlegungen zu den Attributen und Relationen der erlaubten Objektarten möglich. Hinsichtlich der Kardinalitäten von Attributen und Relationen können beliebige Einschränkungen vorgenommen werden. Damit besteht u. a. die Möglichkeit, eine optionale Eigenschaft der Kardinalität 0..1 im Profil verpflichtend zu machen (Kardinalität 1..1) oder auszublenden (Kardinalität 0..0), falls sie in den Daten nicht enthalten sein soll. Dabei ist allerdings zu berücksichtigen, dass die im OKSTRA®-Datenmodell enthaltenen Grenzen nicht überschritten werden dürfen, weil dies zu nicht-OKSTRA®-konformen Daten führen könnte.

Neben den Kardinalitäten von Attributen und Relationen können auch sogenannte Instanzenkardinalitäten definiert werden, mit denen die Anzahl der in einem Datensatz auftretenden Instanzen einer bestimmten Objektart vorgegeben wird. Damit kann z. B. gefordert werden, dass eine bestimmte Objektart im Datensatz enthalten ist und/oder dass diese Objektart maximal n-mal auftritt.

Bild 1: Ein OKSTRA®-Profil, entnommen aus (OKSTRA®-Pflegestelle 2017)

Im Zusammenhang mit Schlüsseltabellen existieren diverse weitere Möglichkeiten: Bei Schlüsseltabellen mit einem im Modell angegebenen Wertekatalog kann dieser eingeschränkt werden, wobei die Einschränkung entweder global (das heißt für alle Attribute, die diese Schlüsseltabelle verwenden) oder lokal (bezogen auf ein bestimmtes Attribut) erfolgen kann. Dabei gilt, dass beim Vorhandensein einer globalen Einschränkung lokal nur noch weitergehende Einschränkungen vorgenommen werden dürfen (der durch die globale Einschränkung gegebene Rahmen darf also lokal nicht wieder ausgeweitet werden). Für die sogenannten freien Schlüsseltabellen, für die im Modell kein Wertekatalog angegeben ist, können globale Werte vorgegeben werden; lokal können dann ebenfalls entsprechende Einschränkungen erfolgen.

Eine weitere Festlegungsmöglichkeit besteht im Zusammenhang mit Relationen zu Objektarten innerhalb einer Vererbungshierarchie: Als Relationspartner kommen bei einer solchen Relation nicht nur die direkt referenzierte Objektart, sondern auch alle unmittelbar oder mittelbar von ihr erbenden Objektarten in Betracht. Über ein Profil kann festgelegt werden, welche der möglichen Objektarten als Relationspartner auftreten dürfen.

Außerdem kann bei Relationen zu Objektarten mit dem Stereotype „FachId“, bei denen symbolische Verweise möglich sind, der symbolische Verweis in einem Profil wahlweise gefordert oder verboten werden.

Die vorhandenen Optionen werden in Kürze noch ergänzt werden durch die Möglichkeit zur Einschränkung von Werten elementarer Attribute, die sich im Zusammenhang mit dem OKSTRA®-Änderungsantrag A0137 „Modellierung von Prüfdaten im Straßenbau“ als notwendig erwiesen hat. Dabei wird unterschieden zwischen numerischen Attributen und Textattributen.

Bei numerischen Attributen sind folgende Einschränkungen vorgesehen:

  • Vorgabe eines Minimal- und/oder eines Maximalwertes,
  • Vorgabe der Anzahl der Nachkommastellen.

Bei Textattributen sind folgende Einschränkungen geplant:

  • Vorgabe der minimalen und/oder der maximalen Länge des Textes (auch Vorgabe einer festen Länge, wenn der gleiche Wert für die minimale und die maximale Länge angegeben wird),
  • Vorgabe eines Textmusters als regulärer Ausdruck nach ECMAScript-Syntax (Ecma International 2017), analog zur Darstellung in JavaScript.

Insgesamt steht damit ein Instrumentarium zur Verfügung, mit dem sich Ausschnitte des OKSTRA®-Datenmodells beschreiben und über die Angabe von Zusatzbedingungen wirkungsvoll an die Besonderheiten eines speziellen Anwendungsfalls anpassen lassen.

 

4         Anwendungsmöglichkeiten

Aufgrund der im Abschnitt 3 beschriebenen Festlegungsmöglichkeiten eignen sich OKSTRA®-Profile insbesondere zur formalen Spezifikation von OKSTRA®-Schnittstellen. Damit können einerseits Softwarehersteller den Umfang einer von ihnen implementierten OKSTRA®-Schnittstelle dokumentieren. Andererseits können OKSTRA®-Profile auch als Vorgabe für die Implementierung von OKSTRA®-Schnittstellen dienen. Für Anwendungsfälle von allgemeiner Bedeutung erscheint es zudem sinnvoll, „Standard“-Profile zu definieren und an zentraler Stelle öffentlich zugänglich zu machen. Zurzeit gibt es Überlegungen, solche Standard-Profile auf http://www.okstra.de zu veröffentlichen.

OKSTRA®-Profile können auch zum Einsatz kommen, wenn eine Software spezielle Anforderungen an zu importierende OKSTRA®-Daten stellt, die sich in einem Profil ausdrücken lassen. Sofern die OKSTRA®-Klassenbibliothek verwendet wird, können die Daten mit der in der Bibliothek enthaltenen Funktionalität direkt gegen ein beliebiges Profil validiert werden, beim Fehlschlagen der Validierung kann der Importvorgang abgebrochen werden. Der Vorteil des Einsatzes eines OKSTRA®-Profils liegt in diesem Fall darin, dass mit minimalem Aufwand Prüfungen ermöglicht werden, die andernfalls aufwändig implementiert werden müssten.

Eine weitere Anwendungsmöglichkeit von OKSTRA®-Profilen ergibt sich im Zusammenhang mit der Vergabe von Aufträgen zur Datenerfassung, da die Struktur der zu erfassenden Daten über ein geeignetes Profil vorgegeben werden kann. Die gelieferten Daten können direkt mit dem OKSTRA®-Werkzeug auf Konformität mit dem jeweiligen Profil geprüft werden. Damit hat der Auftraggeber in einfacher Weise eine Kontrolle darüber, ob die Daten, die ihm geliefert werden, zumindest strukturell seinen Vorgaben entsprechen.

 

Literaturverzeichnis

Ecma International (2017): Standard ECMA-262, 8th Edition/June 2017, ECMAScript® 2017 Language Specification, Ecma International, Genf, verfügbar im Internet unter
https://www.ecma-international.org/publications/standards/Ecma-262.htm

Hettwer, J. (2015): OKSTRA®-Profile – Möglichkeiten zur Anpassung des OKSTRA® an spezifische Anwendungsfälle. In: 6. OKSTRA-Symposium 2015, Forschungsgesellschaft für Straßen- und Verkehrswesen e.V., Köln

OKSTRA®-Pflegestelle (2017): Festlegung von inhaltlichen Ausschnitten (Profilen) des OKSTRA®-Datenmodells, Technisches Dokument zum OKSTRA® T0009, Stand 8. 2. 2017, verfügbar im Internet unter http://www.okstra.de

Weidner, B.; Vogelsang, A.; Renkert, R. (2017): OKLABI – die OKSTRA®-Klassenbibliothek, Programmierhandbuch, Version 3.45, erstellt im Auftrag der Bundesanstalt für Straßenwesen, verfügbar im Internet unter http://www.okstra.de