我试图表达以下类型的公理:
“水有一些称为熔化温度的物理量,其值为100.0”
我尝试过定义以下类表达式:
Water SubClassOf (hasPhysicalQuality some (MeltingTemperature and hasValue value 100.0f))
我有以下断言:
Water Type owl:Class
hasPhysicalQuality Type owl:ObjectProperty
hasValue Type owl:DataProperty
this_water Type Water
this_temperature Type MeltingTemperature
this_water hasPhysicalQuality this_temperature
this_temperature hasValue 50.0f
当我运行Pellet推理器时,我期望发现不一致,因为与this_water相关的熔化温度(this_temperature)的值为50.0f,而不是100.0f。但是,推理者没有表明任何不一致。
我在这里做错了什么?
编辑:所需的正确公理是:
Water SubClassOf (hasPhysicalQuantity exactly 1 MeltingTemperature)
Water SubClassOf (hasPhysicalQuanlity some (MeltingTemperature and (hasValue value 100.0f)
hasValue Type owl:FunctionalProperty
答案 0 :(得分:0)
您应该使您的数据属性正常运行 - 或者,正如您在评论中所说,应用基数限制。