在protege4.3中定义了class、individual和objectproperty,并通

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在protege4.3中定义了class、individual和objectproperty,并通相关的知识,希望对你有一定的参考价值。

在protege4.3中定义了class、individual和objectproperty,并通过individual添加了相互之间的关系,为什么有点在ontograf中可以图形展开显示,有点显示不了

参考技术A 图形展开显示,有点显示不追问

不好意思,是有些显示,有些不能显示,对象属性形式是一致的。如一个是设置的机械连接,一个是故障影响

参考技术B 左上角有+号,是不是+号没点开?

Protege:对象属性限制 1

【中文标题】Protege:对象属性限制 1【英文标题】:Protege: Object property restrictions 1 【发布时间】:2015-07-27 23:48:13 【问题描述】:

我正在使用 Protege 4.3 创建我的第一个本体,所以遇到了一些问题

假设我们有 ShopMallPerson 类以及 works-inis-part-of 属性。

所以第一个问题是我们想要:如果Personworks-inShopShopis-part-ofMall然后Personworks-inMall

我尝试将属性链works-in o is-part-of 添加到属性is-part-of,但是当我激活它时推理器死了。

知道怎么解决吗?

谢谢。

【问题讨论】:

works-in => works-for 将解决你的第一个问题——Personworks-forShop,其中is-part-ofMall。你在商场里的商店工作。我忽略了你的第二个问题,因为每个问题你应该只问一个问题。 我并没有真正理解你的建议,但我想补充一点,我尝试为works-for 定义一个属性链,但是当我激活它时推理器死了。你能解释一下吗? ...好吧,在重读这个问题时,我意识到这是一个特定的系统。我是说,一般来说,你可以暗示如果有人在商场的商店工作,他们就在那个商场工作。如果您说他们位于购物中心的商店工作,则更清楚这种关系是间接的。 你能显示你从推理者那里收到的错误信息吗?单击 Protege 窗口右上角的红色三角形应该可以访问堆栈跟踪。 这是一条错误消息Fatal reasoner error : Reasoner died (see logs for more info) 【参考方案1】:

回答您的第一个问题:您正在寻找财产链。在 Protege 中,你可以说 works-in o is-part-of 是一个子属性(链)works-in,这会给你预期的推论

编辑:我做了以下实验:

a) 根据您的描述创建通用本体(曼彻斯特语法): Ontology: <http://www.semanticweb.org/o> ObjectProperty: <http://www.semanticweb.org/o#works-in> SubPropertyChain: <http://www.semanticweb.org/o#works-in> o <http://www.semanticweb.org/o#is-part-of> ObjectProperty: <http://www.semanticweb.org/o#is-part-of> Domain: <http://www.semanticweb.org/o#Department> or <http://www.semanticweb.org/o#Shop> Range: <http://www.semanticweb.org/o#Mall> or <http://www.semanticweb.org/o#Shop> Class: <http://www.semanticweb.org/o#Shop> Class: <http://www.semanticweb.org/o#Mall> Class: <http://www.semanticweb.org/o#Department> Class: <http://www.semanticweb.org/o#Person>

b) 将一些个体添加到该本体以检查推理。用 FaCT++ Protege 分类后,显示 person1 与 mall1 是通过works-in 关联的。附加公理如下: Individual: <http://www.semanticweb.org/o#shop1> Types: <http://www.semanticweb.org/o#Shop> Facts: <http://www.semanticweb.org/o#is-part-of> <http://www.semanticweb.org/o#mall1> Individual: <http://www.semanticweb.org/o#mall1> Types: <http://www.semanticweb.org/o#Mall> Individual: <http://www.semanticweb.org/o#person1> Types: <http://www.semanticweb.org/o#Person> Facts: <http://www.semanticweb.org/o#works-in> <http://www.semanticweb.org/o#shop1>

c) 添加公理说 Person 在 Shop 中工作,并且 Shop 是 Mall 的一部分到 a) 的本体。在这种情况下, Person 又是 WorksInMall 类的一部分,这表明考虑了属性链公理。其他公理是: Class: <http://www.semanticweb.org/o#WorksInMall> EquivalentTo: <http://www.semanticweb.org/o#works-in> some <http://www.semanticweb.org/o#Mall> Class: <http://www.semanticweb.org/o#Person> SubClassOf: <http://www.semanticweb.org/o#works-in> some <http://www.semanticweb.org/o#Shop> Class: <http://www.semanticweb.org/o#Shop> SubClassOf: <http://www.semanticweb.org/o#is-part-of> some <http://www.semanticweb.org/o#Mall>

【讨论】:

我是这么想的,但是当我尝试每次激活时推理器都会死 你用的是什么推理器,你的本体是什么?可以分享一下吗? 我使用FaCT++ 作为推理器,我应该使用本体创建关于商场及其与员工和购物者关系的描述逻辑知识库 (KB) 问题可能是属性is-part-of 具有域Department or Shop 和范围Shop or Mall 吗?有没有办法指定例如域Shop 仅在Mall 中取值? 我编辑了答案以显示我执行的实验。个人版本和类版本都表明属性链按预期工作。

以上是关于在protege4.3中定义了class、individual和objectproperty,并通的主要内容,如果未能解决你的问题,请参考以下文章

INDY10 BASE64编码

更新后Indy不再工作

Delphi组件indy 10中IdTCPServer修正及SSL使用心得

在 Delphi 2009 中逐步升级 Indy 10

Delphi - Indy TIdHTTP方式创建程序外壳 - 实现可执行程序的自动升级

Navicat 如何将Select* 自动转成各字段?