1

プロテジ 4 で作成されたオントロジーがあります。OWL API 4 を使用して、オントロジーの個々のフクロウにデータ プロパティを追加する必要があります。私は次のコードを使用しました:-

OWLNamedIndividual myowlIndl = df.getOWLNamedIndividual(":test", pm);
OWLDataProperty indlName = df.getOWLDataProperty(":strVal", pm);
OWLDataPropertyAssertionAxiom dataPropertyAssertion = df.getOWLDataPropertyAssertionAxiom(indlName, myowlIndl,"hello world");
AddAxiom addAxiom1 = new AddAxiom(myowlOntology, dataPropertyAssertion);
myontologyManager.applyChange(addAxiom1);

ただし、このコードは既存のフクロウの個別の「テスト」を「更新」するのではなく、新しいものを作成します。

これを修正する方法は?

4

1 に答える 1

3

短縮バージョンの代わりに完全な IRI を使用してください。このコードから名前空間が正しいものかどうかを判断するのは困難です (":test" はあいまいです。プレフィックス マネージャーがそれをどのように解決するかがわからず、オントロジーが見えないためです) )。また、applyChange() の呼び出し後にオントロジーを保存してください。

于 2014-12-27T05:34:12.943 に答える