0

I'm new to ontologies and have a basic question about OWL reasoning. The question may seem long winded, sorry about that..

Consider an ontology with the following axioms (owl:class C1) and (owl:class P), with an object property (rdfs:domain observes C1)(rdfs:range observes P), along with an individual (rdf:type p P)

I then restrict the class C1 by creating a class C2 (rdfs:subClassOf C2 C1) with the restriction (observes C2 p)

Now when I then create a new individual (rdf:type x owl:Thing) (observes x p), then the reasoner infers that (rdf:type x C1). However, the definition of the individual x seems more close to C2 so should the reasoner not infer that x is of type C2?

Please help!

I'm experimenting using the Jena framework.

4

1 に答える 1

2

これが起こらない理由は、サブクラスを使用して制限を作成したためです。これは、必要な (しかし十分ではない) 条件を作成したことを意味します。言い換えれば、あなたは推論者に次のように言いました。

「個人がタイプC2の場合、それは「観察する」プロパティを持っている必要があります」

しかし、あなたはそれを逆に言ったわけではありません:

「個人が「観察する」プロパティを持っている場合、それはタイプC2でなければなりません」

推論者があなたの個人がタイプ C2 であると推論できるようにするには、そこにも 2 番目の規則 (十分条件) がなければなりません。OWLowl:equivalentClassでは、(関係の代わりに) 制限に関係を使用してこれを行うことができますrdfs:subClassOf

于 2012-07-29T05:59:28.487 に答える