Semistrukturierte Datenmodelle. XML Datenmodelle. XML Infoset. OEM Beispielbaum. Document InfoItem. Beispiel

Ähnliche Dokumente
Fachhochschule Wiesbaden - Fachbereich DCSM. XML Information Set.

XML Informationsmodelle

2. XML 2.1 XML 1.0 und XML Schema. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit

Polymorphe Typen in OEM (1) OEM. Polymorphe Typen in OEM (2) Object Exchange Model (OEM)

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen

Konzeptionelle Modellierung von XML-Dokumenttypen

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

Wieso speichert man XML? XML Repositories. Klassische Anforderungen an DB (nach Kemper / Eickler) Übersicht. Komprimierung.

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

Erik Wilde XML Schema

IN A NUTSHELL. Elliotte Rusty Harold & W, Scott Means. Deutsche Übersetzung von Kathrin Lichtenberg & Jochen Wiedmann O'REILLY*

XML-Technologien. XML-Parser. Florian Raith Hochschule München Fakultät für Informatik und Mathematik am 04. November 2010

XML Grundlagen Teil I

XML Vorlesung FHA SS

XML-Schema Datentypen

PRÜFUNG IN SEMI-STRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

XML Schema vs. Relax NG

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79

XML Schemasprachen. Übersicht und Einordnung. Übersicht. ! DTDs und XML Schema. ! Schemasprachen als Konzept. ! Schemasprachen selbstgemacht

2. Einführung in Datenbanken und XML

Klaus Schild, XML Clearinghouse Aufbau von XML- Dokumenten

Semistrukturierte Daten

Wirtschaftsinformatik (PWIN) 5. Mentorium. Wirtschaftsinformatik (PWIN), SS2010, Professur für Mobile Business & Multilateral Security 1

Eine Dokumenttypdefinition lässt sich im Kopfbereich des XML-Dokumentes (interne DTD) oder in einer separaten Datei formulieren (externe DTD).

XML, XML-DTDs, und XML Schema

... MathML XHTML RDF

Semistrukturierte Daten

Anfragen an XML-Dokumente mit XPath

DTDs und XML-Schema. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

Ruhr.pm XML-Daten verarbeiten mit XML::LibXML Autor: Datum:

Einführung in XML Extensible Markup Language

Projektseminar "Texttechnologische Informationsmodellierung"

PRÜFUNG IN SEMI-STRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

XML 1. Einführung, oxygen. Ulrike Henny. IDE Summer School 2013, Chemnitz

Gliederung / Inhaltsüberblick

XQuery 2013 S Seite 1 h_da S

IT-Zertifikat: Daten- und Metadatenstandards

XML Schema 2016 S h_da S Seite 1

Berner Fachhochschule Software Schule Schweiz JDOM. Beatrice Amrhein. Oktober 06

XML Vorlesung ETHZ SS XML Vorlesung ETHZ, Sommersemester

Logische Dokumentenstruktur mit SGML und XML

Was ist SGML. - welche Auszeichnungen (Mark up) sind erlaubt? - welche Auszeichnungen sind notwendig?

Übungsbeispiel 1 Erstellen Sie eine Homepage für Ihre Gruppe in XML und überprüfen Sie die Wohlgeformtheit in einem Editor/Browser.

Semantic Web Technologies I

XML DTD und Schema von Thomas Mangold

DTDs und XML- Schemata

XML. Steffen Staab ISWeb Informationssysteme & Semantic Web

VU Semistrukturierte Daten 2. XQuery (Teil 2) Inhalt

XML-Praxis. XPath. Jörn Clausen.

XML Verarbeitung mit einer in Haskell eingebetteten DSL. Manuel Ohlendorf (xi2079)

1 Was ist XML? Hallo XML! Kommentare in XML 52

XML und Dokumentenmanagement

Namespaces. Namensräume...

2 XML-Basiskonzepte. 2.1 XML-Dokumente

Hauptseminar Informatik. Die Strukturierung von XML-Dokumenten mit Hilfe von DTDs und XML Schema

Document Type Definition (DTD)

Dr. Thomas Meinike Hochschule Merseburg

Präsentation zum Thema XML Datenaustausch und Integration

Java: Kapitel 9. Java und XML. Programmentwicklung WS 2008/2009. Holger Röder

03 XML Grundlagen. Manuel Burghardt Lehrstuhl für Medieninformatik

Entwicklung eines Tutorials für XQuery

Inhalte. Stylesheet-Wurzel Vorlagen Ausgabe Leerraum Funktionen Kontrollanweisungen & Techniken Sortierung Nummerierung

XML. Basis Syntax. Basis Syntax. XML (extensible Markup Language)

Seminar: XML und intelligente Systeme

Synchronisation auf XML-Dokumenten

XML Schema 2012/2013 S Seite 1 h_da W

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Inhalt. 1 Einleitung Warum dieses Buch? Der rote Faden Danksagung URL zum Buch 4. TEIL I Einführung 5

Sven Krosse

X-Technologien. XML and Friends. Jörn Clausen 9. Juli 2001

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis

