在访问远程文件之前,有没有简单的方法从本地文件加载OWL导入本体?OWLAPI加载本地猫头鹰导入文件(如果可用)
背景:我遇到了另一个本体导入的更新本体的问题。导入语句没有版本化,因此避免导入破坏的本体的唯一方法是在本地提供旧版本。
问题:loadOntologyFromOntologyDocument(<DOCUMENT_IRI>)
自动从其远程源加载OWL导入。
我当前的尝试:
- 装入根本体
- 获取所有进口申报
- 检查是否有任何本体需要进口在本地可用(通过文件名映射)
- 如果找到本地版本,请将IRI映射器添加到本地文件中
- (重新)导入本地版本
问题:步骤1到步骤4的工作,但我不能让第5步运行。理想情况下,我想坚持在第5步加载导入,然后决定是从远程源还是本地文件加载导入的本体。这不太理想,但我也可以丢弃已经加载的远程版本并重新加载本地版本。不幸的是,当我只是触发loadOntologyFromOntologyDocument()
它抱怨,因为本体已经加载和使用removeOntology()
说Error loading the ontology: Unknown ontology
。