问题标签 [protege4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
936 浏览

owl - Protégé Ontology 中的开放世界假设

我想在 Protege 中模拟电影系列的概念。

这是我的电影三部曲课: 三部曲班

以下是“电影系列”类中个人的定义: 电影系列个人

个人具有三个“hasEpisode”属性。但是开放世界假设(OWA)阻止了这个人被推断为“三部曲”类。

可能的解决方案:我可以为 Film Series 类中的每个人提供一个数据属性,该属性指定该系列中的电影数量。

但是,我宁愿使用“hasEpisode”对象属性的数量(因为它们已经可用并且意味着更少的维护)。

0 投票
1 回答
893 浏览

rdf - 类上的对象属性实例?

比如说:

现在我需要能够设置 Bread -> eatableBy -> Horse。但是我不能对类进行对象属性断言。所以我可以将它设置为可食用并添加所有 Horse 实例,但我有很多实例,所以这有点多余。有没有人知道一个很好的有效方法来达到同样的效果?

例如,如果我需要知道马可以吃什么,它也需要返回面包。如果我想知道独角兽可以吃的所有食物,它需要返回面包(因为它是马,所有马都吃面包)。如果我需要知道 Animal 的子类吃什么,它还必须返回 Bread。

0 投票
1 回答
3114 浏览

owl - 在 Protégé 中定义具有注释属性的类

如何使用 OWL 本体中的注释属性创建定义的类?

目前,我已经使用对象属性hasSubject创建了一个已定义的类。

在此处输入图像描述

定义的类:

在此处输入图像描述

我更愿意通过重新使用 DC-Terms 集中的注释“主题”而不是自定义对象属性来创建此类。

是否可以使用注释属性创建已定义的类?我将如何在 Protégé 中做到这一点?

0 投票
1 回答
2739 浏览

sparql - 如何按属性的类过滤 SPARQL 查询

是否可以通过其属性之一的类来查询过滤器 SPARQL 查询?我有一个描述电影的本体,我希望展示所有在欧洲拍摄的电影。

当前的 SPARQL 查询如下:

where 子句的前两行给了我所有电影及其位置的列表。如何使用过滤器向我返回位置是cinema:Europe 子类的结果?

0 投票
2 回答
3862 浏览

protege4 - 无法下载 Protege 4.3 的 Pellet 插件

我希望将 Pellet reasoner 插件添加到 Protege 4.3。为此,我转到File-> Preferences -> Plugins -> Check for Downloads Now。但是,我在那里找不到 Pellet reasoner 插件。

我希望有 Pellet 推理器,因为我想添加一些包含 SWRL 数学内置插件的 SWRL 规则(例如内置的 swrlb:mod)。此外,使用 HermiT 推理器 1.3.8 存在一个错误,即不支持提供的内置 atom。

请帮助我解决这个问题,因为我是 Protege 的新手。

0 投票
1 回答
139 浏览

owl - 保护猫头鹰本体

我有两个属性

  • 赢了
  • hasQualifiedTo

两者的范围都是竞争,并且域不限于任何类别。我想将模型限制如下:

  • 要赢得 (hasWon) 比赛,必须有资格参加 (hasQualifiedTo) 比赛。如何在 Protege 中做到这一点以及如何在 DL 语法中表达它?

感谢任何建议。

0 投票
1 回答
344 浏览

ontology - Protege 4.3 中的 PG ETI SOVA 插件似乎无法正常工作

从http://protegewiki.stanford.edu/wiki/SOVA下载的 sova 插件用于可视化

sova 插件放置在正确的位置

遵循上述链接中建议的这些步骤。

在 PG ETI SOVA 选项卡中选择 Hierarchy Tree Vis;

在推理菜单中选择 HermiT;

在推理器菜单中按开始推理器;

在 PG ETI SOVA 选项卡中按重新启动。

PG ETI SOVA

我怀疑推理器是否正在工作,状态窗口会迅速出现和消失,不会留下来。

我一年前使用过 SOVA,我不知道为什么它现在不起作用。我回到了 protege 4.3,因为即使是最新的 SOVA 版本也与 protege 5 不兼容。请放弃任何提示。谢谢!

这是部分错误消息 在此处输入图像描述

我正在使用 SOVA 0.8.4 和 Protege-OWL 4.3,它们应该与http://protegewiki.stanford.edu/wiki/SOVA兼容


2015 年 9 月 21 日更新:SOVA (8.4) 选项卡也不加载。Protege 4.2 也是如此。请注意,没有早期版本的 SOVA 是公开可用的。

错误 4 记录于 2015 年 9 月 21 日星期一 18:40:36 EDT UnsupportedClassVersionError: org/pg/eti/kask/ont/pluginSova/pluginSovaTab:不支持的 major.minor 版本 51.0 java.lang.ClassLoader.defineClass1(Native Method) java.lang .ClassLoader.defineClassCond(Unknown Source) java.lang.ClassLoader.defineClass(Unknown Source) org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2128) org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation (BundleWiringImpl.java:1432) org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72) org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843) java.lang。 ClassLoader.loadClass(Unknown Source) org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1723) org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:926) org.protege.editor.core.plugin.PluginUtilities.getExtensionObject(PluginUtilities.java:131) org.protege.editor.core.plugin.ExtensionInstantiator.instantiate( ExtensionInstantiator.java:74) org.protege.editor.core.ui.workspace.WorkspaceTabPluginJPFImpl.newInstance(WorkspaceTabPluginJPFImpl.java:99) org.protege.editor.core.ui.workspace.WorkspaceTabPluginJPFImpl.newInstance(WorkspaceTabPluginJPFImpl.java:30) org.protege.editor.core.ui.workspace.tabs.TabsMenuAction$1.actionPerformed(TabsMenuAction.java:50) javax.swing.AbstractButton.fireActionPerformed(未知来源) javax.swing.AbstractButton$Handler.actionPerformed(未知来源) javax .swing.DefaultButtonModel.fireActionPerformed(未知来源) javax.swing.JToggleButton$ToggleButtonModel。setPressed(Unknown Source) javax.swing.AbstractButton.doClick(Unknown Source) javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source) javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source) java. awt.Component.processMouseEvent(Unknown Source) javax.swing.JComponent.processMouseEvent(Unknown Source) java.awt.Component.processEvent(Unknown Source) java.awt.Container.processEvent(Unknown Source) java.awt.Component.dispatchEventImpl(未知来源) java.awt.Container.dispatchEventImpl(未知来源) java.awt.Component.dispatchEvent(未知来源) java.awt.LightweightDispatcher.retargetMouseEvent(未知来源) java.awt.LightweightDispatcher.processMouseEvent(未知来源) java.awt .LightweightDispatcher.dispatchEvent(未知来源) java.awt.Container。dispatchEventImpl(Unknown Source) java.awt.Window.dispatchEventImpl(Unknown Source) java.awt.Component.dispatchEvent(Unknown Source) java.awt.EventQueue.dispatchEventImpl(Unknown Source) java.awt.EventQueue.access$000(Unknown Source) java.awt.EventQueue$1.run(Unknown Source) java.awt.EventQueue$1.run(Unknown Source) java.security.AccessController.doPrivileged(Native Method) java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source) java.security .AccessControlContext$1.doIntersectionPrivilege(Unknown Source) java.awt.EventQueue$2.run(Unknown Source) java.awt.EventQueue$2.run(Unknown Source) java.security.AccessController.doPrivileged(Native Method) java.security.AccessControlContext$1 .doIntersectionPrivilege(未知来源) java.awt.EventQueue。dispatchEvent(Unknown Source) java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) java.awt.EventDispatchThread.pumpEvents(Unknown Source) java .awt.EventDispatchThread.pumpEvents(未知来源)

