我正在使用 Protege 并尝试返回没有特定属性的所有实例的 DL 查询。
例如,我可以通过使用 initialValue 一些值返回带有属性 initialValue 的数字实例(例如 number1、number2 等)
我如何在 Protege 中进行 DL QUERY 以返回不具有属性 intialValue 的数字实例?
提前致谢
我不太确定,但我不认为这可以做到。我认为问题在于应用于语义网络和本体的开放世界假设 OWA 。Beriefly,我们不能仅仅因为我们不知道就说某事是错误的。当某事未知时,它只是未知。
在你的情况下instances of number that don't have the property intialValue
。当 anumber
有一个initialValue Value
明确声明的,那么很明显它有它。现在,考虑我们有number1
和没有分配给它们number2
的实例。这不会使推理者推断出并且没有.Number
initialValue Value
number1
number2
initialValue Value
为了澄清它:
Number that not (initialValue some Value)
不会返回任何东西,它是 OWA!
我认为您可以做的一种解决方法是,您可以在 Protege 中断言负面属性断言,这可能会有所帮助但不能解决它。考虑我们有v1
的实例Value
。您可以声明(例如使用 Protege)number3
没有initialValue v1
,然后您可以查询:
Number that not (initialValue value v1)
这将检索number3
.