首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tdbloader2加载错误: IRI中存在非法字符

Tdbloader2加载错误: IRI中存在非法字符
EN

Stack Overflow用户
提问于 2016-04-05 22:57:08
回答 1查看 859关注 0票数 0

我正在尝试复制一个DBpedia来做一个实验。

我从http://downloads.dbpedia.org/2015-10/core/下载DBpedia的最新数据集,并将它们存储在目录dbp_201510/中。

我尝试使用tdbloader2加载数据集。

代码语言:javascript
复制
tdbloader2 --loc tdb dbp_201510/*

但是,我收到以下错误。

代码语言:javascript
复制
ERROR [line: 2, col: 145] Illegal character in IRI (codepoint 0x60, '`'): <http://www4.wiwiss.fu-berlin.de/gutendata/resource/people/[`]...>
org.apache.jena.riot.RiotException: [line: 2, col: 145] Illegal character in IRI (codepoint 0x60, '`'): <http://www4.wiwiss.fu-berlin.de/gutendata/resource/people/[`]...> at org.apache.jena.riot.system.ErrorHandlerFactory$ErrorHandlerStd.fatal(ErrorHandlerFactory.java:136)
at org.apache.jena.riot.lang.LangEngine.raiseException(LangEngine.java:165)
at org.apache.jena.riot.lang.LangEngine.nextToken(LangEngine.java:108)
at org.apache.jena.riot.lang.LangNTriples.parseOne(LangNTriples.java:71)
at org.apache.jena.riot.lang.LangNTriples.runParser(LangNTriples.java:58)
at org.apache.jena.riot.lang.LangBase.parse(LangBase.java:42)
at org.apache.jena.riot.RDFParserRegistry$ReaderRIOTLang.read(RDFParserRegistry.java:176)
at org.apache.jena.riot.RDFDataMgr.process(RDFDataMgr.java:861)
at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:667)
at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:637)
at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:626)
at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:617)
at org.apache.jena.tdb.store.bulkloader2.CmdNodeTableBuilder.exec(CmdNodeTableBuilder.java:165)
at jena.cmd.CmdMain.mainMethod(CmdMain.java:93)
at jena.cmd.CmdMain.mainRun(CmdMain.java:58)
at jena.cmd.CmdMain.mainRun(CmdMain.java:45)
at org.apache.jena.tdb.store.bulkloader2.CmdNodeTableBuilder.main(CmdNodeTableBuilder.java:85)

此外,我还收到了很多警告,如下所示。

代码语言:javascript
复制
WARN  [line: 92881, col: 1 ] Bad IRI: <http://dbpedia.org/resource/Ranma_½> Code: 56/COMPATIBILITY_CHARACTER in PATH: TODO
WARN  [line: 92882, col: 1 ] Bad IRI: <http://dbpedia.org/resource/Ranma_½> Code: 47/NOT_NFKC in PATH: The IRI is not in Unicode Normal Form KC.

我使用Apache Jena 3.0.1。

我正在寻找一种方法来避免这个错误。另外,有没有一种好的方法可以在没有警告的情况下加载。

我对以前版本的DBpedia (http://downloads.dbpedia.org/2015-04/core/)做了同样的事情,加载成功完成,没有任何警告和错误。

EN

回答 1

Stack Overflow用户

发布于 2016-04-06 19:36:05

在加载之前,数据应该是合法的。0x60,'`‘在URI中是非法的。也许你想用%60替换它(然后它就是一个不同的URI)。

在许多大型数据集中,数据并不完美。在加载之前使用"riot --validate“进行检查是值得的。

这些警告只是警告,而不是错误,表明UTF-8不是标准的首选格式,可能会在以后导致匹配问题。看起来1/2可以用UTF-8以不同的方式编写。

(我相信DBpedia团队会很高兴得到一些反馈。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36429984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档