Java org.obolibrary.oboformat.parser.OBOFormatParser警告:行:901位置处应为空白行:</rdf:rdf>;
我正在使用一个java项目从一个文件(Java org.obolibrary.oboformat.parser.OBOFormatParser警告:行:901位置处应为空白行:</rdf:rdf>;,java,parsing,ontology,owl-api,Java,Parsing,Ontology,Owl Api,我正在使用一个java项目从一个文件(dbpedia_2016-10.owl)加载一个本体,向这个本体添加一些公理,然后作为一个新的本体写入.owl文件。后来在我的项目中,我使用loadOntologyFromOntologyDocument(新文件(“DBpedia_modified.owl”)从OWLOntology加载了新的本体,我收到了多行警告:我注意到解析器在pos 5或pos 6,这与字符:相关: Jan 04, 2020 12:57:49 PM org.obolibrary.obo
dbpedia_2016-10.owl
)加载一个本体,向这个本体添加一些公理,然后作为一个新的本体写入.owl
文件。后来在我的项目中,我使用loadOntologyFromOntologyDocument(新文件(“DBpedia_modified.owl”)
从OWLOntology
加载了新的本体,我收到了多行警告:我注意到解析器在pos 5
或pos 6
,这与字符:
相关:
Jan 04, 2020 12:57:49 PM org.obolibrary.oboformat.parser.OBOFormatParser warn
WARNING: LINE: 84 Expected white space at pos: 5 LINE:
<owl:someValuesFrom rdf:resource="http://dbpedia.org/ontology/MusicGenre"/>
Jan 04, 2020 12:57:49 PM org.obolibrary.oboformat.parser.OBOFormatParser warn
WARNING: LINE: 85 Expected white space at pos: 6 LINE:
</owl:Restriction>
2020年1月4日12:57:49 PM org.obolibrary.oboformat.parser.OBOFormatParser警告
警告:行:84位置5处的预期空白行:
2020年1月4日12:57:49 PM org.oboboblibrary.oboformat.parser.OBOFormatParser警告
警告:行:85位置处的预期空白:6行:
由于我对这一领域相当陌生,我不理解为什么解析器希望使用空格而不是:
;我的问题是警告有多严重?我怎样才能修好它?我在谷歌上搜索了一下,但没有找到正确的答案
提前感谢您的指导。您可以忽略此警告。您的文件是RDF格式的,警告来自OBO解析器 如果不指定本体使用的格式,OWLAPI将尝试所有可用的解析器,直到找到一个接受本体的解析器。OBO解析器拒绝(正确地)解析本体,并且还发出警告,这超出了它应该做的,因为此时它应该已经抛出异常 编辑:为避免使用OBO解析器,您可以选择应使用的格式:
manager.loadOntologyFromOntologyDocument(
new FileDocumentSource(file, new RDFXMLDocumentFormat()));
这将只尝试一个解析器(我猜您的文件格式是RDF/XML)。有没有办法“隐藏”这个警告?它是通过slf4j记录的,这样您就可以配置日志系统,只为obo包输出错误。我不认为我使用sel4j进行日志记录,至少不直接使用;我hma在哪里配置日志系统有点问题(我正在使用Eclipse),我非常感谢您的指导!OWLAPI使用slf4j,并且,鉴于您看到的是日志记录,在您的类路径中必须有一个slf4j实现。我不知道到底是哪一个,而且配置也各不相同。如果您检查您的类路径,您将发现slf4j api和至少一个名称中包含slf4j的jar。知道那个jar的名称会告诉我们它接受什么配置。是的,我可以在我的Maven依赖中看到有
self4j-api-1.7.10.jar
和jcl-over-sel4j-1.7.7.jar
。对于您答案中的编辑,我得到的构造函数FileDocumentSource(File,RDFXMLDocumentFormat)是未定义的
。构造函数似乎只接受一个参数,即File
type。