XML, XML-DTDs, und XML Schema

Größe: px
Ab Seite anzeigen:

Download "XML, XML-DTDs, und XML Schema"

Transkript

1 Eidgenössische Technische Hochschule Zürich Swiss Federal Institute of Technology Zurich Institut für Informationssysteme Dr. C. Türker XML und Datenbanken WS 03/04 Übung 3 Beispiellösung XML, XML-DTDs, und XML Schema Aufgabe 1: Gültige XML-Dokumente Gegeben sei die folgende DTD Bookstore.dtd. <!ELEMENT bookstore (book)*> <!ELEMENT book (title, author+, price?, review*)> <!ATTLIST book genre CDATA #REQUIRED> <!ELEMENT title <!ELEMENT author (name (firstname, lastname))> <!ELEMENT price <!ELEMENT name <!ELEMENT firstname <!ELEMENT lastname <!ELEMENT review (reviewer, reviewtext)> <!ATTLIST review date CDATA #IMPLIED> <!ELEMENT reviewer (name (firstname, lastname))> <!ELEMENT reviewtext ANY> Überprüfen Sie, ob das folgende XML-Dokument wohlgeformt und gültig bezüglich dieser DTD ist. Ändern Sie gegebenenfalls das Dokument so ab, dass es sowohl wohlgeformt als auch gültig ist. <!DOCTYPE bookstore SYSTEM "Bookstore.dtd"> <bookstore> <title>data on the Web: From Relations to Semistructured Data and XML. </title> <name>serge</name> <name>abiteboul</name> 1

2 <firstname>peter</firstname> <lastname>buneman</lastname> <name>dan Suciu</name> <name>torsten Grabs</name> Ich habe das Buch gelesen und es zeigt einige Konzepte sehr schön. <emph>allerdings ist es schon etwas älter.</emph> <name>ein Student</name> Wenn <name>herr Türker</name> davon <it>sooo</it> begeistert ist, dann muss man das ja gelesen haben. <price>20,00 <currency>chf</currency></price> <title>xml und Datenbanken</title> <name>m. Klettke und H. Meyer</name> <name>can Türker</name> Viele Aspekte der Vorlesung werden von diesem Buch abgedeckt. </bookstore> Das Dokument ist schon wohlgeformt, gültig bezüglich der vorgegebenen DTD ist dann das 2

3 nachfolgend angegebene Dokument. XML-Kommentare im Dokument erläutern die wichtigsten Anpassungen. <!DOCTYPE bookstore SYSTEM "Bookstore.dtd"> <bookstore> <title> Data on the Web: From Relations to Semistructured Data and XML. </title> <!-- keine mehrfachen Vorkommen des name-elements in author --> <firstname>serge</firstname> <lastname>abiteboul</lastname> <firstname>peter</firstname> <lastname>buneman</lastname> <name>dan Suciu</name> <!-- Dokumentordnung: price muss nach author vor reviews kommen --> <price> 20,00 CHF </price> <name>torsten Grabs</name> <!-- in ANY sind nur Sub-Elemente erlaubt, die in der DTD definiert sind --> Ich habe das Buch gelesen und es zeigt einige Konzepte sehr schön. Allerdings ist es schon etwas älter. <name>ein Student</name> <!-- in ANY sind nur Sub-Elemente erlaubt, die in der DTD definiert sind --> Wenn <name>herr Türker</name> davon SOOO begeistert ist, dann muss man das ja gelesen haben. 3

4 <title>xml und Datenbanken</title> <name>m. Klettke und H. Meyer</name> <name>can Türker</name> Viele Aspekte der Vorlesung werden von diesem Buch abgedeckt. </bookstore> Aufgabe 2: Entwurf von XML DTDs Abbildung 1: Modell einer Auktionsdatenbank in RMSDM-Notation Setzen sie das Modell der Auktionsdatenbank aus Abbildung 1 möglichst genau in eine XML- DTD um. Welche Sachverhalte konnten Sie in der DTD nicht umsetzen? Die folgende DTD gibt das RMSDM-Modell aus Abbildung 1 wieder. Nicht modelliert werden konnte die Sub-Typ-Beziehung zwischen auction und closed auction. Hierzu müsste man statt XML DTDs zu verwenden auf XML Schema zurückgreifen, das die Modellierung von 4

