强制 OWL 类采用封闭世界假设

Dan*_*nny 2 semantic-web owl description-logic

我有一个具有以下等价的 OWL 类(采用曼彻斯特表示法):

A and not (hasB some (B and (hasC some C) and (hasD some D) and (hasList some (OWLList and (hasContents some (OWLList and (hasContents some (E and (hasValue some integer[< 200]) and (hasType value "xsd:integer"^^string))) and (hasNext some EmptyList))) and (hasNext some EmptyList)))))

我希望对此类强制执行封闭世界推理,以便任何不满足语句后剩余条件的个人都not将成为此类的成员。

为此,我尝试使hasC,hasDhasList属性具有功能性,以便 OWL 知道不可能有这些属性的其他实例附加到此类。

不幸的是,该hasB属性可能会多次出现,因此无法对其进行限制。为了尝试“关闭”班级的这一部分,我oneOf在班级中添加了一条声明B,指定班级可以接受的所有可能的个人B

在我看来,函数属性和oneOf语句的这种组合应该成功“关闭”该类。谁能告诉我我做错了什么?

我正在使用http://owl-workshop.man.ac.uk/acceptedLong/submission_12.pdf提出的 OWLList 类和相关属性。

非常感谢。

Mic*_*ael 5

Stardog有一个称为完整性约束验证的功能,它为 OWL 添加了封闭世界解释,以便能够将其用作验证语言。您可以在详细的语义分解中阅读有关如何完成此操作的更多信息。

我不确定验证部分是否是您想要的,但如果是的话,您可以立即使用 Stardog ICV。如果没有,语义可能会指导您如何准确地实现您所需要的内容。