09.A Knowledge graph representation of a course/domain

The aim of this master thesis is to provide an easy to use interface to convert course notes written in e.g. LaTeX into a graph representation and back. This will require the following steps.

  1. Determine the graph structure to represent knowledge and test these graph structures on various use-cases. This results in the definition of a generic graph structure to represent the knowledge to be learned.
  2. Determine how it is possible to use the capabilities of LaTeX (e.g. using labels and macros) to get a (preferably one-to-one) mapping between the LaTeX document and the graphs structure. Specific LaTeX macros can be added to reinforce the structure of the text, but the their number should be limited to a minimum in order to reduce the learning curve of a author.
  3. Write a LaTeX parser in Python to import the LaTeX file and to store the graph representation in the neo4j graph database.
  4. Write a LaTeX and pdf/html document generator starting from a sub-graph extracted from the knowledge graph database.

The aim is to make a system that does all the above steps: parsing a LaTeX input file which is (as closely as possible compatible with) the LaTeX files of the course, generating a knowledge graph stored in neo4j, and be able to generate subparts of the knowledge graph is a user readable format (e.g. LaTeX, pdf, html…).

Knowledge graph extracted from LaTeX input and stored in Neo4j

graph extracted from LaTeX input

Back to top