Tobias Hauser. XML-Standards. schnell+kompakt

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Musterlösung des Übungsblattes 2

XML Path Language (XPath)

Dokumentverarbeitung

Java und XML 2. Java und XML

Semistrukturierte Daten

Textauszeichnung mit XML

Speicherung von XML in (objekt-)relationalen Datenbanken. Burkhard Schäfer

Kapitel 8: Semistrukturierte Datenmodelle

Inhaltsverzeichnis Seite 1. Inhaltsverzeichnis. Ein I.T.P.-Fachbuch

Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen. Alexander Hilliger von Thile - REI/ID

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Seminarphase PG 402 Thema: Semantic Web Autor: Phillip Look

Ausgangspunkt. Datenintegration. Ziel. Konflikte. Architekturen. Transparenz

RDF und SPARQL. Kursfolien. Karin Haenelt

XML Schema: Validieren statt Programmieren

XML-Technologien

XML-QL. Querysprachen für XML. Semistrukturierte Datenmodell und XML Datenmodell. Beispiel

XML-Technologie: Grundlegende Syntax

Aufbau von XML- Dokumenten

XSLT 2015/2016 S Seite 1 h_da W

XML und.net. Proseminar Objektorientiertes Programmieren mit.net und C# Tuan Duc Nguyen. Institut für Informatik Software & Systems Engineering

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009

Transkript:

XML Datenmodelle Web Informationssysteme Wintersemester 2002/2003 Donald Kossmann Semistrukturierte Datenmodelle Beispiel: OEM (Objekt Exchange Model) Repräsentiere Dokument als annotierten Baum Knoten werden mit Ids, n, Werten annotiert Kanten werden mit Tagnamen annotiert Referenzen (IDREFs) werden mit Kanten repräsentiert Entwickelt 1995, vor XML! Modell sieht keine Ordnung vor! (Wieso?) Modell sieht keinen Mixed Content vor! (Wieso?) Modell kann XMLmäßig erweitert werden Attribute, Kommentare, PIs, Ordnung,... Siehe Lore Projekt in Stanford (Jenifer Widom) complex object OEM Beispielbaum Bib &o1 paper paper book &o12 &o24 &o29 page year http publisher &o43 &25 &96 1997 last firstname firstname lastname first lastname atomic object &243 &206 Serge Abiteboul Victor 122 133 Vianu XML Infoset Ordne zu jedem Information Item Properties zu Information Items ~ Knoten eines OEM Baums Es gibt insgesamt 11 Information Items Document, Element, Attribute,... Es gibt > 10 Properties, base URI, version, namespace,... Properties bestimmen ein InfoItem eindeutig Verschiedene InfoItems haben andere Properties Werte von Properties werden durch Schemavalidierung beeinflusst (Für uns nur Durchgangsstation für Xquery DM.) Beispiel <?xml version = 1.0?> <book price = 69.95 curr = EUR > <>Die wilde Wutz</> <>D.A.K.</> </book> Document InfoItem > Liste von InfoItems InfoItems der PIs, Comments, Wurzelelement Im Beispiel nur InfoItem von [book] Document Element > Element InfoItem Im Beispiel InfoItem von [book] Notation, Unparsed entitities:... Hier leer Base URI: URI des Dokumentes Vorsicht bei streaming data (z.b. SOAP Nachricht) Standalone: leer (ansonsten yes oder no ) Version: im Beispiel 1.0 Encoding scheme: default UTF8 1

Element InfoItem (z.b. [book]) space : falls Elementtype zu NS geh. im Beispiel leer Local name: im Beispiel book Prefix: im Beispiel leer : im Beispiel: [] und [] : im Beispiel: [price] und [curr] space : lokale NS Definitionen Im Beispiel leer Inscope spaces: anwendbare NS Defs,... BaseURI:... : im Beispiel: das Dokument InfoItem Element InfoItem [] Title hat als children ein Char Info Item (Text) (Ansonsten keine Überraschungen) Das Char Info Item hat die folgenden Properties Wert des Textes (Wilde Wutz) in ISO 10646 Code Whitespace handling des Elementes (yes or no) ist im Beispiel [] Attribute InfoItem (z.b. [price]) space, local name, prefix:... Normalized value: Wert nach Normalisierung Im Beispiel 69.95 Attribute : Nur DTD n erlaubt Im Beispiel: PCDATA References: Bei IDREFs, die referenzierten InfoItems Im Beispiel: leer Owner Element: Im Beispiel [book] Xpath + Xquery Datenmodell Erweiterung vom XML InfoSet Formale Grundlage: ordered trees (OEM + Ordnung) Entwickelt für Ergebnisse von Anfragen Anstatt 11 InfoItems 7 Knotentypen Erlaubt Sequenzen Wichtig für Ergebnisse von Anfragen Hat das Konzept eines Fehlers (ERROR) Unterstützt Identität eines Knotens (z.b. für Vergleiche) Ordnung von Knoten unterschiedlicher Dokumente Wesentlich eleganter als InfoSet Voll kompatibel mit XML Schema; eigenes Typsystem Vorsicht!!! Noch kein Standard. Letzter Stand: 8/02 Instanzen des Datenmodells Jede Instanz ist eine Sequence von Items Sequences sind Listen: Notation ( i1 i2... ) Sequences sind immer flachgeklopft ( 0 ( 1 2 ) 3 ) = ( 0 1 2 3 ) Items sind entweder Knoten oder Atomic Values Es gibt 7 Arten von Knoten (siehe später) Atomic Values sind Instanzen eines primitiven (oder abgeleiteten) n: keine Listen! Sequences mit einem Item gleich Item ( item ) = item Erstes Item einer Sequence hat den Index 1. (Nicht 0!) Knoten und Accessors 7 n von Knoten Document, Element, Attribute, space Processing Instruction, Comment, Text (Unexpanded Entity Reference, DTD, Unparsed Entity, Notation InfoItems fehlen) Jeder Knoten hat 11 Accessors (~ Property) Nodekind: z.b. Document : z.b. Book StringValue, typedvalue: siehe später BaseURI,,,, space: wie IS : Instanz des Typsystems UniqueID: siehe später Jeder Knoten hat Constructoren 2

