1

BIND() 関数を使用してさまざまな SPARQL クエリを試していますが、どちらも rdflib 4.0 では機能しないようです。

私が得ているたびに:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "~/.env/lib/python2.7/site-packages/rdflib/graph.py", line 1045, in query
    query_object, initBindings, initNs, **kwargs))
  File "~/.env/lib/python2.7/site-packages/rdfextras/sparql/processor.py", line 49, in query
    loadContexts=loadContexts)
  File "~/.env/lib/python2.7/site-packages/rdfextras/sparql/algebra.py", line 406, in TopEvaluate
    assert isinstance(expr,AlgebraExpression), repr(expr)

編集クエリは次のとおりです。

CONSTRUCT { ?aspectA ?predicateURI ?aspectLabel. } 
WHERE { ?aspectA aspects:A0060 ?aspectType; 
                 aspects:A0101 ?aspectLabel. 
        BIND ( IRI( CONCAT("some.uri/raw/aspects#A";, ?aspectType) ) AS ?predicateURI ). 
} 

何が間違っている可能性があるかについてのヒントはありますか?

4

1 に答える 1

1

問題の原因がわかりました。私は、rdfextras を必要とするいくつかの古い rdflib でプロジェクトを開始しました。彼らは私が rdflib を 4.0 (そして最終的には 4.2-dev) にアップグレードしたので、rdfextras は不要になりました。実際、それらを登録すると、その問題が発生していました。rdfextras をアンインストールし、それらを参照する plugin.register エントリを削除すると、すべてがスムーズに実行されるようになりました。

于 2014-03-05T20:20:27.687 に答える