Geodatabase Enrico Kurtenbach Modellierung der Wirklichkeit Realität Logisches Datenmodell Grundstück Gebäude Eigentümer Modellierung der Wirklichkeit Logisches Datenmodell Realität Physisches Datenmodell Grundstücke ID Eigentümer ID Grundstück 1 ... 2 ... Eigentümer Gebäude 1 ... ... 2 ... ... Gebäude ID Eigentümer Grundstück 1 ... ... 2 ... ... Shapefile Geometrie gespeichert in Binärdatei separate Dateien für Punkte Linien Flächen Keine Topologie Attribute gespeichert in Tabellen Identifier Coverage Erweiterung des Shapefile-Konzepts Auch hier: Räumliche Daten in Binärdatei Attribute in Tabellen Fortschritt Topologie in Binärdatei Ändern und Erweitern der Tabellen Verweise auf externe Datenbanken Coverage Probleme Hauptaugenmerk auf topologischer Integrität Punkte, Linien und Flächen verhalten sich gleich. Implementierung von Verhaltensweisen über AML Synchronisation zwischen Objekten und Verhaltensweisen. einfachere Modellierung von Verhaltensweisen wünschenswert! Geodatabase Geodatabase – Das Konzept Objektorientierung Objekte im Vordergrund Bisher: Geometrie repräsentiert Objekt Jetzt: Geometrie hat Objekt Geodatabase – Das Konzept Objektorientierung Objekte im Vordergrund Relationen Grundstück hat Eigentümer Geodatabase – Das Konzept Objektorientierung Benutzerfreundlichkeit Objekte im Vordergrund Relationen Einfache Modellierung von Objekten Einfache Implementierung von Verhalten Automatische Integritätsprüfung Nutzung kommerzieller Datenbanksysteme Was zeichnet Objektorientierung aus? Polymorphismus Kapselung Einheitliches Äußeres, wobei gleichnamige Methoden bei verschiedenen Objekt Verschiedenes bewirken können Daten in der Regel nicht direkt sichtbar Datenzugriff nur über definierte Methoden Vererbung Generierung neuer Objekte aus bereits vorhandenen durch Erweiterung der Eigenschaften und Methoden Objektorientierung Attribute Relationen Verhalten Features Topologie Geometrie Objektorientierung Ein kleines Beispiel Verhalten Topologie Attribute Relationen Geometrie Objektorientierung Ein kleines Beispiel Verhalten Topologie Wohnfläche Relationen Geometrie Objektorientierung Ein kleines Beispiel Verhalten Topologie Wohnfläche Relationen Grundriß Objektorientierung Ein kleines Beispiel Verhalten Topologie Wohnfläche hat nur ein Grundstück Grundriß Objektorientierung Ein kleines Beispiel Verhalten ist Nachbar von ... Wohnfläche hat nur ein Grundstück Grundriß Objektorientierung Ein kleines Beispiel hat Grenzabstan d ist Nachbar von ... Wohnfläche hat nur ein Grundstück Grundriß Features sind Objekte mit Raumbezug im Gegensatz dazu: objects = Objekte ohne Raumbezug haben eine Extraspalte in Tabellen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Beschreibt die Geometrie des Objektes Mögliche Geometrietypen Point Multipoint Polyline besteht aus Geraden Kreisbögen Ellipsenbögen Bezier-Kurven Polygon Implementierung Die Datenbank besteht aus Tabellen Straßen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Implementierung Jede Objektklasse hat eine eigene Tabelle Straßen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Implementierung Alle Features in einer Klasse haben denselben Geometrietyp Straßen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Implementierung Jede Zeile entspricht einem Feature Straßen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Implementierung Jede Spalte entspricht einem Attribut Straßen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Implementierung In einer Klasse sind Objekte mit identischer Geometrie Straßen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Implementierung Straßen id name shape ... 1 Nußallee line ... 2 Kirschallee line ... Speichern der Geometrie • entweder in Binärdateien • oder direkt in der Datenbank Smart features Erweitern der Standard features durch Hinzufügen neuer Attribute durch Hinzufügen neuer Methoden dabei Beibehalten oder Änderung bereits vorhandener Attribute und Methoden Punkt + Beschreibung + Bild Sehenswürdigkeit Validation rules überwachen die Zuweisung von gültigen Werten kontrollieren somit die Integrität der Daten Möglichkeiten attribute rules relationship rules Connectivity rules Domains sichern die Datenintegrität durch Beschränkung des Wertebereichs Möglichkeiten range domain: {1..10} oder {1,3,5,7} coded value domain: {gut, mittel, schlecht} zum Beispiel maximal vier Straßen an einer Kreuzung mögliche Straßenbeläge nur Asphalt oder Schotter Zuweisung eines default values möglich Relations Objekte in der Wirklichkeit haben Beziehungen Grundstück Gebäude Eigentümer Relations Implementierung in Tabellen Beziehungen Id Grundstück Gebäude Attribute 1 2 1 ... 2 7 9 3 4 3 Grundstücke ID Eigentümer shape 1 ... polygon 2 ... ... Gebäude ID Grundstück shape 1 ... polygon 2 ... ... Relations Zusammengesetzte Objekte Was passiert beim Löschen des Oberobjektes? Aggregation (Teil-Ganzes-Beziehung) Komposition (Teil-Ganzes-Abhängigkeit) Aggregation: Teilobjekte bleiben erhalten Komposition: Teilobjekte werden gelöscht Regeln festlegbar relationship rules Subtypes Einteilung der Klasse in Unterklassen durch Zuweisung eines codierten Werte in einer Attributspalte Unterklassen haben die gleichen oder zusätzliche Attribute wie Oberklasse Verkehrswege Straße Radweg Fußweg Subtypes Warum überhaupt? Bessere Strukturierung der Klassen Zuweisung unterschiedlicher Regeln in den Unterklassen möglich attribute rules relationship rules connectivity rules ArcInfo objektorientiert? ArcSDE Polymorphismus Vererbung smart features ArcMap Kapselung ArcCatalog Was ist machbar? Bewältigung folgender Probleme Modellierung der Wirklichkeit für unsere Bedürfnisse Einbinden der ATKIS-Daten in die Geodatabase Erweiterung der bestehenden Features durch neue Attribute Bereitstellung der Infrastruktur und Verwaltung der Datenbank Geodatabase Noch Fragen?