XML

Werbung
Interoperable
Informationssysteme
Klemens Böhm
Interoperable Informationssysteme - 1
Aufbau der heutigen Sitzung



Motivation für die Vorlesung als Ganzes
in eher abstrakter Form, “roter Faden”,
 Interoperabilität,
 Heterogenität,
 semistrukturierte Datenmodelle,
 XML.
Auflistung der Inhalte der Vorlesung,
Beginn des ersten Teils.
Klemens Böhm
Interoperable Informationssysteme - 2
Einleitung


Interoperabilität
Heterogenität

Was ist Interoperabilität?
Was sind semistrukturierte Datenmodelle?
Zusammenhang Interoperabilität –
semistrukturierte Datenmodelle?
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung
Klemens Böhm
Interoperable Informationssysteme - 3
Problem


Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung


Grosse Datenmengen sind verfügbar.
Daten werden unterschiedlich modelliert.
Systeme zur Datenverwaltung
haben unterschiedliche Fähigkeiten.
Informationssysteme existieren nebeneinander
 innerhalb einer Organisation/Firma,
 teilweise innerhalb,
teilweise ausserhalb der Organisation
(z.B. Vergleich Kundenliste - Top500-Liste),
 sämtlich ausserhalb des Unternehmens
“Information Brokering”, “Virtual Enterprises”,
z.B. Dienst, der verschiedene
Auctioning-Angebote zusammenfasst.
Klemens Böhm
Interoperable Informationssysteme - 4
Problem


Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Man will integrierten Zugriff.
Jene Unterschiede/Charakteristika der
Sourcen sollten transparent sein;
Benutzer soll sich nicht darum kümmern
müssen
 wie Daten modelliert sind,
 welches System verwendet wird,
 wo Daten gespeichert sind.
Integrierter Zugriff Anfragen über mehrere Sourcen,
Überbrückung der Heterogenität.
Klemens Böhm
Interoperable Informationssysteme - 5
Interoperable Datenbanken

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Definition gemäss ‘Computing Dictionary’:
“A database front-end which communicates
with multiple heterogeneous databases
and makes them appear as a single
homogeneous entity with semantic calls.”
Hier jedoch keine Beschränkung auf
Datenbanken bzw. relationales
Datenmodell, sondern Betrachtung von
beliebigen Sourcen, z.B. auch DokumentServer, File-Systeme, Web-Server.
Klemens Böhm
Interoperable Informationssysteme - 6
‘Integrierter Zugriff’

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML

Benutzeroberfläche,
die das Absetzen von Anfragen erlaubt,
die für alle Komponenten bestimmt ist,
Transformation der Daten
in einheitliches Datenmodell,
Entwicklung von Anwendungen
gegen diese Modellierung.
Inhalt der
Vorlesung
Klemens Böhm
Interoperable Informationssysteme - 7
Interoperabilität und XML


Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle

Notwendigkeit, möglichst allgemeines Datenmodell
zu verwenden.
XML hat sich als universelles
Daten-Austauschformat etabliert,
Verwendung von XML
als Modell für den integrierten Zugriff.
XML
Inhalt der
Vorlesung
Klemens Böhm
Interoperable Informationssysteme - 8
Heterogenität

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Warum sprechen wir über Heterogenität?
Heterogenität ist der Grund dafür,
dass unser Problem schwierig ist;
wären Systeme nicht heterogen,
hätte man das Problem nicht.
Heterogenität –
Motivation für semistrukturierte
Datenmodelle,
herkömmliche Datenmodelle sind z.T.
‘lästiges Korsett’.
Klemens Böhm
Interoperable Informationssysteme - 9
Heterogenität

Interoperabilität

Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Anwendungsunabhängige Unterschiede:
 Datenmodell (z.B. relational vs. objektorientiert),
 Anfragesprache.
Unterschiede bei der Modellierung
(im gleichen Modell):
 Weglassen von Information,
 explizite Strukturierung,
z.B. ‘Name’ vs. ‘Vorname - Nachname’,
 unterschiedliche Bedeutung der Attribute
(trotz gleicher Bezeichnung,
z.B. Preis - netto oder brutto?)
Unterschiede auf Instanzenebene, z.B.
Beträge in CHF - Beträge in Lira.
Klemens Böhm
Interoperable Informationssysteme - 10
Heterogenität - Beispiel
Klemens Bruno
Wigbert F.
Hans
Jörg
Interoperabilität
Torsten
Heterogenität

Semistrukt.
Datenmodelle


XML
Inhalt der
Vorlesung



Böhm
Böhm
Schek
Mohan
Grabs
Bad Homburg, Zürich
Stuttgart
Zürich
Almaden
Zürich
65000 CHF
35000 DM
> 100000 CHF
Prof. Stein
< 100000 CHF
Unterschiedliche Zahl von Wohnorten
Unterschiedliche Darstellung des Zweitnamens
Unterschiedliche Währung beim Jahreseinkommen
(Konvertierung = Informationsverlust)
Uneinheitliche Darstellung zusammengesetzter
Vornamen
Jahreseinkommen nicht immer als exakter Wert
Fehlende/nicht bekannte Werte
Klemens Böhm
Interoperable Informationssysteme - 11
Datenmodell, Schema, Typ (1)

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML

