問題タブ [swrl]

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

owl - SWRLb - greaterThan と lessThan のトリガー

SWRL ルールの使用に問題があります。2 つの異常な状況が発生した場合に人間に通知するロボットがあります。私のテスト ケースでは、ユーザーのテンションを使用します。

  • 張力が 14 未満の場合、ロボットは張力が低いことを警告します。

    (:hasTension :Charles ?x) ∧ greaterThan(?x, "14.0"^^xsd:float) → (:hasAlert :Samii "テンションが高い"^^xsd::string)

  • 張力が 14 を超えると、ロボットは張力が高いことを警告します。

    (:hasTension :Charles ?x) ∧ lessThan(?x, "14.0"^^xsd:float) → (:hasAlert :Samii "テンションが低い"^^xsd::string)

ペレット推論器(ペレットのopenlletフォーク)でOWL APIを使用しています。そのために、組み込みの swrlb:greaterThanswrlb: lessThan を使用する SWRL ルールを用意しました。テストのために、公理を追加します

    :Charles :hasTension "10"^^xsd:float

データプロパティをクエリします

    :Samii :hasAlert ?alert

しかし、オントロジーにクエリを実行すると、2 つのアラートが表示されます。私のルールは適切に形成されていると思います。ビルトインが実装されていないことを示す API からの警告やエラーはありません。したがって、ルールは期待どおりに機能するはずです。予期しないアラートが表示される理由がわかりましたか?

資力

私のテスト「メイン」

コア:

そして私の存在論

私のテストケースの出力:

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

owl - Protege の一貫性のないオントロジーの警告

このイントロ youtube.com/playlist?list=PLea0WJq13cnAfCC0azrCyquCN_tPelJN1 に従って、オントロジーを作成しました。http://prntscr.com/bo4l3wを少し減らして、自分で canBeTutor (誰かが誰かの家庭教師になれるという意味) オブジェクト プロパティを追加しました。私が理解している限りでは、SWRL ルールを追加してから推論を起動して、新しい知識を作成できます。そこで、 prntscr.com/bo4lk7 を追加しました。Hermit reasoner prntscr.com/bo4lqx を開始しました。しかし、一貫性のないオントロジー警告 prntscr.com/bo4lu0 を取得しました。[説明]ボタンをクリックすると、次の説明が表示されましたhttp://prntscr.com/bo4lyg. 私の on はこちらです synoparser.ru/onto/protege.owl 1. 意味を教えてください。2. 一般的な理解のために。推理者は新しい知識を生み出すことができると読みました。それは単に関係を意味するのでしょうか、それとも個体とクラスを意味するのでしょうか? 3. Protege 5 の読者向け追加知識はどこにありますか?

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

owl - SWRL : ^ protege 4.3 では動作しません

結合記号を使用して SWRL ルールをプロテジに追加しようとしていますが、プロテジ^4.3 はその記号を承認しません。

この問題は、 などの swrl ビルドにも存在しswrlb:lessThanOrEqualます。

スクリーンショット

何が問題なの^ですか? ,代わりに使ってもいいですか?

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

protege - swrl ルールの else ブランチ

SWRL でルールの else 分岐を表現することは可能ですか? p->q を表現できることは知っていますが、非(p) の場合は r をアサートできるようにしたいです

例 HeavyPrecipitation(?x) -> hasObservationTag(?x,FalsePositiveOutlier)

そして今、他に言いたいのは hasObservationTag(?x,TruePositiveOutlier)

これはどのように行うことができますか?

ありがとう

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

java - OWL DL + SQWRLサポートのためのOWL APIでの推論機能の結合

OWL 2 DL オントロジーでいくつかの SQWRL ルールを計算する必要があります。

問題は:

  • 現在のOWL 2 DL推論はSWRLビルトインのみをサポートしています
  • 唯一の SQWRL SWRLAPI エンジンは drools-swrlapi で、これは OWL 2 RL であり、DL オントロジーを処理できません。

私は2つの可能な解決策を考えています:

  1. OWLAPI を Java で直接使用して、OWL 2 DL reasoner (Pellet など) の上で SQWRL を実行します。
  2. どういうわけか両方の推論 (Pellet と Drools-SWRLAPI) を使用し、静的な Java コードを避ける

私の質問は次のとおりです。競合しないように2つの推論を組み合わせることは可能ですか?

お気に入り

  1. DL reasoner を使用して推論を事前計算する
  2. 結果のオントロジーを Drools-SWRLAPI で実行して、SQWRL を実行します。
  3. それをDL推論に戻し、より多くの推論を検証/計算します
  4. ループ

ありがとう!