Readings
Text book
The text book in INFO216 is Semantic Web for the Working Ontologist, Second Edition: Effective Modeling in RDFS and OWL by Dean Allemang and James Hendler (Jun 3, 2011). Morgan Kaufmann. The whole book is obligatory reading.
Other materials
In addition, the materials listed below for each lecture is either mandatory or suggested reading. Currently, the readings are not updated from 2017, so some of them may change. Make sure you download the papers and web sites in good time before the exam. That way you are safe if a site becomes unavailable or somehow damaged the last few days before the exam. Note that to download some of the papers, you need to be inside UiB's network. Either use a computer directly on the UiB network or connect to your UiB account with VPN if you are elsewhere.
Finally, the lectures and lectures notes are also part of the curriculum.
Lectures
Below are the mandatory and suggested readings for each lecture. All the text-book chapters are mandatory.
Lecture 1: Introduction
Themes:
- Web of Data
- INFO216
- Jena
- The programming project
Mandatory readings:
- Chapters 1-2 in Allemang & Hendler. In text book.
- Tim Berners-Lee talks about the semantic web (mandatory)
- Apache architecture overview (mandatory)
- The core RDF API (mandatory)
- An introduction to RDF and the Jena RDF API (mandatory)
- Slides from the lecture
Useful materials:
- Welcome to Apache Jena (useful starting page)
- Apache Jena main page (useful starting page)
- Jena tutorials (useful starting page)
- Package org.apache.jena.rdf.model (supplementary, but necessary for the labs and project - lab 1 and the lecture notes lists the classes and methods you should look at)
Additional resources:
- PechaKucha: How to Create a PechaKucha Presentation
- Elevator pitch:Some tips on how to plan your elevator pitch and a example
Lecture 2: RDF
Themes:
- RDF
- Programming RDF in Jena
- Finding datasets and vocabularies for your projects
Mandatory readings:
- Chapter 3 in Allemang & Hendler. In text book.
- W3C's RDF 1.1 Primer (mandatory)
- We also continue with the Jena RDF materials from lecture 1:
- The core RDF API (mandatory)
- An introduction to RDF and the Jena RDF API (mandatory)
- Slides from the lecture
Useful materials:
- W3C's RDF 1.1 Concepts and Abstract Syntax (cursory)
- Package org.apache.jena.rdf.model (supplementary, but necessary for the labs and project)
Lecture 3: SPARQL
Themes:
- SPARQL
- Programming SPARQL in Jena
- SPARQL Update
- Programming SPARQL Update in Jena
Mandatory readings:
- Chapter 5 in Allemang & Hendler. In text book.
- SPARQL 1.1 Update Language (Sections 1-3 are obligatory)
- Slides from the lecture
Useful materials:
- SPARQL 1.1 Query Language
- SPARQL 1.1 Update Language (the rest of it)
- SPARQL 1.1 Overview
- Javadoc for Apache Jena ARQ 3.2.0
- Query, QueryFactory, QueryExecution, QueryExecutionFactory, ResultSet
- UpdateFactory, UpdateAction
- (supplementary, but perhaps necessary for the labs and project)
Lecture 4: Architecture
Themes:
- Application architecture
- Application components
- Triple stores
- Visualisation
Mandatory readings:
- Chapter 4 in Allemang & Hendler. In text book.
- Apache architecture overview (mandatory, from lecture 1)
- Apache's TDB (mandatory)
- Apache's TDB Java API (mandatory)
- Apache Jena Fuseki (mandatory, we use Fuseki 2)
- Slides from the lecture
Useful materials:
- Package org.apache.jena.tdb Class TDBFactory (createDataset)
- Skjæveland 2012: Sgvizler. Paper.
- Sgvizler 0.6
- Lohmann et al. (2019): Visualizing Ontologies with VOWL. Semantic Web Journal. Paper.
- VOWL: Visual Notation for OWL Ontologies
Lecture 5: RDFS
Themes:
- RDFS
- Axioms, rules and entailment
- Programming RDFS in Jena
Mandatory readings:
- Chapters 6-7 in Allemang & Hendler. In text book.
- W3C's RDF Schema 1.1 (mandatory)
- Slides from the lecture
Useful materials:
- W3C's RDF 1.1 Semantics (cursory, except the axioms and entailments in sections 8 and 9, which we will review in the lecture)
- Reasoners and rules engines: Jena inference support (cursory; sections 1 and 3 are relevant, but quite hard)
- Javadoc for
- Model (createRDFSModel)
- InfModel (getRawModel, remove + the same methods as Model)
- RDFS (label, comment, subClassOf, subPropertyOf, domain, range...)
- Reasoner (but we will not use it directly)
- (supplementary, but perhaps necessary for the labs and project)
Case-based examples:
Lecture 6: RDFS Plus
Themes:
- Basic OWL concepts
- Axioms, rules and entailments
- Programming basic OWL in Jena
Mandatory readings:
- Chapter 8 in Allemang & Hendler. In text book.
- Slides from the lecture.
Useful materials:
- Javadoc for
- OntModel (createOntologyModel)
- OntModelSpec (the different reasoners are outlined here (very long), OWL_MEM_RULE_INF is a good starting point)
- OWL (defines built-in OWL resources)
- OntClass, Individual, ObjectProperty, DatatypeProperty
- (supplementary, but perhaps necessary for the labs and project)
Lecture 7: Vocabularies
Themes:
- LOD vocabularies and ontologies
Mandatory readings:
- Chapters 9-10 and 13 in Allemang & Hendler. In text book.
- Linked Open Vocabularies (LOV)
- LODstats
- Slides from the lecture
Useful materials:
- Vocabularies:
- SKOS - Simple Knowledge Organization System Home Page
- schema.org - Full Hierarchy
- Dublin Core (DC)
- Friend of a Friend (FOAF)
- geo: World Geodetic Standard (WGS) 84 (and few more general comments here)
- The RDF Data Cube Vocabulary
- Annotating vocabulary descriptions (VANN)
- Vocabulary Status (VS)
- Creative Commons (CC) Vocabulary
- Vocabulary of Interlinked Datasets (VoID)
- Provenance Interchange (PROV)
- Event Ontology (event)
- Time ontology in OWL (time, OWL-time)
- Timeline Ontology (tl)
- Biographical Information (BIO)
- Semantic Interlinked Online Communities (SIOC)
- Bibliographic Ontology (bibo)
- Music Ontology (mo)
- This is what we expect you to know about each vocabulary: Its purpose and where and how it can be used. You should know its most central 3-6 classes and properties be able to explain its basic structure. It is less important to get all the names and prefixes 100% right: we do not expect you to learn every little detail by heart. schema.org is less important because you have already had about it in INFO116.
Lecture 8 and 9: Linked Open Datasets
Themes:
- Important Linked Open Datasets
- DBpedia
- LinkedGeoData
- GeoNames
- Wikidata
- and others
Mandatory readings:
- Bizer, C., Heath, T., & Berners-Lee, T. (2009). Linked data-the story so far. Semantic services, interoperability and web applications: emerging concepts, 205-227.
- Färber, M., Ell, B., Menne, C., & Rettinger, A. (2015). A Comparative Survey of DBpedia, Freebase, OpenCyc, Wikidata, and YAGO. Semantic Web Journal, July.
- The Linking Open Data (LOD) cloud diagram
- LODstats
- Slides from the lecture
Useful materials:
Lecture 10: Services
Themes:
- JSON, JSON-LD
- Semantic web services
- Semantic workflows
Mandatory readings:
- JSON Syntax (mandatory)
- Section 2 in W3C's JSON-LD 1.0 Processing Algorithms and API (mandatory)
- Slides from the lecture
Useful materials:
- JSON-LD 1.1 - A JSON-based Serialization for Linked Data (supplementary reference)
- JSON for Linked Data (supplementary)
- What is Linked Data? Short video introduction to Linked Data by Manu Sporny
- What is JSON-LD? Short video introduction to JSON-LD by Manu Sporny
Lecture 11: OWL
Themes:
- Advanced OWL
- Axioms, rules and entailments
- Programming advanced OWL in Jena
Mandatory readings:
- Chapters 11-12 in Allemang & Hendler. In text book.
- Slides from the lecture
Useful materials:
- OWL 2 Document Overview (cursory)
- OWL2 Primer (cursory)
- OWL 2 Quick Reference Guide (cursory)
- VOWL: Visual Notation for OWL Ontologies (cursory)
- WebVOWL (cursory)
- Jena Ontology API (we will most likely not go into this) (cursory)
Lecture 12: OWL DL
Themes:
- Description logic
- Decision problems
- OWL-DL
- Programming with OWL-DL reasoners in Jena
Mandatory readings:
Useful materials:
- Nardi & Brachman: Introduction to Description Logics. Chapter 1 in Description Logic Handbook. (cursory)
- Baader & Nutt: Basic Description Logics. Chapter 2 in Description Logic Handbook.
- Cursory, quickly gets mathematical after the introduction. In particular, sections 2.2.2.3-4 about fixpoint semantics apply to TBoxes with cyclic definitions, which we do not consider in this course. We also do not consider the stuff about rules, epistemics, and reasoning from section 2.2.5 on.
- Complexity of Reasoning in Description Logics. Powered by Evgeny Zolin. (informative)
Lecture 13: Ontology development
Themes:
- Ontology Development 101 method
Mandatory readings:
- Chapters 14-16 in Allemang & Hendler. In text book.
- Noy & McGuinness (2001): Ontology Development 101: A Guide to Creating Your First Ontology. Paper.
- Slides from the lecture
Useful materials:
- Sicilia et al. (2012): Empirical findings on ontology metrics. Paper. (cursory)