1 xml und datenbanken kapitel 7: modellierung, teil 2 meike klettke universität rostock fakultät...

66
1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik [email protected] www.xml-und-datenbanken.de

Upload: gabriele-ameling

Post on 05-Apr-2015

110 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

1

XML und DatenbankenKapitel 7: Modellierung, Teil 2

Meike Klettke

Universität Rostock

Fakultät für Informatik und Elektrotechnik

[email protected]

www.xml-und-datenbanken.de

Page 2: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

2Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Inhalt

Teil 1: 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

Page 3: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

3Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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 denEntwurf 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

Page 4: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

4Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 5: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

5Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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"

Page 6: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

6Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 7: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

7Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Möglichkeiten zur Modellierung

??konzeptuelle

Ebene

date

nzen

trie

rtse

mi-

stru

ktur

iert

dok-

zent

riert

XML-Editorenbaumbasierte

ORMER

Modellierung vonStruktur

UML

Struktur und InhaltModellierung von

Struktur und InhaltModellierung von

??konzeptuelleEbene

Konzeptueller

Entwurf von XML-Dokumenten

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 8: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

8Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

2. Entity-Relationship-Modell für den Datenbankentwurf/ 1

Für den DatenbankentwurfName Ort

Name ISBN

Titel ISBN

Verlag

gibt_heraus

Buch

schreibt

Autor

ISBN ID

Name Vorname ID

ISBNBuch

Autor

Verlag

schreibt

[1,n]

[1,1]

[1,n]

Name

Ort

Titel

gibt_heraus

[0,n]

Name

VornameID

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 9: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

9Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Entity-Relationship-Modell für den Datenbankentwurf/ 2

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 10: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

10Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Entity-Relationship Modell für DTDs

Für den Entwurf von DTDs

ISBNBuch

Autor

Verlag

schreibt

[1,n]

[1,1]

[1,n]

Name

Ort

Titel

gibt_heraus

[0,n]

Name

VornameID

<!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>

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 11: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

11Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Entity-Relationship Modell für XML-Schemata /1

<Buchanwendung>

<schreibt Buch_ref="i1234-5678-9" Autor_ref="a0007"/>

<schreibt Buch_ref="i9876-5432-1" Autor_ref="a0008"/>

<schreibt Buch_ref="i9876-5432-1" Autor_ref="a0009"/>

<Verlag Name="dpunkt" Ort="Heidelberg">

<gibt_heraus>

<Buch Titel="XML und Datenbanken" ISBN="i1234-5678-9"/>

</gibt_heraus>

<gibt_heraus>

<Buch Titel="Web und Datenbanken" ISBN="i9876-5432-1"/>

</gibt_heraus>

</Verlag>

<Autor Name="Meyer" Vorname="Holger" ID="a0007"/>

<Autor Name="Rahm" Vorname="Erhard" ID="a0008"/>

<Autor Name="Vossen" Vorname="Gottfried" ID="a0009"/>

</Buchanwendung>

ISBNBuch

Autor

Verlag

schreibt

[1,n]

[1,1]

[1,n]

Name

Ort

Titel

gibt_heraus

[0,n]

Name

VornameID

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 12: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

12Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Entity-Relationship Modell für XML-Schemata/ 2

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“

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 13: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

13Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

3. Einsatz von UML – Klassendiagrammen /1

Darstellung von Elementdeklarationen durch Klassen

ortplzstrassehausnummerpostfach [0..1]

adresse

hausnummer, postfach?><!ELEMENT (ort, plz, strasse,

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 14: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

14Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Einsatz von UML –Klassendiagrammen /2

Darstellung vom Inhaltsmodell Sequenz Deklaration von Attributen (UML-Konstrukt: Aggregation, Teil-Ganzes-Beziehungen zwischen einem Aggregat

und seinen Teilen)

autor CDATA #IMPLIED> datum CDATA #IMPLIED<!ATTLIST hotel url CDATA #REQUIRED

<!ELEMENT hotel (hotelname, kategorie?, adresse>

hotelname kategorie adresse0..1

hotel<<meta>> url:CDATA<<meta>> datum[0..1]:CDATA<<meta>> autor [0..1] CDATA

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 15: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

15Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Einsatz von UML –Klassendiagrammen /3

Darstellung von Alternativen (UML-Konstrukt: Generalisierung, Ist-Ein-Beziehungen zwischen Klassen)

pension | ferienwohnung )><!ELEMENT unterkunft ( hotel |

{disjoint}

unterkunft

ferienwohnungpensionhotel

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 16: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

16Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Komplexeres Beispiel

preisehotelname telefon0..1

adresse1..n

kategorie

{choice : 0 .. n}

plz ort strasse hausnummer doppelzimmer apartment<<content>>#PCDATA

einzelzimmer

{sequence : 1}

hotel<<meta>> url:CDATA<<meta>> datum[0..1]:CDATA<<meta>> autor [0..1] CDATA

{sequence : 1}

<!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)>

<!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)>

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 17: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

17Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Bewertung

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 18: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

18Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

4. Verwendung von Editoren

Visualisierung der Baumstruktur der XML-Dokumente oder der Graphstruktur der Schemata

Beispiel

XML Spy

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 19: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

19Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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)

Page 20: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

20Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 21: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

21Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

CoDEX-Editor erzeugt sein)

Page 22: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

22Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Model Driven Engineering

Automatische Modellvervollständigung Beispiel:

Ergänzen von – simple Types– complex Types– Inhaltsmodellen

Page 23: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

23Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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, ...)

Page 24: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

24Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Formales Modell von CoDEX

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)

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 25: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

25Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Übersetzung: CoDEX in XML-Schema

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 26: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

26Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Weitere Eigenschaften des Entwurfstools

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)

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 27: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

27Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 28: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

28Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Ableitung von Schema-Informa-tionen aus Dokumentkollektionen

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 29: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

29Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Schemaableitung (DTD)

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-DokumentenAusgabe 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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 30: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

30Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

DTD-Miner

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 31: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

31Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

DTD-Miner (2)

XMLTrees– Elemente Knoten– Parent-Child Beziehungen gerichtete Kanten– Jeder Baum erhält eine Eindeutige DocID– Jedem Knoten wird eindeutige NodeID zugeordnet

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 32: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

32Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

DTD-Miner (3)

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 33: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

33Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

DTD-Miner (4)

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 34: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

34Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

DTD-Miner (5)

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 35: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

35Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

DTD-Miner (6)

Heuristische Regeln

1. Define Optionality• Bestimmung, ob Element opional ist, oder nicht

2. Merge Repeat• Bestimmung sich wiederholender Alternativen

3. Define Group• Bestimmung sich wiederholender Gruppen

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 36: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

36Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

DTD-Miner (7)

optionales Element, wennfü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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 37: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

37Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 38: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

38Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Beispiel zur Schemaableitung /1

<buch>

<autor><vorname></vorname><nachname></nachname></autor>

<autor><vorname></vorname><nachname></nachname></autor>

<titel></titel>

<verlag></verlag>

<jahr></jahr>

</buch>

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 39: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

39Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Beispiel zur Schemaableitung /2

<buch>

<editor><vorname></vorname><nachname></nachname></editor>

<titel></titel>

<verlag></verlag>

<jahr></jahr>

<auflage></auflage>

</buch>

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 40: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

40Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Beispiel zur Schemaableitung /3

mehrfaches Auftreten: mehrfache Kanten zwischen zwei Knoten

optionales Auftreten: Kantenbeschriftung enthält nicht alle IDs des Knotens, von dem die Kante ausgeht

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 41: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

41Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 42: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

42Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Teilaufgaben

XML-Dokumente

beschreibungSchema- Schema-

beschreibung

ÜberprüfungÄnderung

Erweiterung

AbleitungSchema-

durch Tools

durch denBenutzer

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 43: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

43Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Differenzen zwischen abgeleiteter DTD und Original-DTD

Original-DTD Abgeleitete DTD

zu spezieller Quantifizierer

<!ELEMENT buch

(.., editor*, ..).>

<!ELEMENT buch

(.., editor?, ...>)

fehlende Elemente

<!ELEMENT buch (..untertitel?..)>

anderes Inhaltsmodell

<!ELEMENT buch

( _ | _ | _ | _ )*>

<!ELEMENT buch

( _ , _ , _ , _)>

Ursache: • zu wenige XML-Dokumente, • enthalten nicht alle Spezialfälle der Anwendung

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 44: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

44Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 45: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

45Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 46: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

46Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Metriken - Motivation /3

Zwei Fragestellungen existieren:

1. Erfüllt ein Schema die Anforderungen einer Anwendung

2. Ist das Schema einfach zu verstehen/zu warten/..

Metriken beantworten (nur) die zweite Frage.

Schema1

Schema2

Metriken

XML

Anwendung

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 47: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

47Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Softwaremetriken

Verwendung von Metriken zur Qualitätsbewertung

Qualitätsmodell

Metriken

Merkmal

Teilmerkmal

ISO/IEC9126

FunktionalitätZuverlässigkeitBenutzbarkeitEffizienzÄnderbarkeitÜbertragbarkeit

Merkmale der ISO 9126

Page 48: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

48Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Software Metriken

Die gleiche Methode gibt es im Bereich Software

Merkmale Untermerkmale Metriken

FunktionalitätZuverlässigkeitBenutzbarkeitEffizienzÄnderbarkeitÜbertragbarkeit

AnalysierbarkeitVeränderbarkeit StabilitätTestbarkeit

Verständlichkeit ErlernbarkeitBedienbarkeit

McCabe-Metrik

Fan-Out-Metrik

Halstedt Metrik

Page 49: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

49Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Klassifikation von Software Metriken

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 50: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

50Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Produktmetriken -1

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.

section

conf.

ref.

contenttitleauthors

articlebook

isbn

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 51: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

51Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Produktmetriken - 2

Folgende Produktmetriken werden im nächsten Teil

vorgestellt: Größe Strukturkomplexität Strukturtiefe Fan-In Fan-Out

Sie bewerten die Eigenschaften Verwendbarkeit und

Änderbarkeit.

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 52: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

52Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Größe

Bewertet wird Anzahl der Knoten (Elemente, Attribute, Entities) Diese beeinflusst die Verständlichkeit und Verwendbarkeit

public.

section

conf.

ref.

contenttitleauthors

articlebook

isbn

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 53: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

53Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Strukturkomplexität

(Alle Merkmale, die ein Schema komplex machen)

Quantifizierer + und * same content elements Rekursionen und IDREF-Attribute

beeinflusst die Verständlichkeit und Verwendbarkeit

public.

section

conf.

ref.

contenttitleauthors

articlebook

isbn

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 54: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

54Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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.

section

conf.

ref.

contenttitleauthors

articlebook

isbn

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 55: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

55Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Fan-Out-Metrik

Anzahl von Kindknoten

Gibt an, welche Elementdeklarationen komplex sind beeinflusst die Verständlichkeit und Verwendbarkeit

public.

section

conf.

ref.

contenttitleauthors

articlebook

isbn

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 56: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

56Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Fan-In-Metrik

Anzahl der Vorgängerknoten

Wie oft wird ein Element wiederverwendet Beeinflusst die Veränderbarkeit eines Schemas

public.

section

conf.

ref.

contenttitleauthors

articlebook

isbn

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 57: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

57Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Produktmetriken für das Beispiel

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 0 2 0 0 0 1 0 (Zyklus)

Fan-Out 2 4 0 4 0 0 0 2 0 1

Fan-In 1 1 1 1 2 2 1 2 1 1

Metriken des gesamten Schemas:

Metriken der einzelnen Elemente und Attribute

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 58: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

58Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Ressourcenmetriken

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 59: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

59Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 60: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

60Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Zugriff durch XPath

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 61: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

61Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Abschätzung XPath/XQuery-Anfragen

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 62: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

62Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Auslesen mit DOM- und SAX-Prozessoren

Attribute leichter als Elemente auslesbar

Besonders bei SAX wichtig:– Eindeutige Tagnamen, damit das Auslesen möglichst

unabhängig von den Umgebungsinformationen erfolgen kann

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 63: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

63Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Zusammenfassung

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

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 64: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

64Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

Tools

Editoren (Transformation von Schemasprachen, Ableiten von Schema aus Dokumenten, Test der Gültigkeit bzgl. eines Schemas) XMLSpy (www.xmlspy.com) XML Authority (

www.extensibility.com/xml_resources/modeling.htm)

XML-Prozessoren XML Schema Quality Checker von IBM alphaworks (

www.alphaworks.ibm.com/tech/xmlsqc) XML Schema Validator von Oracle (technet.oracle.com

/tech/xml/)

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur

Page 65: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

65Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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

Page 66: 1 XML und Datenbanken Kapitel 7: Modellierung, Teil 2 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de

66Meike Klettke

Universität Rostock

Vorlesung “XML und Datenbanken”

4) Generieren von XML-Dokumenten aus Datenbanken

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 2002Metriken Sahuguet/Choi Diplomarbeit: Lars Schneider

- Vorteile der Modellierung- ERM- UML- Editoren- EMX- Reverse- Engineering- Metriken - Literatur