Diese Folie – Begriffe für Erklärung
semistrukturierter Datenmodelle.
Definition Datenmodell laut Ullman:
Formalismus und Notation
zur Beschreibung von Datenstrukturen
und eine Menge von Operationen,
die zum Manipulieren und Validieren der Daten
verwendet werden.
Inhalt der
Vorlesung
Klemens Böhm
Interoperable Informationssysteme - 12
Datenmodell, Schema, Typ (2)

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Typ - Menge von Werten, mit denen
eine Variable oder eine Konstante belegt sein darf;
Schema laut Ullman:
Spezifikation der Typen von Entities in Datenbank
und der Beziehungen
zwischen Instanzen dieser Typen;
Art, wie Entities und Beziehungen
auf einer Abstraktionsebene
auf der nächstniedrigeren ausgedrückt werden.
Beispiel: Array
 Konzeptionelles Schema:
integer array A[1..n; 1..m]
 Physisches Schema:
A[i, j] ist an Position a0 + 4(m(i-1)+j-1)
Klemens Böhm
Interoperable Informationssysteme - 13
Semistrukturierte Daten


Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung
Verallgemeinerung bekannter Datenmodelle,
Motivation:
 kein explizites Schema vorhanden,
(implizites) Schema kann sich
(im Laufe der Zeit) ändern,
 keine starke Typisierung,
d.h. Attribut kann (für unterschiedliche
Objekte) unterschiedlichen Typ haben,
 Reihenfolge,
z.B. Reihenfolge der Kapitel
eines Dokuments.
Klemens Böhm
Interoperable Informationssysteme - 14
Semistrukturierte Daten - Fortsetzung

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Semistrukturierte Daten sind allgegenwärtig:
 Dokumente
z.B. Gesetzestexte, Wörterbucheinträge,
HTML-Dokumente,
 Daten
 universelles Austauschformat,
z.B. für E-Commerce.
Welche Rolle spielt XML?
 Zahlreiche Tools,
 zahlreiche DTDs,
 Standard des W3C,
 Grundlage zahlreicher weiterer Standards.
Klemens Böhm
Interoperable Informationssysteme - 15
Semistrukturierte Daten (3)

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Zusammenhang ‘Querying- und
Transformationsmechanismen’ und
‘Interoperabilität’,
Indexierung semistrukturierter Daten:
 Beschleunigung des deklarativen Zugriffs,
viele Anfragen ohne Indexstrukturen
praktisch nicht evaluierbar,
 Index ist verkürzte Beschreibung
des Datenbank-Inhalts
(aus einer bestimmten Sicht).
Klemens Böhm
Interoperable Informationssysteme - 16
Markup


Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML

Inhalt der
Vorlesung

Zusätzliche Information,
die in Dokumenttext eingefügt wird.
Jedes Textverarbeitungssystem
generiert Markup, z.B.
 \par (in RTF) identifiziert Anfang
eines neuen Absatzes,
 \sb240 spezifiziert 12-pt Space.
Benutzer gibt Markup nur in seltenen Fällen
selbst ein, z.B. mit LaTeX.
Generalized Markup:
 spezifiziert nicht das Aussehen des Dokuments,
identifiziert Strukturbestandteile des Dokuments,
 \sb240 ist kein Generalized Markup.
Klemens Böhm
Interoperable Informationssysteme - 17
Markup - HTML als Beispiel
Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung
<html>
<div>
<h3>The Autobiography of Benjamin
Franklin</h3>
Benjamin
Franklin     
<i>8.99</i>
<div>
…
</html>
Klemens Böhm
Interoperable Informationssysteme - 18
Logischer Markup mit XML
Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung
<?xml version='1.0’?>
<bookstore>
<book genre="autobiography">
<title>The Autobiography of
Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel">
…
</book>
</bookstore>
Klemens Böhm
Interoperable Informationssysteme - 19
Warum will man
mit Generalized Markup arbeiten? (1)

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung
Trennung zwischen logischer und Layout-Struktur
führt zu höherer Flexibilität, insbesondere
 kann man unterschiedliche Darstellungen
für unterschiedliche Benutzer
und unterschiedliche Anforderungen erzeugen,
Beispiel: Lektor soll alle Eigennamen im
Wörterbuch ueberpruefen.
 hat man bessere Strukturierungsmöglichkeiten
(Strukturierung muss nicht immer explizit
dargestellt werden, feinere Typisierung).
Beispiel: Differenzierung Vorname – Nachname.
Klemens Böhm
Interoperable Informationssysteme - 20
Warum will man
mit Generalized Markup arbeiten? (2)

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML

Dokument mit logischem Markup
enthält i.a. mehr Information,
leichteres kooperatives Arbeiten bzw.
bessere Dokumentation eigener Arbeitsschritte.
Konsistenz der Dokumente:
 'intra-document consistency',
 'inter-document consistency'.
Inhalt der
Vorlesung
Klemens Böhm
Interoperable Informationssysteme - 21
Was leistet XML? (1)

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML


