我有一个本体论,我需要保存在文件中,当且仅当发生了一些更改并且推理器(在我的情况下为pellet)与这些更改一致时。所以我写道:
reasoner.flush(); //sync reasoner
if(reasoner.isConsistent())
manager.saveOntology(ontos[1], new RDFXMLDocumentFormat(), IRI.create((new File(file)).toURI()));
只有在本体被修改的情况下才会同步Pellet,而不是同步它并应用更改。知道怎么办吗? 谢谢
(编辑:我使用manager.applyChange方法来修改本体)。
答案 0 :(得分:1)
最后,我使用了reasoner.getPendingChanges()。isEmpty()来检查具有缓冲推理器的新更改(使用非缓冲的一个更改自动应用)。