创建个人后保存模型

时间:2012-12-03 01:03:13

标签: jena owl protege

我正在尝试创建个人并将其保存在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");

2 个答案:

答案 0 :(得分:0)

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

PS“xmlbase”应该是一个URI。

答案 1 :(得分:0)

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