2016-05-21 10 views
0

私はJenaモデルにロードされたオントロジを持っています。 Jenaコードでは、モデルを作成してオントロジーをロードした後、オントロジーに対して複数のSparql照会を実行します。 main()メソッドでは、モデルを作成してオントロジーを読み込み、複数のクエリを実行するにはどうしたらいいですか? 私はsparqlクエリごとに別個のメソッド()を持っていますか? コードをどのようにモジュール化できますか?異なる方法でJenaモデルとSPARQLクエリを分離する方法()

よろしく

答えて

0

あなたは単にメソッドは、引数としてモデルを受け入れ行い、その後、生成されたモデルを渡すことができます。たとえば:

 public static void execQ(String queryString, Model model) { 
    Query query = QueryFactory.create(queryString); 
    try (QueryExecution qexec = QueryExecutionFactory.create(query, model)) { 
     ResultSet results = qexec.execSelect(); 
     for (; results.hasNext();) { 
      QuerySolution soln = results.nextSolution(); 
      RDFNode x = soln.get("varName"); // Get a result variable by name. 
      Resource r = soln.getResource("VarR"); // Get a result variable - must be a resource 
      Literal l = soln.getLiteral("VarL"); // Get a result variable - must be a literal 
     } 
    } 
} 
+0

ありがとう、あなたは簡単な例がありますか?私は本当に感謝します。なぜなら私は環境に新しく、始めるには単なる手がかりが必要なためです。 –

+0

私は私の答えを編集しました。それは非常にシンプルで非常に一般的ですが、クエリに応じてさまざまな抽象レベルを管理できます。 – djodjo

+0

ありがとう、私はそれを試してみるつもりです。うまくいけばうまくいきます –

関連する問題