Microservices
OntoPop enables the visualisation, search, exploration and management of version-controlled ontologies.
Please note that the OntoPop backend open-source software project, which includes the event-driven data pipelines and APIs, is undergoing extensive redesign and refactoring as part of OntoPop Community 3.x in order to improve performance, security, extensibility and maintainability. As a result, the documentation on this page will be significantly updated. Please refer to the OntoPop Roadmap for further information.
Overview
OntoPop is a collection of event-driven services that enable the visualisation, search, exploration and management of version-controlled ontologies. The following diagram illustrates the event-driven microservices available in OntoPop.

Each of these microservices is detailed in further detail in the following subsections.
Ontology Services
Ontology Ingestion Service
The ontology ingestion service ingests a W3C Web Ontology Language (OWL) ontology from a Git-based version control repository and copies it to persistent object storage.
Ontology Validation Service
The ontology validation service ingests a W3C Web Ontology Language (OWL) ontology and validates it using semantic reasoners, returning true or false.
Ontology Triplestore Loading Service
The ontology triplestore loading service ingests a W3C Web Ontology Language (OWL) ontology and loads it into a physical RDF triplestore.
Ontology Triplestore Query Service
The ontology triplestore query service is used to query the RDF triplestore using SPARQL queries and returns the relevant triples.
Ontology Parsing Service
The ontology parsing service ingests a W3C Web Ontology Language (OWL) ontology and parses it into its constituent objects, including annotation properties, object properties, classes and class relationships.
Property Graph Services
Property Graph Modelling Service
The property graph modelling service ingests the parsed objects from a W3C Web Ontology Language (OWL) ontology and models them as directed property graph objects, specifically vertices, edges, vertex properties and edge properties.
Property Graph Loading Service
The property graph loading service ingests the directed property graph objects and loads them into a physical graph database.
Property Graph Indexing Service
The property graph indexing service ingests the directed property graph objects and indexes them into a physical search index.
Property Graph Query Service
The property graph query service is used to query the graph database and search index using Gremlin graph and free-text search queries, and returns the relevant result sets.