Readings: Difference between revisions

From info216
(47 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Text book=
=Textbook=
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.'''  
 
The textbook 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=
=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 in the curriculum.'''
In addition, '''the materials listed below for each lecture are either mandatory or suggested reading.''' Because we are moving from Java to Python this spring, the reading list is not final. We will add more materials to each lecture in the next few weeks.
 
'''The lectures and lectures notes are also part of the curriculum.'''
 
Make sure you download the electronic resources to your own computer in good time before the exam. This is your own responsibility. That way you are safe if a site becomes unavailable or somehow damaged the last few days before the exam.  
 
''Note:'' 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 through VPN.
 


=Lectures=
=Lectures=
Below are the mandatory and suggested readings for each lecture. All the text-book chapters are mandatory.


==Lecture 1: Introduction==
Below are the mandatory and suggested readings for each lecture. All the textbook chapters are mandatory. [[Java-based readings]] are also available as an alternative to the Python-based materials.
 
 
==Lecture 1: Knowledge Graphs==


Themes:
Themes:
* Web of Data
* Web of Data
* INFO216
* INFO216
* Jena
* RDFLib
* The programming project
* The programming project


Mandatory readings:
Mandatory readings:
* Chapters 1-2 in Allemang & Hendler. ''In text book.''
* Chapters 1-2 in Allemang & Hendler. ''In the 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)
* [https://rdflib.readthedocs.io/ rdflib 4.2.2]
* [http://jena.apache.org/documentation/rdf/index.html The core RDF API] (mandatory)
** Main page and Getting started with RDFLib
* [http://jena.apache.org/tutorials/rdf_api.html An introduction to RDF and the Jena RDF API] (mandatory)
* [[:File:S01-KG-8.pdf | Slides from the lecture]]
<!--
* [[:File:S01-Intro-WoD-Jena-7.pdf | Slides from the lecture]]
-->


Useful materials:
Useful materials:
* [http://jena.apache.org/about_jena/ Welcome to Apache Jena] (useful starting page)
* [https://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib API documentation]
* [http://jena.apache.org/index.html Apache Jena] main page (useful starting page)
* [https://github.com/RDFLib/rdflib RDFLib's GitHub 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)


==Lecture 2: RDF==
==Lecture 2: RDF==
Line 38: Line 43:
Themes:  
Themes:  
* RDF
* RDF
* RDF in Jena
* Programming RDF in Python
* Finding datasets and vocabularies for your projects
* Finding datasets and vocabularies for your projects


<!--
Mandatory readings:
Mandatory readings:
* Chapter 3 in Allemang & Hendler. ''In text book.''
* Chapter 3 in Allemang & Hendler. ''In the 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 with the Jena RDF materials from lecture 1:
* We also 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]]
* [[:File:S02-RDF-8.pdf | Slides from the lecture]]
-->


Useful materials:
Useful materials:
* [https://www.w3.org/TR/rdf11-concepts/ W3C's RDF 1.1 Concepts and Abstract Syntax] (cursory)
* [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: SPARQL==
Themes:
* SPARQL
* SPARQL Update
* Programming SPARQL and SPARQL Update in Python
<!--
Mandatory readings:
* Chapter 5 in Allemang & Hendler. ''In the text book.''
* [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]]
Useful materials:
* [http://www.w3.org/TR/sparql11-query/ SPARQL 1.1 Query 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]
* [http://jena.apache.org/documentation/javadoc/arq/ 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: Application Architecture==
Themes:
* Application components
* Triple stores
* Visualisation
<!--
Mandatory readings:
* Chapter 4 in Allemang & Hendler. ''In the 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://mgskjaeveland.github.io/sgvizler/ Sgvizler 0.6]
* [[: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]]
-->


==Lecture 3: RDFS==
 
==Lecture 5: RDFS==


Themes:
Themes:
* RDFS
* RDFS
* Axioms, rules and entailment
* Axioms, rules and entailment
* Programming RDFS in Jena
* Programming RDFS in Python


<!--
Mandatory readings:
Mandatory readings:
* Chapters 6-7 in Allemang & Hendler. ''In text book.''
* Chapters 6-7 in Allemang & Hendler. ''In the text book.''
* [http://www.w3.org/TR/rdf-schema/ W3C's RDF Schema 1.1] (mandatory)
* [http://www.w3.org/TR/rdf-schema/ W3C's RDF Schema 1.1] (mandatory)
<!--
* [[:File:S05-RDFS-10.pdf | Slides from the lecture]]
* [[:File:S03-RDFS-9.pdf | Slides from the lecture]]
-->


Useful materials:
Useful materials:
Line 79: Line 134:
: (supplementary, but perhaps necessary for the labs and project)
: (supplementary, but perhaps necessary for the labs and project)


==Lecture 4: Architecture (and starting with RDFS Plus)==
Case-based examples:
* Chapter 4 in Allemang & Hendler. ''In text book.''
* [[:File:S5_RDFS_Example.pdf | RDFS Eating vegetables case]]
* [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/javadoc/tdb/ Package org.apache.jena.tdb] Class TDBFactory (createDataset)
* [https://jena.apache.org/documentation/fuseki2/index.html Apache Jena Fuseki] (mandatory, but I have not decided whether we will use Fuseki 1 or 2 yet - last time I checked, Fuseki 1 still provided easier support for SPARQL Update)
<!--
* [[:File:S04-architecture-5.pdf | Slides from the lecture]]
-->
-->


If we have time at the end, we will also review basic OWL concepts from "RDFS Plus":
==Lecture 6: RDFS Plus==
* Chapter 8 in Allemang & Hendler. In text book.


==Lecture 5: Services==
Themes:
* [http://json.org/ JSON Syntax] (mandatory)
* Basic OWL concepts
* [http://json-ld.org/spec/latest/json-ld/ JSON-LD 1.1 - A JSON-based Serialization for Linked Data] (supplementary reference)
* Axioms, rules and entailments
* Section 2 in W3C's [https://www.w3.org/TR/json-ld-api/ JSON-LD 1.0 Processing Algorithms and API] (mandatory)
* Programming basic OWL in Python
* [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
<!--
* [[:File:S05-Services-5.pdf | Slides from the lecture]]
-->


==Lecture 6: SPARQL==
* Chapter 5 in Allemang & Hendler. ''In text book.''
* [http://www.w3.org/TR/sparql11-query/ SPARQL 1.1 Query Language]
* [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language]
* [https://www.w3.org/TR/sparql11-overview/ SPARQL 1.1 Overview]
<!--
<!--
* [[:File:S06-SPARQL-11.pdf | Slides from the lecture]]
Mandatory readings:
-->
* Chapter 8 in Allemang & Hendler. ''In the text book.''
* [http://jena.apache.org/documentation/javadoc/arq/ Javadoc] for Apache Jena ARQ 3.2.0
* [[:File:S06-RDFSPlus-4.pdf | Slides from the lecture.]]
** Query, QueryFactory, QueryExecution, QueryExecutionFactory, ResultSet
** UpdateFactory, UpdateAction
: (supplementary, but perhaps necessary for the labs and project)


==Lecture 7: Visualisation==
Useful materials:
* [http://drum.lib.umd.edu/bitstream/handle/1903/466/CS-TR-3665.pdf?sequence=2 Shneiderman, Ben (1996): The eyes have it: A task by data type taxonomy for information visualizations.] ''Paper.''
* [http://dl.acm.org/ft_gateway.cfm?id=2146416&ftid=1146182&dwn=1 Heer & Shneiderman (2012): Interactive Dynamics for Visual Analysis - A taxonomy of tools that support the fluent and flexible use of visualizations.] ''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]
* [[:File:LohmannEtAl2016-VisualizingOntologiesWithVOWL.pdf | Lohmann et al. (2019): Visualizing Ontologies with VOWL. ''Semantic Web Journal.'']] ''Paper.''
<!--
* [[:File:S07-Visualisation-4.pdf | Slides from the lecture]]
-->
 
==Lecture 8: RDFS Plus==
* Chapter 8 in Allemang & Hendler. ''In text book.''
<!--
* [[:File:S08-RDFSPlus-3.pdf | Slides from the lecture.]]
-->
* [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for  
* [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for  
** OntModel (createOntologyModel)  
** OntModel (createOntologyModel)  
Line 139: Line 158:
: (supplementary, but perhaps necessary for the labs and project)
: (supplementary, but perhaps necessary for the labs and project)


==Lecture 9: Vocabularies==
Case-based examples:
* Chapters 9-10 and 13 in Allemang & Hendler. ''In text book.''
* [[: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 and 8: Vocabularies==
 
Themes:
* LOD vocabularies and ontologies
 
<!--
Mandatory readings:
* Chapters 9-10 and 13 in Allemang & Hendler. ''In the 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 163: Line 198:
** [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.
<!--
* [[:File:S09-Vocabularies-20.pdf | Slides from the lecture]]
-->
-->


==Lecture 10: Linked Open Datasets==
==Lecture 9 and 10: Linked Data Resources==
 
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:S08-LinkedOpenDatasets-23.pdf | Slides from the lecture]]
* [[:File:S10-SemanticDatasets-22.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 180: Line 224:
* [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 11 and 12: Web APIs==
Themes:
* JSON, JSON-LD
* Semantic web services
* Semantic workflows
<!--
<!--
* ''Slides from the lecture are joint with Lecture 10 above.''
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==
==Lecture 13: OWL==
* Chapters 11-12 in Allemang & Hendler. ''In text book.''
 
Themes:
* Advanced OWL
* Axioms, rules and entailments
* Programming advanced OWL in Python
 
<!--
Mandatory readings:
* Chapters 11-12 in Allemang & Hendler. ''In the 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 192: Line 265:
* [http://vowl.visualdataweb.org/webvowl/index.html#sioc WebVOWL] (cursory)
* [http://vowl.visualdataweb.org/webvowl/index.html#sioc WebVOWL] (cursory)
* [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 14: OWL DL==
Themes:
* Description logic
* Decision problems
* OWL-DL
* Programming with OWL-DL reasoners in Python
<!--
<!--
* [[:File:S12-OWL-15.pdf | Slides from the lecture]]
Mandatory readings:
-->
* [[:File:S12-OWL-DL-10.pdf | Slides from the lecture]]


==Lecture 12: OWL DL==
Useful materials:
* [[:File:NardiBrachman-IntroductionToDescriptionLogic.pdf | Nardi & Brachman: Introduction to Description Logics. Chapter 1 in Description Logic Handbook.]] ''Chapter.''  (cursory)
* [[: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.]] ''Chapter.'' (cursory, gets mathematical after the introduction)
* [[: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)
<!--
* [[:File:S13-OWL-DL-10.pdf | Slides from the lecture]]
-->
-->


==Lecture 13: Ontology development==
==Lecture 15: Ontology Development and Evaluation==
* Chapters 14-16 in Allemang & Hendler. ''In text book.''
 
Themes:
* Ontology Development 101 method
 
<!--
Mandatory readings:
* Chapters 14-16 in Allemang & Hendler. ''In the 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)
<!--
* [[:File:S14-method-and-quality-4.pdf | Slides from the lecture]]
-->
-->


<div class="credits" style="text-align: right; direction: ltr; margin-left: 1em;">''INFO216, UiB, Spring 2017, Prof. Andreas L. Opdahl (c)''</div>
 
&nbsp;
<div class="credits" style="text-align: right; direction: ltr; margin-left: 1em;">''INFO216, UiB, 2017-2020, Andreas L. Opdahl (c)''</div>

Revision as of 14:51, 16 January 2020

Textbook

The textbook 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 are either mandatory or suggested reading. Because we are moving from Java to Python this spring, the reading list is not final. We will add more materials to each lecture in the next few weeks.

The lectures and lectures notes are also part of the curriculum.

Make sure you download the electronic resources to your own computer in good time before the exam. This is your own responsibility. That way you are safe if a site becomes unavailable or somehow damaged the last few days before the exam.

Note: 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 through VPN.


Lectures

Below are the mandatory and suggested readings for each lecture. All the textbook chapters are mandatory. Java-based readings are also available as an alternative to the Python-based materials.


Lecture 1: Knowledge Graphs

Themes:

  • Web of Data
  • INFO216
  • RDFLib
  • The programming project

Mandatory readings:

Useful materials:

Lecture 2: RDF

Themes:

  • RDF
  • Programming RDF in Python
  • Finding datasets and vocabularies for your projects


Lecture 3: SPARQL

Themes:

  • SPARQL
  • SPARQL Update
  • Programming SPARQL and SPARQL Update in Python


Lecture 4: Application Architecture

Themes:

  • Application components
  • Triple stores
  • Visualisation


Lecture 5: RDFS

Themes:

  • RDFS
  • Axioms, rules and entailment
  • Programming RDFS in Python


Lecture 6: RDFS Plus

Themes:

  • Basic OWL concepts
  • Axioms, rules and entailments
  • Programming basic OWL in Python


Lecture 7 and 8: Vocabularies

Themes:

  • LOD vocabularies and ontologies


Lecture 9 and 10: Linked Data Resources

Themes:

  • Important Linked Open Datasets
    • DBpedia
    • LinkedGeoData
    • GeoNames
    • Wikidata
    • and others


Lecture 11 and 12: Web APIs

Themes:

  • JSON, JSON-LD
  • Semantic web services
  • Semantic workflows


Lecture 13: OWL

Themes:

  • Advanced OWL
  • Axioms, rules and entailments
  • Programming advanced OWL in Python


Lecture 14: OWL DL

Themes:

  • Description logic
  • Decision problems
  • OWL-DL
  • Programming with OWL-DL reasoners in Python


Lecture 15: Ontology Development and Evaluation

Themes:

  • Ontology Development 101 method


 

INFO216, UiB, 2017-2020, Andreas L. Opdahl (c)