SPARQL

SPARQL（スパークル、SPARQL Protocol and RDF Query Languageの再帰的頭字語）は、RDF問合せ言語の１つである。RDF問合せ言語は、Resource Description Framework (RDF) で記述されたXMLやTurtleなどのRDFデータのリソースを取り扱うためのコンピュータ言語である。

SPARQL は、クエリの基本的なパターンである論理積や論理和をはじめ、文字列操作やフィルターなどのその他のパターンを指定可能であり、PythonやRubyなどのプログラミング言語でSPARQLを利用できるライブラリが存在する。

ティム・バーナーズ＝リーは2006年5月のインタビューで「SPARQL によって大きな違いが生まれるだろう」と述べている。

 例 
次のSPARQLクエリは、アフリカ諸国の首都のリストを返す。
PREFIX abc: <http://mynamespace.com/exampleOntologie#>
SELECT ?capital ?country
WHERE {
  ?x abc:cityname ?capital.
  ?y abc:countryname ?country.
  ?x abc:isCapitalOf ?y.
  ?y abc:isInContinent abc:africa.
}

変数は頭に "?" を付けることで表される（"$" でもよい）。?capital と ?country がクエリ結果として返される（SELECTの部分）。SPARQL のクエリプロセッサはその全てについて4つの RDF トリプルのパターンにマッチするものを選ぶ（WHEREの部分）。URI を毎回フルに記述すると読みにくくなるので、"abc" というプレフィックスが "http://mynamespace.com/exampleOntologie#" を表すようになっている（PREFIXの部分）。

 標準化 
SPARQL は World Wide Web Consortium (W3C) の RDF Data Access Working Group (DAWG) によって標準化された。

W3C勧告に至る過程は以下の通りである
 2006年4月 勧告候補
 2006年10月 2つの問題により草案に戻される
 2007年6月 SPARQL 1.0 再び勧告候補http://www.w3.org/blog/SW/2007/06/15/sparql_is_a_candidate_recommendation
 2008年1月15日 SPARQL 1.0 W3C勧告W3C Semantic Web Activity News - SPARQL is a Recommendation
 2013年3月21日 SPARQL 1.1 W3C勧告

 SPARQL Endpoint 
SPARQL Endpointは、SPARQLによるリソースの検索や分析の機能を提供するインタフェースである。

 代表的な日本国内のSPARQL Endpoint 
 DBpedia Japanese: http://ja.dbpedia.org/sparql
 文献検索システムI-Scover: https://i-scover-api.ieice.org/iscover/api/sparql
 J-GLOBAL knowledge: https://stirdf.jglobal.jst.go.jp/sparql
 ジャパンサーチ: https://jpsearch.go.jp/rdf/sparql/

 脚注 

 関連項目 
 DBペディア
 ウィキデータ

 外部リンク 

 書籍 


 仕様、記事、チュートリアル 
 SPARQLの主な特徴
 W3C RDF Data Access Working Group
 XML.com: Introducing SPARQL: Querying the Semantic Web
 SPARQL Query language
 SPARQL Query Languageの日本語版
 SPARQL Protocol
 SPARQL Protocolの日本語版
 SPARQL Query XML Results Format
 SPARQL Query XML Results Formatの日本語版
 SPARQL Frequently Asked Questions


 ツールサポート 
 AllegroGraph RDFStore
 Protégé
 RDF api for PHP
 TopBraid Composer

 SPARQLクエリサービス・エンドポイント 
 Pellet OWL Reasoner
 ARC
 SPARQLer
 Virtuoso Universal Server
 DBpedia

 SPARQLデモ 
 SPARQL Calendar Demo
 SPARQL & Web Clipboard Demo

Category:問い合わせ言語
Category:W3C勧告
Category:World Wide Web
Category:セマンティック・ウェブ