Uni Göttingen
Institute for Informatics
Databases and Information Systems

dbis

Semantic Web
WS 2020/21

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

  • Date and Time: Tue 14-16, Wed 10-12
  • Room: IFI 2.101 (North Campus)
  • Virtual Meetings: We will use BigBlueButton provided by GWDG; the rooms/meetings can be entered via StudIP. There also the recordings can be found (they cannot be exported or edited at all)
    Please also read the general and technical information about DBIS virtual teaching.

Exercises (Übung): integrated into lecture (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"

Technical Data: 4 SWS, 6 ECTS credits (Studies in Applied Informatics).
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 Datenbanken"),
and in several other studies:
BSc/MSc Wirtschaftsinformatik, Mathematik (BSc/MSc), Teaching/2-Fach-Bachelor, PhD GAUSS, ...

Prerequisites

  • Knowledge in First-Order Logic as taught in "Formale Systeme" is recommended; at least you should have some idea of it, and not be scared of formalisms. Semantic Web contains "applied First-Order Logic and model theory".
    There is also the "sibling" lecture Deductive Databases that is also applied First-Order Logic, but with a slightly different model theory.
  • 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 Summer Term 2021).

Course Description

  • Short Review: Basic Notions of First-Order Logic
  • RDF: N3 and RDF/XML format, semantics
  • SPARQL: the query language for RDF data
  • Linked Open Data (LOD): Web of Data and distributed querying.
  • The Mondial database is used as an example for RDF data.
    Mondial LOD entry point.
  • RDFS, OWL: having RDF data with additional reasoning
  • Description Logics: the logic underlying OWL
  • Practical experiments with RDF, Jena, Reasoners etc.
  • An experimental Web interface can be found for RDF+OWL and SPARQL here

