2017-03-03 12 views
0

データセットにモデルがたくさんあり、指定モデルをクエリしたいSPARQLクエリでgraphキーワードを使用しましたが、空の結果セットを返します 誰でも助けてください?私はモデルTDBのデータセットからモデルを照会

public Model loadModel(String modelName, StringBuilder Builder) 
    { 
Model model = null; 

ds.begin(ReadWrite.WRITE); 
try 
{ 
    //model = ds.getNamedModel(modelName); 
    model = ModelFactory.createDefaultModel(); 

    model.read(new ByteArrayInputStream(Builder.toString().getBytes()), null); 
    ds.addNamedModel(modelName, model); 
    ds.commit(); 
} 
finally 
{ 
    ds.end(); 
} return model;} 

答えて

0

graph <RelationModel3>を読み込むことができますどのように

public static void SparqlForSentencesDuplicates() 
{ 

    String querystr= "PREFIX aapi:<http://rdf.alchemyapi.com/rdf/v1/s/aapi-schema#> " 

      + "select ?s where {" 
      +"graph <RelationModel3> {" 
      + "?id aapi:RelationSentence ?s } " 
      +"}"; 

    Dataset ds=tdbconn.ds; 
    ds.begin(ReadWrite.READ); 
    QueryExecution qexe= QueryExecutionFactory.create(querystr, ds); 
    try { 

     ResultSet result= qexe.execSelect(); 
     ResultSetFormatter.out(result); 
    }finally{ 
     qexe.close(); 
     ds.close(); 
    } 

} 

、ここでは相対URIを持っている - それは完全なURIにパーサによって解決されます。

クエリを解析して表示し、クエリが実際にどのように見えるかを確認します。

データ内のグラフのURIも相対URIであってはなりません。

はでデータを確認します。

SELECT * { GRAPH ?g {} } 

し、必要に応じて修正します。

関連する問題