ITT is a virtual knowledge graph system implementing the Intermediate Triple Table architecture. It allows to access heterogeneous data as a knowledge graph using the R2RML and RML mapping languages.
To install ITT execute the following:
pip install git+https://github.com/arenas-guerrero-julian/itt.git
You can run ITT via command line:
python3 -m itt path/to/config.ini path/to/query.rq
The query result set is written to itt_result.csv
.
The configuration file is similar to that of Morph-KGC:
[DataSource1]
mappings: /path/to/mapping/mapping_file.rml.ttl
db_url: mysql://username:password@host:port/database
ITT uses ConnectorX to access relational databases and the connection URLs must be formatted according to this engine. For Postgres the format is postgresql://username:password@host:port/database and for MySQL the format is mysql://username:password@host:port/database. See the details here.
For MongoDB the connection URL format is mongodb://localhost:27017/database. Example config file for MongoDB:
[DataSource1]
mappings: /path/to/mapping/mapping_file.rml.ttl
mongo_url: mongodb://localhost:27017/database
ITT is available under the Apache License 2.0.
Universidad Politécnica de Madrid.
If you used ITT in your work, please cite the Knowledge-Based Systems paper:
@article{arenas2025itt,
title = {Intermediate triple table: A general architecture for virtual knowledge graphs},
author = {Julián Arenas-Guerrero and Oscar Corcho and María S. Pérez},
journal = {Knowledge-Based Systems},
volume = {314},
pages = {113179},
year = {2025},
publisher = {Elsevier},
issn = {0950-7051},
doi = {10.1016/j.knosys.2025.113179},
}