java.awt.EventDispatchThread.run(未知来源)

0 投票
4 回答
3561 浏览

java-8 - 安装jdk1.8.0_45后如何打开Protege 4.3?

在 Windows 7 64 位上,我安装了 protege-4.3.0-304,我从这里与 jvm 一起下载了它。它工作正常。

但是一旦我用 更新了 jvm jdk1.8.0_45,我就无法打开 protege。它给出以下错误:

G:\protege-4.3.0-304\Protege_4.2>java -server - Dlog4j.configuration=file:log4j.xml -DentityExpansionLimit=100000000 -Dfile.encoding=utf-8 -Dorg.protege.plugin.dir=plugins -classpath bin/felix.jar;bin/ProtegeLauncher.jar org.protege.osgi.framework.Launcher
错误:捆绑 org.protege.common 1错误启动文件:/G:/protege-4.3.0-304/Protege_4.2 /bundles/org.protege.common.jar
(org.osgi.framework.BundleException: Unresolved constraint in bundle org.protege.common 1 : Unable to resolve 1.0: missing requirements [1.0] osgi.wiring.package; (&(osgi .wiring.package=org.w3c.dom)(version>=0.0.0)))
org.osgi.framework.BundleException:捆绑包 org.protege.common 1中未解决的约束:无法解决 1.0:缺少要求 [1.0] osgi.wiring.package;(&(osgi.wiring.package=org.w3c.dom)(版本>=0.0.0))

请有人帮帮我。提前致谢。

0 投票
1 回答
95 浏览

instance - 数据属性的属性链

根据 protege 4.x 文档,对象属性存在属性链,但是在我的情况下,我需要包含如下数据属性:

稍微解释一下,假设我们有一条名为“Hollywood”的街道。这条街道由几段(一段是交叉路口之间的街道的一部分)组成,其名称应与街道名称“Hollywood”相同。请注意,街道概念与段不同,因此它们不是子类,但它们具有上述关系(构建)。

一种解决方案是使 has_name 成为 Object 属性,然后每个名称都应该是一个对象(实例)。

这对我来说似乎不太好,因为我认为使用数据类型更好。

另一种解决方案是使用 SWRL,如下所示:

这不起作用!!!!你能帮我找出原因或找到合适的解决方案吗?

0 投票
1 回答
1581 浏览

semantic-web - 如何在 Protege OWL 2 中将数据属性限制为精确值?

我正在学习语义网的课程,我发现自己有点困惑。

我已经定义了一个名为 A 的基类并指定了它(hasType 正好是 1 个整数)。我想声明不同的子类,每个子类都有不同的类型。例如 B 是 A 的子类并且 hasType 等于 1,C hasType 等于 2。目的是能够选择所有 B 个体,因为它们都具有类型 1,以便始终推断类型关系。

从我正在阅读的教程中看到的,它只指定了如何使数据属性> = 或<,而不仅仅是等于某个值。

我已经尝试过确定如何做,例如B类指定hasType的子类一些整数[=1]。但编辑器总是显示一条红线和错误消息(见截图)。我究竟做错了什么?我似乎在网上找不到太多关于 Protege 的信息。我正在使用版本 5。

在此处输入图像描述