Ubuntu の SWI-Prolog (マルチスレッド、64 ビット、バージョン 5.10.4) を使用して、チュートリアルの 1 つに従って、rdf/3 述語から rdf トリプルを取得しようとしています (実際には、それらのすべてが同じことを教えてくれます。ただし、以下の例はhttp://cliopatria.swi-prolog.org/tutorial/Parsia/の行に沿っています)。ただし、他の述語はうまく機能しているように見えますが、rdf/3 は何も提供しません。
?- [library(semweb/rdf_db)].
...
true
?- [library(semweb/rdf_http_plugin)].
...
true
?- rdf_load('http://dbpedia.org/resource/Amsterdam').
% Parsed "http://dbpedia.org/resource/Amsterdam" in 0.32 sec; 4,194 triples
true.
?- rdf(S, P, O).
false.
?- rdf_graph(G).
G = 'http://dbpedia.org/resource/Amsterdam'.
P と O に定数を入れると、1 回か 2 回、S の結果が得られました (ただし、方法を忘れてしまいました)。私のバージョンの swipl のバグなのか、何か重要なことや些細なことを忘れてしまったのか、よくわかりません。Prolog とライブラリは、標準の Ubuntu 12.10 リポジトリからインストールされました。
(毎日 Prolog でプログラミングするわけではないので、やり方がわからないので、semweb ライブラリのテストは実行していません)