オントロジーを操作するために OWL API を使用しています。OWLObjects (OWLEntity、OWLClass など) に対応する独自の Java オブジェクトを作成したいと考えています。これどうやってするの?
これを実現するには、OWLEntity オブジェクトの名前 (文字列) を取得する方法を知る必要があると思います。しかし、どのように?OWL API Javadoc とチュートリアルを検索しましたが、方法がわかりません。
public class Arg {
private String name;
private String defaultValue;
private boolean isEssential = false;
private Set<String> preArgNames;
public Arg(String name, String defaultValue, boolean isEssential,
Set<String> preArgNames) {
this.name = name;
this.defaultValue = defaultValue;
this.isEssential = isEssential;
this.preArgNames = preArgNames;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public boolean isEssential() {
return isEssential;
}
public void setEssential(boolean isEssential) {
this.isEssential = isEssential;
}
public Set<String> getPreArgNames() {
return preArgNames;
}
public void setPreArgNames(Set<String> preArgNames) {
this.preArgNames = preArgNames;
}
public String getDefaultValue() {
return defaultValue;
}
public void setDefaultValue(String defaultValue) {
this.defaultValue = defaultValue;
}
}
アプリケーションのデータ構造があります。そして、データはオントロジーに格納されます。上記のコード例を追加しました。
その Arg オブジェクトのメンバー変数は、オントロジー データで埋められる必要があります。たとえば、Class SomeArg1、SomeArg2、... オントロジーに子クラスと制限があり、エンティティ名と関連する制限などを取得して、Arg オブジェクトの適切な変数を埋めたいと考えています。