2017-05-17 7 views
0
"@PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> " + 
      "SELECT ?o ?stringTest ?boolTest " + 
      "where { "+ 
      "?s ?p ?o . "+ 
      "BIND (xsd:string(?o) as ?stringTest). " + 
      "BIND (xsd:boolean(?o) as ?boolTest) "+ 

      "}\n "; 

EclipseでJenaを使用してこれを実行しようとしていますが、間違いを見つけることはできません。 これは非常に単純なクエリであり、私の間違いが何であるかはわかりません。誰かが私に何かフィードバックを与えることができますか?ここで私はこのSPARQLクエリで間違いましたか?

のみSPARQLのコードは次のとおりです。

@PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 
      SELECT ?o ?stringTest ?boolTest 
      where { 
      ?s ?p ?o . 
      BIND (xsd:string(?o) as ?stringTest). 
      BIND (xsd:boolean(?o) as ?boolTest) 

      } 

そして、これは私が取得していますエラーです:

が発生しました」「@prefix "は" 行1で、列1 、1つを期待していました"\ ufeff" ... "ベース" ... "接頭辞" ... は "選択" ... は "説明" ... は "構築物" ... は "頼む":の。 ..

+0

プレフィックスの冒頭に「@」はありません。プレフィックスのみです。これは唯一の問題だと思われます。 – user730611

+0

はい、唯一の問題です。ありがとう。 –

+0

@は、タートルのRDF構文の "接頭辞"のためのオプションの接頭辞です...多分それがあなたの考えを持っています。 –

答えて

2

エラーが示すように、SPARQLプロセッサーは、@prefixのところで、prefixが発生しました。

SPARQL 1.1の構文では、PREFIX@記号なし)が使用されます。

タートル1.1の構文では、@PREFIX(SPARQLより前)またはPREFIX(SPARQL 1.1と調和しているため)が使用されます。

関連する問題