Dates & Topics

  • First Meeting: Tue 3.11. (note that WS lectures start only on 2.11.!) 14-16:
    StupID is extremely slow today. We plan nevertheless to use the standard BBB room via StupID, and not another ad-hoc one, because otherwise the recording would be trapped there. It is not possible to copy or to export recordings.
    Please have the DBIS chat channel open in parallel in case of urgent problems/information
    Administrativa, Overview.
    • An overview of datamodel concepts and buzzwords related to the DBIS lectures.
    • Reasoning Motivation: the Einstein/Fish Puzzle will (again) be solved declaratively, but totally different than in the "Deductive Databases" lecture.
    Slides: Introduction and Ontologies
  • Wed 4.11.: Web Architectures
  • 10.11.: Ontologies
    Recording: note that I first forgot to unmute the microphone (some minutes). (we can still not edit the recordings).
    notes from today (this document will be incremental, collecting all notes from the lecture taken with draw.io)
  • 11.11.: Ontologies (cont'd)
    (FOL formalism for ontologies here as an "applied 'formal system'")
    notes from today [reformatted/revised 17.11.]
  • 17.11. Ontologies (cont'd)
    (FOL formalism for ontologies here as an "applied 'formal system'")
    notes from today
  • 18.11. Ontologies (cont'd)
    notes from 17+18.11.
  • 24.11. Review of first-order logic and basic notions of model theory and reasoning, Inference Systems
    Note: on the recording, I started in german ... for 1:40 minutes, then in English. We can still not edit/cut the recordings.
    Slides: Introduction to Logics.
  • "Inofficial" Exercise Sheet 0 (Tableaux)
    These (simple) exercises just review the FOL tableau calculus. Due to reasons of time, they will not be discussed at length in the lecture. Here is the [solution].
  • 25.11. Tableau calculus, Reasoning, Inference Systems
    Further slides (from the Deductive Databases lecture) about first-order logic and the relational calculus and about reasoning and the FOL tableau calculus.
  • 1.12. RDF
    Lecture recording: the BBB session/recording broke down after 4 minutes. The lecture has afterwards been continued in the same room. Thus, there are two separate recordings with a duration of 4 and 40 minutes, respectively.
    Slides: RDF
    Note: all example files are accessible in the RDF subdirectory of this Web page
    [ Download RDF.zip ]
    [ SPARQL Web Service interface ]
  • 2.12. RDF, SPARQL Exercise Sheet 1: SPARQL
  • 8.12. SPARQL
    Solution to Exercise Sheet 1
  • 9.12.: SPARQL 1.1, SPARQL Formal Semantics
  • 15.12.: SPARQL Formal Semantics
    Exercise Sheet 2: SPARQL Formal Semantics
  • 16.12.: RDF: Blank Nodes, Tree vs. Graph Data Models & Logic,
    RDFS
    Slides: RDFS
  • Week before Christmas: as one week is missing (the semester started one week later), we cannot drop another week. Everything will be recorded.
  • 22.12.: Lecture: RDFS Model Theory
  • 23.12.: RDFS Reasoning, querying etc (this chapter until the end)
  • The following recordings will be made during the "holidays":
    • Presentation of the solutions of Exercise Sheet 2
      [solution] (Recording: Jan 3rd in the StudIP Meetings).
    • "Aside section" RDF/XML: the "back link" to the XML world which was the driving force to create the "Semantic Web": give meaning to XML element names and attribute names.
      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.
      Its design illustrates the compromise between (existing) IT technology (concrete XML as tree-structured document-data, URI/URI expansion), and the abstract data model of an RDF graph, and the (common to both worlds) aspect of namespaces. The result is a lot of syntax that results in a feasible IT concept.
      Slides: RDF/XML
      (Recording: Jan 4th in the StudIP Meetings).
    • "Aside+Playing section" Linked Open Data
      Data on the Web, Web/HTTP Technology, accessing it as data triples and with SPARQL.
      Slides: LOD
      The experimental Mondial LOD Service can be found at http://www.semwebtech.org/mondial/10
      (Recording: Jan 7th in the StudIP Meetings).
    • Reification and Modeling/Wikidata as an example for LOD data that uses flat RDF, but not RDFS and OWL since that would constrain the expressiveness to much (basically, the problem that penguin is at the same time (i) a class that contains individuals, and (ii) an individual of the class Species that has user-defined properties of its own).
      HTML Germany page in Wikidata
      Wikidata SPARQL query interface
      (Recording: Jan 9th in the StudIP Meetings).
  • 12./13.1.2021: Description Logics
    Slides: DL
  • 19./20.1. OWL
    Slides: OWL
  • 20.1. Time slots for oral exams have been set in FlexNow (see below)
  • 22.1.: an online "teaching evaluation" has been opened in StudIP (for two weeks).
  • 25.1. Aside: maybe some other lectures will have electronic "written" online exams using ILIAS. In case you want to see the look-and-feel of ILIAS, we have put two example exams online: An "Introduction to Databases" (BSc, in German, based on and extending the WS 10/11 exam with some more exercise types), and "Semistructured Data and XML" (in English, based on the SSD SS08 exam, only simple ILIAS question types for text/code input).
    Both are available via the StudIP lectures DB WS 2021 and SSD SS2020 (both can still be registered for) -> Learning Modules -> ILIAS.
  • 26./27.1. OWL ...
    Exercise Sheet 3: OWL
  • 2./3.2.: OWL, OWL 2.0 Slides: OWL 2.0
  • ... and now you can also try to solve the Einstein/Fish Puzzle.
  • 9.2.: OWL 2.0 (cont'd)
  • 10.2.: Discussion of Exercise Sheet 3, OWL 2.0
    Solutions to Exercise Sheet 3 (OWL) [solution]
  • ... finally, there is also the solution to the Fishpuzzle in OWL. There are two modelings. At the beginning (10 years ago, a very old version of pellet) the short one took about 5 minutes, and the long one took 40 hours. Today, both run in some seconds, which demonstrates mainly the progress in the reasoners' internal strategy:
    • fishpuzzleLong.n3 is a very detailed and intuitive specification:
      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.
      Part 3: specification of the constraints. Simpler as before, since only the equivalence classes have to be considered.
      The reasoner then has just to compute the matching (actually, this task is very similar to what StableModels does in the same situation based on clauses/disjunctions).
    • fishpuzzleShort.sparql is the corresponding query.
  • End of lectures: 12.2.2021

The complete slide set can be found here (including the Semantic Web Lab Course Slides). 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.

Exams

  • Oral exams, several slots to choose between February 15th and April 2021.
  • Exam procedure: about 30-40 minutes, most probably online . 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).
    Languages in oral exams: English and/or German.
  • 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 FlexNow 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 Feb. 15-Feb. 26 (first weeks after the lectures), registration/deregistration until Feb. 8(?)
    • Exams between March 8-March 23, registration/deregistration until March 1(?)
    • Exams between April 8 and April 24 (summer term lectures start on April 12, Easter weekend is April 2-5), registration/deregistration until April 5(?). The individual appointments for the exams may also be later than the 24th if you have too may other exams during that time.
    • Contact me by mail for the individual exam appointment in the slot of your choice ... at latest with the end of registration.

Background Literature

P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure: "Semantic Web - Grundlagen" (in German). Springer eXamen.press, 2008; ISBN 978-3-540-33994-6.
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" (in English). Chapman & Hall/CRC, 2009; ISBN: 9781420090505
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.

Some Links


Semantic Web Tools and Links

If you experience any problems (forgotten chmod, wrong paths, forgotten updates etc.), please notify us.

Web-wide Services

Professional Tools

Jena: RDF and SPARQL

Apache JENA ( https://jena.apache.org/ ) 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, partially SPARQL 1.1, based on Jena 2.10 and compatible Openllet) Nov. 2019.
  • in the CIP Pool located at /afs/informatik.uni-goettingen.de/course/semweb-lecture/JENA-API/semweb.jar
  • Experimental Web interface

  • set alias (bashrc etc.)
     alias jena='java -jar /afs/informatik.uni-goettingen.de/course/semweb-lecture/JENA-API/semweb.jar'
  • query: (if=input-files, qf=query-file, e.g. in SPARQL)
    jena -q -if inputfiles -qf queryfile
  • general options:
    -il: input language (allows RDF/XML RDF/XML-ABBREV N-TRIPLE N3 TURTLE; N3 is default)
    -if: input files
  • query options:
    -q: query
    -il, -if: as above
    -qf: query-file
  • transform options:
    -t: transform
    -ol: output format (allows RDF/XML RDF/XML-ABBREV N-TRIPLE N3-PLAIN N3-PP N3-TRIPLE N3 TURTLE; N3 is default)
  • export class tree; options:
    -e: export class tree (gives some insight for debugging an ontology ...)
    -il, -if: as above
  • reasoner options (for -q and -e):
    activate reasoning; default: internal reasoner: option -inf (for "inference")
    or use the pellet class that comes with the semweb.jar:
     jena -q -inf -qf query-filename
     jena -q -pellet -qf query-filename

Pellet - the OWL Reasoner

  • Openllet Homepage (Open Source tool based on the last freely-available version of Pellet)
  • Pellet itself has been turned into a commercial product at Stardog.

LOD: Accessing RDF Data in the Web

  • rapper: a tool that accesses a Web page in RDF-reading mode to get RDF triples: e.g.
    rapper http://sws.geonames.org/3017382/

Mondial in RDF

The Mondial database in RDF format can be found at http://www.dbis.informatik.uni-goettingen.de/Mondial/#RDF.

Call e.g.

 jena -q -qf mondial-query.sparql
or
 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 accessible:

  • 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
     /afs/informatik.uni-goettingen.de/user/d/dbisuser/public_html/teaching/SemWeb/RDF
  • The Mondial files can be found at
     /afs/informatik.uni-goettingen.de/user/d/dbisuser/public_html/Mondial
     /afs/informatik.uni-goettingen.de/user/d/dbisuser/public_html/Mondial/Mondial-RDF