繁体   English   中英

OWL Api类断言

[英]OWL Api class assertion

我有两个类AB ,我想断言ArelatedClass B

我想在类级别做到这一点,起初我想创建一个对象属性relatedClass并添加该断言。 但是我只能在个人之间做到这一点。

OWLObjectProperty related = dataFactory.getOWLObjectProperty(IOR + "#relatedClass");
OWLAxiom axiom = dataFactory.getOWLObjectPropertyAssertionAxiom(related, classA, classB);

这是不正确的,因为该方法期望classAclassB是个人。

是否可以设置类之间的关系? 使用OWL API如何完成?

我正在遵循此模式来转换分类法,它说:

断言能力是相关的

competenceperformance都是课堂。


更新资料

好的,因此,根据您的回答和评论,我一直在尝试了解所讨论的模式是哪种关系。 但是我很茫然。

首先,related的含义与skos:related的含义相同,因此非常笼统:

属性skos:related用于声明两个SKOS概念之间的关联链接。

当两个概念相关但一个不是另一个的更笼统或更具体的概念时使用。 另外,它是对称属性。 我的领域中的一个例子是“信息系统”与“系统安全性”相关(但是您可以看到,这是一种非常通用的关系)。

这是该模式的一部分包含的图:

在此处输入图片说明

这是示例图的版本(非常模糊,但这就是它在纸上的外观)版本:

在此处输入图片说明

所以我从这里得到的是它必须是一个ObjectProperty并且我必须设置域和范围,但是如果发生以下情况,它将如何工作:

ClassA related ClassB
ClassC related ClassD

在这种情况下,如何设置域和范围? 还是您认为我应该在每对相关的班级中选一个?

使用OWL API无法实现此目的,因为OWL不支持它。 在特定的OWL规范状态中

对象属性连接成对的个人。

因此,对象属性不是链接个人的类别而是链接个人。 您能做的最好的事情就是说,如果两个对象通过对象属性链接在一起,则这些对象属于特定的类,可以使用域和范围限制来实现。 即:

ObjectProperty: relatedClass
  Domain: A
  Range: B

使用OWL API,您需要执行以下操作:

OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
OWLDataFactory dataFactory = manager.getOWLDataFactory(); 

IRI relatedClassPropertyIRI = IRI.create(ontologyIRI + "#relatedClass");
IRI aClassIRI = IRI.create(ontologyIRI + "#A");
IRI bClassIRI = IRI.create(ontologyIRI + "#B");

OWLObjectProperty relatedClassProperty = dataFactory.getOWLObjectProperty(relatedClassPropertyIRI);

OWLClass aClass = dataFactory.getOWLClass(aClassIRI);
OWLClass bClass = dataFactory.getOWLClass(bClassIRI);

dataFactory.getOWLObjectPropertyDomainAxiom(relatedClassProperty, aClass);
dataFactory.getOWLObjectPropertyRangeAxiom(relatedClassProperty, bClass);

如果您现在使用属性声明公理,例如

OWLAxiom axiom = dataFactory.getOWLObjectPropertyAssertionAxiom(related, individualA, individualB);

推理者将推断出individualA A属于A类, individualB B属于B类。

更新资料

要处理多个相关类,您必须对域和范围使用这些类的并集:

ObjectProperty: relatedClass
 Domain: A or C
 Range: B or D

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM