2017-05-24 3 views
1

私はRDFデータを使ってプロジェクトを進めています。カスタムオントロジーに基づいて、特定のパターンと一致しないRDFトリプルデータセットとフラグトリプルに対して実行されるデータクリーンアップメソッドの実装について考えています。OWL APIを使用して、特定のサブジェクト - 述語 - オブジェクトの関係を強制できますか?

たとえば、クラスhttp://myontology/Aは、述語http://myontology/denotesを使用してhttp://myontology/Bを示す必要があることを強制したいと思います。 denoteのインスタンスがクラスBではないクラスAのインスタンスにはフラグが設定されます。

OWLReasonerなどのツールが、Reasonerのカスタム公理を設計した場合、このようなことを達成できるかどうかは疑問です。 http://owlcs.github.io/owlapi/apidocs_4/org/semanticweb/owlapi/reasoner/OWLReasoner.html

のReasonerで利用可能な方法は、アップ私はそれらを使用したい目的のためではないかもしれないように私には見えますが、誰もがOWL-APIを使用した経験を持っている場合、私は思ったんだけど:私はここにドキュメントをレビューしていますこの目的のために、またはそのトリックを行うことができる別のツールを知っている。

答えて

1

一般に、OWLの推論は、入力に欠落している情報を見つけてそれにフラグを立てるのには適していません。たとえば、Aのインスタンスがインスタンスの正確な関係を示していると主張するクラスを作成するBのインスタンスを持ち、Aのインスタンスを持っています.Open Worldの仮定の下では、推論者はあなたが違反しているというわけではなく、不足しているステートメントが利用できないと仮定します。

Bのインスタンスに関連する代わりに、Bとは別のクラスのインスタンスに対して、誤った使用を検出する可能性があります。しかし、これは、後で。

OWL APIを使用してコードを実装してこのチェックを行うことはできますが、RDFレベルで作業しているとすれば、それは理にかなったものではないでしょう。Apache Jenaあなたの入力ファイルがOWLに準拠していないと心配する必要はありません。

関連する問題