Ziel von XML –
nicht Standardisierung des Generalized Markups.
Man will unterschiedliche Dokumenttypen haben,
mit jeweils unterschiedlichem Markup.
Beispiele:
 Inventarliste Buchhandlung,
 Kochrezept.
Inhalt der
Vorlesung
Klemens Böhm
Interoperable Informationssysteme - 22
Was leistet XML? (2)

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung
Ziel von XML:
 der Darstellung von Generalized Markup
im Dokument (Syntaxebene),
 Festlegung,
welcher Markup wo im Dokument zulässig,
z.B. Kochrezept muss Zutaten enthalten,
Zutaten müssen vor der Zubereitung kommen.
Nicht obligatorisch, solche Festlegungen zu treffen.
Klemens Böhm
Interoperable Informationssysteme - 23
Dokumenttypdefinition
Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
Dokumenttypdefinition (DTD)
 ist im wesentlichen Menge von Regeln/
Grammatik,
 DTD gibt vor, was für Markup (an welcher
Stelle genau im Dokument des Typs)
vorkommen darf.
XML
Inhalt der
Vorlesung
Klemens Böhm
Interoperable Informationssysteme - 24
Beispiel: Bookstore DTD
Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung
<!ELEMENT bookstore (book)*>
<!ELEMENT book
(title,author+,price?)>
<!ATTLIST book
genre CDATA #REQUIRED>
<!ELEMENT title
(#PCDATA)>
<!ELEMENT author
( name
|(firstname,lastname))>
<!ELEMENT price
(#PCDATA)>
<!ELEMENT name
(#PCDATA)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT lastname
(#PCDATA)>
Klemens Böhm
Interoperable Informationssysteme - 25
Logische Dokumentstruktur
bookstore
Interoperabilität
...
book
Heterogenität
Semistrukt.
Datenmodelle
title
author
price
book
title
author
price
XML
Inhalt der
Vorlesung
The Autobiography of ...
8.99
firstname
Benjamin
Klemens Böhm
The Gorgias
lastname
Franklin
9.99
name
Plato
Interoperable Informationssysteme - 26
Inhalt der Vorlesung (1)


Interoperabilität
Heterogenität

Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Datenmodell 1: OEM
Queries 1: Deklarativer Zugriff auf semistrukturierte
Daten
Anforderungen, Flexibilität, zwei Sprachen
Datenmodell 2: XML
Abgrenzung zum relationalen Modell,
Zusammenhang XML – Dokumente,
‘Praxis-Features’: Kodierung von Chars, Entities,
vordefinierte Typen
Datenmodell 3: XML und verwandte Standards
DOM, SAX, XPointer, XLink
Klemens Böhm
Interoperable Informationssysteme - 27
Inhalt der Vorlesung (2)


Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung


Schema und Typen
Motivation, DataGuides, Datalog, Simulationen
Systeme 1: Indexstrukturen für semistrukturierte
Daten
unterschiedliche Indices unterstützen
unterschiedliche Anfragen,
DataGuides, PAT-Trees, STORED, XML-Features
von SQL Server,
Evaluierung von XML-Queries
Datenmodell 4: Metadaten
MPAA,
Dublin Core, RDF
Queries 2: Transformationsmechanismen für
semistrukturierte Daten
XSLT, YAT
Klemens Böhm
Interoperable Informationssysteme - 28
Inhalt der Vorlesung (3)

Interoperabilität

Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Systeme 2: Query Processing in verteilten,
heterogenen Umgebungen
Query-Evaluierung, Queryoptimierung
Systeme 3: Infrastrukturen für die Integration
heterogener Informationssysteme
Harmony – was bekommt man, was muss man
selbst leisten?
A0-Algorithmus
Systeme 4: Erweiterbare Query-Optimierung
Klemens Böhm
Interoperable Informationssysteme - 29
Abgrenzung gegenüber anderen
Lehrveranstaltungen

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung

Zusammenhang zu ‘Data Warehousing’:
 Data Warehouse - Materialisierung integrierter
Sicht bzw. Teilen davon, insbes. Aggregate,
bzw. historischer Entwicklung der Daten,
 multidimensionales Datenmodell
(Datenmodell wurde nicht entworfen, um mit
Heterogenität gut umzugehen.)
 Konsistenzerhaltung, effiziente Berechnung
der materialisierten Sicht, physischer Entwurf,
 neue Operatoren
auf höherem Abstraktionsniveau.
Zusammenhang zu ‘Objekten höherer Ordnung’ Mechanismen zum Kommunikationsaufbau
zwischen Informationsobjekten.
Klemens Böhm
Interoperable Informationssysteme - 30
Abgrenzung gegenüber anderen
Lehrveranstaltungen

Interoperabilität
Heterogenität
Semistrukt.
Datenmodelle
XML
Inhalt der
Vorlesung


Materialisierungen, physischer Entwurf hier kein Thema, alle Sichten sind virtuell.
Anderes Datenmodell.
Hier vorgestellte Konzepte
sind orthogonal zu den Mechanismen
zur Verwaltung von Objekten höherer
Ordnung.
Klemens Böhm
Interoperable Informationssysteme - 31
Herunterladen