5 Subtyp-Beziehungen unterstützt. Neu hinzugekommen ist auch die Dokumentordnung in den gültigen XML-Dokumenten. Das RMSDM-Modell hat beispielsweise nicht explizit vorgesehen, dass address bei einer Person vor balance erscheint. <!ELEMENT store (name, persons, auctions)> <!ELEMENT name <!ELEMENT persons (person)*> <!ELEMENT auctions (auction closed_auction)*> <!ELEMENT person (name, address, balance?)> <!ATTLIST person pid ID #REQUIRED> <!ELEMENT auction (bid*, item)> <!ELEMENT closed_auction (bid*, item, price)> <!ATTLIST closed_auction buyer IDREF #REQUIRED> <!ELEMENT address <!ELEMENT balance <!ELEMENT price <!ELEMENT bid <!ATTLIST bid bidder IDREFS #REQUIRED> <!ELEMENT item Aufgabe 3: XML Schema Setzen Sie die folgende XML DTD für eine Buch-Datenbank möglichst genau nach XML Schema um. <!ELEMENT bookstore (book)*> <!ELEMENT book (title, author+, price?)> <!ATTLIST book genre CDATA #REQUIRED> <!ELEMENT title <!ELEMENT author ( name (firstname, lastname))> <!ELEMENT price <!ELEMENT name <!ATTLIST price currency (CHF EUR USD) #REQUIRED> <!ELEMENT firstname <!ELEMENT lastname Eine Möglichkeit, die DTD nach XML Schema umzusetzen ist die folgende: <?xml version="1.0"?> <xsd:schema xmlns:xsd=" <xsd:annotation> 5

6 <xsd:documentation xml:lang="en"> Bookstore Example, ETH Zurich, 2001 </xsd:documentation> </xsd:annotation> <xsd:element name="bookstore" type="bookstore"/> <xsd:complextype name="bookstore"> <xsd:sequence> <xsd:element name="book" type="book" minoccurs= 1 maxoccurs="unbounded"/> </xsd:sequence> <xsd:complextype name="book"> <xsd:sequence> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="author" minoccurs= 1 maxoccurs="unbounded"/> <xsd:element name="price" minoccurs= 0 > <xsd:complextype> <xsd:simplecontent> <xsd:extension base="xsd:decimal"> <xsd:attribute name="currency" type="currency"/> </xsd:extension> </xsd:simplecontent> </xsd:element> </xsd:sequence> <xsd:attribute name="genre" type="genre"/> <xsd:simpletype name="genre"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="autobiography"/> <xsd:enumeration value="novel"/> <xsd:enumeration value="philosophy"/> </xsd:restriction> </xsd:simpletype> <xsd:complextype name="author"> <xsd:choice> <xsd:element name="name" type="xsd:string"/> <xsd:group ref="fullname"/> </xsd:choice> <xsd:group name="fullname"> <xsd:sequence> <xsd:element name="firstname" type="xsd:string"/> 6

7 <xsd:element name="lastname" </xsd:sequence> </xsd:group> type="xsd:string"/> <xsd:simpletype name="currency"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="chf"/> <xsd:enumeration value="eur"/> <xsd:enumeration value="usd"/> </xsd:restriction> </xsd:simpletype> </xsd:schema> 7

Klausur zur Vorlesung Einführung in XML

Klausur zur Vorlesung Einführung in XML Nachname: Klausur zur Vorlesung Einführung in XML MUSTERLÖSUNG Vorname: Matr.Nr.: Studiengang: Bearbeiten Sie alle Aufgaben! Hilfsmittel sind nicht zugelassen. Die Bearbeitungszeit ist 90 Minuten. Aufgabe

Mehr

2. Klausur Web-basierte Informationssysteme SS 2016

2. Klausur Web-basierte Informationssysteme SS 2016 FAKULTÄT FÜR ELEKTROTECHNIK, INFORMATIK UND MATHEMATIK DR. THEODOR LETTMANN 2. Klausur Web-basierte Informationssysteme SS 2016 Name, Vorname: Matrikelnummer: MITTWOCH, 28. SEPTEMBER 2016, 09-11 UHR Bitte

Mehr

DTDs und XML- Schemata

DTDs und XML- Schemata Wie geht es weiter? DTDs und XML- Schemata letzte Woche Syntax wohlgeformter e Namensräume Festlegung der Semantik von XML-Elementen heute Beschreibung von Dokument-Typen DTDs und XML-Schema anhand eines

