2

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. ループ

ありがとう!

4

1 に答える 1

1

これは、OWLReasonerが非バッファリングとして作成され、Drools-SWRLAPI が入力オントロジーですべての推論されたトリプルを実体化する場合に実行可能です。これは当てはまらない可能性があるため、これらの推論を具体化するための措置を講じる必要がある場合があります。

私は SWRL API と Drools ルール エンジンに詳しくないので、これが実行可能か簡単かはわかりません。私はおそらく、SWRL をサポートするオープン ソースの推論ツールの 1 つを採用し、その SWRL サポートを Drools コードに置き換えることから始めます。これには、正確性と完全性を確保するために推論ツールが使用するアルゴリズムが確実に適用されるという利点があります ( 2 つの推論アプローチは適切な近似値であるはずですが、まれなケースが見逃されたり、最適化が失われたりする可能性があります。

逆のアプローチ、つまり OWL2DL 推論を具体化してから SWRL ルールを適用する方法には、どの推論を具体化するかを選択しなければならないという弱点があります。タクソノミーのクラス式はインターフェイスを簡単に移動できずOWLReasoner、そのプロセスは計算コストが非常に高くなる可能性があります。

于 2016-12-16T19:38:17.180 に答える