Rdf 你能在owl中指定一个闭集而不枚举它的所有个体吗?

Rdf 你能在owl中指定一个闭集而不枚举它的所有个体吗?,rdf,owl,ontology,protege,rdfs,Rdf,Owl,Ontology,Protege,Rdfs,我想知道是否可以指定一个类是一个闭集,而不必枚举它的所有个体 例如,给定一类具有个人a、B和C的驱动程序,我是否可以对驱动程序提出一个公理,使推理者认识到该类没有其他个人,而无需在类描述中指定类似的内容 编辑:请允许我澄清一下,我希望能够指定一个类是一个封闭集,而不将该类描述为一组个体的枚举。您可以创建一个新属性,该属性只有希望包含的个体才具有,并使该类成为该属性的精确基数限制为1的子类。要添加或删除个体,请在断言中使用新属性-添加多个断言将/删除/类中的个体,因此这甚至适用于导入的本体中使

我想知道是否可以指定一个类是一个闭集,而不必枚举它的所有个体


例如,给定一类具有个人a、B和C的驱动程序,我是否可以对驱动程序提出一个公理,使推理者认识到该类没有其他个人,而无需在类描述中指定类似的内容



编辑:请允许我澄清一下,我希望能够指定一个类是一个封闭集,而不将该类描述为一组个体的枚举。

您可以创建一个新属性,该属性只有希望包含的个体才具有,并使该类成为该属性的精确基数限制为1的子类。要添加或删除个体,请在断言中使用新属性-添加多个断言将/删除/类中的个体,因此这甚至适用于导入的本体中使用的个体


但是我不清楚你的意图-你想通过这个实现什么?

“会让推理者认识到这个类没有其他个体”这里的“其他个体”是什么意思?例如,推理机用户可以根据什么标准来确定没有其他个人可以成为此类成员?问这个问题的另一种方式是:“我们(Stack Overflow的读者)如何知道ex:D不是这个类的成员?”为了详细说明,我添加了一些代码。如果在本体文件中未使用
rdf:type rdf:resource显式定义命名个体=“&示例;驱动程序
则它不是驱动程序。这是推理者应该确定没有其他个体可以成为这个类的成员的标准,尽管这似乎与显式枚举个体差不多。我想有一些变通办法。例如,你可以断言ex:A、ex:B和ex:C都是不同的,最多有三个ex:Drivers,这将迫使他们成为这三个。我不确定这是否适用于这种情况。当然,给定可用数据,推理器只能推断A、B和C是类的元素,但不能确认其他任何内容不是类的成员(如果它没有该属性的值).这就是为什么我不确定实际意图。我试图让推理者通过指定该类个体之间的负属性断言来做出某些推断,但遇到了约书亚指出的问题。不幸的是,由于OWA的原因,似乎没有办法使用枚举。谢谢你们两位的帮助!