使用TDBloader(fuseki)加载N-quad(.nq)文件?

时间:2014-06-25 13:42:15

标签: jena tdb fuseki

我有一个.nq文件,我想将它加载到Fuseki三重存储中,但是我收到以下错误:

Exception in thread "main" org.apache.jena.atlas.AtlasException: java.nio.charset.MalformedInputException: Input length = 1
at org.apache.jena.atlas.io.IO.exception(IO.java:206)
at org.apache.jena.atlas.io.CharStreamBuffered$SourceReader.fill(CharStr
eamBuffered.java:77)
at org.apache.jena.atlas.io.CharStreamBuffered.fillArray(CharStreamBuffe
red.java:154)
at org.apache.jena.atlas.io.CharStreamBuffered.advance(CharStreamBuffere
d.java:137)
at org.apache.jena.atlas.io.PeekReader.advanceAndSet(PeekReader.java:243
)
   at org.apache.jena.atlas.io.PeekReader.init(PeekReader.java:237)
   at org.apache.jena.atlas.io.PeekReader.peekChar(PeekReader.java:159)
   at org.apache.jena.atlas.io.PeekReader.makeUTF8(PeekReader.java:100)
   at org.apache.jena.riot.tokens.TokenizerFactory.makeTokenizerUTF8(Tokeni
zerFactory.java:41)
   at org.apache.jena.riot.RiotReader.createParser(RiotReader.java:131)
   at org.apache.jena.riot.RDFParserRegistry$ReaderRIOTFactoryImpl$1.read(R
DFParserRegistry.java:141)
   at org.apache.jena.riot.RDFDataMgr.process(RDFDataMgr.java:859)
   at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:687)
   at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:666)
   at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:654)
   at com.hp.hpl.jena.tdb.store.bulkloader.BulkLoader.loadQuads$(BulkLoader
.java:149)....

是否可以将.nq文件加载到fuseki中?我使用以下命令:

tdbloader --loc=data articles.nq

我的Jena版本是apache-jena-2.11.2,而fuseki版本是jena-fuseki-1.0.2。

提前致谢!

2 个答案:

答案 0 :(得分:4)

您可以加载N-Quads。

问题是数据不是UTF-8。

articles.nq.gz似乎是gzip数据的gzip文件。两级gzip。

一次运行gzip会留下一个二进制文件,而不是N-quads。

真正的数据非常混乱,但它的警告(据我所知)。

答案 1 :(得分:0)

我们可以使用apache jena fuseki server查询.nq文件。确保您使用的是2.0.0版。

在尝试了所有版本6个月后,我得出了这个结论。使用以下查询

{{1}}