Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

XML und Datenbanken Kapitel 7: Modellierung, Teil 2

Ähnliche Präsentationen


Präsentation zum Thema: "XML und Datenbanken Kapitel 7: Modellierung, Teil 2"—  Präsentation transkript:

1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2
Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik

2 Inhalt Teil 1: DTDs XML Schema Teil 2: konzeptuelle Modellierung
Motivation, warum ein Schema erforderlich ist Schemata für XML-Dokumente DTDs XML Schema Teil 2: konzeptuelle Modellierung 1. Vorteile einer Modellierung Methoden zur konzeptuellen Modellierung 2. Verwendung des Entity-Relationship-Modells 3. Einsatz von UML 4. Graphbasierte Verfahren 5. eigener Ansatz 6. Ableitung von Schemainformationen aus XML-Dokumenten 7. Metriken 8. Weiterführende Literatur Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

3 1. Vorteile einer konzeptuellen Modellierung
Wunschvorstellung: Modellierung auf einem höheren Niveau, das von der konkreten Realisierung im Schema zunächst unabhängig ist soll von Domainexperten verstanden werden direkte Übersetzung in ein XML-Schema möglich Enthält keine Implementierungsdetails Schrittweise Konkretisierung Graphische Darstellung Ziel: höhere Qualität der Dokumente - exakteres Vorgehen es gibt noch keine akzeptierte Modellierungssprache für den Entwurf von XML/DTD/XML-Schemata. Häufig wird auch „Reverse-Engineering“ angewendet, aus XML- Dokumenten erfolgt die Ableitung der DTD durch Tools. Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

4 Modelle Modelle werden heute in allen Wissenschaftsgebieten eingesetzt
weit akzeptierte allgemeine Modelltheorie wurde 1973 von Herbert Stachowiak vorgeschlagen. Modellbegriff darin ist domänenübergreifend anwendbar, Modell hat drei Eigenschaften: Abbildung: Modell ist immer ein Abbild von etwas, eine Repräsentation natürlicher oder künstlicher Originale, die selbst wieder Modelle sein können. Verkürzung: Ein Modell erfasst nicht alle Attribute des Originals, sondern nur die jeweils relevanten Pragmatismus: Orientierung am Nützlichen, Fragen wie Für wen?, Warum? und Wozu? werden berücksichtigt

5 Beispiel eines Modells
maßstabgetreues 1:100-Modell des Stephansdoms originalgetreue, detailreiche Modell für blinde und sehbehinderte Menschen Auch Kindern wird es damit erleichtert, die Dimensionen der Kirche zu "begreifen"

6 Modellierungsmethode für XML
einige Vorschläge für XML-Modelle und Modellierungmethoden Ziele dabei sollen sein: so einfach wie möglich so komplex wie nötig Vollständige XML-Schema-Unterstützung Verwendung von Defaultwerten und Voreinstellungen entgegengesetzte Eigenschaften

7 Möglichkeiten zur Modellierung
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Modellierung von Struktur und Inhalt dok-zentriert baumbasierte XML-Editoren konzeptuelle Ebene Konzeptueller Entwurf von XML- Dokumenten ?? konzeptuelle Ebene Modellierung von strukturiert semi- Struktur und Inhalt ?? Modellierung von Struktur datenzentriert ER UML ORM

8 2. Entity-Relationship-Modell für den Datenbankentwurf/ 1
Name Ort Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Für den Datenbankentwurf Verlag gibt_heraus Buch schreibt Autor Name Verlag Ort Name ISBN [1,n] gibt_ heraus [1,1] Titel ISBN Titel Buch ISBN [1,n] ISBN ID schreibt [0,n] Name Vorname ID Name Autor Vorname ID

9 Entity-Relationship-Modell für den Datenbankentwurf/ 2
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur jede Darstellung im ER findet Entsprechung in relationalen Datenbanken Entwurf auf einen abstrakteren Level (konzeptuell) Eindeutige Abbildung der Entity-Relationship-Diagrammes Alle relevanten Informationen einer relationalen Datenbank können aus dem Entwurf abgeleitet werden

