Search code examples
databaseontology

What are ontology can do, but relational database can not?


I am new to ontology. After some study, I still do not know what is ontology advantage in application. I already know ontology can provide more meaningful querying interface than database, and ontology can use reasoner to find hidden info to get better result. But. With building a bool table in database to represent new concept for each instance, or simple if-else rule engine. We can get same result as ontology with better performance. So, what is the most important reason of using ontology in application exactly?


Solution

  • Please refer to Databases vs Ontologies by Ian Horrocks

    In short:

    1. Databases has closed world assumption, ontologies has open world assumption
    2. In databases each individual has a single unique name, but in ontologies individuals might have more than one name
    3. You can infer implicit information from ontologies, in databases you can't.
    4. The schema in an ontology is large and complex but databases have simple and smaller schema. In other words, The focus on formal semantics is much stronger in ontologies than in databases. Because the aim of ontologies is to represent meaning rather than data. Please refer to Ontologies and DB Schema: What's the Difference by Mike Uschold