6

オントロジーで次のモデルを作成しました。

Club は一部の Player を採用し、Player hasNationality は Nationality、Player hasNationalStatus の値は National_Player、Country は Nationality と同等です。

オントロジーに次のように推論してもらいたい:

Player が Nationality を持っていて、Player hasNationalStatus の値が National_Player の場合、Country (プレイヤーが持っている国籍と同じ) は Player を雇用します。

例として:

{Steven_Gerrard} は Nationality 値が England であり、{Steven_Gerrard} は NationalStatus 値が National_Player であるため、{England} は [Steven_Gerrard] を採用しています。

この知識を Protege に追加する方法はありますか?

ありがとう。

編集:

エラー メッセージ:

エラー 42 は、2014 年 4 月 1 日火曜日 20:49:24 BST に記録されました。

OWLReasonerRuntimeException: 非単純なオブジェクト プロパティ ' http://www.semanticweb.org/u1cjd/ontologies/2014/1/untitled-ontology-2#employs ' が単純なものとして使用されています

2014 年 4 月 1 日火曜日 20:49:24 BST に記録されたエラー 43 ReasonerInternalException: tRole.cpp:243: assertion 'Ancestor.empty() && Descendant.empty()' fails

4

1 に答える 1

11

これは可能であり、実際には、前の質問への回答で私が言及した手法と非常によく似ています。プロテジの OWL オントロジーに知識のステートメントを追加します)。この回答の構造は、最近の回答に対する私の回答とほぼ同じです。 .semanticweb.com の質問、ブランク ノードからの OWL プロパティの推論 - モデリング

いくつかのロール化とプロパティ チェーンの公理を使用する必要があるだけです。注意すべき点は、既存のデータは上の矢印の形をしており、必要な情報は下の矢印にあるということです。

図

プレーヤーが特定の国籍を持っていることを確認したいので、雇用者にサブプロパティhasNationality -1を与えるだけでは十分ではありません。これは、ロール化が必要な場所です。従業員にhasNationality -1 • pのサブプロパティ チェーンを持たせたいとします。ここで、pは、国民的地位を持つプレーヤーのみを自分自身に関連付ける特別なプロパティです。あなたはロール化でそれを行うことができます。新しいオブジェクト プロパティR NationalPlayersを宣言し、公理をアサートするだけです。

  1. hasNationalStatusNational_Player EquivalentTo R_NationalPlayer some Self
  2. (hasNationality) o R_NationalPlayer subPropertyOfを採用

記述ロジックの構文では、これらは次のようになります。

  1. =hasNationalStatus.National_Player ≡ ∃R NationalPlayer . 自己
  2. hasNationality -1 • R NationalPlayer ⊑ 採用

これはいくつかの理由で機能しますが、残念ながら、これにより、OWL 2 DL から完全な OWL に移行します。これは、この回答のコメントで詳細に説明されています。更新された質問のエラー メッセージが示すように、employsは単純ではないプロパティになり、単純なプロパティのみを使用する必要がある場所で使用されます。プロパティを単純にするものとそうでないものの詳細については、11.1 プロパティ階層と単純なオブジェクト プロパティ式を参照しください

ただし、SWRL ルールをサポートする推論を使用しているように思えます。その場合は、単純にルールを追加できます。

hasNationality(?player,?country) ∧ hasNationalStatus(?player,National_Player) → Employs(?country,?player)

于 2014-04-01T18:58:01.327 に答える