Skip to content
Marko Ivanovski

Dialect speech ontology and knowledge graph

Turns 115 hours of Macedonian dialect speech into an OWL ontology and a knowledge graph, and queries it with SPARQL.

category
academic
year
2026
status
completed
role
Sole developer
  • Neo4j
  • Python
  • RDFLib
  • SPARQL

What it is

Coursework for Web-Based Systems, built on the 115 hours of dialect speech my team and I gathered on the Vezilka project at MASA. The corpus in the graph covers 43 videos across 12 Macedonian dialects, about 5,300 transcribed segments.

A Python pipeline extracts the words and writes them as RDF with rdflib, against an OWL ontology of five classes that places each dialect in its group and wider dialect area. SHACL shapes validate the result. The finished graph holds 161,977 triples and 36,368 distinct words, answers eight competency questions in SPARQL, such as which words set one dialect apart, and loads into Neo4j for visual exploration.

  • Built on 115 hours of dialect speech my team gathered on the Vezilka project at MASA.
  • Models that material as an ontology, loads it into a knowledge graph, and queries it with SPARQL.

What I learnt

  1. Designing an OWL ontology for data we had collected ourselves, then turning all of it into a full knowledge graph of triples that SPARQL can query.