首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >两个本体之间的映射

两个本体之间的映射
EN

Stack Overflow用户
提问于 2015-01-25 22:36:12
回答 1查看 1.1K关注 0票数 3

我如何使用owl:sameas来连接两个本体论?

如果我有本体A

代码语言:javascript
复制
:c rdf:type owl:Class .

和本体论B

代码语言:javascript
复制
:d rdf:type owl:Class .

我想将这两个本体与共享的概念(:c和:d)联系起来,我读过关于owl:sameas的文章,但是在本体中类似类的实例之间只使用了一个本体。

我想把两种本体论的类:c和class :d联系起来,解决方案是什么?

EN

回答 1

Stack Overflow用户

发布于 2015-01-26 01:06:25

我读过关于owl:sameas的文章,但它只在本体中类似类的实例之间的一个本体中使用。

owl:正如您注意到的,sameAs表示一个人和另一个个体是相同的。如果您想说两个类是等价的,那么您应该使用C owl形式的等效类公理:等效类D

当您正在编写本体A并定义类C时,但希望表明它与在本体B中定义的某个类D等价时,您有两个选项:

  1. 您可以使用与D相同的IRI声明本体中的类,即在本体中重新声明类D,然后说C等价于D,如果有人同时导入本体和其他本体,他们将有一个公理,即这两个类是等价的。
  2. 您可以导入其他本体,以便导入类D的声明,然后将等效的类公理添加到本体中。

在我看来,在大多数情况下,第二种选择是更好的选择。如果您要将您的类等同于其他人的类,那么对您的本体执行的任何推理都应该考虑到在其他本体中断言的公理,所以您应该导入它。如果您根本不打算进行任何推理,那么导入基本上是被忽略的,但是您仍然遵循这样的良好做法,即让其他人知道还有其他一些相关的定义。

我认为导入不是一个好主意的唯一情况是,如果其他本体不一致,或者它不是OWL本体,而是可能是RDF词汇表,或者类似的东西。在这些情况下,类的原始语义可能与您的类不完全相同,最好避免导入(不过,如果类实际上不是等效的,您也可能希望避免等效的类公理)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28142402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档