問題タブ [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.
owl - プロテジェ・オントロジーにおけるオープンワールド仮定
Protege で映画シリーズのコンセプトをモデル化したいと考えています。
これが私の映画三部作のクラスです:
「映画シリーズ」クラスの個人の定義は次のとおりです。
個人には 3 つの「hasEpisode」プロパティがあります。しかし、オープン ワールドの仮定 (OWA) により、この個体はクラス 'Trilogy' の下で推論されません。
考えられる解決策: Film Series クラスの各個人に、シリーズの映画の量を指定するデータ プロパティを与えることができます。
ただし、「hasEpisode」オブジェクト プロパティの数を使用したいと思います (それらは既に利用可能であり、メンテナンスが少なくて済むため)。
rdf - クラスのオブジェクト プロパティ インスタンス?
たとえば、次のように言いましょう。
ここで、Bread -> eatableBy -> Horse を設定できるようにする必要があります。しかし、クラスに対してオブジェクト プロパティ アサーションを行うことはできません。したがって、それを食べることができるように設定して、Horse のすべてのインスタンスを追加することもできますが、多くのインスタンスがあるため、少し冗長になります。同じ効果を達成するための効率的な方法を知っている人はいますか?
たとえば、馬が何を食べられるかを知る必要がある場合は、パンも返す必要があります。Unicorn が食べられるすべての食べ物を知りたい場合は、Bread を返す必要があります (ユニコーンは馬であり、すべての馬はパンを食べるため)。Animal のサブクラスが何を食べるかを知る必要がある場合は、Bread も返す必要があります。
sparql - プロパティのクラスで SPARQL クエリをフィルタリングする方法
そのプロパティの 1 つのクラスによって SPARQL クエリのフィルタをクエリすることは可能ですか? 映画を記述するオントロジーがあり、ヨーロッパで撮影されたすべての映画を表示したいと考えています。
現在の SPARQL クエリは次のとおりです。
where 句の最初の 2 行で、すべての映画とそのロケ地のリストが得られます。フィルターを使用して、場所が cinema:Europe のサブクラスである結果を返すにはどうすればよいですか?
owl - プロテジ フクロウ オントロジー
私は2つのプロパティを持っています
- 獲得しています
- hasQualifiedTo
両方の範囲は競争であり、ドメインはどのクラスにも制限されません。モデルを次のように制限します。
- コンペに勝つ (hasWon) には、コンペに参加する資格 (hasQualifiedTo) が必要です。Protege でそれを行う方法と DL 構文でそれを表現する方法は?
提案をお待ちしております。
ontology - Protege 4.3 の PG ETI SOVA プラグインが機能していないようです
視覚化のためにhttp://protegewiki.stanford.edu/wiki/SOVAからダウンロードした sova プラグイン
上記のリンクで提案されているこれらの手順に従いました。
PG ETI SOVA タブで Hierarchy Tree Vis を選択します。
推論メニューで HermiT を選択します。
Reasoner メニューで Start reasoner を押します。
PG ETI SOVA タブで再起動を押します。
reasoner が機能しているかどうかは疑問ですが、ステータス ウィンドウがすばやく表示されたり消えたりし、残りません。
私は 1 年前に SOVA を使用しましたが、なぜ今は機能していないのかわかりません。最新の SOVA バージョンでさえ protege 5 と互換性がなかったため、protege 4.3 に戻りました。ヒントがあればドロップしてください。ありがとう!
これは部分的なエラー メッセージです
私は 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 ログに記録された月 9 月 21 日 18:40:36 EDT 2015 UnsupportedClassVersionError: org/pg/eti/kask/ont/pluginSova/pluginSovaTab : Unsupported major.minor version 51.0 java.lang.ClassLoader.defineClass1(Native Method) java.lang .ClassLoader.defineClassCond(不明なソース) java.lang.ClassLoader.defineClass(不明なソース) org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2128) (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(不明なソース) 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(不明なソース) javax.swing.AbstractButton.doClick(不明なソース) javax.swing.plaf.basic.BasicMenuItemUI.doClick(不明なソース) javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(不明なソース) java. awt.Component.processMouseEvent(不明なソース) javax.swing.JComponent.processMouseEvent(不明なソース) java.awt.Component.processEvent(不明なソース) java.awt.Container.processEvent(不明なソース) 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(不明なソース) java.awt.Window.dispatchEventImpl(不明なソース) java.awt.Component.dispatchEvent(不明なソース) java.awt.EventQueue.dispatchEventImpl(不明なソース) java.awt.EventQueue.access$000(不明なソース) java.awt.EventQueue$1.run(未知のソース) java.awt.EventQueue$1.run(未知のソース) java.security.AccessController.doPrivileged(ネイティブメソッド) java.security.AccessControlContext$1.doIntersectionPrivilege(未知のソース) java.security .AccessControlContext$1.doIntersectionPrivilege(未知のソース) java.awt.EventQueue$2.run(未知のソース) java.awt.EventQueue$2.run(未知のソース) java.security.AccessController.doPrivileged(ネイティブメソッド) java.security.AccessControlContext$1 .doIntersectionPrivilege(不明なソース) java.awt.EventQueue.dispatchEvent(不明なソース) java.awt.EventDispatchThread.pumpOneEventForFilters(不明なソース) java.awt.EventDispatchThread.pumpEventsForFilter(不明なソース) java.awt.EventDispatchThread.pumpEventsForHierarchy(不明なソース) java.awt.EventDispatchThread.pumpEvents(不明なソース) java .awt.EventDispatchThread.pumpEvents (不明なソース)
java.awt.EventDispatchThread.run(不明なソース)
java-8 - jdk1.8.0_45をインストールした後、Protege 4.3を開く方法は?
Windows 7 64 ビットでは、ここから jvm と一緒にダウンロードした protege-4.3.0-304 をインストールしました。そして、それはうまく機能していました。
しかし、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=プラグイン-classpath bin/felix.jar;bin/ProtegeLauncher.jar org.protege.osgi.framework.Launcher
ERROR: Bundle org.protege.common 1 Error starting file:/G:/protege-4.3.0-304/Protege_4.2 /bundles/org.protege.common.jar
(org.osgi.framework.BundleException: バンドル org.protege.common 1の未解決の制約: 1.0 を解決できません: 要件がありません [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))
誰か助けてください。前もって感謝します。
instance - データ プロパティのプロパティ チェーン
protege 4.x のドキュメントによると、プロパティ チェーンはオブジェクト プロパティ用に存在しますが、私の場合は次のようにデータ プロパティを含める必要があります。
少し説明するために、「ハリウッド」という名前の通りがあると想像してください。この通りはいくつかのセグメント (セグメントとはジャンクションまでの間の道路の一部) で構成されており、その名前は通りの名前 "Holly wood" と同じでなければなりません。ストリートの概念はセグメントとは異なるため、サブクラスではありませんが、上記の関係 (ビルド) を持っていることに注意してください。
1 つの解決策は、has_name を Object プロパティにすることです。その場合、各名前はオブジェクト (インスタンス) にする必要があります。
データ型を使用する方が良いと思うので、これは私にはまったく問題ないようです。
他の解決策は、以下のように SWRL を使用することです。
これは動作しません!!!!理由を突き止めたり、適切な解決策を見つけたりするのを手伝ってもらえますか?
semantic-web - Protege OWL 2 でデータ プロパティを正確な値に制限するにはどうすればよいですか?
私はセマンティック Web のコースを受講していますが、少し混乱しています。
A という名前の基本クラスを定義し、それを指定しました (hasType は正確に 1 つの整数)。それぞれが異なる型を持つ異なるサブクラスを宣言したいと思います。たとえば、B は A のサブクラスであり、hasType は 1 に等しく、C の hasType は 2 に等しくなります。意図は、すべての B 個体が Type 1 を持っているため、型関係が常に推論されるように、すべての B 個体を選択できるようにすることです。
私が読んでいるチュートリアルで見たものから、データ プロパティ >= または < を作成する方法のみを指定し、特定の値と等しくすることは決してありません。
私はそれを行う方法を決定するために実験を試みました。たとえば、クラス B は hasType のサブクラスを整数 [=1] で指定します。ただし、エディターには常に赤い線とエラー メッセージが表示されます (スクリーンショットを参照)。私は何を間違っていますか?Protege については Web 上であまり見つけられないようです。バージョン5を使用しています。