ちょっとしたメモ

SPARQLのプロトコル

RDFの照会言語として標準化が進められているSPARQLプロトコルの草案が、14日付で公開された。RDFのクエリを記述してサーバーとやり取りするためのパラメータや結果コードなどの標準を定めようというもの。SPARQL以外のクエリ言語もサポートするようだ。

形としては、抽象プロトコルをまず定義し、それをRESTなりXML-RPCなりにバインドしていくということになる。今回の草案では、具体的なバインドはHTTPのものが一部示された。たとえば、あるサーバーの/qpsというプログラム(など)にSPARQLのクエリの処理を依頼する場合、次のようなHTTPリクエストを出す。

(例)

GET /qps?graph-id=検索対象グラフのURI&query=クエリ式 HTTP/1.1
User-Agent: my-sparql-client/0.0
Host: my.example

複数のグラフを対象とするなら、graph-id(例は途中からなぜかgraphとなっているが)パラメータを複数記述する。クエリはqueryとして直接送るほか、query-uriによって、別に保存したファイルを参照させてもよい。SPARQL以外の言語を指定するならば、query-lang=http...という形で言語を示すURIをパラメータとして加える。結果数を制限するlimitなどもパラメータとして用意される。

まだいろいろ不統一なところとか、議論中のままという箇所もたくさんある出来たての草案だが、RDFのクエリを扱う方向性は伺えるだろう。

関連メモ:
genre: rdf. at