10 Entity-Relationship Modell für DTDs
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Für den Entwurf von DTDs Name <!ELEMENT Buchanwendung (schreibt*, Verlag*,Autor*)> <!ELEMENT Verlag (gibt_heraus*)> <!ATTLIST Verlag Name ID #REQUIRED Ort CDATA #REQUIRED> <!ELEMENT gibt_heraus (Buch)> <!ELEMENT Buch EMPTY> <!ATTLIST Buch Titel CDATA #REQUIRED ISBN ID #REQUIRED> <!ELEMENT schreibt EMPTY> <!ATTLIST schreibt Buch_ref IDREF #REQUIRED Autor_ref IDREF #REQUIRED > <!ELEMENT Autor EMPTY> <!ATTLIST Autor Name CDATA #REQUIRED Vorname CDATA #REQUIRED ID ID #REQUIRED> Verlag Ort [1,n] gibt_ heraus [1,1] Titel Buch ISBN [1,n] schreibt [0,n] Name Autor Vorname ID

11 Entity-Relationship Modell für XML-Schemata /1
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Name Verlag <Buchanwendung> <schreibt Buch_ref="i " Autor_ref="a0007"/> <schreibt Buch_ref="i " Autor_ref="a0008"/> <schreibt Buch_ref="i " Autor_ref="a0009"/> <Verlag Name="dpunkt" Ort="Heidelberg"> <gibt_heraus> <Buch Titel="XML und Datenbanken" ISBN="i "/> </gibt_heraus> <Buch Titel="Web und Datenbanken" ISBN="i "/> </Verlag> <Autor Name="Meyer" Vorname="Holger" ID="a0007"/> <Autor Name="Rahm" Vorname="Erhard" ID="a0008"/> <Autor Name="Vossen" Vorname="Gottfried" ID="a0009"/> </Buchanwendung> Ort [1,n] gibt_ heraus [1,1] Titel Buch ISBN [1,n] schreibt [0,n] Name Autor Vorname ID

12 Entity-Relationship Modell für XML-Schemata/ 2
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Abbildung nicht einfach nachvollziehbar Unterschiedliche Behandlung der Kardinalitäten 1:n und n:m Abbildung der Schlüssel auf ID (nicht das identische Konzept) Keine Möglichkeit zur Darstellung von Alternativen, Mixed Content und ANY Entity-Relationship-Modell bietet Konzepte, die sich nicht einfach abbilden lassen und es gibt Konzepte in XML, die sich nicht im Entity-Relationship-Modell darstellen lassen Verwendet werden kann also „erweiterte Untermenge“

