I think the main issue is that even though "knowledge representation" with ontologies is an enticing goal, it's simply a fact that real entities, as used by humans at a practical level, don't map neatly onto mathematically-sound hierarchies.. . To see this, just look at the arguments the ancient Greeks already had as to whether a human is a "two-legged featherless animal" or the endless online arguments as to whether…
I think they do, but finding the right mathematical model is very difficult. If it were easy, everyone would be a mathematics PhD.
Learning to program is becoming efficient at recognizing the right spherical cow in any given situation, because such shortcuts are essential to getting shit done.