我是猫头鹰的新手。我在本页http://dior.ics.muni.cz/~makub/owl/中阅读了一个通用量化示例。
如果我将“Person SubClassOf hasParent max 2 thing”替换为“Person SubClassOf hasParent max 2 Person”并运行推理器,我认为个人Ivan也将属于捷克语类。但实际上并非如此。我在Protege 4.3中测试它并运行内置推理器FaCT ++。
我错过了哪些细节?
答案 0 :(得分:1)
这里的问题是你的新限制过于宽松。你的新公理实际上说人最多可以有2个(父母是人)。它不会阻止Person有其他父母,也就是非人。
如果您强制所有父项都属于Person类,例如通过将hasParent的Range设置为Person,或者添加公理Person SubClassOf hasParent only Person