13 3. Einsatz von UML – Klassendiagrammen /1
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Darstellung von Elementdeklarationen durch Klassen adresse ort plz <!ELEMENT (ort, plz, strasse, strasse hausnummer, postfach?> hausnummer postfach [0..1]

14 Einsatz von UML –Klassendiagrammen /2
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Darstellung vom Inhaltsmodell Sequenz Deklaration von Attributen (UML-Konstrukt: Aggregation, Teil-Ganzes-Beziehungen zwischen einem Aggregat und seinen Teilen) hotel <<meta>> url:CDATA <<meta>> datum[0..1]:CDATA <<meta>> autor [0..1] CDATA <!ELEMENT hotel (hotelname, kategorie?, adresse> <!ATTLIST hotel url CDATA #REQUIRED datum CDATA #IMPLIED autor CDATA #IMPLIED> 0..1 hotelname kategorie adresse

15 Einsatz von UML –Klassendiagrammen /3
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Darstellung von Alternativen (UML-Konstrukt: Generalisierung, Ist-Ein-Beziehungen zwischen Klassen) unterkunft <!ELEMENT unterkunft ( hotel | pension | ferienwohnung )> {disjoint} hotel pension ferienwohnung

16 Komplexeres Beispiel Vorteile der Modellierung ERM UML Editoren EMX
hotel <<meta>> url:CDATA Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur <<meta>> datum[0..1]:CDATA <<meta>> autor [0..1] CDATA {sequence : 1} 0..1 1..n hotelname kategorie adresse telefon preise {sequence : 1} {choice : 0 .. n} plz ort strasse hausnummer einzelzimmer doppelzimmer apartment <<content>> #PCDATA <!ELEMENT adresse (ort, plz, strasse, hausnummer)> <!ELEMENT ort (#PCDATA)> <!ELEMENT plz (#PCDATA)> <!ELEMENT strasse (#PCDATA)> <!ELEMENT hausnummer (#PCDATA)> <!ELEMENT preise (#PCDATA | einzelzimmer | doppelzimmer | apartment )*> <!ELEMENT einzelzimmer (#PCDATA)> <!ELEMENT doppelzimmer (#PCDATA)> <!ELEMENT apartment (#PCDATA)> <!ELEMENT hotel (hotelname, kategorie?, adresse, telefon+, preise)> <!ATTLIST hotel url CDATA #REQUIRED> <!ATTLIST hotel datum CDATA #IMPLIED> <!ATTLIST hotel autor CDATA #IMPLIED> <!ELEMENT hotelname (#PCDATA)> <!ELEMENT kategorie (#PCDATA)> <!ELEMENT telefon (#PCDATA)>

17 Bewertung In beiden Fällen
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur In beiden Fällen „erweiterte Untermenge“ wird eingesetzt, das heißt: Einige Konstrukte des ERM bzw. aus UML lassen sich nicht adäquat abbilden Beispiel n:m-Kardinalitäten Andere Bestandteile einer DTD oder eines XML Schemas lassen sich nicht geeignet darstellen Beispiel mixed content

18 4. Verwendung von Editoren
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Visualisierung der Baumstruktur der XML-Dokumente oder der Graphstruktur der Schemata Beispiel XML Spy

19 5. CoDEX-Modell (für Entwurf und Evolution)
Grundbestandteile: Elemente, Attributgruppen, einfache und komplexe Typen, Module weitere spezielle Knoten für Inhaltsmodelle Sequenz, Alternative, mixed Content Verbindungen dazwischen: gerichtete und ungerichtete Kanten Rootknoten= „Einstiegsknoten“ Beschreibungen zu den Knoten (z.B. Wertebereichsbeschreibungen, facets)

20 CoDEX - Beispiel Graph, verschiedene Knotenarten von Knoten (Elemente, Module, Inhaltsmodelle, Typen) Rootknoten (ausgezeichnete Elemente oder Module) Operationen darauf: Eigenschaften testen (erlaubte Zustände) Übersetzung in XML-Schema, dazu Übersetzungsreihenfolge bestimmen

21 Verwendung von Modulen im CoDEX-Modell
Graphische Notation: wie UML-packages Zuordnung von XML-Schemata (können auch durch den CoDEX-Editor erzeugt sein)

22 Model Driven Engineering
Automatische Modellvervollständigung Beispiel: Ergänzen von simple Types complex Types Inhaltsmodellen

23 Eigenschaften der Modellierungsmethode
Einfache graphische und formale Notation Übersetzung in XML-Schemata Vorteile: Vollständige Modellierung von XML-Schemata möglich (einiges fehlt in der Implementierung: Typhierarchien, list, union) Modularisierung möglich Nachteile: kein richtiges „konzeptionelles“ Modell, es fehlt die Vereinfachung dafür aber automatische Vervollständigung vereinfachter Modelle Weitere Eigenschaften Reverse-Engineering: vorhandenes XML-Schema -> CoDEX Einsatz des Verfahrens zur Evolution (Weiterentwicklung, Propagieren der Änderungen, ...)

24 Formales Modell von CoDEX
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Graph, mehrere Arten von Knoten Elemente Attributgruppen, Module einfache Typen komplexe Typen Inhaltsmodelle (sequence, choice, all) zwei Arten von Kanten: gerichtet und ungerichtet ungerichtete Kanten nur während des Entwurfes Rootknoten (gekennzeichnete Elemente oder Module)

25 Übersetzung: CoDEX in XML-Schema
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur zunächst: Modellprüfung und Modellvervollständigung dann Übersetzung: Darstellen der Adjazenzmatrix zum Graphen, in dieser sind die Knoten und ihre Kanten enthalten Übersetzung beginnt bei den Rootkonzepten im nächsten Schritt Übersetzung der Konzepten, von denen eine Kante zu den Rootkonzepten besteht Übersetzung erfolgt bis alle Knoten des Graphen übersetzt sind erzeugt wird Schema im Modellierungsstil Venetian Blind

26 Weitere Eigenschaften des Entwurfstools
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Reverse-Engineering ist möglich erster Schritt: Umwandlung eines Schemas in Modellierungsstil Venetian Blind zweiter Schritt: Erstellen des zugehörigen CoDEX-Modells (Verwenden eines automatischen Layouts)

27 damit verschiedene Entwurfsverfahren vorgestellt
alle haben auch Nachteile entweder nicht alles darstellbar, was XML-Schema darstellen kann oder nicht einfach genug, weil zu detailliert bisher außer den XML-Editoren keine Methode etabliert jetzt: weiterer Punkt, wenn zu XML-Dokumenten kein Schema bekannt ist, so kann dieses aus den Dokumenten abgeleitet werden Verfahren dazu folgen anschließend

28 Ableitung von Schema-Informa-tionen aus Dokumentkollektionen
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Ableitung eines Schemas für ein oder mehrere gegebene XML-Dokumente Reverse-Engineering Beispielkollektion ausreichend groß und vielfältig Sonst ist die abgeleitete DTD zu speziell abgeleitete Schemabeschreibung soll durch einen Anwender überprüft werden

29 Schemaableitung (DTD)
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Die folgenden 7 Folien stammen im Wesentlichen aus dem Hauptseminarvortrag von Matthias Brückner. Mögliche Herangehensweisen Umwandlung der textuellen Repräsentation der Dokumente (XTRACT) Betrachtung der Dokumente als XML–Trees (DTD-Miner) Eingabe Menge von XML-Dokumenten Ausgabe DTD für die gegebene Dokumentkollektion Ergebnis soll allgemein gehalten sein (für weitere XML-Dokumente), aber auch speziell genug für die betreffende XML-Kollektion

30 DTD-Miner DTD Generation Module Document Tree Extraction Sub-Module
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur DTD Generation Module Document Tree Extraction Sub-Module Umwandlung der XML Dokumente in eine Baumstruktur Spanning Graph Construction Sub-Module Zusammensetzen der Dokumentbäume zu einem zusammenhängenden Graphen DTD Construction Sub-Module Ableiten einer DTD aus dem zusammenhängenden Graphen Anwendung von Heuristiken

31 DTD-Miner (2) XMLTrees Elemente  Knoten
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur XMLTrees Elemente  Knoten Parent-Child Beziehungen  gerichtete Kanten Jeder Baum erhält eine Eindeutige DocID Jedem Knoten wird eindeutige NodeID zugeordnet

32 DTD-Miner (3) Vorteile der Modellierung ERM UML Editoren EMX Reverse-
Engineering Metriken Literatur

33 DTD-Miner (4) Der zusammenhängende Graph
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Der zusammenhängende Graph XMLTrees werden nacheinander zusammengelegt Gleiche Childelemente auf gleichen Knoten abgebildet Abspeichern der NodeIDs in den Knoten und in den entspringenden Kanten beim mehrfachen Auftreten eines Childelementes wird eine zusätzliche Kante eingefügt

34 DTD-Miner (5) Vorteile der Modellierung ERM UML Editoren EMX Reverse-
Engineering Metriken Literatur

35 DTD-Miner (6) Heuristische Regeln Define Optionality
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Heuristische Regeln Define Optionality Bestimmung, ob Element opional ist, oder nicht Merge Repeat Bestimmung sich wiederholender Alternativen Define Group Bestimmung sich wiederholender Gruppen

36 DTD-Miner (7) optionales Element, wenn
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur optionales Element, wenn für alle Kanten, die zwischen zwei Knoten existieren gilt: die Vereinigung der Kantenlabels ist eine echte Teilmenge der Labels des Startknoten (der Zielknoten ist dann optional) mehrfach auftretendes Element, Mehrere Kanten zwischen zwei Knoten

37 DTD-Miner (8) Zur Bestimmung der optionalen Elemente:
Zwischen Knoten a und d existiert eine Kante mit dem Kantenlabel 1. Die (Mengen-) Vereinigung aller Kantenlabels ist dann {1} und es gilt: {1} ⊂ {1,7}, also ist d optional. Weiteres Beispiel: Zwischen b und c existieren 3 Kanten, die Vereinigung der Kantenlabels ist {2,8} ∪ {2} ∪ {2} = {2,8} Diese Menge ist keine echte Teilmenge der Knotenlables ({2,8} ⊄ {2,8}), damit ist das Element c nicht optional. Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

38 Beispiel zur Schemaableitung /1
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur <buch> <autor><vorname></vorname><nachname></nachname></autor> <titel></titel> <verlag></verlag> <jahr></jahr> </buch>

39 Beispiel zur Schemaableitung /2
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur <buch> <editor><vorname></vorname><nachname></nachname></editor> <titel></titel> <verlag></verlag> <jahr></jahr> <auflage></auflage> </buch>

40 Beispiel zur Schemaableitung /3
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur mehrfaches Auftreten: mehrfache Kanten zwischen zwei Knoten optionales Auftreten: Kantenbeschriftung enthält nicht alle IDs des Knotens, von dem die Kante ausgeht

41 Beispiel zur Schemaableitung /4
abgeleitete DTD <!ELEMENT buch (autor*, editor?, titel, verlag, jahr, auflage?) <!ELEMENT autor (vorname, nachname)> <!ELEMENT editor (vorname, nachname)> Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

42 Teilaufgaben Überprüfung Änderung Erweiterung Schema- Schema-
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Überprüfung Änderung Erweiterung Schema- Schema- durch den beschreibung beschreibung Benutzer Schema- Ableitung durch Tools XML-Dokumente

43 Differenzen zwischen abgeleiteter DTD und Original-DTD
Abgeleitete DTD zu spezieller Quantifizierer <!ELEMENT buch (.., editor*, ..).> (.., editor?, ...>) fehlende Elemente <!ELEMENT buch (..untertitel?..)> anderes Inhaltsmodell ( _ | _ | _ | _ )*> ( _ , _ , _ , _)> Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Ursache: zu wenige XML-Dokumente, enthalten nicht alle Spezialfälle der Anwendung

44 Metriken - Motivation /1
Viele XML Anwendungen benötigen ein Schema, es gibt verschiedene Möglichkeiten, es zu bekommen: Benutzer kann dieses direkt definieren es kann mit Hilfe von Entwurfswerkzeugen abgeleitet werden, z.B. aus einem ERM ein existierendes Schema kann verwendet (und angepasst) werden es kann aus Beispiel-XML-Dokumenten abgeleitet werden Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

45 Metriken - Motivation /2
Evaluation des Schema Dabei stellen sich Fragen wie: Ist das Schema einfach zu verstehen? Ist das Schema einfach zu verwenden? Ist das Schema einfach zu verändern? Metriken versuchen, diese Fragen zu beantworten und verschiedene Eigenschaften eines Schemas abzuschätzen Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

46 Metriken - Motivation /3
Zwei Fragestellungen existieren: Erfüllt ein Schema die Anforderungen einer Anwendung Ist das Schema einfach zu verstehen/zu warten/.. Metriken beantworten (nur) die zweite Frage. Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Schema1 Anwendung Metriken Schema2 XML

47 Softwaremetriken Verwendung von Metriken zur Qualitätsbewertung
Merkmale der ISO 9126 Verwendung von Metriken zur Qualitätsbewertung Qualitätsmodell Funktionalität Zuverlässigkeit Benutzbarkeit Effizienz Änderbarkeit Übertragbarkeit ISO/IEC 9126 Merkmal Teilmerkmal Metriken

48 Software Metriken Die gleiche Methode gibt es im Bereich Software
Merkmale Untermerkmale Metriken Funktionalität Zuverlässigkeit Benutzbarkeit Effizienz Änderbarkeit Übertragbarkeit Verständlichkeit Erlernbarkeit Bedienbarkeit McCabe-Metrik Fan-Out-Metrik Analysierbarkeit Veränderbarkeit Stabilität Testbarkeit Halstedt Metrik

49 Klassifikation von Software Metriken
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Produktmetriken bewerten das Schema von XML-Dokumenten Ressourcenmetriken bewerten die Ressourcen, die zur Verarbeitung von XML-Dokumenten erforderlich sind Prozessmetriken bewerten den Entwurfsprozess eines Schemas

50 Produktmetriken -1 Visualisieren einer DTD durch einen Graphen
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Visualisieren einer DTD durch einen Graphen <!ELEMENT publications (book | article)*> <!ELEMENT book (author, title, content)> <!ATTLIST book isbn CDATA #REQUIRED> <!ELEMENT article (title, author+, content, conference)> <!ELEMENT title (#PCDATA)> <!ELEMENT author (#PCDATA)> <!ELEMENT conference (#PCDATA)> <!ELEMENT content (section+, references*)> <!ELEMENT section (#PCDATA)> <!ELEMENT references (publications)> Ableitung von Produktmetriken aus dem Graphen public. book article isbn authors title content conf. section ref.

51 Produktmetriken - 2 Folgende Produktmetriken werden im nächsten Teil
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Folgende Produktmetriken werden im nächsten Teil vorgestellt: Größe Strukturkomplexität Strukturtiefe Fan-In Fan-Out Sie bewerten die Eigenschaften Verwendbarkeit und Änderbarkeit.

52 Größe Bewertet wird Anzahl der Knoten (Elemente, Attribute, Entities)
public. Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur book article isbn authors title content conf. section ref. Bewertet wird Anzahl der Knoten (Elemente, Attribute, Entities) Diese beeinflusst die Verständlichkeit und Verwendbarkeit

53 Strukturkomplexität (Alle Merkmale, die ein Schema komplex machen)
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur (Alle Merkmale, die ein Schema komplex machen) Quantifizierer + und * same content elements Rekursionen und IDREF-Attribute beeinflusst die Verständlichkeit und Verwendbarkeit public. book article isbn authors title content conf. section ref.

54 Strukturtiefe Tiefe=0 Tiefe=1 Tiefe=2 Tiefe=3 Tiefe für jeden Knoten
Maximale Tiefe des Graphen beeinflusst Effizienz, Verwendbarkeit (Pfadlänge zur Adressierung von Elementen/Attribute hängt davon ab) public. Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur book article isbn authors title content conf. section ref.

55 Fan-Out-Metrik Anzahl von Kindknoten
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Anzahl von Kindknoten Gibt an, welche Elementdeklarationen komplex sind beeinflusst die Verständlichkeit und Verwendbarkeit public. book article isbn authors title content conf. section ref.

56 Fan-In-Metrik Anzahl der Vorgängerknoten
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Anzahl der Vorgängerknoten Wie oft wird ein Element wiederverwendet Beeinflusst die Veränderbarkeit eines Schemas public. book article isbn authors title content conf. section ref.

57 Produktmetriken für das Beispiel
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Metriken des gesamten Schemas: Metriken der einzelnen Elemente und Attribute Größe Komplexität Max Tiefe Max Fan-Out Max-Fan-In 10 9 3 4 2 public. book isbn article title author conf. content section ref. Tiefe 3 2 1 (Zyklus) Fan-Out 4 Fan-In

58 Ressourcenmetriken Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Bewerten die Ressourcen, die erforderlich sind, um Schema auswerten zu können: Speicherplatzbedarf Zugriff durch XPath (Zeit) Auswertung durch DOM-Prozessoren (Zeit, Speicherplatz) Auswertung durch SAX-Prozessoren (Zeit) und damit die Eigenschaften Funktionalität und Effizienz

59 Speicherplatzbedarf Kurze Tagnamen (für Elemente und Attribute verringern den Speicherplatzbedarf) Dieses Merkmal ist aber gegenläufig zur Lesbarkeit, sorgfältiges Abwägen beider Eigenschaften Darstellung von Attributen ist kompakter als von Elementen Keine tiefen Schachtelungen Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

60 Zugriff durch XPath Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Flache Hierarchien bedeuten auch keine langen Pfade zum Zugriff auf Elemente und Attribute (Eigenschaft Tiefe der Produktmetriken) Wichtig ist, dass alle Informationen, die ausgewertet werden sollen, mit Markup versehen sind (feingranular getagt) Beispiel (oder besser Gegenbeispiel) <preise> Von Mai bis September 99 Euro, Im Winterhalbjahr ab 79 Euro. </preise> Das ist bei Preisberechnungen nicht auswertbar

61 Abschätzung XPath/XQuery-Anfragen
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur bestimmte Eigenschaften der Produktmetriken lassen sich einsetzen, um den Aufwand von XPath/XQuery-Anfragen abzuschätzen Beispiel: Tiefe = maximale Pfadlänge = Anzahl der einzelnen Schritte = Anzahl der Joins bei generischer Speicherung Größe: Anzahl der zu speichernden Tupel bei generischer Speicherung

62 Auslesen mit DOM- und SAX-Prozessoren
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Attribute leichter als Elemente auslesbar Besonders bei SAX wichtig: Eindeutige Tagnamen, damit das Auslesen möglichst unabhängig von den Umgebungsinformationen erfolgen kann

63 Zusammenfassung Hier gibt es noch sehr wenige Arbeiten
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Hier gibt es noch sehr wenige Arbeiten Universelle Metriken sind schwer zu bestimmen Metriken sind besonders im Zusammenhang mit einer Anwendung (Speicherung von XML, Anfragerealisierung, Transformation, ...) sinnvoll. „Not everything that counts can be counted, and not everything that can be counted counts.“ Albert Einstein

64 Tools Editoren (Transformation von Schemasprachen, Ableiten von
Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur Editoren (Transformation von Schemasprachen, Ableiten von Schema aus Dokumenten, Test der Gültigkeit bzgl. eines Schemas) XMLSpy ( XML Authority ( XML-Prozessoren XML Schema Quality Checker von IBM alphaworks ( XML Schema Validator von Oracle (technet.oracle.com/tech/xml/)

65 Literatur /1 XML Schema: www.w3.org
„Web & Datenbanken“ – Erhard Rahm, Gottfried Vossen, Kapitel 2 oder Harald Schöning „XML und Datenbanken“ Eric van der Vilst: „XML Schema“ konzeptueller Entwurf mit ER: Sebastian Dolke, Hauptseminar 2002 mit UML Alf-Christian Schering, Hauptseminar 2002 Kazakos et al: "Datenbanken und XML" ... XML-Editoren Vergleich verschiedener Editoren: Mintert, Wilde, Behme: iX (8)2002 Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur

66 Literatur /2 Schemaableitung
„XTRACT: A System for Extracting Document Type Descriptors from XML Documents“ – Minos Garofalakis, Aristides Gionis, Rajeev Rastogi, S. Seshadri, Kyuseok Shim „DTD-Miner : A Tool for Mining DTD from XML Documents“ Chuang-Hue Moh, Ee-Peng Lim, Wee-Keong Ng Diplomarbeit: Christian Romberg Matthias Brückner, Hauptseminar 2002 Metriken Sahuguet/Choi Diplomarbeit: Lars Schneider Vorteile der Modellierung ERM UML Editoren EMX Reverse- Engineering Metriken Literatur


Herunterladen ppt "XML und Datenbanken Kapitel 7: Modellierung, Teil 2"

Ähnliche Präsentationen


Google-Anzeigen