0

オントロジーで制約を指定しようとしています。クラス A、B、C とオブジェクト プロパティ "A hasB B" と "B hasC C" があるとします。A のすべての個体 'a' が C の少なくとも 1 つに間接的に関連しているという制約を指定したいと思います。つまり、"a hasB b" および "b hasC c" という b,c が存在します。

OWLでこれを行うことは可能ですか? いいえの場合、この種の検証を可能にするテクノロジーについてアドバイスいただけますか?

4

3 に答える 3

1

あなたが行おうとしているように見えるように、すぐに制約言語として OWL を使用することはできません。OWL にはOWA (Open World Assumption) があり、制約の表現が非常に難しくなります。Pellet のIntegrity Constraintsなどのシステムがあり、世界を閉じてセマンティクスをわずかに変更することで、OWL を制約言語として使用できます。

于 2012-09-24T12:09:03.073 に答える
0

クラスの同等性を使用するだけです。

A equivalentTo (hasB some B)
B equivalentTo (hasC some C)

これは、AのすべてのaがBのbに存在することを示しています:a hasB b、BのすべてのbはCのcに存在します:bhasCc。

于 2012-09-23T21:58:04.683 に答える
0

次のことができます (Turtle 構文で):

:A  rdfs:subClassOf  [
    a  owl:Restriction;
    owl:onProperty  :hasB;
    owl:someValuesFrom  [
        a  owl:Restriction;
        owl:onProperty  :hasC;
        owl:someValuesFrom  :C
    ]
] .

私はマンチェスターの構文についてあまり詳しくありませんが、次のようなものでなければなりません。

A  subClassOf  (hasB  some  ( hasC  some  C ))

繰り返しますが、他の人が指摘しているように、個人の存在は、そのような個人がデータのどこかに言及されていることを意味するものではありません。

于 2012-09-24T15:55:50.673 に答える