Java Can';t使用Jena以OWL格式表示数据
我正在尝试使用创建OWL格式的本体,但是我做不到。最终我得到的是RDF,而不是我所期望的OWL。我能问你我做错了什么吗 这是我的密码:Java Can';t使用Jena以OWL格式表示数据,java,jena,owl,Java,Jena,Owl,我正在尝试使用创建OWL格式的本体,但是我做不到。最终我得到的是RDF,而不是我所期望的OWL。我能问你我做错了什么吗 这是我的密码: public class OntologyBuilder { OntModel ontModel; public OntologyBuilder() { this.ontModel = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM); } private void buildOnto() {
public class OntologyBuilder {
OntModel ontModel;
public OntologyBuilder() {
this.ontModel = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
}
private void buildOnto() {
final OntClass son = ontModel.createClass(OWL.NS + "Sun" );
}
public void performConvetring() {
buildOnto();
try {
String filenameOWL2 = OntoConstants.dirname + OntoConstants.filename + OntoConstants.xmlExtension;
FileWriter out = null;
out = new FileWriter(filenameOWL2);
ontModel.write(System.out);
} catch(Exception e){
e.printStackTrace();
}
}
}
最终我得到了RDF
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#" >
<rdf:Description rdf:about="http://www.w3.org/2002/07/owl#Sun">
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
</rdf:Description>
</rdf:RDF>
其实应该是这样的
<owl:Class rdf:ID="Sun">
...
</owl:Class>
...
如果有人知道如何与jena或其他LIB合作,请分享。
谢谢 不,你错了。您得到的是OWL本体的RDF/XML序列化。不多不少。内容是一样的。如果您想以不同的格式序列化数据,只需这样做。在任何情况下,内容,尤其是其含义和语义都是相同的。顺便说一句,OWL API对OWL更方便,ApacheJena主要是为处理RDF而设计的。@AKSW明白了,非常感谢!您得到的格式是RDF/XML,您想要的格式是RDF/XML-ABBREV。不同之处在于风格。@Ignazio感谢它的效果!