問題タブ [pellet]

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 に答える
628 参照

java - Pellet と OWL-API の OSGi 依存関係との闘い

オントロジーに簡単にアクセスできるように、owl-api とペレット推論器を組み合わせたファサードを作成しました。静かによく効きました。次に、OSGi バンドルとしてパックし、他のサービスから TrackerService 経由で使用しようとしました。owl-api バンドルを実行するには、guava と trove が必要です。Trove にはバンドルはありません。ターゲット プラットフォームをリロードした後でも、ペレット ジャーは Eclipse でバンドルとして認識されませんでした (jpm4j から取得しました)。それで、私はすべての瓶詰め物を取り、それを束に絞ることを考えました.

サードパーティの jar をバンドルでパッケージ化するためのハウツーをたくさん読みました。私は maven-bundle-plugin を使用し、このプラグインと bndtools からいくつかのドキュメントを読んだ後、 conditional-packageを使用することにしました。コンパイル後、バンドルに jar がパッケージ化されませんでした :(。その後、embed-dependenciesを使用しました。一時的な依存関係が実行時に利用できなかったため、機能しませんでした。そのため、embed-transientを使用しました。タグ (これは悪いスタイルだと既に読みました)。Import-Package 部分はすべての一時的な依存関係で自動的に埋められたので、未解決のインポートに関するエラーを取り除くために手動で上書きしました。これは機能し、owl-api を使用して新しいプロパティ、個人などを挿入することができました (ええ)。

ペレット推論を開始しようとすると、実行時に以下のエラー メッセージが表示されました。私のプロジェクトの依存関係の混乱についてだと思います。現在の方法が間違っていることはすでにわかっていますが、より良い方法を見つけることができませんでした。OSGi でこの依存関係管理を正しく行うのを手伝ってください。

乾杯、ステファン

エラーメッセージ:

POM ファイル (重要な部分):

0 投票する
1 に答える
129 参照

osgi - owl api - osgi で使用されるペレット

OSGI バンドルで OWL API と Pellet を使用しようとしています。バンドルは正常にビルドされますが、実行時に次のエラーが発生します: org.osgi.framework.BundleException: Unresolved constraint in bundle smp.lighting.client.osgi [2]: package; (package=org.mindswap.pellet).

これらは、pom ファイルで宣言されている依存関係です。 <dependency> <groupId>edu.stanford.protege</groupId> <artifactId>org.semanticweb.owl.owlapi</artifactId> <version>3.4.4</version> <exclusions> <exclusion> <artifactId>org.osgi.core</artifactId> <groupId>org.apache.felix</groupId> </exclusion> <exclusion> <artifactId>owlapi-apibinding</artifactId> <groupId>net.sourceforge.owlapi</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.github.ansell.pellet</groupId> <artifactId>pellet-owlapiv3</artifactId> <version>2.3.3</version> <exclusions> <exclusion> <artifactId>slf4j-api</artifactId> <groupId>org.slf4j</groupId> </exclusion> <exclusion> <artifactId>log4j</artifactId> <groupId>log4j</groupId> </exclusion> <exclusion> <artifactId>xercesImpl</artifactId> <groupId>xerces</groupId> </exclusion> </exclusions> </dependency>

また、バンドルの起動ファイルで、mvn:edu.stanford.protege/org.semanticweb.owl.owlapi/3.4.4 を呼び出します。

次のレベル: wrap:mvn:com.github.ansell.pellet/pellet-jena/2.3.3 wrap:mvn:com.github.ansell.pellet/pellet-owlapiv3/2.3.3

何か足りないかどうかわかりませんが、助けていただければ幸いです。前もって感謝します!

0 投票する
1 に答える
492 参照

owl - なぜペレットは、無限の「含意」正当性を持つ一貫性のない「何もない」サブクラスを推論したのですか?

私は Protégé 4.0 と Pellet 2.2 を使用して OWL 2.0 を学んでおり、基礎となる概念を徐々に理解しようとしています。

そこで、クラス階層から始めて、1 つのクラス「Cat」を SubClassOf「Things」として作成しました。

Pellet を起動するとすべて正常に動作しますが、"Cat" というクエリを DL すると、Directsubclasses "Nothing" と Subclasses "Nothing" が赤色で表示されます。

  • どういう意味ですか?
  • なぜ赤いのですか?

正当化は次のようなものです:

  • どういう意味ですか?
  • これらの「含意」の正当化が無限にあるのはなぜですか(つまり、1つのクラスしか作成していません)。
  • この現象を回避するために修正しなければならないエラーはありますか? それとも気にしなくていいのでしょうか?

ありがとうございます^_^!

0 投票する
1 に答える
337 参照

sparql - OWL APIのペレット内部ResonerException

ある日立ち往生しています。誰か親切に助けてくれますか? SWEET(Semantic Web for Earth and Environmental Ontology)をインポートしたオントロジーをロードしました。私はいくつかの SPARQL クエリを実行しましたが、次のような回答が得られました。(SWEETで確認したhasLowerBoundは、SWEETのデータ型オントロジーです)

どうすればこの問題を解決できますか?

これが私が書いたコードと私が得たエラーです、あなたの助けに感謝します~

スレッド "main" org.mindswap.pellet.exceptions.InternalReasonerException での例外: オブジェクト プロパティ hasLowerBound は、値がリテラルである hasValue 制限と共に使用されます: "0"^^integer at org.mindswap.pellet.tableau.completion.rule .SomeValuesRule.applySomeValuesRule(SomeValuesRule.java:204) at org.mindswap.pellet.tableau.completion.rule.SomeValuesRule.apply(SomeValuesRule.java:64) at org.mindswap.pellet.tableau.completion.rule.AbstractTableauRule.apply (AbstractTableauRule.java:64) org.mindswap.pellet.tableau.completion.SROIQStrategy.complete(SROIQStrategy.java:157) で org.mindswap.pellet.ABox.isConsistent(ABox.java:1423) で org.mindswap. org.mindswap.pellet.KnowledgeBase.consistency(KnowledgeBase.java:1987) で org.mindswap.pellet.KnowledgeBase.isConsistent(KnowledgeBase.java:2061) at org.mindswap.pellet.jena.PelletInfGraph.prepare(PelletInfGraph.java:258) at org.mindswap.pellet.jena.PelletInfGraph.prepare(PelletInfGraph.java:241) at com .clarkparsia.pellet.sparqldl.jena.SparqlDLExecutionFactory.create(SparqlDLExecutionFactory.java:113) at com.clarkparsia.pellet.sparqldl.jena.SparqlDLExecutionFactory.create(SparqlDLExecutionFactory.java:261) at com.clarkparsia.pellet.sparqldl.jena .SparqlDLExecutionFactory.create(SparqlDLExecutionFactory.java:226) at loadMODIS.load.main(load.java:78)create(SparqlDLExecutionFactory.java:113) com.clarkparsia.pellet.sparqldl.jena.SparqlDLExecutionFactory.create(SparqlDLExecutionFactory.java:261) com.clarkparsia.pellet.sparqldl.jena.SparqlDLExecutionFactory.create(SparqlDLExecutionFactory.java:226) loadMODIS.load.main(load.java:78) でcreate(SparqlDLExecutionFactory.java:113) com.clarkparsia.pellet.sparqldl.jena.SparqlDLExecutionFactory.create(SparqlDLExecutionFactory.java:261) com.clarkparsia.pellet.sparqldl.jena.SparqlDLExecutionFactory.create(SparqlDLExecutionFactory.java:226) loadMODIS.load.main(load.java:78) で

0 投票する
1 に答える
269 参照

protege - 実行時にオントロジーの一貫性をチェックする

Jena を使用して Protege で設計された .owl オントロジーをロードするプログラムがあります。実行時にいくつかのステートメントをモデルに追加すると、その一貫性をチェックできるように、ペレットを使用してそれについて推論しようとしています。たとえば、「メソッド」、「署名」、および「hasSignature」の概念があり、hasSignature はオブジェクト プロパティです。私は次の公理を持っています:

上記の公理に違反するためにいくつかのインスタンスステートメントを追加しても、矛盾は報告されません。これが私のコードです:

どうしたの?うまくいかないのはなぜですか?

0 投票する
1 に答える
941 参照

sparql - ペレット + Jena + SPARQL + com.hp.hpl.jena.query.QueryParseException: が発生しました ""rdfs:ドメイン

私が得た問題 com.hp.hpl.jena.query.QueryParseException: Encountered " <PNAME_LN> "rdfs:domain. は、これが私がやったことです。OWL API を使用して xml/owl ドキュメントを読み取り、Pellet を使用して推論します。理由に加えていくつかの SPARQL クエリを実行したいので、Jena 2.10.0 を使用して Pellet 2.3.0 を操作します。互換性のため、Jena のバージョンを変更することはできません。コードは次のとおりです。

コードは最初の 3 つのクエリでうまく機能しますが、追加後"seaice:describe rdfs:domain ?domain."すぐに問題が発生しました。このコードは、" " だけでもうまく機能しseaice:describe rdfs:domain ?domain.ます。エラーは次のとおりです。

0 投票する
1 に答える
183 参照

java - オントロジーの推論

推論に問題があります。オントロジーの TBox のみをロードする場合、クラスのインスタンスを取得するにはどうすればよいですか?

実行は最後の行までブロックされます (NULL POINTER はありません)。ブロックされているだけです:(

0 投票する
1 に答える
108 参照

jena - ペレット + 推移性 + 理由 + OWL-API

推移的なオブジェクトのプロパティSimilartoを推測する際にPelletを使用する際に問題があります。私は個体AがBに類似し、個体BがCに類似しています。OWL APIでPelletを使用したり、Jenaを使用して個体グループA、B、Cを取得したいのですが、OWL APIで推論を行うためのコードがわかりません。

私はすでに OWL API にオントロジーをロードしています。同じ推移プロパティに接続された個人のグループを推論するサンプル コードはありますか?