Semistructured Data and XML Summer 2016
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, ...
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/informatik.uni-goettingen.de/course/xml-lecture/
.
Dates & Topics
- 13.4.:
Administrativa, Overview, Introductory Presentation "XML":
[Slides]
Smartboard notes
- 15.4.
Introductory Presentation "XML" (Cont'd)
General concepts and notions of the database area.
Slides: Relational Model
- 20.4.:
Earlier database models, concepts and extensions:
Basic Concepts and Notions; example and recall: relational model.
Slides: data models
Smartboard notes
- 22.4.: Earlier database models, concepts and extensions:
Network data model, Object-Oriented Model
Smartboard notes
- Some references to read about database history (optional):
- 27.4..: "History" continued: Object-Oriented Model/ODMG
Smartboard notes
- 29.4.: "History" continued - academic prototypes: SchemaSQL
Smartboard notes
- 4.5.: "History" continued - academic prototypes: early semistructured data models (Tsimmis/OEM/F-Logic)
Slides: early semistructured data models
Smartboard notes
- 6.5.: Tsimmis/OEM/F-Logic (cont'd).
XML: data model, language, DTDs etc.
Smartboard notes
- 11.5.: XML: data model, language, DTDs etc.
Slides: XML basics
Smartboard notes
- 13.5.: XML: data model, language, DTDs etc. (cont'd)
Exercise sheet 1: XML & DTD
(solutions will be discussed during the subsequent lectures ...)
Smartboard notes
- 18.5.: XML (cont'd)
Smartboard notes
- 20.5.: XML (cont'd)
Smartboard notes
- 25.5.: Discussion of Exercise sheet 1;
Solution (revised 25.5. afternoon).
Smartboard notes
- 27.5.: XPath: navigation and addressing language for XML
Slides: XPath
- 1.6.: XPath (cont'd)
Exercise sheet 2: XPath
Smartboard notes
- 3.6.: XPath (cont'd)
Smartboard notes
- 8.6.: Discussion of Exercises 1-3 of sheet 2;
Solution.
Smartboard notes
- 10.6.: Namespaces etc, ... the rest of the XPath Slides
Smartboard notes
- 15.6.:
XML Query Languages: History/Evolution - XQL, XML-QL; then XQuery
Slides: 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
Smartboard notes
- 22.6.: Solution to Exercise 2.4; XQuery (cont'd)
Smartboard notes
- New saxon 9.7.0.6 installed (Web interface and CIP Pool), XQuery slides modified
- 24.6.: XQuery (cont'd)
- 29.6.: Discussion of exercise sheet 3;
Solution.
- 1.7. Lecture: Updating XML Data (same slide set as XQuery);
the transformation language: XSLT
Slides: 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.
Smartboard notes
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]
Slides: XLink
Overview: Programming XML with Java APIs
Slides: XML and Java - DOM, SAX etc
- Announcement:
Praktikum/Lab course XML WS2016/17
- Announcement:
Deductive Databases WS2016/17
- 15.7.2016 End of lecture period.
- Announcement:
(Monday) 18.7., 14h ct, SR 2.101: presentation
"Semantic Annotations in Today's Web" in the
Seminar Web Data Integration and Data Management
on Microformats
(i.e., data formats that are included inside HTML Web pages) by Alexander Trautsch
- Ergebnis der Vorlesungsevaluierung
Exams
- 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
appointments/slots
- the exams take place in my office, room IFI 2.107
|