Domänen und Subtypen Relationen

Preview:

DESCRIPTION

Domänen und Subtypen Relationen. Erhalten der Integrität einer Geodatenbank. Inhalt. Domänen Wofür ? Typen von Domänen Policies Subtypen Was ist das ? Wann benutzt man sie? Wie funktionieren sie Relationen Kardinalität Single und Composite Relationships - PowerPoint PPT Presentation

Citation preview

Domänen und Subtypen Relationen

Erhalten der Integrität einer Geodatenbank

Stephan Burghaus Domänen, Subtypen, Relationen

2

Inhalt• Domänen

– Wofür ?– Typen von Domänen– Policies

• Subtypen– Was ist das ? – Wann benutzt man sie?– Wie funktionieren sie

• Relationen– Kardinalität– Single und Composite Relationships– Attribute in Relationship classes

Stephan Burghaus Domänen, Subtypen, Relationen

3

DomänenWofür?

Abfangen von ungültigen Benutzereingaben

Beispiel: AutobahnenAnzahl der FahrspurenMindestens 4 Spuren

Maximal z. B. 10 Spuren(Für beide Richtungen zusammen)

=> Benutzung einer Domäne, um gültige Werte vor der Eingabe festzulegen

Stephan Burghaus Domänen, Subtypen, Relationen

4

Domänentypen

• Range Value– Vorgabe von Grenzwerten, in denen sich das

Attribut des Objekts bewegen darf. Nur möglich bei numerischen Werten im

Attributfeld.

• Coded Value– Vorgabe von festen Werten durch eine Liste.

Möglich bei allen Attributinhalten.

Stephan Burghaus Domänen, Subtypen, Relationen

5

Policies

Was passiert beim Teilen oder Verbinden von Objekten?

Benutzung von Policies:Jedes Attribut erhält bei Definition einer Domäne zusätzlich eine

– Split PolicyTeilen von Objekten

– Merge PolicyVerbinden von Objekten

Stephan Burghaus Domänen, Subtypen, Relationen

6

Split Policy

3 Typen einstellbar:• Default Value

Vorgabe des Standardwertes des Attributs

• DuplicateKopie des vorherigen Wertes

• Geometry ratioVerminderung des Wertes proportional zur Objektgröße

Stephan Burghaus Domänen, Subtypen, Relationen

7

Gebiet Steuern Besitzer

10000 2500 Bob Smith

Eigenschaft der

Geometry

Geometry

VerhältnisDuplicate

Gebiet Steuern Besitzer

4500 1125 Bob Smith

Gebiet Steuern Besitzer

5500 1375 Bob Smith

Split

Stephan Burghaus Domänen, Subtypen, Relationen

8

Merge Policy

Ebenfalls 3 Typen einstellbar:• Default value

Vergabe des vordefinierten Standardwertes

• Sum ValuesBildung der Summe aus beiden ursprünglichen Einzelwerten

• Weighted AverageBildung des gewichteten Mittels der beiden Werte

Stephan Burghaus Domänen, Subtypen, Relationen

9

Gebiet Steuern Besitzer

12000 3000 Mary Jones

Gebiet Steuern Besitzer

10000 2500 Bob Smith

Eigenschaft der Geometry

Addition Standardwert

Gebiet Steuern Besitzer

22000 5500 Stadt

Stephan Burghaus Domänen, Subtypen, Relationen

10

Domänen werden immer datenbankweit festgelegt.

Man findet Domänen in den Eigenschaften einer Datenbank.

Stephan Burghaus Domänen, Subtypen, Relationen

11

Auflistung der Domänen

Festlegung von

Feldinhalt,

Domänentyp,

Min- und Max-Werten bzw.Coded Values

Policies

Subtypes

Stephan Burghaus Domänen, Subtypen, Relationen

13

Subtypes – Wofür?

Erstellung von Untertypen einer Objektart, ohne eine Unterklasse erstellen zu müssen.

Aber: Die jeweiligen Untertypen des Datensatzes müssen zuvor mit Hilfe eines Schlüssel-Attributs im Integer-Format definiert werden.

Stephan Burghaus Domänen, Subtypen, Relationen

14

Erstellen von Subtypes

Zuerst erfolgt die Definition eines Attributs als Schlüssel für die Subtypes.

Anschließend legt man die unterschiedlichen Subtypes mit ihren jeweiligen Sätzen von Domänen für die restlichen Attribute fest.

Man kann die Anzahl oder Art der Attribute nicht verändern !!

Stephan Burghaus Domänen, Subtypen, Relationen

15

Wirkung von Subtypes

Eingabe eines Wertes in das vorher definiertes Schlüsselfeld

Auswahl des vorher festgelegten Satzes von Domänen für alle anderen Attribute des

Datensatzes

bewirkt

Stephan Burghaus Domänen, Subtypen, Relationen

16

Beispiel: Klasse „Straßen“

Typ Gültige Werte

AutobahnMind. 4 Spuren

Straßenbelag Teer

Mind. 50 km/h

LandstraßeMind. 2 Spuren

Straßenbelag Teer

Max. 100 km/h

Feldweg1 Spur

Straßenbelag Schotter

Max. 100 km/h

Stephan Burghaus Domänen, Subtypen, Relationen

17

Subtypes werden für jede einzelne Klasse definiert.

Die Subtypes findet man bei den Eigenschaften einer Klasse

Stephan Burghaus Domänen, Subtypen, Relationen

18

In dieser Dialogbox wählt man das Schlüsselattribut für die Subtypes.

Man

definiert zuerst die Subtypes

mit allen Zuordnungen von

Domänen und StandardwertenZu den restlichen Attributen.

Anschließend kann man noch einen bestimmten Subtype als Standardauswahl vorgeben

