为了账号安全,请及时绑定邮箱和手机立即绑定

获取导入的本体列表——OWL API

获取导入的本体列表——OWL API

炎炎设计 2021-08-25 17:28:13
我正在使用 OWL API 以便从本体中获取信息。我需要检索加载的本体中使用的所有导入本体的列表。OWL API 中是否有方法可以完成此任务?我加载本体的代码是:import org.semanticweb.owlapi.apibinding.OWLManager;import org.semanticweb.owlapi.model.IRI;import org.semanticweb.owlapi.model.OWLAnnotationProperty;import org.semanticweb.owlapi.model.OWLClass;import org.semanticweb.owlapi.model.OWLDataFactory;import org.semanticweb.owlapi.model.OWLDataProperty;import org.semanticweb.owlapi.model.OWLImportsDeclaration;import org.semanticweb.owlapi.model.OWLObjectProperty;import org.semanticweb.owlapi.model.OWLOntology;import org.semanticweb.owlapi.model.OWLOntologyCreationException;import org.semanticweb.owlapi.model.OWLOntologyManager;public class NSExtractor {@SuppressWarnings("deprecation")public static void main(String[] args) throws FileNotFoundException, OWLOntologyCreationException {    @SuppressWarnings("resource")           File testFile= new File("C:\\acco.n3");    OWLOntologyManager m = OWLManager.createOWLOntologyManager();    OWLDataFactory f = OWLManager.getOWLDataFactory();    OWLOntology o;     o = m.loadOntologyFromOntologyDocument(testFile);
查看完整描述

2 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

o.importsDeclarations()将为您提供此本体的导入声明流。这是使用owl:imports属性声明的 IRI 列表。

注意:这些是声明的导入,而不是导入闭包 - 不同之处在于导入闭包包括本体中导入的本体和这些本体导入的本体 - 递归地包括导入的本体。

o.importsClosure() 将提供在解析您的本体期间加载的所有本体。


查看完整回答
反对 回复 2021-08-25
?
慕后森

TA贡献1802条经验 获得超5个赞

经过大量搜索,我找到了解决此任务的方法。我使用了OWLOntologyXMLNamespaceManager(我使用的是 OWL API 5.1.6)。之后,使用 getPrefixes 和 getNameSpaces,您可以分别为加载的本体提取前缀和命名空间,如下所示:


OWLDocumentFormat format = m.getOntologyFormat(ontology);


OWLOntologyXMLNamespaceManager nsManager = new OWLOntologyXMLNamespaceManager(ontology, format);


        for (String prefix : nsManager.getPrefixes()) {

            System.out.println(prefix);

        }

        for (String ns : nsManager.getNamespaces()) {

            System.out.println(ns);

        }


查看完整回答
反对 回复 2021-08-25
  • 2 回答
  • 0 关注
  • 292 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信