Prof. Dr. Wolfgang May,
Lars Runge, M.Sc.,
Sebastian Schrage, M.Sc.
Date and Time: Mon 10-12, Wed 10-12, Fri 14-16; formally 3+1 SWS, (i.e. 2x14 = 28
double hours; the SS17 course will be given 3x2 hours/week starting in
the third week);
Room: IFI 2.101 (North Campus)
Exercises (Übung): integrated into lecture (see announcements on this page)
If (and as long as) non-german-speaking participants attend, the course will be given in english.
Technical Data:6 ECTS credits (Studies in Applied Informatics).
Knowledge in First-Order Logic as taught in "Formale Systeme" is sufficient.
Although, prospective participants are recommended to have participated in
the lecture Deductive Databases.
XML: RDF/XML uses XML as representation, but requires only a little bit of
knowledge about XML. A short introduction to XML from that point of view will be given
in the lecture.
XML with DTD, XPath, XQuery, XSLT and XML Schema is the topic of the lecture
Semistructured Data and XML
(prospectively taking place again in Winter Term 2017/18).
Note: the module is by default credited as
"Core Informatics". It can also be credited as "Applied Informatics".
(Decision by the Dean of Studies on 25.10.2006/2.2.2010). In this case,
please prepare a personal plan of studies (that e.g. connects
it with your application area etc.) and ask for approval by the DoS.
- Short Review: Basic Notions of First-Order Logic
- RDF: N3 and RDF/XML format, semantics
- SPARQL: the query language for RDF data
- RDFS, OWL: having RDF data with additional reasoning
- Description Logics: the logic underlying OWL
- Practical experiments with RDF, Jena, Reasoners etc.
Dates & Topics
- Note: the course will start with the 3rd week of the lecture period, prospectively on 26.4.
It will be then given with 3x2 hrs/week.
- Prospective Plan: 26.4., [27.4.GirlsDay], 28.4., 3.5., 4.5., 5.5., 10.5., 12.5.,
15.5., 17.5., [19.5. SIT], 22.5., 24.5., [26.5.Asc++], 29.5. 31.5., 2.6., [5.6. Pfingsten/Whitsun], 7.6., 9.6.,
12.6., 14.6., 16.6., 19.6., 21.6., 23.6.,
26.6., 28.6., 30.6., [[3.7.]], 5.7., 7.7., 10.7., 12.7.?, 14.7?. - there is still some flexibility left.
- First Meeting: Wed 26.4. 10-12: Administrativa, Overview.
Slides: Introduction and Ontologies
- Reasoning Motivation: the Einstein/Fish Puzzle ...
will (again) be solved declaratively, but totally different than in DBT.
- Thu, 27.4.: No lecture, since the room is needed for "Girls Day"
- Fri, 28.4. Introduction, Web architectures
- Mi, 3.5..: Web Architectures, Ontologies
- Thu, 4.5.: Ontologies (Cont'd); review of first-order logic and basic notions of
Slides: Introduction to Logics
A slide set on first-order logic (from the Deductive Databases lecture) can be
- Fri 5.5.. Logical Formalization of Ontologies
- 10.5. Ontologies, Reasoning
A slide set on reasoning and the FOL tableau calculus (from the DB
theory lecture) can be found here.
Due to a collision of the Thursday 10-12 slot with the NoSQL lecture,
instead of Thursday, the lecture moves to Mo 10-12.
- 11.5. No lecture - we changed to MONDAY 10-12
Exercise Sheet 1 (Tableaux)
- Fri 12.5. Inference Systems, RDF
Note: all example files are accessible in the RDF subdirectory of
this Web page [ Download RDF.zip] .
- Mon 15.5. Discussion of Exercise Sheet 1 (Tableaux)
- Wed 17.5. Lecture: RDF
- Fri 19.5. NO LECTURE because of the
Studentische Informatik-Tage 2017
- Mon 22.5. Lecture: RDF, SPARQL
- Wed 24.5. Lecture: SPARQL
Exercise Sheet: SPARQL
- Fri 26.5. NO LECTURE (bridge day after Ascension holiday)
- 29.5: Discussion of Exercise Sheet 2 (SPARQL)
Lecture: SPARQL - Formal Semantics
- 31.5.: SPARQL - Formal Semantics
- 2.6.: SPARQL 1.1
Exercise Sheet 3: SPARQL Formal Semantics
- 5.6.: NO LECTURE (whitsun monday)
- 7.6.: SPARQL 1.1, RDFS
- 9.6.: RDFS
- 12.6. unexpectedly cancelled (I made another (medical) appointment
without considering that the lecture takes place in the morning).
- 14.6.: Discussion of Exercise Sheet 3 (SPARQL Formal Semantics),
Lecture: RDFS, ...
RDF/XML - shortly the main ideas. RDF/XML ist nothing conceptually new,
but (if one knows XML well) mainly craft, like using URIs, and
expansion of element names to URIs with namespaces, and xml:base.
No smartboard notes today.
- 19.6.: Description Logics
- 21.6.: OWL
- The Department for Physical Geography is searching for a student member in the database area:
- 23.6.: OWL
- 26.6.: OWL
- 28.6.: OWL
- 30.6.: OWL
- 3.7.: NO LECTURE
- 5.7.. OWL 2.0
Slides: OWL 2.0
Exercise Sheet 4 (OWL)
- ... and now you can also try to solve the Einstein/Fish Puzzle.
- Artificial Intelligence and Reality: An article in the FAZ on
and autonomous cars (in German).
- 7.7.: OWL 2.0
- The Mondial database in RDF format can be found
This is an example for a real-world ontology. Still, it is more elaborated than most real ontologies (interface-style classes like
Area, Line, SmallArea; several union classes to restrict the domains as exact as possible).
- 10.7.: Discussion Exercise Sheet 4
- 12.7.: OPTIONAL: Use case and some insights in our current research: A (good) ontology contains a superset of the
information that an ER diagram contains (exact domains, ranges, cardinalities).
From this, a relational model can be generated, using the same principle as in the DB lecture for ER->SQL.
On demand: Questions/hints for the Fish Puzzle.
Further keywords: Ontology-based data access, ontology mapping.
- 14.7.: NO LECTURE.
Optional: I will be there in the seminar room at 14:15 in case of questions, including hints for the FishPuzzle.
- ... finally, there is also the solution to the Fishpuzzle in OWL:
- fishpuzzleLong.n3 is a very detailed
and intuitive specifikation:
Part 1: Specification of a row of 5 houses.
Part 2: Specification of the properties.
Part 3: Specification of the constraints.
- fishpuzzleLong.sparql is the corresponding query
- fishpuzzleShort.n3 is a shorter encoding:
Part 1: Specification of a row of 5 houses as above.
Part 2: tricky encoding of the properties. Instead of assigning to each house a color, a person,
a brand of cigarettes, a drink, and a pet via explicit RDF edges,
they are declared to be sets that are identified/mapped to each other.
Teil 3: specification of the constraints. Simpler as before, since only the equivalence
classes have to be considered.
- fishpuzzleShort.sparql is the corresponding query.
- End of lectures: 14.7.2017
The SmartBoard Notes are collected here
(only relevant ones, so for some dates there are no notes).
The complete slide set can be found
do not print it yet (subject to change); the slides of the
SSD&XML lecture can also be found there. Knowledge of XML is only required
so far as RDF/XML is (in addition to the N3 format) a possible representation
of RDF data. One should be able to "understand" an XML document. XPath/XQuery and
XSLT are not required.
- Oral exams, several slots to choose between July 15 and October.
- Exam procedure: about 30-40 minutes. Candidates start
with talking about a topic of their choice from the lecture (5-10 minutes),
then questions+answers, including sketches on paper develops dynamically.
The 5-10 minutes talk at the beginning should give me as an examiner a good
impression of your knowledge, and a good starting point to assess your
knowledge with further questions (usually starting with the chosen topic, and then
also going to other topics from the lecture).
- There are several slots to chose. Choose one of them.
Each slot has a fixed registration/deregistration end date.
(the main reason to have different slots is that registration and deregistration in
FlexNever is only possible up to one week before the first day of exams -
so having different slots makes it possible to decide later)
- Exams between July 17-July 21 (first week after the lectures), registration/deregistration until July 10
- Exams between Aug 28-Sept 15, registration/deregistration until August 21
- Exams between Oct 9-Oct 20 (winter term lectures start on Oct 16), registration/deregistration until Oct 9
- Contact me by mail for the individual exam appointment in the slot of your choice ...
at latest with the end of registration.
P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure: "Semantic Web - Grundlagen" (in German).
Springer eXamen.press, 2008;
The (german language) book covers nearly exactly the contents of the lecture and also
contains an introduction to first-order logic in the appendix.
P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure: "Foundations of Semantic Web Technologies"
Chapman & Hall/CRC, 2009;
The (english language) book covers nearly exactly the contents of the lecture and also
contains an introduction to first-order logic in the appendix.
For the part on (first order) logic, and textbook on foundations of logic from the library
(e.g. "Logik für Informatiker" (in German) von Uwe Schöning) or the manuscript
"Formale Systeme" by
Peter H. Schmitt (Uni Karlsruhe) (Kap. 1-5) can be used.
If you experience any problems (forgotten chmod, wrong paths, forgotten updates etc.),
please notify us.
- Pellet Homepage
- Command line usage:
- Usage as Web Service (see Slides)
For use in the CIP Pool, a Pellet instance running on ap34 can be used at
- If you have an own Pellet on your own computer, start it with ./pellet-dig.sh.
Pellet usually runs at port 8081. The URL will then be http://localhost:8081.
Apache JENA (
is a free and open source Java framework for building Semantic Web and
Linked Data applications.
The course uses a lightweight housemade shell interface to Jena for querying:
- Download most recent version (incl. OWL2 and SPARQL 1.1) August 2015.
- in the CIP Pool located at
- IsaViz is used for visualization of RDF-Graphs, installed locally at:
- You can either change into that directory and start the program with the command
./run.sh or by using an alias pointing to that script. In the latter case
you will need to copy the configuration file
isaviz.cfg into your home directory.
- If you want to run the application on your own computer, you will have
to install graphviz as well, either from its
or from the appropriate package provided by your distribution
(e.g. debian-package graphviz).
The Mondial database in RDF format can be found at
jena -q -qf mondial-query.sparql
jena -pellet -q -qf mondial-meta-query.sparql
Usage in the CIP Pool
From the CIP Pool computers at the IFI (ground floor or log in from remote), the software and resources are directly
- log in from remote to login.stud.informatik.uni-goettingen.de (Linux: ssh, Windows: puTTY)
- log through to one of the individual computers (e.g. ssh c032)
- set the alias in your .bashrc file:
alias jena='java -jar /afs/informatik.uni-goettingen.de/course/semweb-lecture/JENA-API/semweb.jar'
- The lecture's RDF directory with the n3 files can be found at
- The Mondial files can be found at