0
这是在保护下创建的。是否有可能在图片中显示的子类之间创建相同的对象属性?也可以添加他们的范围和域名?我们可以使用OWL API在子类之间创建ObjectProperty吗?
我有可能有一个示例代码。 谢谢^ _^ 下面是图片的链接。
https://i.stack.imgur.com/Wlzl8.png
这是在保护下创建的。是否有可能在图片中显示的子类之间创建相同的对象属性?也可以添加他们的范围和域名?我们可以使用OWL API在子类之间创建ObjectProperty吗?
我有可能有一个示例代码。 谢谢^ _^ 下面是图片的链接。
https://i.stack.imgur.com/Wlzl8.png
的图像是不相关的问题/问题。
是否可以在子类之间创建相同的objectproperty?
简而言之:是的,你可以,但你不想要它。
define four classes A B C D
B is a sub class of A
D is a sub class of C
define one object property OP_1 between A and C (range & domain)
define one object property OP_2 between B and D (range & domain)
如果OP_1和OP_2有不同的名称,那么绝对没有问题。
但是你说你希望OP_1和OP_2是相同的objectProperty;这不是一个很好的协议:
你是否已经定义了超类的属性,推理者应该如何理解子类之间的属性?它会将它们理解为与超类(或者它所绑定的任何类)相同。在大多数情况下,子类的断言(类限制,范围,域)将被忽略。
Protege和/或owl-api允许您编写它,但不保证您的一致性或特定行为/含义。
你应该做的:
创建属性的分类:
define OP_1 a sub property of the super property OP
define OP_2 a sub property of the super property OP
had domain/range of super class on OP
had domain/range of whatever you want on OP_1 and OP_2 using sub-classes.