2012-12-03 83 views
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"); 

回答

0

是否檢查新的文件不包含新的信息?由於使用了「RDF/XML-ABBREV」形式,它可能以比原始文件更緊湊的形式寫出。

PS「xmlbase」應該是一個URI。

0

Jena純粹是用於訪問本體或模型的基於RDF/XML的API。記下這些事情:使用Protege編輯後保存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」,它以縮寫格式列出了您的三元組。可能這就是爲什麼您的輸出文件尺寸減小的原因。