Mehr

Klausur zur Vorlesung Einführung in XML

Klausur zur Vorlesung Einführung in XML Klausur zur Vorlesung Einführung in XML MUSTERLÖSUNG Nachname: Vorname: Matr.Nr.: Studiengang: Bearbeiten Sie alle Aufgaben! Hilfsmittel sind nicht zugelassen. Die Bearbeitungszeit ist 120 Minuten. Aufgabe

Mehr

Definition von Datentypen mit XML- Schemata

Definition von Datentypen mit XML- Schemata Lernziele Definition von Datentypen mit XML- Schemata Wie wird die Element-Struktur mit einem XML-Schemata deklariert? Wie werden Attribute mit einem XML-Schema Deklariert? Was sind einfache und komplexe

Mehr

XML Schema Import for the Pathfinder XQuery Compiler

XML Schema Import for the Pathfinder XQuery Compiler XML Schema Import for the Pathfinder XQuery Compiler Bachelor s Thesis zur Erlangung des Grades Bachelor of Science Jan Rittinger Universität Konstanz November 2003 2 INHALTSVERZEICHNIS Inhaltsverzeichnis

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

Mehr

Konzeptionelle Modellierung von XML-Dokumenttypen

Konzeptionelle Modellierung von XML-Dokumenttypen Konzeptionelle Modellierung von XML-Dokumenttypen Rainer Eckstein Institut für Informatik LFE DBIS Humboldt-Universität zu Berlin Rainer Eckstein 1 Konzeptionelle Modellierung von XML: XML (extensible

Mehr

XML Schema vs. Relax NG

XML Schema vs. Relax NG XML Schema vs. Relax NG p. 1/2 XML Schema vs. Relax NG Semistrukturierten Daten 1 Präsentation der Gruppe 2 XML Schema vs. Relax NG p. 2/2 Wozu XML Schema? W3C Empfehlung zur Definition von XML-Dokumentstrukturen

Mehr

<< Java Architecture for XML Binding >>

<< Java Architecture for XML Binding >> JAXB > 1 Lernziele JAXB Übersicht JAXB Prinzip von Data Binding verstehen Java Klassen aus XSD erzeugen Java Objekte aus XML marschallen bzw. unmarschallen Customized

Mehr

Repräsentation von Struktur

Repräsentation von Struktur Übersicht Einführung Document Type Definitions XML Schema Weitere Strukturbeschreibungssprachen Ziel: Kriterien Nur Jedes Dokument Thema Einführung Was machen Strukturbeschreibungen? Definition einer Menge

Mehr

(a) Erstellen Sie für die Web-Veröffentlichung eines Artikels die Meta-Informationen nach dem Dublin-Core-Standard.

(a) Erstellen Sie für die Web-Veröffentlichung eines Artikels die Meta-Informationen nach dem Dublin-Core-Standard. Web-Technologie 22. Mai 2013 Übungsblatt 3 WT:III Bis zum 28.05.2013 sind Lösungen zu folgenden Aufgaben abzugeben: 4, 6, 7, 8. Aufgabe 1 : XML (a) Erstellen Sie für die Web-Veröffentlichung eines Artikels

Mehr

Musterlösung Übungsblatt 14

Musterlösung Übungsblatt 14 Übungen zur Modellierung, Wintersemester 2007/08 Ingo Frommholz (LF 138) Sprechstunde Donnerstag, 15-16 Uhr [email protected] Musterlösung Übungsblatt 14 Aufgabe 29: Wohlgeformtheit und Validität

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

3. Generische Strukturierung von XML-Dokumenten

3. Generische Strukturierung von XML-Dokumenten 3. Generische Strukturierung von XML-Dokumenten XML für Medientechnologen Dr. E. Schön Wintersemester 2016/17 Seite 52 Strukturierung von XML unstrukturiert semistrukturiert stark strukturiert Text, Präsentation,

Mehr

Tutorial 3 Einführung in XML

Tutorial 3 Einführung in XML Tutorial 3 Einführung in XML 1 Stefan Huster In diesem Tutorial lernen Sie die Grundlagen von XML kennen. Sie werden lernen, wie XML- Dokumente aufgebaut sind und wie ihre Struktur formal definiert werden

Mehr

XSD-Datei(en) Inhalt. Referenzierung eines Schemas ohne Target Namespace VU Semistrukturierte Daten 1. XML Schema

XSD-Datei(en) Inhalt. Referenzierung eines Schemas ohne Target Namespace VU Semistrukturierte Daten 1. XML Schema XML Schema 181135 VU Semistrukturierte Daten 1 XML Schema 18.10.2005 Reinhard Pichler XML Schema Description (XSD) ist selbst als XML Dokument dargestellt es gibt auch DTD für XSD W3C Recommendation 2001

Mehr

Mario Jeckle. XML Schema

Mario Jeckle. XML Schema Mario Jeckle XML Schema Inhaltsübersicht Warum? benötigt XML noch eine Sprache zur Grammatikdefinition Wozu? kann XML-Schema eingesetzt werden Wie? funktioniert XML-Schema Was? nützt Ihnen der Einsatz

Mehr

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

Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen. Alexander Hilliger von Thile - REI/ID Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen Alexander Hilliger von Thile - REI/ID Die Rolle von XML Markup (DQ) < < > > Markup DQ application server < < > Markup application

Mehr

Nonstandard Datenbanken

Nonstandard Datenbanken Prof. Dr. V. Linnemann Nils Höller Universität zu Lübeck Institut für Informationssysteme Lübeck, den 02. Februar 2009 Nonstandard Datenbanken Wintersemester 2008/2009 13. Übungsblatt: Probe-Klausur Hinweise:

Mehr

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

Eine Dokumenttypdefinition lässt sich im Kopfbereich des XML-Dokumentes (interne DTD) oder in einer separaten Datei formulieren (externe DTD). IT-Zertifikat: Daten- und Metadatenstandards XML: wohlgeformt vs. gültig XML-Dokumente können gültig sein. Gültige (valide) Dokumente müssen strengeren Anforderungen bzgl. Ihrer Struktur genügen. Diese

Mehr

DTD: Syntax-Zusammenfassung

DTD: Syntax-Zusammenfassung DTD: Syntax-Zusammenfassung Dokumenttyp-Deklarationen Interne Teilmenge ]> Externe

