0

SWRL ルールがオントロジー内の個人間の新しい関係をどのように推論するかをテストするために簡単なオントロジーを構築しましたが、うまくいきませんでした。私のルールは次のとおりです。

(hasFather(?x, ?y)  ∧  hasMother(?x, ?z) → spouseOf(?y, ?z)

そして次のように読むことができます

x には父親 y がいて、x には母親 z がいます → y は z の配偶者です)。

私のオントロジーには、夫、妻、息子の 3 人の個人がいます。私は子供が母親が妻であり、父親が夫であると設定しました。そして、夫が妻の配偶者であることを設定するために、私のルールが採用されています。Jessプラグインを使用してルールをテストしましたが、結果はありませんでした。ルールが機能しないのはなぜですか?私のルールに何か問題がありますか、それとも Protege 3.3 の Jess に何か問題がありますか?

4

2 に答える 2

2

オントロジーに書いたことは、この質問に書いたルールではありません。オントロジーには次のルールが含まれています。

hasFather(?y, ?x) ∧ hasMother(?z, ?x) → spouseOf(?y, ?z)

RDF / XMLファイルで、とスワップswrl:argument1するswrl:argument2と機能します。

于 2012-11-28T13:23:46.337 に答える
0

Sonvx、Pellet reasoner を使用して SWRL ルールをテストできます。ペレット推論器は、SWRL ルールをテストするための Java API を提供します。ペレットのダウンロードはこちら

他に何か必要な場合はお知らせください。

于 2012-12-05T05:18:28.167 に答える