Knowledge Representation and Reasoning

Academic Year 2026/2027 - Teacher: DANIELE FRANCESCO SANTAMARIA

Expected Learning Outcomes

The Knowledge Representation and Reasoning course aims to provide students with the theoretical and practical tools needed to understand the principles underlying knowledge representation and automated reasoning, with particular reference to Knowledge Graph technologies.


The course introduces the main concepts, methodologies, and technologies for the design, development, documentation, and encoding of knowledge bases, providing students with the skills required to build and use systems based on Knowledge Graphs.


The course is divided into a theoretical component and a practical component. The latter involves the use of the Neo4j framework, through which students will gain hands-on experience in the design, implementation, and querying of Knowledge Graphs.


The course has the following general learning objectives in terms of expected learning outcomes:


1. Knowledge and understanding. By the end of the course, students will have acquired knowledge of the main concepts, models, methodologies, and technologies related to knowledge representation and Knowledge Graphs. They will also be able to understand the principles underlying the design and management of knowledge bases, as well as the main tools used for their implementation and querying.


2. Applying knowledge and understanding. By the end of the course, students will be able to apply the knowledge acquired to the design, implementation, documentation, and querying of knowledge bases. They will also be able to use the Neo4j framework to implement and manage Knowledge Graphs, applying appropriate techniques and methodologies to basic problems in knowledge representation and management.


3. Making judgements. Students will be able to analyse knowledge representation problems and critically evaluate approaches, models, and technological solutions according to the characteristics of the problem being addressed. They will also be able to identify appropriate approaches for modelling, organising, and querying knowledge within a Knowledge Graph.


4. Communication skills. Students will be able to clearly and appropriately describe and present the concepts, methodologies, and solutions adopted in the context of knowledge representation and Knowledge Graphs. They will also be able to document the knowledge bases they develop and communicate their design choices using appropriate technical terminology.


5. Learning skills. Students will develop the ability to independently learn and adopt new tools, technologies, and methodologies in the field of knowledge representation and Knowledge Graphs. They will also be able to consult technical and scientific documentation and independently deepen their knowledge of the topics covered in the course, including in relation to the evolution of knowledge management technologies.

Course Structure

The course includes theoretical lectures and practical classroom sessions, complemented, where possible, by seminars, aimed at presenting and discussing the main concepts, methodologies, and technologies related to knowledge representation and Knowledge Graphs.

Required Prerequisites

No specific prerequisites are required. However, students are expected to have the knowledge and skills typically acquired through a Bachelor’s degree in Computer Science, including basic programming, algorithms, data structures, and fundamental computer science concepts.


Attendance of Lessons

Attendance is optional but strongly recommended.

Detailed Course Content

  1. The role of Knowledge Graphs in modern AI: an overview.
  2. Introduction to knowledge representation: definition of knowledge, information, and data; the DIKW pyramid and the semiotic triangle.
  3. Introduction to knowledge reasoning: definitions.
  4. Introduction to knowledge representation: Semantic Networks.
  5. Introduction to knowledge representation: Frames.
  6. Introduction to knowledge representation: modern solutions.
  7. Introduction to knowledge reasoning: an introduction to Description Logic.
  8. Introduction to knowledge reasoning: an introduction to Logic Programming.
  9. Introduction to knowledge reasoning: an introduction to Production System Rules.
  10. Introduction to knowledge modeling: KADS.
  11. Introduction to knowledge modeling: ontologies.
  12. Knowledge Graphs: historical background.
  13. Knowledge Graphs: definitions.
  14. Knowledge Graphs: data models.
  15. Knowledge Graphs, from design to release: introduction.
  16. Knowledge Graphs, from design to release: the creation phase.
  17. Knowledge Graphs, from design to release: the hosting phase.
  18. Knowledge Graphs, from design to release: the management phase.
  19. Knowledge Graphs, from design to release: the release phase.

Textbook Information

The adopted textbook are:

  • Dieter Fensel et al., Knowledge Graphs: Methodology, Tools and Selected Use Cases.
  • Neo4J Cypher Official Manual (Cypher Version 25).

The teacher will provide all additional teaching materials required for the course, including lecture notes, supplementary readings, practical exercises, and other relevant resources.

Course Planning

 SubjectsText References
