0

我正在尝试创建个人并将它们保存在 OWL 文件中。OWL 文件是在 Protégé 中创建的。文件大小为 10KB,但在尝试将个体保存在本体中后,代码大小变为 7KB。

然后我尝试使用 Protégé 打开 OWL 文件,但它无法打开。

代码是:

String SOURCE = "http://www.semanticweb.org/ontologies/2012/9/untitled-ontology-19";
String NS = SOURCE + "#";

OntModel onto = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM, null);
onto.read("file:/home/tourism.owl", "RDF/XML");

OntClass place = onto.getOntClass(NS+"Mountains");
Individual am1 = onto.createIndividual(NS+Concept1, place);

FileOutputStream output = null;

try  {
  output = new FileOutputStream( "/home/tourism.owl ");     
} catch(Exception e) {}

onto.writeAll(output, "RDF/XML-ABBREV","xmlbase");
4

2 回答 2

0

您是否检查过新文件不包含新信息?因为您使用了“RDF/XML-ABBREV”形式,所以它可能以比原始文件更紧凑的形式写出。

PS“xmlbase”应该是一个URI。

于 2012-12-03T08:05:16.157 回答
0

Jena 是纯粹的基于 RDF/XML 的 API,用于访问本体或模型。记下这些事情:在使用 Protege 编辑 OWL 文件后保存它时的格式是什么?是 OWL/XML 还是 RDF/XML?Jena 以 RDF 为中心,可以读取以 RDF/XML 格式编写的 OWL 文件,但无法读取以 OWL/XML 语法(特别是 OWL2 语法)编写的 OWL 文件。类似地,它可以将 Model/OntModel 从内存写入 OWL 文件或 RDF 文件,但始终使用“RDF/XML”语法或“N3”或“RDF/XML-ABBREV”。并且由于您使用的是“RDF/XML-ABBREV”,它以缩写格式列出您的三元组。这可能是您的输出文件大小减小的原因。

于 2013-12-17T06:54:54.550 回答