問題タブ [reasoning]
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.
rdf - リテラルの推論とデータ型
^^xsd:stringTurtle-RDF では、文字列リテラルのデータ型拡張を省略すると便利です。しかし、StarDog http://www.stardog.com/:YYYで推論しようとすると、拡張子を持つ個体だけ"green"^^xsd:stringが:GreenButton
推論結果:
それに対処する最善の方法は何ですか?
java - OWLAPI を使用してオントロジー ファイルをロードするときの UnloadableImportException
OWL-API v3.4.3 と HermiT 1.3.8.4 を使用して OWL オントロジーを検証する Maven プラグインを開発しています。一部の OWL オントロジーは独自仕様であるため、Web 上では利用できません。
ドキュメントを見るとloadOntologyFromOntologyDocument()、検証を実行するために OWL ファイルをロードするために使用しています。
これは、オントロジーが独自のオントロジーをインポートしない場合は正常に機能しますが、それ以外の場合はUnloadableImportExceptionエラーを返します。オントロジー URI とエンティティが定義されている物理ファイルとの間のリンクを作成するために使用している人を見てきaddIRIMapperましたが、私の場合はうまくいかないと思います (ほとんどの場合、ファイル名が不明であるため)。
インポートを無視するようにOWL APIに指示する方法はありますか? 存在する場合は、フォルダー内のファイルを反復処理し、OWLOntologyMergerすべてのオントロジーを一緒に検証するために活用できます。
properties - OWLの推論: プロパティを推論するための必要十分条件
私たちは、主張された一般的なプロパティの代わりに、より具体的なサブプロパティを使用できることを推論するための推論 (Protege の HermiT など) を取得しようとしています。
クラス:
プロパティ:
次のトリプルをアサートすると:
推論者は、(特に) 次のことを推論できます。
しかし、逆に考えてみると、次のように断言できます。
推論者に次のように推論してもらいたい:
Protege と HermiT にその結論を導き出し、トリプルを推測させることはできないようです。
何が欠けていますか?その知識を推論するための条件は必要かつ十分ではないでしょうか?
xml - OWL 2 オントロジーの整合性チェック
SBVR ルールをオントロジー (OWL 2) に変更し、Hermit Reasoner を使用して整合性チェックを実行しようとしています。しかし、一貫性のないルール、したがって一貫性のないオントロジーの場合でも、隠者の推論者はオントロジーが一貫していることを示しています。私はどこが間違っているのか途方に暮れています。
私が得たオントロジー(OWL 2)は次のとおりです。
対応する SBVR ルールと語彙は次のとおりです。
単語
クレジットカード
レンタカー
car_rental is_insured_by credit_card
ルール
car_rental is_insured_by at_least 3 credit_card;
car_rental is_insured_by at_most 2 credit_card;
SBVR のルールは明らかに対照的で、一貫性がありません。オントロジーにも一貫性がないかどうかを知りたいです。もしそうなら、推論が機能しないのはなぜですか。私にはそのように見えますが、隠者の推論者がそうではないことを言っている理由がわかりません。
Hermit.jar を Java コードに追加し、推論を実行しています。
そのためのコードは
owl - Protege でオントロジーをロード中にエラーが発生しました
Protege 3.5に OWL 2.0 オントロジーをロードしようとしています。ただし、試行するたびにエラーが発生します。
エラーは次のとおりです。
Jena Parse エラー メッセージ: コンテンツはプロローグで許可されていません例外クラス org.xml.sax.SAXParseExceotion: コンテンツはプロローグで許可されていません。
私のOWL2ファイルには次のコードがあります
Hermit Reasoner と Pellet Reasoner を Java コードから実行すると、オントロジーは問題なく動作します。エラー メッセージが表示される理由と修正方法を教えてください。
owl - アインシュタインのなぞなぞをスタードッグ推理器で解けますか?
アインシュタインのなぞなぞ(別名ゼブラ パズル) をStardog推理器で解くことは可能ですか? つまり、次のクエリでは期待した結果が得られませんeinsteins_riddle_en:Old_Gold
owl - Protege はオントロジーに一貫性がないことを示していますが、Hermit と Pellet Reasoner はそうではありません
矛盾したオントロジーに対して一貫性チェックを実行しようとしていますが、ペレットと Hermit Reasoner は矛盾を与えていません。ただし、Protege は一貫性のないクラスを正常にマークします。具体的には、SBVR ルールを OWL 2.0 に変更しています。だから私のルールは car_rental is_insured_by at_least 3 credit_card; car_rental is_insured_by at_least 5 credit_card;
対応するオントロジーは
Hermit と Pellet はオントロジーを一貫性があるとマークしますが、Protege は両方のクラスを矛盾しているとマークします。
ここで、SBVR ルールを次のようにするとします。
car_rental is_insured_by at_most 3 credit_card; car_rental is_insured_by at_least 5 credit_card;
対応するオントロジーは
今回は Hermit と Pellet の両方が問題なく動作し、Protege も同様です。
参考までに私の Hermit コードも添付します。
私はこの振る舞いに途方に暮れています。