1The role of Knowledge Graphs in the modern AI: an overview.Slides
2Introduction to knowledge representation: definition of knowledge, information, data; the DIKW pyramid and semiotic triangleSlides
3Introduction to knowledge reasoning: definitions Slides
4Introduction to knowledge representation: Semantic NetworkSlides
5Introduction to knowledge representation: FramesSlides
6Introduction to knowledge representation: modern solutionsSlides
7Introduction to knowledge reasoning: overview of Description LogicsSlides
8Introduction to knowledge reasoning: overview of Logic ProgrammingSlides
9Introduction to knowledge reasoning: overview of Production System RulesSlides
10Introduction to knowledge modeling: KADSSlides
11Introduction to knowledge modeling: ontologiesSlides
12Knowledge Graph: a brief historical overviewFensel, chapter I
13Knowledge Graph: definitionsFensel, chapter I
14Knowledge Graph: data modelsFensel, chapter I
15Knowledge Graph, from design to deployment: introductionFensel, chapter I
16Knowledge Graph, from design to deployment: the creation phaseFensel, chapter II
17Knowledge Graph, from design to deployment:  the hosting phaseFensel, chapter II
18Knowledge Graph, from design to deployment: the curation phaseFensel, chapter II
19Knowledge Graph, from design to deployment: the deployment phaseFensel, chapter II

Learning Assessment

Learning Assessment Procedures

The exam consists of the development and presentation of a project, agreed upon with the instructor, aimed at assessing the student’s ability to apply the knowledge and skills acquired during the course to the design, implementation, and querying of a Knowledge Graph.


Final Grade Assessment Criteria

The final grade will primarily reflect the quality of the Knowledge Graph developed, the correctness and appropriateness of the modeling choices, the ability to adequately represent the selected domain, and the quality of the accompanying documentation. The student's ability to present and justify the project, as well as to critically connect the theoretical and practical aspects covered in the course, will also be assessed.

  • Fail: the Knowledge Graph does not meet the minimum project requirements, presents substantial shortcomings in its modeling or representation of knowledge, and/or is inadequately documented. The student does not demonstrate sufficient understanding of the fundamental concepts required to design, implement, and discuss the project. The project will also be considered not acceptable if it is primarily the result of AI slop, i.e., automatically generated content that has not been adequately understood, verified, integrated, and justified by the student.

  • 18–23: the Knowledge Graph covers the fundamental concepts of the selected domain and provides an essential modeling of the relevant knowledge, although with possible simplifications or limitations. The main design choices are only partially understood and justified. The documentation is sufficient to describe the structure and main characteristics of the Knowledge Graph, but provides limited discussion of the design decisions and their rationale. During the discussion, the student demonstrates a minimum understanding of the fundamental concepts and a modest ability to connect theoretical concepts with the solutions adopted in the project.

  • 24–27: the Knowledge Graph is well designed and structured, adequately represents the selected domain, and demonstrates good application of the concepts and techniques covered in the course. The main modeling decisions are appropriately justified, and the project presents a good level of consistency and completeness. The documentation is of a good standard and clearly describes the adopted model, the main design choices, the represented data, and the ways in which the Knowledge Graph can be used or queried. The student demonstrates a good understanding of the course contents and a good ability to discuss their application to the project.

  • 28–30 and honors: the Knowledge Graph is complete, coherent, and well conceived, with well-justified modeling choices and careful attention to the quality of knowledge representation. The project demonstrates a thorough understanding of the concepts covered in the course and, where relevant, critically addresses aspects such as ontology reuse and alignment, data quality and provenance, interoperability, validation, and graph querying. The documentation is complete, clear, and technically thorough, allowing an external reader to understand the domain, knowledge model, design choices, and how to use the Knowledge Graph. During the discussion, the student demonstrates the ability to present the project comprehensively, justify the design choices, and critically connect the theoretical and practical aspects covered in the course.

Project Discussion

The project assessment will also include an oral discussion, during which the student will be expected to:

  • describe the domain and objectives of the Knowledge Graph;

  • explain its structure and the main modeling choices;

  • justify the design decisions and discuss possible alternatives;

  • explain how the data were acquired, transformed, and represented;

  • demonstrate and discuss the main ways in which the Knowledge Graph can be queried and used;

  • present and discuss the accompanying documentation;

  • answer questions concerning the theoretical concepts of the course as applied to the project.

The discussion should demonstrate that the Knowledge Graph and its documentation have been understood and developed consciously by the student, rather than simply produced through automated tools.

Exam Registration

To take the exam, students must register through the SmartEdu portal.

The project discussion will take place on a date subsequent to the registration date, to be agreed upon with the instructor.

Students with Disabilities and/or Specific Learning Disorders (SLD)

Students with disabilities and/or Specific Learning Disorders (SLD) should contact the instructor and the CInAP representative of DMI sufficiently in advance of the exam date to communicate their intention to take the exam using the appropriate accommodations.

Examples of frequently asked questions and / or exercises

  • Design a Knowledge Graph for a specific application domain, identifying the relevant entities, relationships, and properties.
  • Model a domain using a graph-based approach and implement the resulting model using Neo4j.
  • Write and execute Cypher queries to insert, modify, retrieve, and analyse data stored in a Knowledge Graph.
  • Analyse an existing knowledge model and propose possible modifications or improvements.
  • Document the design choices made when developing a Knowledge Graph, providing appropriate justification for the structures and relationships adopted.
  • Solve basic knowledge representation and reasoning problems using the tools and techniques presented during the course.