Readings: Difference between revisions

From info216
No edit summary
(44 intermediate revisions by the same user not shown)
Line 16: Line 16:


''Note:'' to download some of the papers, you may need to be inside UiB's network. Either use a computer directly on the UiB network or connect to your UiB account through VPN.
''Note:'' to download some of the papers, you may 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=
Line 22: Line 21:
Below are the mandatory and suggested readings for each lecture. All the textbook chapters in Allemang, Hendler & Gandon are mandatory, whereas the chapters in Blumauer & Nagy are suggested.
Below are the mandatory and suggested readings for each lecture. All the textbook chapters in Allemang, Hendler & Gandon are mandatory, whereas the chapters in Blumauer & Nagy are suggested.


'''To be updated - the readings below ''are not final for Spring 2022''.'''
''To be updated - the readings for the later lectures are not yet final for Spring 2022.''
 
 
<!--[[Java-based readings]] are also available as an alternative to the Python-based materials.-->




Line 35: Line 31:


Mandatory readings:
Mandatory readings:
* Chapters 1-2 in Allemang & Hendler (suggested)
* Chapters 1-2 in Allemang, Hendler & Gandon (3rd edition)
* [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]
* [[:File:S01-KnowledgeGraphs.pdf | Slides from the lecture]]
* [[:File:S01-KnowledgeGraphs.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
* Pages 27-55 and 105-122 in Blumauer & Nagy (mandatory)
* Pages 27-55 and 105-122 in Blumauer & Nagy (suggested)
* Important knowledge graphs:
* Important knowledge graphs (we will look more at them later!):
  * Wikidata (https://www.wikidata.org/)
** Wikidata (https://www.wikidata.org/)
  * DBpedia (https://www.dbpedia.org, https://dbpedia.org/page/Bergen)
** DBpedia (https://www.dbpedia.org, https://dbpedia.org/page/Bergen)
  * GeoNames (https://www.geonames.org/)
** GeoNames (https://www.geonames.org/)
  * BabelNet (https://babelnet.org/)
** BabelNet (https://babelnet.org/)
  * Linked Open Vocabularies (LOV, https://lov.linkeddata.es/dataset/lov/)
** Linking Open Data (LOD) (http://lod-cloud.net)
** Linked Open Vocabularies (LOV, https://lov.linkeddata.es/dataset/lov/)
 
 


==Lecture 2: Representing KGs (RDF)==
==Lecture 2: Representing KGs (RDF)==
Line 55: Line 54:


Mandatory readings:
Mandatory readings:
* Pages 25-28, 92-100, 125-128, and 164-167 in Blumauer & Nagy (mandatory)
* Chapter 3 in Allemang, Hendler & Gandon (3rd edition)
* [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]
* [http://rdflib.readthedocs.io/ rdflib 5.0.0] materials:
* [http://rdflib.readthedocs.io/ rdflib 6.1.1]
** Main page
** Main page
** Getting started with RDFLib
** Getting started with RDFLib
Line 67: Line 66:


Useful materials:
Useful materials:
* Chapter 3 in Allemang & Hendler (suggested)
* Pages 25-28, 92-100, 125-128, and 164-167 in Blumauer & Nagy (suggested)
* [https://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib API documentation] (useful for the labs and group project)
* [https://www.w3.org/TR/rdf11-concepts/ W3C's RDF 1.1 Concepts and Abstract Syntax]
* [https://github.com/RDFLib/rdflib RDFLib's GitHub page]
* [https://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib API documentation] (useful reference for the labs)
* [https://www.w3.org/TR/rdf11-concepts/ W3C's RDF 1.1 Concepts and Abstract Syntax] (cursory)
* [https://www.ldf.fi/service/rdf-grapher RDF Grapher] for drawing RDF graphs
* [https://www.w3.org/2018/09/rdf-data-viz/ RDF Data Visualization tools]
* An overview page of some other [https://www.w3.org/2018/09/rdf-data-viz/ RDF Data Visualization tools]




Line 82: Line 81:


Mandatory readings:
Mandatory readings:
* For example pages 54-55, 133 in Blumauer & Nagy (mandatory)
* Chapter 6 in Allemang, Hendler & Gandon (3rd edition)
* Chapter 5 in Allemang & Hendler (suggested)
* [[:File:sparql-1_1-cheat-sheet.pdf | SPARQL 1.1 Cheat Sheet]]
* [[:File:sparql-1_1-cheat-sheet.pdf | SPARQL 1.1 Cheat Sheet]]
* [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)
<!-- * [[:File:S03-SPARQL-13.pdf | Slides from the lecture]] -->
* [https://rdflib.readthedocs.io/ rdflib 6.1.1] materials:
* [https://rdflib.readthedocs.io/ rdflib 5.0.0] materials:
** Querying with SPARQL
** Querying with SPARQL
* [[:File:S03-SPARQL.pdf | Slides from the lecture]]
* [[:File:S03-SPARQL.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
* For example pages 54-55, 133 in Blumauer & Nagy (suggested)
* [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] (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]
* [https://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib API documentation] (same as Lecture 1)
* [https://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib API documentation] (same as Session 2)
 


==Lecture 4: Storing and sharing KGs==
==Lecture 4: Storing and sharing KGs==


Themes:
Themes:
* Application architecture
* Triple stores and Blazegraph
* Triple stores and Blazegraph
* Endpoints and Wikidata Query Service (WDQS)
* Web APIs and JSON-LD
* Web APIs and JSON-LD
* Serialisation formats
* Other serialisation formats


Mandatory readings:
Mandatory readings:
* Part 4 (System Architecture and Technologies) in Blumauer & Nagy (mandatory)
* Chapter 4 in Allemang, Hendler & Gandon (3rd edition)
* Chapter 4 in Allemang & Hendler (suggested)
* [http://lov.okfn.org/dataset/lov/ Linked Open Vocabularies (LOV)]
* [https://wiki.blazegraph.com/wiki/index.php/Main_Page Blazegraph]:
* [https://wiki.blazegraph.com/wiki/index.php/Main_Page Blazegraph]:
** Introduction - About Blazegraph
** Introduction - About Blazegraph
** Getting started
** Getting started
** SPARQL Extensions - Full Text Search, GeoSpatial Search, Refication Done Right
* Section 2 in W3C's [https://www.w3.org/TR/json-ld-api/ JSON-LD 1.1 Processing Algorithms and API]
* [[:File:S04-Architecture-6.pdf | Slides from the lecture]]
* [[:File:S04-StoringAndSharing.pdf | Slides from the lecture]]
* [https://www.wikidata.org/wiki/Wikidata:Introduction Wikidata]
* [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.1 Processing Algorithms and API] (mandatory)
* [[:File:S04-ToolsAndServices.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
* Part 4 (System Architecture and Technologies) in Blumauer & Nagy (suggested)
* [https://www.JSON.org/json-en.html JSON Syntax] (if you do not know it already :-))
* [https://wiki.blazegraph.com/wiki/index.php/Main_Page Blazegraph]
* [https://wiki.blazegraph.com/wiki/index.php/Main_Page Blazegraph]
** The rest of it...
** The rest of it...
* [http://json-ld.org/ JSON for Linked Data] (supplementary)
* [http://json-ld.org/ JSON for Linked Data]
** [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 5: Open Knowledge Graphs==
==Lecture 5: Open Knowledge Graphs==
Line 142: Line 136:


Mandatory readings:
Mandatory readings:
* Chapter 5 in Allemang, Hendler & Gandon (3rd edition)
* [https://www.w3.org/DesignIssues/LinkedData.html Linked Data], Tim Berners-Lee, 2006-07-27.
* [http://lod-cloud.net The Linking Open Data (LOD) cloud diagram] - The Linked Open Data Cloud
* Important knowledge graphs - and what to read:
** Wikidata (https://www.wikidata.org/):
*** [https://www.wikidata.org/wiki/Wikidata:Introduction Introduction to Wikidata]
*** [https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/Wikidata_Query_Help SPARQL query service/A gentle introduction to the Wikidata Query Service]
*** example: [https://www.wikidata.org/wiki/Q26793]
** DBpedia (https://www.dbpedia.org):
*** [http://wiki.dbpedia.org/about About Dbpedia]
*** example: [https://dbpedia.org/resource/Bergen]
** GeoNames (https://www.geonames.org/):
*** [http://www.geonames.org/about.html About GeoNames]
*** example: [https://www.geonames.org/3161732/bergen.html]
** GDELT (https://www.gdeltproject.org/)
*** [https://www.gdeltproject.org/ The GDELT Project] - see also the About and Data pages
** EventKG (http://eventkg.l3s.uni-hannover.de/)
*** [http://eventkg.l3s.uni-hannover.de/ EventKG - A Multilingual Event-Centric Temporal Knowledge Graph]
** WordNet (https://wordnet.princeton.edu/)
*** [https://wordnet.princeton.edu/ WordNet - A lexical database for English]
** BabelNet (https://babelnet.org/):
*** [http://live.babelnet.org/about About BabelNet]
*** [https://babelnet.org/how-to-use How to use]
*** example: [https://babelnet.org/synset?id=bn%3A00010008n&orig=Bergen&lang=EN]
*  [[:File:S05-OpenKGs.pdf | Slides from the lecture]]
Useful materials:
* [[: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.]]
* Parts 1 and 3 in Blumauer & Nagy's text book (not tightly related to the lecture, but time to finish them by now :-))
* Parts 1 and 3 in Blumauer & Nagy's text book (not tightly related to the lecture, but time to finish them by now :-))
* [[: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.]]
* Wikidata statistics
* [[: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.]]
** [https://grafana.wikimedia.org/d/000000167/wikidata-datamodel?orgId=1&refresh=30m Entity statistics]
* [http://lod-cloud.net The Linking Open Data (LOD) cloud diagram]
** [https://grafana.wikimedia.org/d/000000175/wikidata-datamodel-statements?orgId=1&refresh=30m Statement statistics]
* [[:File:S09-S10-OpenKnowledgeGraphs.pdf | Slides from the lecture]]
* GDELT documentation
** [http://data.gdeltproject.org/documentation/GDELT-Event_Codebook-V2.0.pdf Event Codebook (and covers mentions)]
** [http://data.gdeltproject.org/documentation/CAMEO.Manual.1.1b3.pdf CAMEO event codes and other codes]
** [http://data.gdeltproject.org/documentation/GDELT-Global_Knowledge_Graph_Codebook-V2.1.pdf Global Knowledge Graph Codebook]


Useful materials:
* [https://www.wikidata.org/wiki/Wikidata:Introduction Introduction to Wikidata] and its [https://www.mediawiki.org/wiki/Wikibase/Indexing/RDF_Dump_Format RDF mapping]
* [http://wiki.dbpedia.org/about About Dbpedia], its [https://wiki.dbpedia.org/services-resources/ontology Ontology], which you can [https://dbpedia.org/ontology/Place browse]
* [https://www.gdeltproject.org/ The GDELT Project] - see also the About and Data pages
* [http://eventkg.l3s.uni-hannover.de/ EventKG - A Multilingual Event-Centric Temporal Knowledge Graph]
* [http://www.geonames.org/about.html About GeoNames]
* [https://wordnet.princeton.edu/ WordNet - A lexical database for English]
* [http://live.babelnet.org/about About BabelNet]


==Lecture 6: Enterprise Knowledge Graphs==
==Lecture 6: Enterprise Knowledge Graphs==


Themes:  
Themes:  
* Enterprise Knowledge Graphs
* Google’s Knowledge Graph
* Google’s Knowledge Graph
* Amazon’s Product Graphs
* Amazon’s Product Graphs
* Others (← F1)
* News Hunter’s infrastructure and architecture
* News Hunter’s infrastructure and architecture


Mandatory readings:
Mandatory readings:
* Parts 2 and 4 in Blumauer & Nagy's text book
* [https://www.blog.google/products/search/introducing-knowledge-graph-things-not/ Introducing the Knowledge Graph: Things not Strings], Amit Singhal, Google (2012). ''(The blog post that introduced Google's knowledge graph to the world.)''
* [[:File:S11-EnterpriseKnowledgeGraphs.pdf | Slides from the lecture]]
* [https://blog.google/products/search/about-knowledge-graph-and-knowledge-panels/ A reintroduction to our Knowledge Graph and knowledge panels], Danny Sullivan, Google (2020).
* [[:File:S11-NewsHunter-InfraAndArch.pdf | Slides about the News Hunter infrastructure and architecture]]
* [https://www.aboutamazon.com/news/innovation-at-amazon/making-search-easier How Amazon’s Product Graph is helping customers find products more easily], Arun Krishnan, Amazon (2018). ''(Short blog post that reviews some central ideas from the AutoKnow research paper listed below.)''
* [[:File:S06-EnterpriseKGs.pdf | Slides from the lecture]]  


Supplementary readings:
Supplementary readings:
* [https://www.blog.google/products/search/introducing-knowledge-graph-things-not/ Introducing the Knowledge Graph: Things not Strings], Amit Singhal, Google (2012). ''(The blog post that introduced Google's knowledge graph to the world.)''
* Parts 2 and 4 in Blumauer & Nagy's text book (''strongly suggested - this is where Blumauer & Nagy's book is good!'')
* [https://blog.google/products/search/about-knowledge-graph-and-knowledge-panels/ A reintroduction to our Knowledge Graph and knowledge panels], Danny Sullivan, Google (2020).
* [[:File:A1-Poster-NIKT2021.pdf | News Angler / News Hunter poster]]
* [[:File:2006.13473.pdf | AutoKnow: Self-Driving Knowledge Collection for Products of Thousands of Types]]. Example of research paper from Amazon - perhaps a bit heavy on Bachelor level, but you may want to have a look :-)
* [[:File:2006.13473.pdf | AutoKnow: Self-Driving Knowledge Collection for Products of Thousands of Types]]. Example of research paper from Amazon - this is a bit heavy for Bachelor level, but you can have a look :-)
* [https://www.aboutamazon.com/news/innovation-at-amazon/making-search-easier How Amazon’s Product Graph is helping customers find products more easily], Arun Krishnan, Amazon (2018). ''(Short blog post that reviews some central ideas from the above research paper.)''




Line 185: Line 202:


Mandatory readings:
Mandatory readings:
* Pages 101-106 in Blumauer & Nagy (mandatory)
* Chapters 7-8 in Allemang, Hendler & Gandon (3rd edition)
* Chapters 6-7 in Allemang & Hendler (suggested)
* [http://www.w3.org/TR/rdf-schema/ W3C's RDF Schema 1.1], focus on sections 1-3 and 6
* [http://www.w3.org/TR/rdf-schema/ W3C's RDF Schema 1.1], focus on sections 1-3 and 6 (mandatory)
* [[:File:S07-RDFS.pdf | Slides from the lecture]]  
* [[:File:S05-RDFS.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)
* Pages 101-106 in Blumauer & Nagy (suggested)
* [https://www.w3.org/TR/rdf11-mt/ W3C's RDF 1.1 Semantics] (''the axioms and entailments in sections 8 and 9, are most important, and we will review them in the lecture'')
* [https://github.com/blazegraph/database/wiki/InferenceAndTruthMaintenance Inference and Thruth Maintenance in Blazegraph]
* [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://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://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/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 8: Vocabularies==
==Lecture 8: Ontologies (OWL)==
 
Themes:
* LOD vocabularies and ontologies
 
Mandatory readings:
* All of Blumauer & Nagy's text book is mandatory reading. Although the chapters do not match up well with the lectures, this is a good time to finish parts 1 and 3.
* Chapters 9-10 and 13 in Allemang & Hendler (suggested)
* [http://lov.okfn.org/dataset/lov/ Linked Open Vocabularies (LOV)]
* [[:File:S07-S08-VocabulariesAndOntologies.pdf | Slides from the lectures]]
* [[:File:S08-NewsAngler-ontologies.pdf | Additional slides about the News Angler/News Hunter ontologies]]
 
Useful materials:
* Vocabularies / ontologes:
** [http://www.w3.org/2004/02/skos/ SKOS - Simple Knowledge Organization System Home Page]
** [http://schema.org/docs/full.html schema.org - Full Hierarchy]
** [http://dublincore.org/ Dublin Core (DC)]
** [http://xmlns.com/foaf/spec/ Friend of a Friend (FOAF)]
** [https://www.w3.org/2003/01/geo/ geo: World Geodetic Standard (WGS) 84]
** [http://purl.org/vocab/vann/ Annotating vocabulary descriptions (VANN)]
** [https://www.w3.org/2003/06/sw-vocab-status/note Vocabulary Status (VS)]
** [http://creativecommons.org/ns Creative Commons (CC) Vocabulary]
** [http://www.w3.org/ns/prov# Provenance Interchange (PROV)]
** [http://motools.sourceforge.net/event/event.html Event Ontology (event)]
** [http://www.w3.org/TR/owl-time/ Time ontology in OWL (time, OWL-time)]
** [http://motools.sourceforge.net/timeline/timeline.html Timeline Ontology (tl)]
** [http://vocab.org/bio/ Biographical Information (BIO)]
** [http://rdfs.org/sioc/spec/ Semantic Interlinked Online Communities (SIOC)]
** [http://bibliontology.com/ Bibliographic Ontology (bibo)]
** [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.
 
==Lecture 9: Ontologies (OWL)==


Themes:
Themes:
Line 249: Line 222:


Mandatory readings:
Mandatory readings:
* Pages 106-109 in Blumauer & Nagy (mandatory)
* Chapter 9-10 in Allemang, Hendler & Gandon (3rd edition)
* Chapter 8 in Allemang & Hendler (suggested)
* [http://www.w3.org/TR/owl-primer OWL2 Primer], sections 2-6
* [http://www.w3.org/TR/owl-primer OWL2 Primer], sections 2-6
* [http://vowl.visualdataweb.org/ VOWL: Visual Notation for OWL Ontologies]
* [http://vowl.visualdataweb.org/ VOWL: Visual Notation for OWL Ontologies]
* [[:File:S06-OWL-1.pdf | Slides from the lecture.]]
* [[:File:S08-OWL.pdf | Slides from the lecture (old slides from 2021)]]


<!--
Useful materials (cursory):
Useful materials (cursory):
* Pages 106-109 in Blumauer & Nagy (suggested)
* [http://www.w3.org/TR/owl-overview OWL 2 Document Overview]
* [http://www.w3.org/TR/owl-overview OWL 2 Document Overview]
* [https://www.w3.org/TR/owl2-quick-reference/ OWL 2 Quick Reference Guide]
* [https://www.w3.org/TR/owl2-quick-reference/ OWL 2 Quick Reference Guide]
* [https://www.w3.org/TR/owl2-rdf-based-semantics/ OWL2 RDF-Based Semantics]
* [https://www.w3.org/TR/owl2-rdf-based-semantics/ OWL2 RDF-Based Semantics]
* The OWL-RL materials from Lecture 5
* The OWL-RL materials from Lecture 5
* [[: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.'']]
<!--
 
* [https://jena.apache.org/documentation/javadoc/jena/ Javadoc] for
 
** OntModel (createOntologyModel)
==Lecture 9: Vocabularies==
** OntModelSpec (the different reasoners are outlined [https://jena.apache.org/documentation/inference/index.html 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:
Themes:
* [[:File:S6_RDFS_Plus_Example.pdf | RDFS Plus People and Person case]]
* LOD vocabularies and ontologies
 
Mandatory readings:
* Chapters 10-11 in Allemang, Hendler & Gandon (3rd edition)
* [http://lov.okfn.org/dataset/lov/ Linked Open Vocabularies (LOV)]
* Important vocabularies / ontologies:
** [http://www.w3.org/2004/02/skos/ SKOS - Simple Knowledge Organization System Home Page]
** [http://dublincore.org/ Dublin Core (DC)]
** [http://xmlns.com/foaf/spec/ Friend of a Friend (FOAF)]
** [http://schema.org/docs/full.html schema.org - Full Hierarchy]
** [http://wikidata.dbpedia.org/services-resources/ontology DBpedia Ontology]
** [http://creativecommons.org/ns Creative Commons (CC) Vocabulary]
** [http://www.w3.org/ns/prov# Provenance Interchange (PROV)]
** [http://motools.sourceforge.net/event/event.html Event Ontology (event)]
** [http://www.w3.org/TR/owl-time/ Time ontology in OWL (time, OWL-time)]
** [http://rdfs.org/sioc/spec/ Semantic Interlinked Online Communities (SIOC)]
** ''What we expect you to know about each vocabulary is this:''
*** Its purpose and where and how it can be used.
*** 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.
* [[:File:S09-Vocabularies.pdf | Slides from the lectures]]
* [[:File:S09-NewsAnglerOntologies.pdf | Additional slides about the News Angler/News Hunter ontologies (same slides as  2021)]]


OWL helpful clarifications:
Useful materials:
* [[:File:OWL-example_I.pdf | owl:InverseFuctionalProperty vs owl:propertyDisjointWith]]
* More vocabularies / ontologies:
-->
** [https://www.w3.org/2003/01/geo/ geo: World Geodetic Standard (WGS) 84]
** [http://purl.org/vocab/vann/ Annotating vocabulary descriptions (VANN)]
** [https://www.w3.org/2003/06/sw-vocab-status/note Vocabulary Status (VS)]
** [http://motools.sourceforge.net/timeline/timeline.html Timeline Ontology (tl)]
** [http://vocab.org/bio/ Biographical Information (BIO)]
** [http://bibliontology.com/ Bibliographic Ontology (bibo)]
** [http://musicontology.com/ Music Ontology (mo)]


==Lecture 10: Reasoning about KGs (DL)==
==Lecture 10: Reasoning about KGs (DL)==
Line 285: Line 280:


Mandatory readings:
Mandatory readings:
* [[:File:S13-OWL-DL.pdf | Slides from the lecture]]
* [[:File:S10-DescriptionLogic.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
* [[:File:NardiBrachman-IntroductionToDescriptionLogic.pdf | Nardi & Brachman: Introduction to Description Logics. Chapter 1 in Description Logic Handbook.]] ''(cursory)''
* [[: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.]]
* [[: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.
** ''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:DL-reasoning-RoyalFamily-final.owl.txt | Example file]] demonstrating Protege-OWL reasoning with HermiT.
<!--
Useful materials:
* [http://www.sciencedirect.com/science/article/pii/S095741741101640X Sicilia et al. (2012): Empirical findings on ontology metrics.] ''(very cursory paper)''
-->


==Lecture 11: Formal ontologies (OWL-DL)==
==Lecture 11: Formal ontologies (OWL-DL)==
Line 304: Line 294:


Mandatory readings:
Mandatory readings:
* Chapters 12-13 in Allemang, Hendler & Gandon (3rd edition)
* [http://www.w3.org/TR/owl-primer OWL2 Primer]
* [http://www.w3.org/TR/owl-primer OWL2 Primer]
* [[:File:S12-OWL-2.pdf | Slides from the lecture]]
* [[:File:S11-OWL-DL.pdf | Slides from the lecture]]


Useful materials:
Useful materials:
* Chapters 11-12 in Allemang & Hendler.
* [http://www.w3.org/TR/owl-overview OWL 2 Document Overview]
* [http://www.w3.org/TR/owl-overview OWL 2 Document Overview] (cursory)
* [https://www.w3.org/TR/2012/REC-owl2-quick-reference-20121211/ OWL 2 Quick Reference Guide] (cursory)
* [https://www.w3.org/TR/2012/REC-owl2-quick-reference-20121211/ OWL 2 Quick Reference Guide] (cursory)
* [http://vowl.visualdataweb.org/v2 VOWL: Visual Notation for OWL Ontologies] (cursory)
* [http://vowl.visualdataweb.org/v2 VOWL: Visual Notation for OWL Ontologies]
* [http://vowl.visualdataweb.org/webvowl/index.html#sioc WebVOWL] (cursory)
* [http://vowl.visualdataweb.org/webvowl/index.html#sioc WebVOWL]
<!--
* [[:File:DL-reasoning-RoyalFamily-final.owl.txt | Example file]] demonstrating Protege-OWL reasoning with HermiT.
* [https://jena.apache.org/documentation/ontology/ Jena Ontology API] (we will most likely not go into this) (cursory)
 
-->
Owlready2 materials for the lab:
* The section [https://pypi.org/project/Owlready2/ What can I do with Owlready2?]
* [https://owlready2.readthedocs.io/en/latest/ Welcome to Owlready2's documentation!]


==Lecture 12: KG embeddings==
==Lecture 12: KG embeddings==
Themes:
* KG embeddings
* Link prediction
* TorchKGE
Mandatory readings:
* [https://towardsdatascience.com/introduction-to-machine-learning-for-beginners-eed6024fdb08 Introduction to Machine Learning for Beginners] ([[:file:IntroToMachineLearning.pdf | PDF]])
* [https://towardsdatascience.com/introduction-to-word-embedding-and-word2vec-652d0c2060fa Introduction to Word Embeddings and word2vec] ([[:file:IntroToWordEmbeddings.pdf | PDF]])
* [https://towardsdatascience.com/introduction-to-knowledge-graph-embedding-with-dgl-ke-77ace6fb60ef Introduction to Knowledge Graph Embeddings] ([[:file:IntroToKGEmbeddings.pdf | PDF]])
* [[:file:S12-GraphEmbeddings.pdf | Slides from the lecture]]
Supplementary readings:
* [[:file:Mikolov_et_al._-_2013_-_Efficient_Estimation_of_Word_Representations_in_Ve.pdf | Mikolov et al’s original word2vec paper]]
* [[:file:Bordes_et_al._-_Translating_Embeddings_for_Modeling_Multi-relation.pdf | Bordes et al’s original TransE paper]]
* [https://torchkge.readthedocs.io/en/latest/ Welcome to TorchKGE’ s documentation!] (for the labs)


==Lecture 13: Knowledge Engineering==
==Lecture 13: Knowledge Engineering==


Themes:
Themes:
* Ontology Development 101 method
* Knowledge engineering
* The Ontology Development 101 method


Mandatory readings:
Mandatory readings:
* Pages ... in Blumauer & Nagy (mandatory)
* Chapters 14-16 in Allemang, Hendler & Gandon (3rd edition)
* Chapters 14-16 in Allemang & Hendler (suggested)
* [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.]
* [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:S15-OntologyDevelopment-5.pdf | Slides from the lecture (old slides from 2021)]]
* [[:File:S15-OntologyDevelopment-5.pdf | Slides from the lecture]]
 
Useful materials:
* The rest of Blumauer & Nagy (suggested)
 


==Lecture 14: Wrapping up==
==Lecture 14: Wrapping up==

Revision as of 11:39, 24 April 2022

Textbooks

Main course book:

  • Dean Allemang, James Hendler & Fabien Gandon (2020). Semantic Web for the Working Ontologist, Effective Modeling for Linked Data, RDFS and OWL (Third Edition). ISBN: 9781450376143, PDF ISBN: 9781450376150, Hardcover ISBN: 9781450376174, DOI: 10.1145/3382097. The whole book is mandatory reading.

Supplementary text book (not mandatory):

  • Andreas Blumauer and Helmut Nagy (2020). The Knowledge Graph Cookbook - Recipes that Work. mono/monochrom. ISBN-10: ‎3902796707, ISBN-13: 978-3902796707.

Other materials

In addition, the materials listed below for each lecture are either mandatory or suggested reading. More materials will be added to each lecture in the coming 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 may 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 in Allemang, Hendler & Gandon are mandatory, whereas the chapters in Blumauer & Nagy are suggested.

To be updated - the readings for the later lectures are not yet final for Spring 2022.


Lecture 1: Introduction to knowledge Graphs

Themes:

  • Introduction to Knowledge Graphs
  • Organisation of INFO216

Mandatory readings:

Useful materials:


Lecture 2: Representing KGs (RDF)

Themes:

  • RDF
  • Programming RDF in Python

Mandatory readings:

Useful materials:


Lecture 3: Querying and updating KGs (SPARQL)

Themes:

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

Mandatory readings:

Useful materials:


Lecture 4: Storing and sharing KGs

Themes:

  • Triple stores and Blazegraph
  • Web APIs and JSON-LD
  • Other serialisation formats

Mandatory readings:

Useful materials:


Lecture 5: Open Knowledge Graphs

Themes:

  • The LOD cloud
  • Important open KGs (LOD datasets)
    • Wikidata
    • DBpedia
    • the GDELT project
    • EventKG
    • GeoNames
    • WordNet
    • BabelNet
    • and others

Mandatory readings:

Useful materials:


Lecture 6: Enterprise Knowledge Graphs

Themes:

  • Enterprise Knowledge Graphs
  • Google’s Knowledge Graph
  • Amazon’s Product Graphs
  • News Hunter’s infrastructure and architecture

Mandatory readings:

Supplementary readings:


Lecture 7: Rules (RDFS)

Themes:

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

Mandatory readings:

Useful materials:


Lecture 8: Ontologies (OWL)

Themes:

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

Mandatory readings:

Useful materials (cursory):


Lecture 9: Vocabularies

Themes:

  • LOD vocabularies and ontologies

Mandatory readings:

Useful materials:

Lecture 10: Reasoning about KGs (DL)

Themes:

  • Description logic
  • Decision problems
  • OWL-DL

Mandatory readings:

Useful materials:

Lecture 11: Formal ontologies (OWL-DL)

Themes:

  • Advanced OWL

Mandatory readings:

Useful materials:

Owlready2 materials for the lab:

Lecture 12: KG embeddings

Themes:

  • KG embeddings
  • Link prediction
  • TorchKGE

Mandatory readings:

Supplementary readings:

Lecture 13: Knowledge Engineering

Themes:

  • Knowledge engineering
  • The Ontology Development 101 method

Mandatory readings:

Useful materials:

  • The rest of Blumauer & Nagy (suggested)


Lecture 14: Wrapping up

 

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