3

我有一个猫头鹰本体,我将它读入 Jena OntModel。然后我在运行时更新它。现在我想把它写回一个OWL本体。我正在使用下面的代码:

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

writer.write(model, out, root_uri);

... 给我RDF语法,而不是OWL语法。如何将OntModelinto OWL语法写入?

有什么解决办法吗?

4

2 回答 2

3

欢迎来到 StackOverflow!Jena 不支持 OWL/XML 语法。它只支持各种 RDF 语法,包括 RDF/XML 和 Turtle。请参阅此处了解 Jena 支持的格式。

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

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

于 2012-10-25T07:16:36.060 回答
3

当然,如果您使用的是getWriter("RDF/XML"),它将用 RDF/XML 编写,这是 RDF 的一种序列化格式,所有 RDF 格式都是 OWL 的序列化语法。在以编程方式编写 OWL 时需要使用非 RDF 语法的情况很少,但如果您想这样做,请尝试使用OWL API,它可以用OWL/XMLOWL 2 Manchester syntaxOWL 2 函数式语法

于 2012-10-25T07:41:03.157 回答