读取耶拿模型时出现错误的 URI 异常



我正在将我的输入流转换为耶拿模型。但显然我收到此错误:

org.apache.jena.riot.system.ErrorHandlerFactory$ErrorLogger", Bad character in IRI (space): 

当我检查时,URI中确实有一个空格,我知道它无效。但是,有什么方法或任何丑陋的解决方案可以在不更正数据的情况下做到这一点。

我确实找到了类似reader.setProperty("allowBadURIs", "true"( 的东西,但似乎只适用于 RDF Writer

这是我的代码:

InputStream targetStream = new FileInputStream(new File(file_location);
Model modelResult = ModelFactory.createDefaultModel().read(rdfInput, "", "RDF/XML");

网址示例

"http://openfashion.momu.be/9f spelden en verpakkingen momu fs "

目前,没有办法。数据有一个损坏的令牌,并且很难很好地恢复。允许空格通过有两个问题:

有时数据被破坏,因此它不是 URI 中的空格,而是缺少终止">"(错误来自分词器处理输入时的字符( 因此,大量文本可能会被读取为一个 URI。

一旦摄入,这种不良的IRI会导致下游问题(例如,它们无法可靠地打印(。 只有一些写入器可以处理,然后他们输出其他系统无法读取的RDF。

解决方案是修复输入,以免延迟以后会出现的问题,尤其是存储在持久数据库中时。

最新更新