Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Kapitel 6Kapitel 6
Abbildung von Datenbanken auf XMLAbbildung von Datenbanken auf XML
StandardStandard--Abbildung von TabellenAbbildung von Tabellen
StandardStandard--Abbildung von Anfrageergebnissen Abbildung von Anfrageergebnissen
Individuelle AbbildungsvorschriftenIndividuelle Abbildungsvorschriften
6-2Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Anforderungen an die Generierung von Anforderungen an die Generierung von XMLXML--Dokumenten aus DatenbankenDokumenten aus Datenbanken
Datenbanksysteme sind sehr weit verbreitetDatenbanksysteme sind sehr weit verbreitet
Grosse Datenmengen sind in Datenbanken elektronisch gespeichertGrosse Datenmengen sind in Datenbanken elektronisch gespeichert
XML attraktiv als Format zum Austausch zwischen DatenbankenXML attraktiv als Format zum Austausch zwischen Datenbanken– Transport via Internet-Protokolle definiert– Vereinheitlichung durch gemeinsame DTDs oder XML-Schemas möglich– Viele Tools verfügbar
Austausch erfordert Export und Import der Daten (unter anderem)Austausch erfordert Export und Import der Daten (unter anderem)
Anforderungen an den DatenexportAnforderungen an den Datenexport– Standard-Abbildung von Tabellen– Standard-Abbildung von Anfrageergebnissen oder Sichten– Individuelle Abbildungsvorschriften
6-3Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Allgemeine ProblemstellungAllgemeine Problemstellung
Problem ist für alle Hersteller von Datenbanksystemen im PrinzipProblem ist für alle Hersteller von Datenbanksystemen im Prinzip gleichgleich
SQL/XML SQL/XML -- Standardisierungsinitiative verschiedener Hersteller Standardisierungsinitiative verschiedener Hersteller (siehe Kapitel 7)(siehe Kapitel 7)
Daten aus DatenbankenDaten aus Datenbanken
DatentypenDatentypen
TabellenTabellen-- und Spaltennamenund Spaltennamen
DatenbankDatenbank
Inhalte in XMLInhalte in XML--DokumentenDokumenten
Datentypen von XMLDatentypen von XML--SchemaSchema
ElementElement-- und und AttributnamenAttributnamen
XMLXML--DokumentDokument
??
6-4Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Generieren von XMLGenerieren von XML--Dokumenten aus Datenbanken
Generieren von XML-Dokumenten
Standard- Abbildung von Anfrage-ergebnissen
IndividuelleAbbildungs-vorschriften
Standard-Abbildung von Tabellen
• Feste Transformationsregeln
• Feststehende Syntax des entstehenden XML-Dokumentes
• Lee Buck (Grundprinzip)• Tim Bray, Lee Buck
(Datentypen in DTDs ergänzen)• Oracle• DB2• Informix• SQL/XML
(Standardisierungsinitiative)
Dokumenten aus Datenbanken
6-5Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
StandardStandard--Abbildung von TabellenAbbildung von TabellenDatenbank als dreistufige Hierarchie vonDatenbank als dreistufige Hierarchie von
– Datenbank – Tabellen– Spalten
Darstellung der Datenbankinhalte und Struktur im XMLDarstellung der Datenbankinhalte und Struktur im XML--DokumentDokument– durch Elemente– durch Elemente und Attribute
Beispielrelationen:Beispielrelationen:Hotel: Adresse:
A0002A000233WarnemWarnemüü--ndernder HofHof
H0002H0002
A0001A000144Hotel Hotel HHüübnerbner
H0001H0001AdresseAdresseKategorieKategorieNameNameHotelIDHotelID
88Stolteraer Stolteraer WegWeg1811918119WarnemWarnemüündendeA0002A0002
1212SeestrasseSeestrasse1811918119WarnemWarnemüündendeA0001A0001
NrNrStrasseStrassePLZPLZOrtOrtAdresseIDAdresseID
6-6Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
StandardStandard--Abbildung von Tabellen: Abbildung von Tabellen: Darstellung durch Darstellung durch ElementeElemente
Hotel: Adresse:
A0002A000233WarnemWarnemüü--ndernder HofHof
H0002H0002
A0001A000144Hotel Hotel HHüübnerbner
H0001H0001AdresseAdresseKategorieKategorieNameNameHotelIDHotelID
88Stolteraer Stolteraer WegWeg1811918119WarnemWarnemüündendeA0002A0002
1212SeestrasseSeestrasse1811918119WarnemWarnemüündendeA0001A0001
NrNrStrasseStrassePLZPLZOrtOrtAdresseIDAdresseID
<Hotelinformationen><Hotel>
<HotelID>H0001</HotelID><Name>Hotel Hübner</Name><Kategorie>4</Kategorie><Hoteladr>A0001</Hoteladr>
</Hotel><Hotel> ... </Hotel><Adresse> ... </Adresse>
</Hotelinformationen>
Standard-Abbildung der Spaltennamen auf Elementnamen
6-7Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
StandardStandard--Abbildung von Tabellen: Abbildung von Tabellen: Darstellung durch Darstellung durch Elemente und AttributeElemente und Attribute
Hotel: Adresse:
A0002A000233WarnemWarnemüü--ndernder HofHof
H0002H0002
A0001A000144Hotel Hotel HHüübnerbner
H0001H0001AdresseAdresseKategorieKategorieNameNameHotelIDHotelID
88Stolteraer Stolteraer WegWeg1811918119WarnemWarnemüündendeA0002A0002
1212SeestrasseSeestrasse1811918119WarnemWarnemüündendeA0001A0001
NrNrStrasseStrassePLZPLZOrtOrtAdresseIDAdresseID
<Hotelinformationen><Hotel
HotelID='H0001'Name='Hotel Hübner'Kategorie='4' Hoteladr='A0001' />
<Hotel ... /><Adresse ... />
</Hotelinformationen>
Standard-Abbildung der Spaltennamen auf Attributnamen
6-8Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Abbildung von SchlüsselAbbildung von Schlüssel--FremdschlüsselFremdschlüssel--BeziehungenBeziehungen
Zielsetzung: Schlüssel und Fremdschlüssel sollen möglichst adäquZielsetzung: Schlüssel und Fremdschlüssel sollen möglichst adäquat im at im XMLXML--Dokument wiedergegeben werdenDokument wiedergegeben werden
Abbildung von SchlüsselAbbildung von Schlüssel-- und Fremdschlüsselbeziehungen auf und Fremdschlüsselbeziehungen auf ElementhierarchienElementhierarchien
– 1:n-Beziehungen werden auf geschachtelte Elemente im Dokument abgebildet– n:m-Beziehungen sind problematisch:
Abbildung auf ID/IDREFDenormalisierter Inhalt im XML-Dokument – eventuell hohe Redundanz
Verwendung von XMLVerwendung von XML--SchemaSchema– Darstellung von Schlüsseln und Fremdschlüsseln: Einsatz von key / keyref
Verwendung einer DTDVerwendung einer DTD– Darstellung von Schlüsseln und Fremdschlüsseln
Abbildung auf Attribute (ID/IDREF)Eindeutigmachen der Schlüssel- und Fremdschlüsselwerte (ID muss eindeutig sein für das ganze Dokument)
6-9Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Hierarchien aus SchlüsselHierarchien aus Schlüssel-- und und FremdschlüsselbeziehungenFremdschlüsselbeziehungen
Hotel: Adresse:
A0002A000233WarnemueWarnemue--ndernder HofHof
H0002H0002
A0001A000144Hotel Hotel HHüübnerbner
H0001H0001AdresseAdresseKategorieKategorieNameNameHotelIDHotelID
88Stolteraer Stolteraer WegWeg1811918119WarnemWarnemüündendeA0002A0002
1212SeestrasseSeestrasse1811918119WarnemWarnemüündendeA0001A0001
NrNrStrasseStrassePLZPLZOrtOrtAdresseIDAdresseIDFK
<!ELEMENT Hotel (HotelID, Name, Kategorie?, Hoteladr)><!ELEMENT Hoteladr (AdresseID, Ort, PLZ, Strasse, Nr)><!ELEMENT HotelID (#PCDATA)><!ELEMENT Name (#PCDATA)><!ELEMENT Kategorie (#PCDATA)><!ELEMENT AdresseID (#PCDATA)><!ELEMENT Nr (#PCDATA)><!ELEMENT Ort (#PCDATA)><!ELEMENT PLZ (#PCDATA)><!ELEMENT Strasse (#PCDATA)>
Auflösung der Fremdschlüssel-Beziehungen durch Einbettung derreferenziertenElemente
6-10Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Abbildung von DatentypenAbbildung von Datentypen
Verwendung von XMLVerwendung von XML--Schema: Vielzahl vordefinierter DatentypenSchema: Vielzahl vordefinierter Datentypen
Erweiterung von Erweiterung von DTDsDTDs um reservierte Attributeum reservierte Attribute
XMLXML--Prozessoren oder Applikationen müssen diese Informationen Prozessoren oder Applikationen müssen diese Informationen kennen und auswertenkennen und auswerten
<xsd:element name=''ort''
<ort
type=''xsd:string''><xsd:element name=''plz'' type=''xsd:integer''>
xml-sqltype=''varchar''>Rostock</ort><plz xml-sqltype=''integer''>18055</plz>
6-11Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Abbildung von objektrelationalen Datenbanken (1)Abbildung von objektrelationalen Datenbanken (1)
Objektrelationale Datenbanken unterstützen nichtObjektrelationale Datenbanken unterstützen nicht--atomare, komplexe atomare, komplexe SpaltenSpalten
– tupelwertig– kollektionswertig– objektwertig– referenzwertig
Vorhandene Struktur sollVorhandene Struktur soll in das XMLin das XML--Dokument übernommen werdenDokument übernommen werden– Instanzenebene– Schemaebene
6-12Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Abbildung von objektrelationalen Datenbanken (2)Abbildung von objektrelationalen Datenbanken (2)InstanzenebeneInstanzenebene: ad: adääquate Abbildung von Instanzen mit komplexen quate Abbildung von Instanzen mit komplexen Attributen (Attributen (TupelTupel, Mengen oder Listen), Mengen oder Listen)
<Hotelinformationen><Hotel>
<HotelID>H0001</HotelID><Name>Hotel Hübner</Name> <Adresse>
<PLZ>18119</PLZ> <Ort>Warnemünde</Ort><Strasse>Seestrasse</Strasse><Nr>12</Nr>
</Adresse>
<Telefon>0381/5434-0</Telefon><Telefon>0381/5434-44</Telefon>
</Hotel></Hotelinformationen>
18119
PLZ
{Telefon}<Adresse>HotelnameHotelID
Hotel Hübner Warnemünde
Ort
Seestrasse
Strasse
12
Nr
{'0381/5434-0', '0381/5434-44'}H0001
6-13Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Abbildung von objektrelationalen Datenbanken (3)Abbildung von objektrelationalen Datenbanken (3)SchemaebeneSchemaebene: Ableiten eines XML: Ableiten eines XML--Schema oder einer DTD aus Schema oder einer DTD aus objektrelationalem Schemaobjektrelationalem Schema
INFORMIX-DDLCREATE ROWCREATE ROW typetype Adresse_tAdresse_t((PLZ PLZ INTEGER,INTEGER,Ort Ort VARCHAR(25),VARCHAR(25),Strasse Strasse VARCHAR(20),VARCHAR(20),NrNr INTEGERINTEGER
););
CREATE TABLE HotelCREATE TABLE Hotel((HotelIDHotelID INTEGER NOT NULL INTEGER NOT NULL
PRIMARY KEY,PRIMARY KEY,Name Name VARCHAR(20) NOT NULL, VARCHAR(20) NOT NULL, Adresse Adresse Adresse_t, Adresse_t, Telefon Telefon SET(INTEGER NOT NULL)SET(INTEGER NOT NULL)
);
XML-DTD<!ELEMENT Hotelinformationen (Hotel*)><!ELEMENT Hotel (HotelID, Name, Adresse, Telefon+)><!ELEMENT HotelID (#PCDATA)><!ELEMENT Name (#PCDATA)><!ELEMENT Adresse (PLZ, Ort, Strasse, Nr)><!ELEMENT PLZ (#PCDATA)><!ELEMENT Ort (#PCDATA)><!ELEMENT Strasse (#PCDATA)><!ELEMENT Nr (#PCDATA)><!ELEMENT Telefon (#PCDATA)>
);
6-14Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Eigenschaften der Abbildung von TabellenEigenschaften der Abbildung von Tabellen
Ausgabe der DatenbankAusgabe der Datenbank– vollständig
Erforderliche InformationenErforderliche Informationen– keine
Variables AusgabeformatVariables Ausgabeformat– nein
Erhalt von DatentypenErhalt von Datentypen– durch erweiterte DTDs – durch ein XML-Schema
Speicherung von Schlüsseln und Speicherung von Schlüsseln und FremdschlüsselnFremdschlüsseln
– Abbilden auf Hierarchien im XML-Dokument
– ID/IDREF – XML-Schema
Weitere BesonderheitenWeitere Besonderheiten– Parser müssen DTD-Erweiterungen
auswerten – XML-Schema ist wesentlich besser
geeignet als DTDs– adäquate Darstellung von Tupeln,
Mengen, Listen und Referenzen ausobjektrelatioanlen Datenbanken im XML-Dokument
6-15Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Generieren von XMLGenerieren von XML--Dokumenten aus Datenbanken
Generieren von XML-Dokumenten
Standard-Abbildung von Anfrage-ergebnissen
IndividuelleAbbildungs-vorschriften
Standard-Abbildung von Tabellen
Dokumenten aus Datenbanken
• Feste Transformationsregeln
• Feststehende Syntax des entstehenden XML-Dokumentes
• Auswahl der dazustellenden Daten durch die Datenbankanfrage
• Oracle• DB2• Microsoft
6-16Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Abbildung von AnfrageergebnissenAbbildung von Anfrageergebnissen
<<rowsetrowset>><<rowrow no='1'>no='1'>
<Name>Hotel Hübner</Name><Name>Hotel Hübner</Name><Kategorie>4</Kategorie><Kategorie>4</Kategorie><Ort>Warnemünde</Ort><Ort>Warnemünde</Ort>
</</rowrow> > </</rowsetrowset>>
Ergebnisse von SQLErgebnisse von SQL--Anfragen als XMLAnfragen als XML--Dokumente bzw. XMLDokumente bzw. XML--Elemente Elemente ausgebenausgeben
Abbildung der Ergebnistabelle in eine StandardAbbildung der Ergebnistabelle in eine Standard--Repräsentation Repräsentation – Ergebnistabelle auf rowset-Element– Jede Zeile auf ein row-Element– Tabellenspalten auf Sub-Elemente oder XML-Attribute– Dadurch kein variables Ausgabeformat
Ähnliches Verfahren Bestandteil im zukünftigen SQL/XMLÄhnliches Verfahren Bestandteil im zukünftigen SQL/XML--StandardStandard
XML
SELECT Name, Kategorie, OrtSELECT Name, Kategorie, Ort
FROM Hotel, AdresseFROM Hotel, Adresse
WHERE Ort='Warnemünde' ANDWHERE Ort='Warnemünde' AND
Hotel.Hotel.HoteladrHoteladr=Adresse.=Adresse.AdresseIDAdresseID
SQL
6-17Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Eigenschaften der Abbildung von Eigenschaften der Abbildung von DatenbankanfragenDatenbankanfragen
Ausgabe der DatenbankAusgabe der Datenbank– partiell
Erforderliche InformationenErforderliche Informationen– Datenbankanfrage/Datenbanksicht
Variables AusgabeformatVariables Ausgabeformat– nein
Erhalt von DatentypenErhalt von Datentypen– geht typischerweise verloren, wäre
aber ableitbar
Speicherung von Schlüsseln und Speicherung von Schlüsseln und FremdschlüsselnFremdschlüsseln
– bei tabelleninternen Beziehungabbildbar
EinbettungID/IDREFXML-Schema
Weitere BesonderheitenWeitere Besonderheiten– keine
6-18Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Generieren von XMLGenerieren von XML--Dokumenten aus Datenbanken
Generieren von XML-Dokumenten
Standard-Abbildung von Anfrage-ergebnissen
IndividuelleAbbildungs-vorschriften
Standard-Abbildung von Tabellen
Dokumenten aus Datenbanken
• Silkroute (SQL,XML-QL)• Courvoisier/ Flach (DaS)
(SQL+Muster für Ergebnis)• Shamnagunsadaram et. al. • XPERANTO • Volker Turau (DB2XML) (XSLT)• Laddad (XSLT)
• Auswahl der darzustellenden Daten durch die Datenbankanfrage
• Individuelle Transformationsregelndurch den Benutzer
• Dadurch Spezifikation der Syntax des entstehenden XML-Dokumentes
6-19Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Varianten für individuelle AbbildungsvorschriftenVarianten für individuelle Abbildungsvorschriften
1
Standard-transformation
3
Datenbank
XSLT-Stylesheet
XML-DokumentXML-Sicht
StandardisiertesXML-Dokument
Standard-transformation
XML-Anfrage-sprache
2
Erweiterte Datenbankanfrage mit Transformationsregeln
6-20Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Erweiterte DatenbankanfragesprachenErweiterte Datenbankanfragesprachen
Anteile von DatenbankAnteile von Datenbank-- und XMLund XML--AnfragespracheAnfragesprache
Erweiterung des SQLErweiterung des SQL--Dialektes um XMLDialektes um XML--OperatorenOperatoren
XML-Dokument
Erweiterte Datenbankanfrage
Datenbank
Datenbankanfrage (in SQL) zur Auswahl der darzustellenden Daten Datenbankanfrage (in SQL) zur Auswahl der darzustellenden Daten
XMLXML--Anfrage zur Bestimmung der Syntax des Zielformates Anfrage zur Bestimmung der Syntax des Zielformates (beispielsweise: CONSTRUCT / RETURN / FOR XML)(beispielsweise: CONSTRUCT / RETURN / FOR XML)
6-21Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
EErweiterte Datenbankanfragesprachenrweiterte Datenbankanfragesprachen
Ergebnis:Ergebnis:AnfrageAnfrage:<hotel><hotel><<namename>Hotel Hübner</>Hotel Hübner</namename>><<adresseadresse>><<plzplz>18119<>18119<plzplz>><<wohnortwohnort>Warnemünde</>Warnemünde</wohnortwohnort>><<strassestrasse>Seestrasse</>Seestrasse</strassestrasse>><<hausnummerhausnummer>12</>12</hausnummerhausnummer>>
</</adresseadresse>></hotel>
selectselect * * fromfrom Hotel, AdresseHotel, Adressewherewhere ((HoteladrHoteladr = = AdresseIDAdresseID))constructconstruct<hotel><hotel><<namename>{$>{$namename}</}</namename>><<adresseadresse>><<plzplz>{$>{$plzplz}<}<plzplz>><<wohnortwohnort>{$ort}</>{$ort}</wohnortwohnort>><<strassestrasse>{$>{$strassestrasse}</}</strassestrasse>><<hausnummerhausnummer>{$>{$nrnr}</}</hausnummerhausnummer>>
</</adresseadresse>></hotel></hotel>
XML-Element und XML-Attributnamen frei wählbar
</hotel>
:
Zugriff auf dieSpalten im SQL-Ergebnis
6-22Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Individuelle Abbildungsvorschriften und XMLIndividuelle Abbildungsvorschriften und XML--AnfragenAnfragen
Anfrage an die Datenbank mit XMLAnfrage an die Datenbank mit XML--Anfragesprachen ermAnfragesprachen ermööglichenglichen
Naive UmsetzungNaive Umsetzung– Kompletten Datenbankinhalt in ein XML-Dokument umsetzen– Komplettes XML-Dokument mit XML-Anfrage verarbeiten– Sehr ineffizient (XML-Dokument evtl. gross, nur Teile davon gebraucht)
Besser: XMLBesser: XML--Sicht auf die Daten in einer Datenbank Sicht auf die Daten in einer Datenbank – XML-Dokument wird nicht materialisiert (virtuell)– XML-Anfragen werden an dieses virtuelle XML-Dokument gestellt– Möglichst grosser Anteil der Verabeitung mittels nativer DB-Engine
XML-Dokument
XML-Anfrage
Datenbank XML-Sicht
6-23Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
SpeziallfallSpeziallfall: Annotationen von DTD oder XML: Annotationen von DTD oder XML--SchemaSchemaFestlegen der genauen Verbindung von DatenbankFestlegen der genauen Verbindung von Datenbank--EntitEntitääten und XMLten und XML--Elementen bzw. XMLElementen bzw. XML--AttributenAttributen
198198Hotel HHotel Hüübnerbnerwwwwww.hotel.hotel--huebnerhuebner.de.deEinzelzimmerEinzelzimmerNameNameHotelHotel--URLURL
<hotel<hotel urlurl==''www''www.hotel.hotel--huebnerhuebner.de''>.de''><<hotelnamehotelname> Hotel Hübner </> Hotel Hübner </hotelnamehotelname>><<einzelzimmereinzelzimmer> 198 </> 198 </einzelzimmereinzelzimmer>>
</hotel></hotel>
Ergebnisdokument:<<ClassMapClassMap>>
<<ElementTypeElementType Name=''hotel''/>Name=''hotel''/><<ToClassTableToClassTable>>
<Table Name=''Hotel''><Table Name=''Hotel''></</ToClassTableToClassTable>><<PropertyMapPropertyMap>>
<Attribute Name=<Attribute Name=''url''''url''/>/><<ToColumnToColumn>>
<<ColumnColumn Name=''HotelName=''Hotel--URL''/>URL''/></</ToColumnToColumn>>
</</PropertyMapPropertyMap>><<PropertyMapPropertyMap>>
<<ElementTypeElementType Name=Name=''hotelname''''hotelname''/>/>......
Datenbank:Tabelle Hotel
Abbildungsvorschrift:
Angabe der DB-Tabelle
Konstruktion des XML-Ergebnisses
Angabe des DB-Attributs
6-24Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Beispiel Beispiel SilkrouteSilkroute
SilkrouteSilkroute– Middleware zwischen RDBMS und XML-
Applikation– Entwickelt von AT&T und Uni Pennsylvania
Erzeugen einer XMLErzeugen einer XML--SichtSicht– Freie Wahl des Ausgabeformats– Sichtinhalt wird nicht materialisiert
XMLXML--Anfragen über diese XMLAnfragen über diese XML--Sicht Sicht – XML-QL– XQuery
ProblematikProblematik– Ableiten der SQL-Queries aus der
Sichtdefinition– Meist muss nicht die ganze Sicht berechnet
werden
Beispiel einer View-Definitionin Silkroute-Syntax:
constructconstruct<<viewview>>
fromfrom Adresse a, Hotel hAdresse a, Hotel hconstructconstruct<hotel><hotel>
<<namename>$h.>$h.namename</</namename>><<adresseadresse>>
<ort>$a.ort</ort><ort>$a.ort</ort><<plzplz>$a.>$a.plzplz</</plzplz>><<strassestrasse>$a.>$a.strassestrasse</</strassestrasse>><<nummernummer>$a.>$a.nrnr</</nummernummer>>
</</adresseadresse>></hotel></hotel>
</</viewview>>
6-25Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Eigenschaften individueller AbbildungsvorschriftenEigenschaften individueller Abbildungsvorschriften
Ausgabe der DatenbankAusgabe der Datenbank– vollständig oder partiell
Erforderliche InformationenErforderliche Informationen– XML-Anfrage – XSLT– Sichtdefinition
Variables AusgabeformatVariables Ausgabeformat– ja
Erhalt von DatentypenErhalt von Datentypen– gehen typischerweise verloren, wären
aber ableitbar
Speicherung von Schlüsseln und Speicherung von Schlüsseln und Fremdschlüsseln Fremdschlüsseln
– Element-Schachtelung– ID/IDREF– XML-Schema
Weitere BesonderheitenWeitere Besonderheiten– keine
6-26Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
ZusammenfassungZusammenfassung
Verschiedene Methoden existieren, um XMLVerschiedene Methoden existieren, um XML--Dokumente aus anderweitig Dokumente aus anderweitig elektronisch gespeicherten Informationen zu generierenelektronisch gespeicherten Informationen zu generieren
– Standard-Abbildung von Tabellen auf XMLStandard-XML-Dokument: festgelegtes Ausgabeformat
– Standard-Abbildung von Abfrageergebnissen auf XMLErgänzung von Datenbankabfragen um XML-FunktionalitätStandard-XML-Dokument
– Individuelle Abbildung von Tabellen und AbfrageergebnissenXML-Sichten auf DatenbankinhalteXML-Anfragesprachen arbeiten auf der Sicht
Schwerpunkt dabei relationale und objektrelationale DatenbankenSchwerpunkt dabei relationale und objektrelationale Datenbanken