Semistructured Data and XML
Prof. Dr. Wolfgang May
Date and Time:
- Wednesday 10-12 ct, IFI SR 2.101
- Friday 14-16 ct, IFI SR 2.101
Lecture and Exercises mixed (see announcements on this page)
Module M.Inf.1141, 4 SWS, 6 ECTS.
The module's home is the MSc studies in
Applied CS. It can also be credited in the BSc studies in Applied CS
(as "Vertiefung Softwaresysteme und Daten"),
and in several other studies:
BSc/MSc Wirtschaftsinformatik, Mathematik (BSc/MSc), Teaching/2-Fach-Bachelor, PhD GAUSS, ...
One of the most important facts that lead to the overall success of XML
is that the "XML world" combines a lot of already known concepts in an
optimal way for coping with a broad spectrum of requirements.
The course will first review some of these preceding (partially even historic)
concepts (network database model, relational databases, object-oriented
databases) and the integration of data and metadata (SchemaSQL). Then,
the idea of "semistructured data" is introduced by showing early
representatives that helped to shape the XML world (F-Logic, OEM).
In the main part, XML is presented as a data model and a markup-meta-language,
and the current languages of the concepts of the XML world are systematically
investigated and applied: DTD, XPath, XQuery, XSLT, XLink, XML Schema,
The lecture uses the geographical sample database "Mondial"
in its XML version for illustrations.
For practical exercises, the XML software is installed in the IFI CIP
The software playground page can be found
the XPath/XQuery/XSLT Web interface is available
The sample code fragments can be found in the CIP pool under
Dates & Topics
Administrativa, Overview, Introductory Presentation "XML":
Introductory Presentation "XML" (Cont'd)
General concepts and notions of the database area.
Slides: Relational Model
Earlier database models, concepts and extensions:
Basic Concepts and Notions; example and recall: relational model.
Slides: data models
- 22.4.: Earlier database models, concepts and extensions:
Network data model, Object-Oriented Model
- Some references to read about database history (optional):
- 27.4..: "History" continued: Object-Oriented Model/ODMG
- 29.4.: "History" continued - academic prototypes: SchemaSQL
- 4.5.: "History" continued - academic prototypes: early semistructured data models (Tsimmis/OEM/F-Logic)
Slides: early semistructured data models
- 6.5.: Tsimmis/OEM/F-Logic (cont'd).
XML: data model, language, DTDs etc.
- 11.5.: XML: data model, language, DTDs etc.
Slides: XML basics
- 13.5.: XML: data model, language, DTDs etc. (cont'd)
Exercise sheet 1: XML & DTD
(solutions will be discussed during the subsequent lectures ...)
- 18.5.: XML (cont'd)
- 20.5.: XML (cont'd)
- 25.5.: Discussion of Exercise sheet 1;
Solution (revised 25.5. afternoon).
- 27.5.: XPath: navigation and addressing language for XML
- 1.6.: XPath (cont'd)
Exercise sheet 2: XPath
- 3.6.: XPath (cont'd)
- 8.6.: Discussion of Exercises 1-3 of sheet 2;
- 10.6.: Namespaces etc, ... the rest of the XPath Slides
XML Query Languages: History/Evolution - XQL, XML-QL; then XQuery
XQuery: basic XQuery is as simple and straightforward as SQL.
The "let", nested queries, sequencing, and function definitions add the full power of functional programming.
the XQuery example from the lecture
Exercise sheet 3: XQuery
- 17.6.: XQuery
- 22.6.: Solution to Exercise 2.4; XQuery (cont'd)
- New saxon 18.104.22.168 installed (Web interface and CIP Pool), XQuery slides modified
- 24.6.: XQuery (cont'd)
- 29.6.: Discussion of exercise sheet 3;
- 1.7. Lecture: Updating XML Data (same slide set as XQuery);
the transformation language: XSLT
- 6.7. Lecture: XSLT
Exercise sheet 4: XSLT
- 8.7. Lecture: XSLT
- 13.7. Discussion of exercise sheet 4; Solution.
the unsolved sum/term example and its (commented) solution
- 13.7. 14-16h, SR 2.101 optional (the appointment belongs originally to the SQL lab):
XML in SQL/SQLX.
Slides: XML and Databases
SQL Web interface (in addition to the
Mondial tables, the tables mondial, countryXML, cityXML used on the slides exist)
- 15.7. Overview of XML Schema and XML and Java.
Slides: XML Schema
(note: the XML Schema atomic datatypes are also used in RDF)
Overview: Global referencing in XML - the linking languages:
XPointer and XLink [they have nearly no practical relevance since RDF is used for Open Linked Data]
Overview: Programming XML with Java APIs
Slides: XML and Java - DOM, SAX etc
Praktikum/Lab course XML WS2016/17
Deductive Databases WS2016/17
- 15.7.2016 End of lecture period.
(Monday) 18.7., 14h ct, SR 2.101: presentation
"Semantic Annotations in Today's Web" in the
Seminar Web Data Integration and Data Management
(i.e., data formats that are included inside HTML Web pages) by Alexander Trautsch
- Ergebnis der Vorlesungsevaluierung
- Oral exams, between 18.7.2016 and October 2016, to choose between these slots:
- Exam period in July: 18.7.-22.7.
- Exam period in late August-mid September: 22.8.-15.9. Please register in FlexN***, and
send me a mail about your preferences. I will then group the appointments on some days.
- Exam period in October: 10.10.-21.10.
(Winter term lectures start on October 17)
- all three slots will be created in FlexNever; registration
for each of them ends one week before the first exam date.
- Please contact may at informatik.uni-goettingen.de for the individual
- the exams take place in my office, room IFI 2.107