导入 OWL 时 Protege 中的未知协议

如何解决导入 OWL 时 Protege 中的未知协议

我使用的是 Protege 5.5。当我用这样的东西打开一个现有的 owl 文件时,

<owl:Ontology rdf:about="http://example.org/eg/Robot.owl">
    <owl:imports rdf:resource="package://example/owl/blah.owl"/>
</owl:Ontology>

即使 IRI 以 package:// 开头,Protege 也能正确解析导入。

Imported ontology document package://example/owl/blah.owl was resolved to Optional[file:/home/user/owl/blah.owl] by the ontology catalog.

但是当我创建一个新的 OWL 文件并尝试执行手动“直接导入”时,出现错误

Malformed URL: UnkNown protocol: package 
java.net.MalformedURLException: UnkNown protocol: package

java.net.MalformedURLException: UnkNown protocol: package
    at java.net.URL.<init>(URL.java:627) ~[na:1.8.0_121]
    at java.net.URL.<init>(URL.java:490) ~[na:1.8.0_121]
    at java.net.URL.<init>(URL.java:439) ~[na:1.8.0_121]
    at java.net.URI.toURL(URI.java:1089) ~[na:1.8.0_121]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyFactoryImpl.canLoad(OWLOntologyFactoryImpl.java:159) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.actualParse(OWLOntologyManagerImpl.java:1256) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:1215) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:1115) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadImports(OWLOntologyManagerImpl.java:1833) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.makeLoadImportRequest(OWLOntologyManagerImpl.java:1871) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.TripleHandlers$TPImportsHandler.handleTriple(TripleHandlers.java:1651) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.TripleHandlers$HandlerAccessor.handleStreaming(TripleHandlers.java:278) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.OWLRDFConsumer.statementWithResourceValue(OWLRDFConsumer.java:1554) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.RDFParser.statementWithResourceValue(RDFParser.java:370) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.EmptyPropertyElement.startElement(StartRDF.java:236) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.PropertyElementList.startElement(StartRDF.java:658) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.RDFParser.startElement(RDFParser.java:201) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:841) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:770) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643) [na:1.8.0_121]
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:327) [na:1.8.0_121]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.RDFParser.parse(RDFParser.java:145) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.semanticweb.owlapi.rdf.rdfxml.parser.RDFXMLParser.parse(RDFXMLParser.java:73) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyFactoryImpl.loadOWLOntology(OWLOntologyFactoryImpl.java:221) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.actualParse(OWLOntologyManagerImpl.java:1262) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:1215) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntologyFromOntologyDocument(OWLOntologyManagerImpl.java:1172) [owlapi-osgidistribution.jar:4.5.9.2019-02-01T07:24:44Z]
    at org.protege.editor.owl.ui.ontology.imports.AddImportsstrategy.loadImportsInternal(AddImportsstrategy.java:103) [protege-editor-owl.jar:na]
    at org.protege.editor.owl.ui.ontology.imports.AddImportsstrategy.lambda$addImportsInOtherThread$1(AddImportsstrategy.java:64) [protege-editor-owl.jar:na]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_121]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_121]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_121]
    at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_121]
Caused by: java.lang.IllegalStateException: UnkNown protocol: package
    at org.apache.Felix.framework.URLHandleRSStreamHandlerProxy.parseURL(URLHandleRSStreamHandlerProxy.java:373) ~[org.apache.Felix.main.jar:na]
    at java.net.URL.<init>(URL.java:622) ~[na:1.8.0_121]
    ... 41 common frames omitted

我尝试编辑 catalog-v001.xml 文件,所有使用 package:// 导入的条目都已重定向到 owl 文件的物理位置,但错误仍然存​​在。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?