Mehr

Gliederung. Service Oriented Architecture - XML Technologies. 1 von 11

Gliederung. Service Oriented Architecture - XML Technologies. 1 von 11 1 von 11 Gliederung Extensible Markup Language (XML) Wofür steht XML? Wie sieht XML aus? Dokumentgliederung Elemente Attribute Entity-Referenzen Vordefinierte Entities Verarbeitungsanweisungen (processing

Mehr

Document Type Definition (DTD)

Document Type Definition (DTD) Document Type Definition (DTD) 1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken Inhalt des Moduls: Grundlagen Elemente, Attribute Komplexe

Mehr

<B1>Skript</B1> Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016

<B1>Skript</B1> Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016 Klaus Westermann Skript Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016 Nr.: 12 Attribute, Entities B1 Skript "Auszeichnungssprachen" von Klaus Westermann ist lizenziert unter

Mehr

XML-Schema. Einordnung

XML-Schema. Einordnung Einordnung Es gab/gibt eine Reihe von Erweiterungen und Vorschlägen hinsichtlich neuer Schemasprachen. Die größte praktische Bedeutung hat der W3C-Standard XML Schema Definition Language (XSD) kurz:xml-schema.

Mehr

Seminar XML und Datenbanken. Thema: Workflow

Seminar XML und Datenbanken. Thema: Workflow Seminar XML und Datenbanken Thema: Workflow Betreuer: Markus Bon Bearbeiter: Kristof Barklage Gliederung (1) Grundlagen (2) Workflow Management Coalition (3) XML Process Definition Language (XPDL) (4)

Mehr

Ergänzung zur Spezifikation OSCI 1.2-

Ergänzung zur Spezifikation OSCI 1.2- Ergänzung zur Spezifikation OSCI 1.2- Effiziente Übertragung großer Datenmengen 2017 Koordinierungsstelle für IT-Standards Dokumentenversion 1.0 Änderungsnachweise Version Freigabedatum Autor Kapitel Änderungen

Mehr

XML Eine Einführung XML Dokumente Erstellen

XML Eine Einführung XML Dokumente Erstellen XML Eine Einführung XML Dokumente Erstellen Gültige XML Dokumente Erstellen XML (C) J.M.Joller 1 Lernziele Nach dem Durcharbeiten dieser Lektion sollten Sie in der Lage sein Zu definieren, was man unter

Mehr

Aufgaben eines Codegenerators

Aufgaben eines Codegenerators Aufgaben eines Codegenerators Modell einlesen Modell verifizieren Modell transformieren Quellcodegenerierung heute!! Andreas Schmidt XMI / Zugriff auf XML 1/17 XML Input Aktueller Input unseres Generators

Mehr

1. Klausur Web-basierte Informationssysteme SS 2010

1. Klausur Web-basierte Informationssysteme SS 2010 Fakultät für Elektrotechnik, Informatik und Mathematik Dr. Theodor Lettmann 1. Klausur Web-basierte Informationssysteme SS 2010 Donnerstag, 29. Juli 2010, 09-11 Uhr Name, Vorname:..............................................................

Mehr

XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so:

XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so: XML 1. Worum geht es? XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so: XML definiert eine Syntax, um strukturierte Datenbestände jeder Art mit einfachen,

Mehr

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

1 Was ist XML? Hallo XML! Kommentare in XML 52 Inhalt Vorwort 13 Einleitung und Ziel des Buches 15 1 Was ist XML? 21 1.1 XML ein Definitionsversuch 21 1.2 XML und HTML wo sind die Unterschiede? 22 1.3 XSLT 24 1.4 Einsatzgebiete von XML und XSLT 25

Mehr

2. Einführung in Datenbanken und XML

2. Einführung in Datenbanken und XML 2. Einführung in Datenbanken und XML Was ist XML? 2. Einführung in Datenbanken und XML XML steht für extensible Markup Language durch das W3C entwickeltes Dokumentenformat einfach, flexibel, von SGML abgeleitet

Mehr

XML Schema-Sprachen 04

XML Schema-Sprachen 04 XML Schema-Sprachen 04 G. Görz, J. Schneeberger Lehrstuhl Informatik 8 (KI) [email protected]! [email protected]! 1 Übersicht XML Schema-Sprachen Exkurs: Extended Backus-Naur

Mehr

Konzeptpapier Schnittstelle zwischen TischtennisLive und MKTT

Konzeptpapier Schnittstelle zwischen TischtennisLive und MKTT Konzeptpapier Schnittstelle zwischen TischtennisLive und MKTT Version 1.0 http://www.web4sport.de http://www.tischtennislive.de http://www.henkesoftware.de Inhaltsverzeichnis 1 Ausgangssituation 3 2 Spielerdaten

Mehr

Modell/Metamodell. Generated Source Code. Generator. Model. Fakultät für Informatik und Wirtschaftsinformatik MDSD - SS 2014

Modell/Metamodell. Generated Source Code. Generator. Model. Fakultät für Informatik und Wirtschaftsinformatik MDSD - SS 2014 Modell/Metamodell Model Generator Generated Source Code Andreas Schmidt Modellierung 1/18 Modell Modell beschreibt die zu generierende Anwendung Modell ist... abstrakt kompakt formal Modell kann in unterschiedlichen

Mehr

Michel Messerschmidt 2004-01-15. Diplomarbeit. Entwurf einer Sprache zur Klassifizierung von Malware-Vorfällen

Michel Messerschmidt 2004-01-15. Diplomarbeit. Entwurf einer Sprache zur Klassifizierung von Malware-Vorfällen Michel Messerschmidt 2004-01-15 Diplomarbeit Entwurf einer Sprache zur Klassifizierung von Malware-Vorfällen Übersicht Ausgangssituation Reportformat des avtc Reportformate von Antivirus-Produkten Konzept

Mehr

XML-Datenmodellierung und Web-Services

XML-Datenmodellierung und Web-Services XML-Datenmodellierung und Web-Services XML Datenmodell Schemabeschreibungssprachen Anfragesprachen: XPath und XQuery Web-Services Überblick WSDL UDDI SOAP XML: Extensible Markup Language Datenmodell Schemabeschreibung

Mehr

Datenaustauschformate. Datenaustauschformate - FLV

Datenaustauschformate. Datenaustauschformate - FLV Datenaustauschformate FLV-Dateien CSV-Dateien XML-Dateien Excel-Dateien Access- Backupdateien Günter M. Goetz 108 Datenaustauschformate - FLV Fixed Length Values Repräsentation einer Tabelle als 'Flat-File'

Mehr