Good structure to reflect ontology inside neo4j database?

I would like to build an ontology for my web application, and I thought about using Neo4j to represent the ontology (since I use Neo4j anyway).

Now it seems to me that I should write it from scratch, including the entire implementation of the ontology, validation, reasoning, and the GUI editor. Definitely too much work.

Is there an infrastructure or library that will allow me to manage my ontology on neo4j without implementing it from scratch? If not, what is the most reasonable alternative? (I am using Neo4j over Node.js)

+6
source share
1 answer

ontology, validation, reasoning, graphic editor.

You can use the Tinkerpop Blueprints stack if you need these things (except for the GUI editor) while using Neo4j as the database. It abstracts from the "low-level" graph database APIs and provides a unified interface. This means that you can change the database in the future, while maintaining functions.

First you need the basic Blueprints lib, Neo4j impl. and Sail oupl. . At this point, you should use the GraphSail class and its Connection class to manage the semantic graph.

Please note that with Supleupmentation (I did not come up with the term ..) you can use Sesame libs like (insert from my maven project) sesame-rio-rdfxml, sesame-rio-ntriples, sesame-repository-sail, sesame-queryparser- sparql.

I do not work for Tinkerpop, but I really like their framework.

+3
source

Source: https://habr.com/ru/post/917740/


All Articles