从文件导入本体(其中本体导入其他几个文件)

时间:2013-09-09 16:39:15

标签: jena owl protege

在Jena中,我使用以下代码将本体加载到模型中:

Model model =  FileManager.get().loadModel("/path/myontology.owl");

我的问题是“myontology.owl”用owl:imports导入另一个本体。在伪代码中,我们只需说“Myontology.owl”导入其他文件来完成本体,因为在外部文件中声明了几个人,例如:

  • 在myontology.owl
  • 导入→myontologywithindividuals.owl

我的问题是我不能将其个体的本体导入Jena的单个模型中。也就是说,

Model model =  FileManager.get().loadModel("/path/myontology.owl");

似乎不起作用。知道为什么吗?如何正确导入?

1 个答案:

答案 0 :(得分:0)

Jena中的普通模型不对owl:imports进行任何处理,因为普通RDF没有任何导入其他文档的概念。本体导入是OWL概念,如果要进行导入处理,则需要使用OntModel。您可能需要使用setDynamicImports()来启用导入处理。如果imports语句使用其本体IRI引用本体,但您想从本地文件中检索它们,则可能还需要设置OntModel的OntDocumentManagerFileManager来处理来自的本地文件。 IRI到本地文件。