0

私が持っているとしましょう:

  • プロパティ 1 はオプションです
  • 常に定義される Property2

次と等しい TrueProperty を定義したい:

  1. Property1 が存在する場合は Property1
  2. それ以外の場合は Property2

それ以外の場合は Property2

それをしてもいいですか?OWLでそれを行うことはできますか?

ありがとうございました

4

1 に答える 1

4

OWL ではそれを行うことはできません。OWL は、書かれていることについて話すことを意図したものではなく、世界の真実について話します。データ セットに明示的に存在しない事実は、真実である可能性があります。住所が記載されていない履歴書を送られたら、あなたはホームレスであると判断できますか?

ただし、OWL を使用せずに、やりたいことを実行する方法はいくつかあります。FILTER を使用した SPARQL CONSTRUCT クエリ。Property1 の値を推測できる場合は推論を行い、そうでない場合は Property2 をプログラムで追加します。例えば:

CONSTRUCT { ?s  <TruProperty>  ?o }
WHERE {
    { ?s  <Property1>  ?o }
   UNION
    { ?s  <Property2>  ?o
      FILTER NOT EXISTS { ?s  <Property1>  ?o }
    }
}
于 2012-12-21T08:21:58.967 に答える