写作ontModel作为猫头鹰而不是作为jda的rdf

时间:2012-10-24 22:17:09

标签: jena owl

我有一个猫头鹰本体,我把它读到耶拿OntModel。然后我在运行时更新它。现在我想把它写成 OWL 本体。我使用下面的代码:

RDFWriter writer = model.getWriter("RDF/XML");

writer.write(model, out, root_uri);

...为我提供 RDF 语法,而不是 OWL 语法。如何将OntModel写入 OWL 语法?

任何解决方案?

2 个答案:

答案 0 :(得分:3)

欢迎使用StackOverflow! Jena不支持OWL / XML语法。它只支持各种RDF语法,包括RDF / XML和Turtle。有关Jena支持的格式,请参阅here

因此,您需要使用其中一种语法(可以很好地表达所有OWL)。

或者切换到支持OWL / XML的其他库,例如OWL API

答案 1 :(得分:3)

当然,如果您使用getWriter("RDF/XML"),它将使用RDF / XML编写,这是RDF的一种序列化格式,所有RDF格式都是OWL的序列化语法。 在以编程方式编写OWL时需要使用非RDF语法的情况非常少但如果您想这样做,请尝试使用OWL APIOWL/XMLOWL 2 Manchester syntax中的OWL 2 functional syntax,{{3}} 3}},或{{3}}。