|
There's a lot of Protege tutorials out there, but here's what an ontology (in the OWL sense of the word, let's you do). The "pizza ontology" is the Hello World of the ontology world. * imagine a graph of things you wanna organize ("model"), say world religions, or the plant and animal kingdom
* you can tell the system that anything that's a plant can never be an animal. or viruses can't be bacteria
* or lions and zebras are both mammals
* you can define what mammals are, vertebra, heart, brain, etc. The interesting part is ontology _validation_ or querying. Is it internally consistent? Maybe you specified viruses and bacteria and said they are never the same thing, but the way you modeled it, they are identical! Hmm, you'll have to update your definition of bacteria, or viruses, or both. Next, you try to put fungi in the system, but there's an error because fungi do not belong to the plant or animal kingdom: they are their own thing. So this is a fairly simplistic use case, but scale this up to hundreds if not thousands of entities and you can start to see the value. Imagine sticking the human genome in there, and which drugs act on which chromosomes, etc. It's a niche, for sure, if you need something like reasoning it's the way to go. |
When you narrow down the domain to something where a consensus on representation can be reached, then sure, reasoning is a plausible use case... except for the fact that it scales very poorly, and making it work on a set of data large enough to be interesting requires a disproportionate amount of computing power.