当我们想要创建或加载本体时,我们使用这行代码IRI ontologyIRI = IRI.create("http://owl.man.ac.uk/2005/07/sssw/ontologyName");,那么,我应该使用什么来获得它作为输出呢?
我尝试使用此函数IRI documentIRI = manager.getOntologyDocumentIRI(ontology);,但它返回本体文件的位置,类似于下面的file:/Users/.../Desktop/ontologyname.owl。
而不是它,我需要像这样写的:
http://owl.man.ac.uk/2005/07/sssw/ontologyName如果你有任何想法..。谢谢
发布于 2017-08-08 06:54:35
OWLOntology o = ...
IRI iri = o.getOWLOntologyID().getOntologyIRI().get();这将返回标识本体的IRI;注意-这可能与您从中加载本体的IRI不同。示例中的可解析IRI可能指向为其自身声明不同IRI的本体(在这种意义上,它是文档IRI)。
发布于 2017-09-01 16:19:43
使用OWLAPI-5,您可以使用以下方法获得本体IRI:
ont.getOntologyID().getOntologyIRI().get()下面是一个示例:
OWLOntologyManager man = OWLManager.createOWLOntologyManager();
OWLOntology ont = man.loadOntologyFromOntologyDocument(IRI.create("file:/Users/.../Desktop/ontologyname.owl"));
IRI yourIRI = ont.getOntologyID().getOntologyIRI().get();
String yourOntoURI = yourIRI.toString();来自owlapi的示例源代码:owlapi-github-examples (第1115行)
https://stackoverflow.com/questions/45547812
复制相似问题