Institute for Informatics
Georg-August-Universität Göttingen

Databases and Information Systems

Uni Göttingen

Semistructured Data and XML
Summer 2019

Prof. Dr. Wolfgang May
Lars Runge, M.Sc., Sebastian Schrage, M.Sc.

Date and Time:

  • Monday 14-16 ct, IFI SR 2.101
  • Wednesday 10-12 ct, IFI SR 2.101

Lecture and Exercises mixed (see announcements on this page). There will be non-mandatory exercise sheets whose solutions will be discussed as parts of the lecture.

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, ...

Course Description

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, and SQL/XML.

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 Pool. The software playground page can be found here; the XPath/XQuery/XSLT Web interface is available here.
The sample code fragments can be found in the CIP pool under /afs/ .

Dates & Topics

  • 15.4.2019 NO LECTURE - note: 16:00h MSc introductory meeting with the Dean of Studies (room IFI 0.101).
  • 17.4.: Administrativa, Overview, ...
    Introductory Presentation "XML"     [Slides]
  • 24.4.: General concepts and notions of the database area.
    Slides: Relational Model
    Smartboard notes
  • 29.4.: 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
  • 1.5.: Holiday. No lecture.
  • 6.5.: Earlier database models, concepts and extensions: Network data model, ...
    Smartboard notes
  • Some references to read about database history (optional):
  • 8.5.: "History" continued: ... ODMG and ... academic prototypes: SchemaSQL
    Smartboard notes
  • 13.5.: "History" continued - academic prototypes: early semistructured data models (Tsimmis/OEM/F-Logic)
    Slides: early semistructured data models No Smartboard notes today - the Smartboard is broken.
  • 15.5.: XML: data model, language, DTDs etc.
    Slides: XML basics
    No Smartboard notes today - the Smartboard is broken.
  • from now on, the Monday lecture takes place in SR -1.101 because the Smartboard in 2.101 is dead. Wednesday lectures will still take place in 2.101 (-1.101 is not available)
  • 20.5. (in -1.101) XML: data model, language, DTDs etc. (cont'd)
    Smartboard notes
  • 22.5. (in 2.101): XML: data model, language, DTDs etc. (cont'd)
    Exercise Sheet 1 (XML basics, parsing, grammar aspects) - solutions will be discussed during the subsequent lectures. No Smartboard notes today.
  • 27.5. (in -1.101) XML, XPath: navigation and addressing language for XML
    Slides: XPath
    Smartboard notes
  • 29.5.: Discussion of Exercise Sheet 1; XPath (cont'd)
    Solutions to Exercise Sheet 1
  • 3.6.: XPath (cont'd)
    Exercise Sheet 2
    Smartboard notes
  • 5.6.: XPath (cont'd)
  • 10.6. NO LECTURE (Holiday)
  • 12.6.: Lecture XML Query Languages: History/Evolution - XQL, XML-QL; then XQuery
    Slides: XQuery
    Smartboard notes
  • 17.6.: (The lecture takes place again in 2.101) XML Query Languages (cont'd)
    Solutions to Exercise Sheet 2
  • 19.6.: XQuery (cont'd)
    Exercise Sheet 3
    Smartboard notes
  • 24.6.: XQuery (cont'd)
  • 26.6.: XML Query Languages (cont'd), XSLT
    Slides: XSLT
  • to be extended ...
  • 19.7.2019 End of lecture period.


  • Oral exams (in german or in english), between July and October 2019, to choose between several slots. There will always be slots directly after the end of the lecture, around the beginning of the lectures of the winter term. There will be additional slots in-between. Due to other appointments these will be fixed later (probably during the last 4-5 weeks of the lecture).