Так что я смог добавить некоторые классы в онтологию и сохранить их в файл. Теперь я хотел бы иметь возможность добавлять Datatype в свой класс, но я смущен тем, как это сделать, возможно, очень просто. Это то, что я пытался:owlapi Как добавить OWLDatatype в OWLClass
OWLClass currentClass =df.getOWLClass(IRI.create("Base"));
OWLDataProperty owlAttr = df.getOWLDataProperty(IRI.create("#" + "name");
OWLLiteralImplString lit = new OWLLiteralImplString("test"); //This is probably on the wrong path
DefaultPrefixManager defaultPrefixManager = new DefaultPrefixManager();
OWLDatatype datatype = df.getOWLDatatype("xsd:string",defaultPrefixManager);
OWLAxiom axiom = df.getOWLDatatypeDefinitionAxiom(datatype, ?); //having trouble find a range.
Редактировать # 1 Так что я немного обеспокоен тем, что мой вопрос непонятен. То, что я пытаюсь сделать, было бы похоже на это в Java:
public class Car{
}
В настоящее время я нахожусь в состоянии создать класс, используя owlapi но то, что я ищу, чтобы сделать было бы как добавление DataMember в мой класс Java:
public class Car{
public String manufacturer;
}
Использование Protege я могу производить это я думаю, это то, что я хочу быть в состоянии сделать с owlapi:
<!-- http://www.co-ode.org/ontologies/ont.owl#manufacturer -->
<DatatypeProperty rdf:about="http://www.co-ode.org/ontologies/ont.owl#manufacturer">
<rdfs:domain rdf:resource="http://www.co-ode.org/ontologies/ont.owl#Car"/>
<rdfs:range rdf:resource="&xsd;string"/>
</DatatypeProperty>
<!--
///////////////////////////////////////////////////////////////////////////////////////
//
// Classes
//
///////////////////////////////////////////////////////////////////////////////////////
-->
<!-- http://www.co-ode.org/ontologies/ont.owl#Car -->
<Class rdf:about="http://www.co-ode.org/ontologies/ont.owl#Car"/>
Я думаю, что, возможно, я попросил неправильного. Может быть, мое редактирование поможет. Я буду играть с вашим ответом, чтобы узнать, помогает ли это. – Travis
Посмотрите, поможет ли мой отредактированный ответ. – Artemis
Да, я думаю, это то, что мне нужно. Извините за путаницу моей первоначальной версии вопроса. – Travis