2

と という名前の 2 つのクラスがあるPeopleとしDiseaseます。これらのクラスは Object Property によって関連付けられていhasます。

:People :has :Disease

Peopleサブクラス (または個体)JohnDisease持ち、サブクラス (または個体) を持ちCancerます。

:John a :People
:Cancer a :Disease

これらのサブクラス間の関係を推論によって取得するにはどうすればよいでしょうか?

:John :has :Cancer
4

1 に答える 1

5

答えを得る前に、解決しなければならない誤解がいくつかあります。

まず、サブクラスと個体はまったく異なる概念です。個体 (インスタンス) はクラスのメンバーです。サブクラスは、クラスが別のクラスのサブセットであることを示します。これは、(推論による) サブクラスのすべてのメンバーが (スーパー) クラスのメンバーであることを意味します。(参考までに: OWLには継承の概念はありません。)

:People :has :Diseaseクラス個体にとっては意味を持たないなど、第 2 クラス レベルのプロパティ。クラスに対するプロパティの関係を定義する方法は、プロパティのドメインと範囲を設定することです。(:hasプロパティ名として使用するだけでは、おそらく他の種類の言語からの幅広い誤解を示しています。)したがって、名前:hasDiseaseとアサーションをお勧めします。

:hasDisease rdfs:domain :People .
:hasDisease rdfs:range :Disease .

3 番目に、が のサブクラスであるとすると、それをアサートし:John :hasDisease :Cancer、John が病気にかかっていると推測できます。これには、標準の RDFS 推論が必要です。また、上記のドメインと範囲の定義、およびアサーション が与えられると、RDFS 推論はそれと を推論します。:Cancer:Disease:Joy :hasDisease :Gout:Joy a :Person:Gout a :Disease

Google で見つけることができる OWL 入門書がいくつかあります。OWL と推論プロファイルがどのように機能するかについての基本的な理解を得るために、これらのいくつかに目を通すことをお勧めします。

于 2016-05-10T18:44:23.677 に答える