Stephan Burghaus Domänen, Subtypen, Relationen

19

Aufgabe 11. Kopiert die Datenbank V:\burghaus\SantaBarbara in ein

privates Verzeichnis. ANDERS FUNKTIONIERT DER REST NICHT !!!

2. Definiert Subtypes für:1. Autobahn

2. Hauptstraße

3. Nebenstraße

4. Autobahnauffahrt

Definiert die dafür benötigten Coded Value Domains für

Numlanes und Speedlimit. Die nötigen Werte sind aus der Tabelle zu ermitteln. Vorsicht bei der Autobahn: Ein Wert bei Numlanes kommt nur ein mal vor, muss aber trotzdem erfasst werden!

Relationen

Stephan Burghaus Domänen, Subtypen, Relationen

21

Relationen

Zuordnung von Datensätzen einer Klasse zu Datensätzen einer anderen Klasse

Zweck:

Rückgriff auf Daten aus Datensätze einer anderen Klasse mit eindeutiger Zuordnung dieser Datensätze zu denen der aktuellen Klasse

Stephan Burghaus Domänen, Subtypen, Relationen

22

KardinalitätEs gibt 3 Typen :

1 : 1 Staat Hauptstadt

1 : n Staat Großstädte

m : n Eigentümer Grundstücke

Stephan Burghaus Domänen, Subtypen, Relationen

23

Namentliche Unterscheidung der Klassen Gerade bei der Kardinalität 1: n ist eine namentliche Unterscheidung der Klassen sehr wichtig:

1 : n

Herkunftsklasse(Origin Class)

Diese Klasse enthält die Objekte, die anderen Objekten zugeordnet werden.

Zielklasse(Destination Class)

Diese Klasse enthält die Objekte, denen andere Objekte

zugeordnet werden.

Stephan Burghaus Domänen, Subtypen, Relationen

24

Es gibt zwei Möglichkeiten, Relationen zu definieren

• Embedded Foreign KeysEingebettete Fremdschlüssel

• Relationship Classes in Form eigenständiger Tabellen

Stephan Burghaus Domänen, Subtypen, Relationen

25

Embedded Foreign KeysAnlegen eines weiteren Attributs immer in der

ZielklasseInhalt dieses Attributs:ID des zugehörigen Datensatzes der Herkunftsklasse Immer nur die Kardinalität 1 : n möglich

ID E.F.K. ID

Zielklasse Herkunftsklasse

N : 1

Stephan Burghaus Domänen, Subtypen, Relationen

26

Relationship Classes in Form eigenständiger Tabellen

ID IDID A ID B

Klasse A Klasse B

Zuordnung von ID‘s durch eine neue Tabelle

Alle Kardinalitäten sind möglich

Stephan Burghaus Domänen, Subtypen, Relationen

27

Zwei Typen von Relationen• Simple Relationship

Einfache Relation,

alle 3 Kardinalitäten sind möglich

• Composite RelationshipRelationen mit zusammenhängender Lebensdauer von

Datensätzen :

Die Löschung eines Datensatzes der Herkunftstabelle bewirkt die Löschung des Datensatzes in der Zieltabelle

Stichwort: Referentielle Integrität

Es ist nur die Kardinalität 1 : n oder 1 : 1 möglich.

Stephan Burghaus Domänen, Subtypen, Relationen

28

Beispiele

Eigentümer Grundstück

Simple Relationship

Composite Relationship

Straße Fußgängerampel

Straßen existieren ohne Ampel,

Ampeln aber nicht ohne Straßen

Stephan Burghaus Domänen, Subtypen, Relationen

29

Attribute in Relationship ClassesDa Relationship Classes als Tabellen auftreten, kann

man in ihnen auch weitere Attribute speichern.

ID ID Eig

ID Gs

%ID

Beispiel : Eigentümer GrundstückeRelationship Class

Prozentsatz des Eigentumanteils am Grundstück

Stephan Burghaus Domänen, Subtypen, Relationen

30

Aufgabe 2Kopiert die Datenbank v:\burghaus\montgomery in ein privates VerzeichnisANDERS FUNKTIONIERT DER REST NICHT !!!Erstellt eine Simple Relationship Class zwischen den Eigentümern (Tabelle owner_dat) und den Grundstücken (Landbase / parcels).Die einander zuzuordnenden ID‘s der beiden Tabellen sind selbst herauszufinden. (zur Hilfe: Sie heißen in beiden Tabellen gleich) Die Kardinalität ist 1 : n für Eigentümer : Grundstück, d. h.: Ein Grundstück hat nur einen Eigentümer

Stephan Burghaus Domänen, Subtypen, Relationen

31

Vergabe eines Namens für die Relationship Class,

Wahl der Herkunftsklasseund der Zielklasse

Der Assistent zum Erstellen einer Relationship Class

Stephan Burghaus Domänen, Subtypen, Relationen

32

Wahl des Typs der Relation

Stephan Burghaus Domänen, Subtypen, Relationen

33

Vorgabe vonBezeichnungenfür die Richtungen der Beziehung

Wahl der Richtungin der eine Löschweitergabe erfolgen soll (Vorgabe erfolgt durch Wahl des Relationstyps)

Stephan Burghaus Domänen, Subtypen, Relationen

34

Auswahl der Kardinalität der Relation

Stephan Burghaus Domänen, Subtypen, Relationen

35

Auswahl ob in der Relationship Class Attribute enthalten sein sollen.

Stephan Burghaus Domänen, Subtypen, Relationen

36

Festlegung der Schlüsselfelder der beiden Klassen, über die die Relation definiert wird

Stephan Burghaus Domänen, Subtypen, Relationen

37

Fertig !!

Recommended