Ontology
Don’t be fooled – ontologies are a commodity technology! And actually *much* older than the 20 years RDF/OWL has been around.
– Akshay Krishnaswamy, Chief Architect, Palantir, Twitter, August 28, 2024
In this page, we describe a number of technologies that can be used to implement ontologies correctly, safely, quickly, and portably.
Intuitively, an ontology is the combination of a data model and a set of logical rules about the data. Sophisticated ontologies whose rules generate data are called “generative symbolic AI“.
Today’s legacy data management systems such as SQL provide a very limited set of logical rules, mostly key and nullability rules. Attempts to add ontologies to SQL-like languages in the 1990s led to much experimentation but ultimately failed, leading to today’s landscape of ontology solutions:
Ologs
Are a way to define ontologies using the branch of math called applied category theory. A number of systems implement ologs, including Algebraic Julia, Statebox CQL, Conexus CQL, and EASIK. One key differentiator between ologs and ontologies is that ologs allow data migration from one olog to another, and so enable data integration and migration. Another is their level of expressive power, with arbitrary Excel spreadsheets being considered ontologies.
RDF/OWL
The Web Ontology Language is a way to define ontologies using subject-predicate-object triples. Highly effective in the hands of an expert and widely deployed, its foundations require care to be taken by users querying it. Data.world provides RAG examples where ontologies improve LLM performance.
Datalog
Is one of the original ways to define an expert system, a simple kind of ontology. Widely deployed in defense applications, it has many implementations, including on GPUs.
TypeDB
Takes a type theoretic approach to ontology definition, directly inspired by many of the technologies on this list.
Cyc
Is a long-term artificial intelligence project that aims to assemble a comprehensive ontology and knowledge base that spans the basic concepts and rules about how the world works. Hoping to capture common sense knowledge, Cyc focuses on implicit knowledge. The project began in July 1984 at MCC and was developed later by the Cycorp company. It has many applications today.
Apache Tinkerpop
Is commonly used to construct knowledge graphs, which, when coupled with business rules written in Gremlin/java, allow the definition of ontologies. This line of thinking has been taken up by Tinkerpop’s creator in the mm-adt project.
Microsoft Lambda Graph
A successor to Uber’s Dragon project, it focuses on representing computational knowledge graphs using the lambda calculus, enabling new features such as type inference for graphs and active graphs that evolve on their own over time. Like Ologs, Lambda graph allows for data migration between ontologies.
About Conexus
We believe that software systems should be able to exchange data reliably, even under the most complex circumstances. We work tirelessly to bring this reality to organizations around the world.
Resources | Company | News – Contact | Privacy Policy