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 part of 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] materials:
* [http://jena.apache.org/documentation/rdf/index.html The core RDF API] (mandatory)
** Main page
* [http://jena.apache.org/tutorials/rdf_api.html An introduction to RDF and the Jena RDF API] (mandatory)
** Getting started with RDFLib
* [[:File:INFO216-introducction.pdf | Slides from the lecture]]
* [[:File:S01-KG-8.pdf | Slides from the lecture]]
** [[:File:S01-Intro-WoD-Jena-7.pdf | Additional 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] (useful for the labs and project)
* [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)
 
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]


==Lecture 2: RDF==
==Lecture 2: RDF==
Line 41: Line 44:
Themes:  
Themes:  
* RDF
* RDF
* Programming 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 continue with the Jena RDF materials from lecture 1:
* We also continue with the [https://rdflib.readthedocs.io/ rdflib 4.2.2] materials from lecture 1:
** [http://jena.apache.org/documentation/rdf/index.html The core RDF API] (mandatory)
** Loading and saving RDF
** [http://jena.apache.org/tutorials/rdf_api.html An introduction to RDF and the Jena RDF API] (mandatory)
** Creating RDF triples
* [[:File:S02-RDF-8.pdf | Slides from the lecture]]
** Navigating Graphs
** Utilities and convenience functions
* [[:File:S02-RDF-9.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://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib API documentation] (same as Lecture 1)
* [https://www.w3.org/2018/09/rdf-data-viz/ RDF Data Visualization tools]


==Lecture 3: SPARQL==
==Lecture 3: SPARQL==
Line 60: Line 66:
Themes:
Themes:
* SPARQL
* SPARQL
* Programming SPARQL in Jena
* SPARQL Update
* SPARQL Update
* Programming SPARQL Update in Jena
* Programming SPARQL and SPARQL Update in Python


Mandatory readings:
Mandatory readings:
* Chapter 5 in Allemang & Hendler. ''In text book.''
* 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)
* [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:S03-SPARQL-13.pdf | Slides from the lecture]]
* [https://rdflib.readthedocs.io/ rdflib 4.2.2] materials:
** Querying with SPARQL


Useful materials:
Useful materials:
Line 73: Line 80:
* [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] (the rest of it)
* [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
* [https://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib API documentation] (same as Lecture 1)
** Query, QueryFactory, QueryExecution, QueryExecutionFactory, ResultSet
* [[:File:sparql-1_1-cheat-sheet.pdf | SPARQL 1.1 Cheat Sheet]]
** UpdateFactory, UpdateAction
: (supplementary, but perhaps necessary for the labs and project)


==Lecture 4: Architecture==
==Lecture 4: Application Architecture==


Themes:
Themes:
* Application architecture
* Application components
* Application components
* Triple stores
* Triple stores
Line 87: Line 91:


Mandatory readings:
Mandatory readings:
* Chapter 4 in Allemang & Hendler. ''In text book.''
* 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://wiki.blazegraph.com/wiki/index.php/Main_Page Blazegraph]:
* [https://jena.apache.org/documentation/tdb/index.html Apache's TDB] (mandatory)
** Introduction - About Blazegraph
* [https://jena.apache.org/documentation/tdb/java_api.html Apache's TDB Java API] (mandatory)
** Getting started
* [https://jena.apache.org/documentation/fuseki2/index.html Apache Jena Fuseki] (mandatory, we use Fuseki 2)
** SPARQL Extensions - Full Text Search, GeoSpatial Search, Refication Done Right
* [[:File:S04-architecture-5.pdf | Slides from the lecture]]
* [[:File:S04-Architecture-6.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
* [https://jena.apache.org/documentation/javadoc/tdb/ Package org.apache.jena.tdb] Class TDBFactory (createDataset)
* [https://wiki.blazegraph.com/wiki/index.php/Main_Page Blazegraph]
** The rest of it...
* [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]
* [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]]
Line 109: Line 115:
* 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:S05-RDFS-11.pdf | Slides from the lecture]]


Useful materials:
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://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://github.com/RDFLib/OWL-RL OWL-RL] adds inference capability on top of RDFLib. To use it, copy the ''owlrl'' folder into your project folder, next to your Python files, and import it with ''import owlrl''.
* [https://owl-rl.readthedocs.io/en/latest/owlrl.html OWL-RL documentation] (most likely more detailed than you will need - check the [[Python Examples]] first
* [https://github.com/blazegraph/database/wiki/InferenceAndTruthMaintenance Inference and Thruth Maintenance in Blazegraph]
<!--
* [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/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  
* [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for  
Line 128: Line 138:
Case-based examples:
Case-based examples:
* [[:File:S5_RDFS_Example.pdf | RDFS Eating vegetables case]]
* [[:File:S5_RDFS_Example.pdf | RDFS Eating vegetables case]]
-->


==Lecture 6: RDFS Plus==
==Lecture 6: RDFS Plus==
Line 134: Line 145:
* Basic OWL concepts
* Basic OWL concepts
* Axioms, rules and entailments
* Axioms, rules and entailments
* Programming basic OWL in Jena
* Programming basic OWL in Python


Mandatory readings:
Mandatory readings:
* Chapter 8 in Allemang & Hendler. ''In text book.''
* Chapter 8 in Allemang & Hendler. ''In the text book.''
* [[:File:S06-RDFSPlus-4.pdf | Slides from the lecture.]]
* [[:File:S06-RDFSPlus-5.pdf | Slides from the lecture.]]


Useful materials:
Useful materials (cursory):
* [http://www.w3.org/TR/owl-overview OWL 2 Document Overview]
* [http://www.w3.org/TR/owl-primer OWL2 Primer]
* [https://www.w3.org/TR/2012/REC-owl2-quick-reference-20121211/ OWL 2 Quick Reference Guide]
* [https://www.w3.org/TR/owl2-rdf-based-semantics/ OWL2 RDF-Based Semantics]
* The OWL-RL materials from Lecture 5
<!--
* [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for  
* [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for  
** OntModel (createOntologyModel)  
** OntModel (createOntologyModel)  
Line 148: Line 165:
: (supplementary, but perhaps necessary for the labs and project)
: (supplementary, but perhaps necessary for the labs and project)


==Lecture 7: Vocabularies==
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 and 8: Vocabularies==


Themes:
Themes:
Line 154: Line 178:


Mandatory readings:
Mandatory readings:
* Chapters 9-10 and 13 in Allemang & Hendler. ''In text book.''
* 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://lodstats.aksw.org/ LODstats]
* [[:File:S07-Vocabularies-21.pdf | Slides from the lecture]]
* [[:File:S07-S08-Vocabularies-23.pdf | Slides from the lecture]]
* [[:File:S08-extra-NA-ontologies-1.pdf | Additional slides about the News Angler project]]


Useful materials:
Useful materials:
Line 165: Line 190:
** [http://dublincore.org/ Dublin Core (DC)]
** [http://dublincore.org/ Dublin Core (DC)]
** [http://xmlns.com/foaf/spec/ Friend of a Friend (FOAF)]
** [http://xmlns.com/foaf/spec/ Friend of a Friend (FOAF)]
** [https://www.w3.org/2003/01/geo/wgs84_pos geo: World Geodetic Standard (WGS) 84] (and [https://www.w3.org/2003/01/geo/ few more general comments here])
** [https://www.w3.org/2003/01/geo/ geo: World Geodetic Standard (WGS) 84]
** [https://www.w3.org/TR/vocab-data-cube/ The RDF Data Cube Vocabulary]
** [https://www.w3.org/TR/vocab-data-cube/ The RDF Data Cube Vocabulary]
** [http://purl.org/vocab/vann/ Annotating vocabulary descriptions (VANN)]
** [http://purl.org/vocab/vann/ Annotating vocabulary descriptions (VANN)]
Line 178: Line 203:
** [http://rdfs.org/sioc/spec/ Semantic Interlinked Online Communities (SIOC)]
** [http://rdfs.org/sioc/spec/ Semantic Interlinked Online Communities (SIOC)]
** [http://bibliontology.com/ Bibliographic Ontology (bibo)]
** [http://bibliontology.com/ Bibliographic Ontology (bibo)]
** [http://www.musicontology.com/ Music Ontology (mo)]
** [http://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.
* [https://wiki.uib.no/info216/images/4/42/Slr-kg4news-dataset.txt The SLR-KG4News dataset from the News Angler project]


==Lecture 8 and 9: Linked Open Datasets==
==Lecture 9 and 10: Linked Data Resources==


Themes:
Themes:
Line 195: Line 221:
* [[: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]
* [[:File:S09-S10-LinkedOpenDatasets-25.pdf | Slides from the lecture]]
* [[:File:S08-LinkedOpenDatasets-23.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
* [http://lodstats.aksw.org/ LODstats]
* [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 205: Line 231:
* [http://live.babelnet.org/about BabelNet]
* [http://live.babelnet.org/about BabelNet]


==Lecture 10: Services==
==Lecture 11 and 12: Web APIs==


Themes:  
Themes:  
Line 213: Line 239:


Mandatory readings:
Mandatory readings:
* [http://json.org/ JSON Syntax] (mandatory)
* [https://www.JSON.org/json-en.html 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)
* Section 2 in W3C's [https://www.w3.org/TR/json-ld-api/ JSON-LD 1.1 Processing Algorithms and API] (mandatory)
* [[:File:S10-Services-7.pdf | Slides from the lecture]]
* [[:File:S11-S12-Web-APIs-8.pdf | Slides from the lecture]]
 
Useful materials:
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://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=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
** [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==


Themes:
Themes:
* Advanced OWL
* Advanced OWL
* Axioms, rules and entailments
* Axioms, rules and entailments
* Programming advanced OWL in Jena
* Programming advanced OWL in Python


Mandatory readings:
Mandatory readings:
* Chapters 11-12 in Allemang & Hendler. ''In text book.''
* Chapters 11-12 in Allemang & Hendler. ''In the text book.''
* [[:File:S11-OWL-15-utlagt.pdf | Slides from the lecture]]
* [[:File:S13-OWL-16.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
Line 240: Line 264:
* [http://vowl.visualdataweb.org/v2 VOWL: Visual Notation for OWL Ontologies] (cursory)
* [http://vowl.visualdataweb.org/v2 VOWL: Visual Notation for OWL Ontologies] (cursory)
* [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 12: OWL DL==
==Lecture 14: OWL DL==


Themes:
Themes:
Line 248: Line 274:
* Decision problems
* Decision problems
* OWL-DL
* OWL-DL
* Programming with OWL-DL reasoners in Jena
* Programming with OWL-DL reasoners in Python


Mandatory readings:
Mandatory readings:
* [[:File:S12-OWL-DL-10.pdf | Slides from the lecture]]
* [[:File:S14-OWL-DL-11.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
Line 259: Line 285:
* [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 13: Ontology development==
 
==Lecture 15: Ontology Development==


Themes:
Themes:
Line 265: Line 292:


Mandatory readings:
Mandatory readings:
* Chapters 14-16 in Allemang & Hendler. ''In text book.''
* 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]]
* [[:File:S15-OntologyDevelopment-5.pdf | Slides from the lecture]]


Useful materials:
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.] ''(very cursory paper)''
 


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

Revision as of 08:46, 7 May 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

Mandatory readings:

Useful materials:

Lecture 3: SPARQL

Themes:

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

Mandatory readings:

Useful materials:

Lecture 4: Application Architecture

Themes:

  • Application components
  • Triple stores
  • Visualisation

Mandatory readings:

  • Chapter 4 in Allemang & Hendler. In the text book.
  • Blazegraph:
    • Introduction - About Blazegraph
    • Getting started
    • SPARQL Extensions - Full Text Search, GeoSpatial Search, Refication Done Right
  • Slides from the lecture

Useful materials:


Lecture 5: RDFS

Themes:

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

Mandatory readings:

Useful materials:

Lecture 6: RDFS Plus

Themes:

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

Mandatory readings:

Useful materials (cursory):

Lecture 7 and 8: Vocabularies

Themes:

  • LOD vocabularies and ontologies

Mandatory readings:

Useful materials:

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 9 and 10: Linked Data Resources

Themes:

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

Mandatory readings:

Useful materials:

Lecture 11 and 12: Web APIs

Themes:

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

Mandatory readings:

Useful materials:

Lecture 13: OWL

Themes:

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

Mandatory readings:

Useful materials:

Lecture 14: OWL DL

Themes:

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

Mandatory readings:

Useful materials:


Lecture 15: Ontology Development

Themes:

  • Ontology Development 101 method

Mandatory readings:

Useful materials:


 

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