Semistructured Data and XML Summer 2025
Prof. Dr. Wolfgang May
Date and Time:
- Monday 14-16 ct,
IFI SR 2.101
- Wednesday 10-12 ct,
IFI SR 2.101
- This year, DBIS will use mainly non-live teaching by pre-recordings.
There will be some live online meetings with BigBlueButton provided by GWDG;
the rooms/meetings can be entered via StudIP.
Maybe, there are also optional meetings (Monday afternoon slots) in presence
at the IFI.
- Materials for self-studying (in english) will be linked below weekwise:
- revised videos taken from summer term 2020 (as the "original" dates in the filenames indicate)
- PDF slides
- Please also read the general and technical information
about DBIS virtual teaching.
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.
All materials and announcements can be found HERE on the "blue DBIS pages".
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", B.inf.1706),
and in several other studies:
BSc/MSc Wirtschaftsinformatik, Mathematik (BSc/MSc), Digital Humanities,
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
Part 0: Preface
Materials for self-studying:
Part I: History, evolution, and comparison of data models until 1995 and requirements for XML
- This part is not to be seen as a "technical lecture" to learn details of some languages,
but to show how ideas and concepts, in this case, data management and data models (and the concept
of high-level declarative query languages) evolved, and
how new requirements (Web, data integration, data interoperability, handling
documents+data and metadata) lead to XML in the mid/late 1990s.
- 16.4., 21./23.4., 28./30.4.: Self-studying, no pre-scheduled live meetings.
- Overview:
-
Data Models: about structuring data and the development of query languages.
Slides: Review of the Relational Model
Recording: General concepts
of data models, the relational model (with its querying concepts) as an example data model.
- The Requirements for "semistructured data" in the mid 90s, history of data models:
appropriateness of the data model for modeling data and other requirements of the time.
Slides: data models
Recording: the network database model (1960s,
pre-declarative querying) and the object-oriented database model (late 1980s)
Recording: the object-oriented database model
(late 1980s, OQL, OIF, Corba)
- Some references to read about database history (optional):
- "History" continued - requirements and academic prototypes of the early 1990s:
SchemaSQL (an
extremely powerful, yet syntactically minimal "opening" of SQL to metadata) and
early semistructured data models (Tsimmis/OEM and F-Logic):
Slides: early semistructured data models
Recording: SchemaSQL
Recording:Tsimmis/OEM (part 1)
Recording: Tsimmis (part 2), F-Logic and the situation pre-XML
-
(Exercise: if you have knowledge about JSON (JavaScript Object Notation), compare JSON with the
concepts discussed above in Part I)
Part II: XML concepts and technology - aspects of XML as a data structure in Computer Science
-
Monday, May 5th 14:15: Live online meeting
to get some feedback, answer questions, and to discuss/give a roadmap for the
rest of the lecture.
From now on, the course gets "productive" and continues with XML and the languages of the XML world.
-
(Exercise: if you have knowledge about JSON, compare JSON continuously with the following aspects of XML)
- 5.5.: XML: data model, language, DTDs etc.
Slides: XML basics
Recording: XML basics
- 7.5.: XML: DTDs etc. (cont'd)
Recording: DTD, the xmllint tool
- Exercise Sheet 1
(XML basics, parsing, grammar aspects, parsing)
If there are questions etc.,
the RocketChat dbis channel can be used
(also participants are encouraged to answer questions from others).
- 12.5. XML parsing ...
Recording: XML parsing, XHTML (and parsing)
- 14.5.: Discussion of Exercise Sheet 1:
Solutions to Exercise Sheet 1.
Recording:
- You find the recording from 2022 as follows: register for "Semistructured Data Summer
Term 2022",
and use the recording of the Meeting "2022-05-30-exercise-sheet-1" (this was an
"experimental" session in the seminar room, using the Smartboard and BBB)
Part III: Languages of the XML world: XPath, XQuery, XSLT ...
-
Monday, May 19th, 14:15: Live online meeting
questions&answers, summary, outlook ...
- 19.5.: XPath: navigation and addressing language for XML
Slides: XPath
Recording: XPath I
- 21.5.: XPath (cont'd)
Recall slide from last time: XML Axes for XPath
XPath position functions (local) with graphics
Recording: XPath II
- Exercise Sheet 2: XPath
- 26.5.: XPath (cont'd)
Recording: XPath III
- 28.5./2.6.:
XPath (conclusions), XML Query Languages: History/Evolution - XQL, XML-QL
Recording: XPath IV: Conclusions
XPath tree navigation sketch (pdf)
Slides: XQuery
Recording: XQL, XML-QL
- 4.6.:
Solutions to Exercise Sheet 2
Existing Recording: Exercise 2.5, including some
insights into storage of XML data and the query evaluation strategy.
PDF graphics for Ex. 2.5 (axes/traversals)
- Mo 9.6. Holiday (Whitsun Monday)
-
Monday, June 16th 14:15: Live online meeting
to get some feedback, answer questions, and to discuss/give a roadmap for the
next lectures.
- 16.6.: XQuery
Recording: XQuery (I)
Notes on XML query language design (rule metaconcept, index-based eval)
note: for
experimenting with XQuery, using saxon from the command line (on
the IFI CIP Pool computers or install it on your own computer)
provides better error messages than the Web Service.
- 18.6.: XQuery (cont'd)
Exercise Sheet 3 (XQuery)
Recording: XQuery (II+III)
pdf notes: functional "if"/"case" statement
- 23./25.6.: XQuery (cont'd)
Recording: XQuery (IV)
Recording: XML Query Languages - Conclusion
-
Solutions to Exercise Sheet 3
-
Monday, June 30th 14:15: Live online meeting
to get some feedback, answer questions, and to discuss/give a roadmap for the
next lectures.
- Slides: XSLT
30.6/2.7./7.7.
Recording: XSLT (I)
Exercise Sheet 4 (XSLT)
Recording: XSLT (II)
Recording: XSLT (III)
- 9.7.: Solutions to Exercise Sheet 4
-
Monday, July 14th: 14:15: Live online meeting
to get some feedback, and to answer questions.
- Five ILIAS example exams are available online
via StudIP->SSD/XML-SS2024->Learning Modules:
a first sample exam based on the one from 2008 (edited for Ilias for SS2020),
and the regular ILIAS exams from 2020/2021/2022/2023.
If something does not work or looks strange, send me a mail of use the dbis RocketChat.
I cannot test what the students see and can (not) do with these exams.
- 14.7.: XML Schema
Slides: XML Schema
(note: the XML Schema atomic datatypes are also used in the RDF data model)
Recording: XML Schema
- 16.7.: Optional, belonging to the SQL lab course: 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)
Recording: SQLX
- Note: the rest of the slide set belongs to the XML lab course
which maybe takes again place in the winter term 2025/26.
- Announcement:
Praktikum/Lab course XML WS2024/25
- Announcement:
Semantic Web WS2024/25
- (General) information about E-Exams
(click upper right for German language)
- 18.7.2024 End of lecture period.
- It is planned to have one or more (optional, recorded) online-meetings, including questions and answers, before.
Exams
The exam will take place as a written/online exam using the ILIAS system.
Date to be announced.
|