问题描述
我已经使用OWL / XML语法在Protégé5中创建了一个本体。除其他外,我还包括Cerveza类和Color类。在“颜色”下,我有3个小节:Claro(淡),Medio(中)和Oscuro(暗):
我创建了一个名为EBC xsd:int的数据属性,该域是Cerveza类:
所以我限制了Claro类的最大EBC度数为12:
然后我创建一个名为kk的个人,并声明属性EBC = 10:
我开始了推理机pellet,并且可以推断,由于kk具有EBC,所以kk必须属于Cerveza类。但是我期待以某种方式推断kk属于Class Color / Subclass claro。
此设计有什么问题?
解决方法
您正在混淆数据类型限制(7.5)和数据属性基数限制(8.5)。
代替:
Class: Claro
SubClassOf: EBC max 12 xsd:int
您应该写:
Class: Claro
EquivalentTo: EBC some xsd:int[<= 12]