Readings: Difference between revisions
(46 intermediate revisions by 2 users not shown) | |||
Line 3: | Line 3: | ||
=Other materials= | =Other materials= | ||
In addition, '''the materials listed below for each lecture is either mandatory or suggested reading.''' 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. | 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 | Finally, '''the lectures and lectures notes are also part of the curriculum.''' | ||
=Lectures= | =Lectures= | ||
Line 11: | Line 11: | ||
==Lecture 1: Introduction== | ==Lecture 1: Introduction== | ||
Themes: | |||
* Web of Data | |||
* INFO216 | |||
* Jena | |||
* The programming project | |||
Mandatory readings: | |||
* Chapters 1-2 in Allemang & Hendler. ''In text book.'' | * Chapters 1-2 in Allemang & Hendler. ''In text book.'' | ||
* [http://www.youtube.com/watch?v=HeUrEh-nqtU Tim Berners-Lee talks about the semantic web] (mandatory) | * [http://www.youtube.com/watch?v=HeUrEh-nqtU Tim Berners-Lee talks about the semantic web] (mandatory) | ||
* [http://jena.apache.org/about_jena/architecture.html Apache architecture overview] (mandatory) | |||
* [http://jena.apache.org/documentation/rdf/index.html The core RDF API] (mandatory) | |||
* [http://jena.apache.org/tutorials/rdf_api.html An introduction to RDF and the Jena RDF API] (mandatory) | |||
* [[:File:INFO216-introducction.pdf | Slides from the lecture]] | |||
** [[:File:S01-Intro-WoD-Jena-7.pdf | Additional slides from the lecture]] | |||
Useful materials: | |||
* [http://jena.apache.org/about_jena/ Welcome to Apache Jena] (useful starting page) | * [http://jena.apache.org/about_jena/ Welcome to Apache Jena] (useful starting page) | ||
* [http://jena.apache.org/index.html Apache Jena] main page (useful starting page) | * [http://jena.apache.org/index.html Apache Jena] main page (useful starting page) | ||
* [http://jena.apache.org/tutorials/ Jena tutorials] (useful starting page) | * [http://jena.apache.org/tutorials/ Jena tutorials] (useful starting page) | ||
* [https://jena.apache.org/documentation/javadoc/jena/ 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) | * [https://jena.apache.org/documentation/javadoc/jena/ 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: [https://www.pechakucha.com/cities/lambertville-new-hope/blogs/creating-a-presentation-update How to Create a PechaKucha Presentation] | |||
* Elevator pitch:[https://www.linkedin.com/learning/creating-your-personal-brand/creating-a-perfect-elevator-pitch Some tips on how to plan your elevator pitch] and an [https://www.youtube.com/watch?v=Q19WW65kLkI example] | |||
==Lecture 2: RDF== | ==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.'' | * Chapter 3 in Allemang & Hendler. ''In text book.'' | ||
* [https://www.w3.org/TR/rdf11-primer/ W3C's RDF 1.1 Primer] (mandatory) | * [https://www.w3.org/TR/rdf11-primer/ W3C's RDF 1.1 Primer] (mandatory) | ||
* We also continue with the Jena RDF materials from lecture 1: | |||
* We continue with the Jena RDF materials from lecture 1: | |||
** [http://jena.apache.org/documentation/rdf/index.html The core RDF API] (mandatory) | ** [http://jena.apache.org/documentation/rdf/index.html The core RDF API] (mandatory) | ||
** [http://jena.apache.org/tutorials/rdf_api.html An introduction to RDF and the Jena RDF API] (mandatory) | ** [http://jena.apache.org/tutorials/rdf_api.html An introduction to RDF and the Jena RDF API] (mandatory) | ||
* [[:File:S02-RDF-8.pdf | Slides from the lecture]] | |||
Useful materials: | |||
* [https://www.w3.org/TR/rdf11-concepts/ W3C's RDF 1.1 Concepts and Abstract Syntax] (cursory) | |||
** [https://jena.apache.org/documentation/javadoc/jena/ Package org.apache.jena.rdf.model] (supplementary, but necessary for the labs and project) | ** [https://jena.apache.org/documentation/javadoc/jena/ Package org.apache.jena.rdf.model] (supplementary, but necessary for the labs and project) | ||
==Lecture 3: | ==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.'' | ||
* [http | * [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] (Sections 1-3 are obligatory) | ||
* [[:File:S03-SPARQL-12.pdf | Slides from the lecture]] | |||
* [[:File: | |||
Useful materials: | |||
* [http://www.w3.org/TR/sparql11-query/ SPARQL 1.1 Query Language] | * [http://www.w3.org/TR/sparql11-query/ SPARQL 1.1 Query Language] | ||
* [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] | * [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] (the rest of it) | ||
* [https://www.w3.org/TR/sparql11-overview/ SPARQL 1.1 Overview] | * [https://www.w3.org/TR/sparql11-overview/ SPARQL 1.1 Overview] | ||
* [http://jena.apache.org/documentation/javadoc/arq/ Javadoc] for Apache Jena ARQ 3.2.0 | * [http://jena.apache.org/documentation/javadoc/arq/ Javadoc] for Apache Jena ARQ 3.2.0 | ||
** Query, QueryFactory, QueryExecution, QueryExecutionFactory, ResultSet | ** Query, QueryFactory, QueryExecution, QueryExecutionFactory, ResultSet | ||
Line 77: | Line 78: | ||
: (supplementary, but perhaps necessary for the labs and project) | : (supplementary, but perhaps necessary for the labs and project) | ||
==Lecture | ==Lecture 4: Architecture== | ||
* [http:// | |||
* [ | Themes: | ||
* Application architecture | |||
* Application components | |||
* Triple stores | |||
* Visualisation | |||
Mandatory readings: | |||
* Chapter 4 in Allemang & Hendler. ''In text book.'' | |||
* [http://jena.apache.org/about_jena/architecture.html Apache architecture overview] (mandatory, from lecture 1) | |||
* [https://jena.apache.org/documentation/tdb/index.html Apache's TDB] (mandatory) | |||
* [https://jena.apache.org/documentation/tdb/java_api.html Apache's TDB Java API] (mandatory) | |||
* [https://jena.apache.org/documentation/fuseki2/index.html Apache Jena Fuseki] (mandatory, we use Fuseki 2) | |||
* [[:File:S04-architecture-5.pdf | Slides from the lecture]] | |||
Useful materials: | |||
* [https://jena.apache.org/documentation/javadoc/tdb/ Package org.apache.jena.tdb] Class TDBFactory (createDataset) | |||
* [http://www.eswc2012.org/sites/default/files/eswc2012_submission_303.pdf Skjæveland 2012: Sgvizler.] ''Paper.'' | * [http://www.eswc2012.org/sites/default/files/eswc2012_submission_303.pdf Skjæveland 2012: Sgvizler.] ''Paper.'' | ||
* [http://mgskjaeveland.github.io/sgvizler/ Sgvizler 0.6] | * [http://mgskjaeveland.github.io/sgvizler/ Sgvizler 0.6] | ||
* [[:File:LohmannEtAl2016-VisualizingOntologiesWithVOWL.pdf | Lohmann et al. (2019): Visualizing Ontologies with VOWL. ''Semantic Web Journal.'']] ''Paper.'' | * [[:File:LohmannEtAl2016-VisualizingOntologiesWithVOWL.pdf | Lohmann et al. (2019): Visualizing Ontologies with VOWL. ''Semantic Web Journal.'']] ''Paper.'' | ||
* [http://vowl.visualdataweb.org/ VOWL: Visual Notation for OWL Ontologies] | |||
<!-- | |||
* [[:File:S07-Visualisation-4.pdf | Slides from the lecture]] | * [[:File:S07-Visualisation-4.pdf | Slides from the lecture]] | ||
--> | |||
==Lecture 5: RDFS== | |||
Themes: | |||
* RDFS | |||
* Axioms, rules and entailment | |||
* Programming RDFS in Jena | |||
Mandatory readings: | |||
* Chapters 6-7 in Allemang & Hendler. ''In text book.'' | |||
* [http://www.w3.org/TR/rdf-schema/ W3C's RDF Schema 1.1] (mandatory) | |||
* [[:File:S05-RDFS-10.pdf | Slides from the lecture]] | |||
==Lecture | Useful materials: | ||
* [https://www.w3.org/TR/rdf11-mt/ W3C's RDF 1.1 Semantics] (cursory, except the axioms and entailments in sections 8 and 9, which we will review in the lecture) | |||
* [https://jena.apache.org/documentation/inference/index.html Reasoners and rules engines: Jena inference support] (cursory; sections 1 and 3 are relevant, but quite hard) | |||
* [https://jena.apache.org/documentation/javadoc/jena/ 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: | |||
* [[:File:S5_RDFS_Example.pdf | RDFS Eating vegetables case]] | |||
==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.'' | * Chapter 8 in Allemang & Hendler. ''In text book.'' | ||
* [[:File: | * [[:File:S06-RDFSPlus-4.pdf | Slides from the lecture.]] | ||
Useful materials: | |||
* [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for | * [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for | ||
** OntModel (createOntologyModel) | ** OntModel (createOntologyModel) | ||
Line 95: | Line 148: | ||
: (supplementary, but perhaps necessary for the labs and project) | : (supplementary, but perhaps necessary for the labs and project) | ||
==Lecture | Case-based examples: | ||
* [[:File:S6_RDFS_Plus_Example.pdf | RDFS Plus People and Person case]] | |||
OWL helpful clarifications: | |||
* [[:File:OWL-example_I.pdf | owl:InverseFuctionalProperty vs owl:propertyDisjointWith]] | |||
==Lecture 7: Vocabularies== | |||
Themes: | |||
* LOD vocabularies and ontologies | |||
Mandatory readings: | |||
* Chapters 9-10 and 13 in Allemang & Hendler. ''In text book.'' | * Chapters 9-10 and 13 in Allemang & Hendler. ''In text book.'' | ||
* [http://lov.okfn.org/dataset/lov/ Linked Open Vocabularies (LOV)] | * [http://lov.okfn.org/dataset/lov/ Linked Open Vocabularies (LOV)] | ||
* [http://stats.lod2.eu/ LODstats] | * [http://stats.lod2.eu/ LODstats] | ||
* [[:File:S07-Vocabularies-21.pdf | Slides from the lecture]] | |||
Useful materials: | |||
* Vocabularies: | * Vocabularies: | ||
** [http://www.w3.org/2004/02/skos/ SKOS - Simple Knowledge Organization System Home Page] | ** [http://www.w3.org/2004/02/skos/ SKOS - Simple Knowledge Organization System Home Page] | ||
Line 119: | Line 186: | ||
** [http://www.musicontology.com/ Music Ontology (mo)] | ** [http://www.musicontology.com/ 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. | : '''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 | ==Lecture 8 and 9: Linked Open Datasets== | ||
Themes: | |||
* Important Linked Open Datasets | |||
** DBpedia | |||
** LinkedGeoData | |||
** GeoNames | |||
** Wikidata | |||
** and others | |||
Mandatory readings: | |||
* [[:File:BizerHeathBernersLee-LinkedData2009-TheStorySoFar.pdf | Bizer, C., Heath, T., & Berners-Lee, T. (2009). Linked data-the story so far. Semantic services, interoperability and web applications: emerging concepts, 205-227.]] | * [[:File:BizerHeathBernersLee-LinkedData2009-TheStorySoFar.pdf | Bizer, C., Heath, T., & Berners-Lee, T. (2009). Linked data-the story so far. Semantic services, interoperability and web applications: emerging concepts, 205-227.]] | ||
* [[:File:FarberEtAl-ComparativeSurvey-SWJ2015.pdf | Färber, M., Ell, B., Menne, C., & Rettinger, A. (2015). A Comparative Survey of DBpedia, Freebase, OpenCyc, Wikidata, and YAGO. Semantic Web Journal, July.]] | * [[:File:FarberEtAl-ComparativeSurvey-SWJ2015.pdf | Färber, M., Ell, B., Menne, C., & Rettinger, A. (2015). A Comparative Survey of DBpedia, Freebase, OpenCyc, Wikidata, and YAGO. Semantic Web Journal, July.]] | ||
* [http://lod-cloud.net The Linking Open Data (LOD) cloud diagram] | * [http://lod-cloud.net The Linking Open Data (LOD) cloud diagram] | ||
* [http://stats.lod2.eu/ LODstats] | * [http://stats.lod2.eu/ LODstats] | ||
* [[:File: | * [[:File:S08-LinkedOpenDatasets-23.pdf | Slides from the lecture]] | ||
Useful materials: | |||
* [http://wiki.dbpedia.org/about Dbpedia] | * [http://wiki.dbpedia.org/about Dbpedia] | ||
* [https://www.wikidata.org/wiki/Wikidata:Introduction Wikidata] | * [https://www.wikidata.org/wiki/Wikidata:Introduction Wikidata] | ||
Line 134: | Line 210: | ||
* [https://wordnet.princeton.edu/ WordNet - A lexical database for English] | * [https://wordnet.princeton.edu/ WordNet - A lexical database for English] | ||
* [http://live.babelnet.org/about BabelNet] | * [http://live.babelnet.org/about BabelNet] | ||
==Lecture | ==Lecture 10: Services== | ||
Themes: | |||
* JSON, JSON-LD | |||
* Semantic web services | |||
* Semantic workflows | |||
Mandatory readings: | |||
* [http://json.org/ JSON Syntax] (mandatory) | |||
* Section 2 in W3C's [https://www.w3.org/TR/json-ld-api/ JSON-LD 1.0 Processing Algorithms and API] (mandatory) | |||
* [[:File:S10-Services-7.pdf | Slides from the lecture]] | |||
** [[:File:S10-JSONLD.pdf | JSON-LD slides]] | |||
Useful materials: | |||
* [http://json-ld.org/spec/latest/json-ld/ JSON-LD 1.1 - A JSON-based Serialization for Linked Data] (supplementary reference) | |||
* [http://json-ld.org/ JSON for Linked Data] (supplementary) | |||
** [http://www.youtube.com/watch?v=4x_xzT5eF5Q What is Linked Data?] Short video introduction to Linked Data by Manu Sporny | |||
** [http://www.youtube.com/watch?v=vioCbTo3C-4 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.'' | * Chapters 11-12 in Allemang & Hendler. ''In text book.'' | ||
* [[:File:S11-OWL-15-utlagt.pdf | Slides from the lecture]] | |||
Useful materials: | |||
* [http://www.w3.org/TR/owl-overview OWL 2 Document Overview] (cursory) | * [http://www.w3.org/TR/owl-overview OWL 2 Document Overview] (cursory) | ||
* [http://www.w3.org/TR/owl-primer OWL2 Primer] (cursory) | * [http://www.w3.org/TR/owl-primer OWL2 Primer] (cursory) | ||
Line 145: | Line 248: | ||
* [https://jena.apache.org/documentation/ontology/ Jena Ontology API] (we will most likely not go into this) (cursory) | * [https://jena.apache.org/documentation/ontology/ Jena Ontology API] (we will most likely not go into this) (cursory) | ||
==Lecture | ==Lecture 12: OWL DL== | ||
* [[:File:NardiBrachman-IntroductionToDescriptionLogic.pdf | Nardi & Brachman: Introduction to Description Logics. Chapter 1 in Description Logic Handbook.]] '' | |||
* [[:File:BaderNutt-BasicDescriptionLogics.pdf | Baader & Nutt: Basic Description Logics. Chapter 2 in Description Logic Handbook.]] '' | Themes: | ||
* Description logic | |||
* Decision problems | |||
* OWL-DL | |||
* Programming with OWL-DL reasoners in Jena | |||
Mandatory readings: | |||
* [[:File:S12-OWL-DL-10.pdf | Slides from the lecture]] | |||
Useful materials: | |||
* [[:File:NardiBrachman-IntroductionToDescriptionLogic.pdf | Nardi & Brachman: Introduction to Description Logics. Chapter 1 in Description Logic Handbook.]] ''(cursory)'' | |||
* [[:File:BaderNutt-BasicDescriptionLogics.pdf | 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. | |||
* [http://www.cs.man.ac.uk/~ezolin/dl/ Complexity of Reasoning in Description Logics. Powered by Evgeny Zolin.] (informative) | * [http://www.cs.man.ac.uk/~ezolin/dl/ Complexity of Reasoning in Description Logics. Powered by Evgeny Zolin.] (informative) | ||
==Lecture | ==Lecture 13: Ontology development== | ||
Themes: | |||
* Ontology Development 101 method | |||
Mandatory readings: | |||
* Chapters 14-16 in Allemang & Hendler. ''In text book.'' | * Chapters 14-16 in Allemang & Hendler. ''In text book.'' | ||
* [http://liris.cnrs.fr/alain.mille/enseignements/Ecole_Centrale/What%20is%20an%20ontology%20and%20why%20we%20need%20it.htm Noy & McGuinness (2001): Ontology Development 101: A Guide to Creating Your First Ontology.] ''Paper.'' | * [http://liris.cnrs.fr/alain.mille/enseignements/Ecole_Centrale/What%20is%20an%20ontology%20and%20why%20we%20need%20it.htm Noy & McGuinness (2001): Ontology Development 101: A Guide to Creating Your First Ontology.] ''Paper.'' | ||
* [[:File:S13-OntologyDevelopment-4.pdf | Slides from the lecture]] | |||
Useful materials: | |||
* [http://www.sciencedirect.com/science/article/pii/S095741741101640X Sicilia et al. (2012): Empirical findings on ontology metrics.] ''Paper.'' (cursory) | * [http://www.sciencedirect.com/science/article/pii/S095741741101640X Sicilia et al. (2012): Empirical findings on ontology metrics.] ''Paper.'' (cursory) | ||
<div class="credits" style="text-align: right; direction: ltr; margin-left: 1em;">''INFO216, UiB, Spring 2017, | | ||
<div class="credits" style="text-align: right; direction: ltr; margin-left: 1em;">''INFO216, UiB, Spring 2017-2018, Andreas L. Opdahl (c)''</div> |
Revision as of 20:04, 2 March 2019
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 an 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)
Case-based examples:
OWL helpful clarifications:
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)