背景
普段は Python の RDFLib を使っているのだけれど、SPARQL はそれぞれのエンジンで独自の関数や使用の違う実装があったりするので、Jena でも試してみたくなり Fuseki まではいらないんだよー、コマンドラインでサクッと試したいんだよー、ってことがあった。Docker 使えば一瞬だった。
ローカルのファイルを使えるようにしつつ Docker を起動
docker run -v /home/kameda/temp:/rdf -it stain/jena bash
/home/kameda/temp
の部分は自分の RDF ファイル や sparql クエリの書かれたファイルがあるローカルのディレクトリに書き換えてください。
クエリを行う
sparql --data=datesample1.ttl --query=ttest1.sparql --results=tsv
対象のデータとクエリを指定して、実行。出力形式も --results
フラグで指定できます。データとクエリは好きなエディタで編集しながら試行錯誤すればよいです。