저는 온톨로지 조작을 위해 OWL API를 사용하고 있습니다. OWLObjects (예 : OWLEntity, OWLClass 등)에 해당하는 자체 Java 객체를 만들고 싶습니다. 어떻게해야합니까?OWL API 개체를 Java 개체로 변환하는 방법은 무엇입니까?
이렇게하려면 OWLEntity 개체의 이름 (String)을 가져 오는 방법을 알아야한다고 생각합니다. 그러나 어떻게? 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 객체의 멤버 변수는 온톨로지 데이터로 채워야합니다. 예 : 클래스 SomeArg1, SomeArg2, ... 그리고 그것은 온톨로지에서 자식 클래스와 제한을 가지고 있으며, 엔티티 이름과 관련 제약 등을 가져 와서 Arg 객체의 적절한 변수를 채우고 싶습니다.
예를 들어 boolean isEssential이 Java 객체에 해당하는 일부 Individual에 대한 온톨로지의 일부 속성 값을 기반으로해야한다는 것을 의미합니까? –
예! 및 기타 멤버 변수도 포함됩니다. –
모든 올빼미 엔티티 (클래스, 개인 ...)가 이름을 가지고있는 것은 아닙니다.이름으로 보면 rdf : id로 사용 된 URI를 의미하는 것 같습니다. Protege는 온톨로지에서 올빼미 클래스에 대한 Java 래퍼 클래스를 자동으로 생성하는 기능을 제공하므로 도움이 될 수 있습니다. – Anthony