在OSX YOSEMITE BLOCKS上使用TDBLOADER加载RDF,没有任何消息

时间:2015-01-02 13:04:18

标签: assembly rdf jena

首先祝大家2015年新年快乐!

我是Jena的新手,我采取RDF处理工具的第一件事就是将一些数据加载到一些单独的图表中,以测试后来的SPARQL访问。

My env is YOSEMITE with Java 1.8 (JDK 1.8)

我想加载一个RDF数据集 - 这里名为" pp_project_semweb.rdf"使用以下命令行将其命名为http://semweb.ch/SEMWEB

tdbloader --tdb=jenatest.ttl --verbose

以下汇编程序文件:

@prefix dc:      <http://purl.org/dc/elements/1.1/> .
@prefix tdb:     <http://jena.hpl.hp.com/2008/tdb#> .
@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix ja:      <http://jena.hpl.hp.com/2005/11/Assembler#> .

[] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .
tdb:DatasetTDB  rdfs:subClassOf  ja:RDFDataset .
tdb:GraphTDB    rdfs:subClassOf  ja:Model      .

<#dataset> rdf:type tdb:DatasetTDB ;
    tdb:location "DB" ;
    ja:namedGraph
        [ ja:graphName      <http://semweb.ch/SEMWEB> ;
          ja:graph          <#graph_semweb> ] ;
  .
<#graph_semweb> a ja:MemoryModel ;
      ja:content [ja:externalContent <file:/Users/fabio/Documents/workspace/JenaPrototype/Assembling/JenaRDFData/thesauri/pp_project_semweb.rdf>] ;
    .

加载程序说的内容如下:

Java maximum memory: 954728448
symbol:http://jena.hpl.hp.com/ARQ#constantBNodeLabels = true
symbol:http://jena.hpl.hp.com/ARQ#regexImpl = symbol:http://jena.hpl.hp.com/ARQ#javaRegex
symbol:http://jena.hpl.hp.com/ARQ#stageGenerator = com.hp.hpl.jena.tdb.solver.StageGeneratorDirectTDB@313ac989
symbol:http://jena.hpl.hp.com/ARQ#strictSPARQL = false
symbol:http://jena.hpl.hp.com/ARQ#enablePropertyFunctions = true
13:41:53 INFO  loader               :: -- Start triples data phase
13:41:53 INFO  loader               :: ** Load empty triples table
13:41:53 INFO  loader               :: -- Start quads data phase
13:41:53 INFO  loader               :: ** Load empty quads table
13:41:53 INFO  loader               :: Load: - -- 2015/01/02 13:41:53 CET

然后tdbloader BLOCKS ...它没有CPU,你可以永远等待......

有人知道这里有什么问题吗?

有人可以告诉我,我可以调试或查看一些日志文件吗?

非常感谢你提前!!!

亲切的问候

1 个答案:

答案 0 :(得分:2)

没有错,你只是没有明确提供任何东西加载。在这种情况下,tdbloader将从<STDIN>获取三倍,直至达到EOF。尝试输入ctrl-d,表示要退出传输结束。

鉴于你想要做的事情,你所需要的只是:

$ tdbloader2 --loc DB /Users/fabio/Documents/workspace/JenaPrototype/Assembling/JenaRDFData/thesauri/pp_project_semweb.rdf

(tdbloader2是同一工具的更快变体,DB是持有rdf数据库的目录)

然后您可以查询:

$ tdbquery --loc DB --query my_query_file.rq