Beispiel <?xml version = 1.0?> <bo:book price = 69.95 lang = DE EN xmlns:bo = http://www.book.com > <>Die wilde Wutz</> <>D.A.K.</> <>N.N.</> </bo:book> Annahme: Schema in www.book.com fordert unqualifizierte Attribute und Subelemente Document Node Nodekind document BaseURI http://www.amazon.com StringValue whitespace dvalue ( [book] [whitespace]) spaces UniqueID (?) Element Node: [book] Element Node: [] Nodekind element Nodekind element http://www.book.com : book BaseURI http://www.amazon.com BaseURI http://www.amazon.com StringValue whitespace StringValue Die wilde Wutz dvalue () dvalue ( Die wilde Wutz ) ( [document] ) ( [book] ) ( [] [1] [2] ) ( [text] ) ( [price] [lang] ) ( ) spaces ( [bo] ) spaces ( ) any oder Book.com:Book (PSV) any oder xsd:string (PSV) UniqueID ( 3 ) UniqueID ( 7 ) Attribute Node: [lang] space Node: [bo] Nodekind attribute Nodekind namespace lang bo BaseURI BaseURI StringValue DE EN StringValue http://www.book.com dvalue ( DE EN ) oder ( DE EN ) (PSV) dvalue ( [book] ) spaces spaces anysimple oder xsd:string* (PSV) UniqueID ( 5 ) UniqueID (?) 3

String Value vs. d Value Daumenregel: String Value entsteht durch Concatenation der String Values der Text Kinder Whitespace steckt in Text Knoten (s. [book]) String Value, > d Value Durch Schemavalidierung!!! Beispiele DE EN, anysimple > ( DE EN ) DE EN, xsd:string* > ( DE EN ) Allerdings kann man vom d Value nicht auf den String Value schließen. Wieso??? Node ID, Equality, Order DM ordnet jedem Knoten eine ID zu ID bestimmt den Knoten eindeutig Vergleiche in Xquery verwenden somit die ID ID für totale Ordnung von Knoten Innerhalb eines Dokumentes: prefix Zwischen Dokumenten: Implementationsabhängig aber konsistent Wenn Knoten k1 von Dokument d1 kleiner als Knoten k2 von Dokument d2, dann sind alle Knoten von Dokument d1 kleiner als alle Knoten von d2 DM in Baumrepräsentation Typsystem 1. document Angelehnt an XML Schema Komplexe n 2. Text (WS) 3. book 4. namespace 6. lang 8.... Simple n any ist die Mutter aller n Inhalt von Elementen: Subtyp von any Inhalt von Attributen: Subtyp von anysimple Simple vs. Atomic 5. price 7. Text (WS) 9. Text Krücke gegen List n Error Fazit War bis August noch eine gültige Instanz des Datenmodells und gültiges itemeiner Sequence ( 1 2 3 ERROR ) = ( ERROR ) Ist jetzt verschwunden...??? OEM: saubere Theorie, idealisiert semistrukt. Nicht mächtig genug für XML In der akademischen Welt geblieben InfoSet: Einfaches Prinzip Nicht ausreichend für Anfragebearbeitung Xpath/Xquery Datenmodell Saubere Theorie aus der OEM Tradition Klares Mapping zum InfoSet (s. Übung) Kein klares Mapping zu DOM (s. Kapitel 5) (Wir halten uns an Xpath/Xquery Datenmodell) 4

Übungsaufgaben Betrachten Sie eine (komplizierte) book Instanz (aus Kapitel 1) und repräsentieren Sie diese in den drei Datenmodellen. Validieren Sie die book Instanz mit einem book Schema (nehmen Sie eine komplizierte Version mit Defaultwerten und spaces) und repräsentieren Sie die validierte Instanz in den drei Datenmodellen. Wie kann man generell das InfoSet auf das Xquery DM abbilden und umgekehrt? Gehen Sie die wichtigsten Properties der folgenden InfoItems durch: Document, Element, Attribute. 5