メインページ > Web NDL Authoritiesについて > SPARQLについて

SPARQLについて


このページでは、SPARQLによる検索けんさく方法ほうほうについて説明せつめいします。GUIじょうでの検索けんさく方法ほうほうについては「ヘルプ」の該当がいとう箇所かしょをごらんください。現在げんざいはよりあたらしいエンドポイントであるSPARQL1.1の利用りようをおすすめしています。くわしくは「SPARQL1.1への対応たいおう」「SPARQL 1.1について」をごらんください。

1. SPARQLによる検索けんさく

とうシステムは、RDF形式けいしき典拠てんきょデータをデータベースに格納かくのうしており、RDFで記述きじゅつされたデータを検索けんさく操作そうさするためのコンピュータ言語げんごであるSPARQLもちいて外部がいぶから検索けんさくすることができます。SPARQLによるクエリは、RDFのモデルのうち、未知みち部分ぶぶん変数へんすう半角はんかくクエスチョンマーク(?)ではじまる名前なまえ)として変数へんすうふくむRDFグラフを記述きじゅつし、変数へんすうにあてはまるURIやリテラル取得しゅとくする、という形式けいしきになります。
変数へんすうふくむグラフのパターンは、半角はんかく括弧かっこ{})でかこみ、SQL同様どうようWHERE記述きじゅつします。また、したい変数へんすうは、SQLと同様どうようSELECT列挙れっきょします。PREFIXもちいて名前なまえ空間くうかんURIの接頭せっとう宣言せんげんすることで、URIを修飾しゅうしょくめいとして記述きじゅつすることができます。

1-1. SPARQLを利用りようするAPI

SPARQL Endpoint(APIのURI)はhttps://id.ndl.go.jp/auth/ndlaです。?queryパラメータとしてURLエンコードしたSPARQLクエリをおくることで、レスポンスをることができます。1かい取得しゅとくできるデータ件数けんすう上限じょうげんは100けんです。

ちゅう)Web NDL Authoritiesでは、SPARQL 1.0に対応たいおうしています。
SPARQL 1.1への対応たいおうについては、「6. SPARQL 1.1への対応たいおう」をごらんください。

下記かきのフォームをもちいて、SPARQLによる検索けんさくためしてみることができます。

SPARQLクエリ検索けんさくフォーム



SPARQLを利用りようするAPIの詳細しょうさいについては、以下いかのAPI仕様しようしょをご参照さんしょうください。

RDFとして格納かくのうされるデータ項目こうもくについては、「4. RDF/XML形式けいしきによるフォーマット仕様しよう」をご参照さんしょうください。

このページの先頭せんとう

2. れい1:ある個人こじん生年せいねん没年ぼつねん名称めいしょう/タイトル、名称めいしょう/タイトルのカナみを調しらべる

夏目なつめ漱石そうせき」の典拠てんきょ情報じょうほうURI名称めいしょう実体じったいURI生年せいねん没年ぼつねん名称めいしょう/タイトル、名称めいしょう/タイトルのカナみをそれぞれ、変数へんすう?uri1」、「?uri2」、「?birth」、「?death」、「?heading」、「?yomi」とすると、これらの変数へんすうふくむRDFグラフは1のようになります。

1

RDFグラフをクエリにすると、以下いかのとおりとなります。

SPARQLクエリ検索けんさくフォーム


名称めいしょう/タイトルが「夏目なつめ」ではじまる典拠てんきょデータの生年せいねん没年ぼつねん名称めいしょう/タイトルを調しらべるクエリは以下いかのとおりになります。

SPARQLクエリ検索けんさくフォーム


ちゅう個人こじんめい典拠てんきょデータには、かならずしも生年せいねん没年ぼつねんふくまれていないものもあります。上記じょうきのクエリでは、生年せいねんまたは没年ぼつねんふくまれていないものは調しらべることができません。
以下いかOPTIONAL使つかったクエリであれば、生年せいねん没年ぼつねんのいずれか、またはその両方りょうほうふくまれていない場合ばあいでも、「夏目なつめ」ではじまる名称めいしょう/タイトルを調しらべることができます。

SPARQLクエリ検索けんさくフォーム


このページの先頭せんとう

3. れい2:没年ぼつねんから典拠てんきょURI、名称めいしょう実体じったいURI、名称めいしょう/タイトル、名称めいしょう/タイトルのカナみを調しらべる

没年ぼつねんが「1962」である典拠てんきょURI、名称めいしょう実体じったいURI、名称めいしょう/タイトル、名称めいしょう/タイトルのカナみをそれぞれ、変数へんすう?uri1」、「?uri2」、「?heading」、「?yomi」とすると、これらの変数へんすうふくむRDFグラフは2のようになります。

2

RDFグラフをクエリにすると、以下いかのとおりとなります。

SPARQLクエリ検索けんさくフォーム


101けん以降いこうのデータを取得しゅとくする場合ばあいは、OFFSET使用しようします。

SPARQLクエリ検索けんさくフォーム


このページの先頭せんとう

4. れい3:ある件名けんめい標目ひょうもく上位じょうい下位かいなどを調しらべる

件名けんめい標目ひょうもく「インターネット」の典拠てんきょURI、上位じょういのURI、上位じょういのラベルをそれぞれ変数へんすう?uri1」、「?uri2」、「?label」とすると、これらの変数へんすうふくむRDFグラフは3のようになります。

3
SPARQLクエリ検索けんさくフォーム


下位かい関連かんれん同義語どうぎご調しらべる場合ばあいは、「skos:broader」をそれぞれ「skos:narrower」、「skos:related」、「xl:altLabel」に置換おきかえます。

5. れい4:ある代表だいひょう分類ぶんるいぞくする件名けんめい標目ひょうもく調しらべる

国立こくりつ国会図書館こっかいとしょかん分類ぶんるいひょうNDLC)の分類ぶんるい記号きごう「DM225」にぞくする件名けんめい標目ひょうもく典拠てんきょURI、ラベルを変数へんすう?uri1」、「?label」とすると、これらの変数へんすうふくむRDFグラフは4のようになります。

4
SPARQLクエリ検索けんさくフォーム


NDLCの「DK341」かつ日本にっぽんじゅうしん分類ぶんるいほうNDCだい9はんの「694.5」にぞくする件名けんめい標目ひょうもく典拠てんきょURI、ラベルを変数へんすう?uri1」、「?label」とすると、これらの変数へんすうふくむRDFグラフは5のようになります。

5
SPARQLクエリ検索けんさくフォーム


6. SPARQL 1.1への対応たいおう

SPARQL 1.1に対応たいおうしたエンドポイントを公開こうかいしています。

https://id.ndl.go.jp/auth/ndla/sparql

1かい取得しゅとくできるデータ件数けんすう上限じょうげんは、1,000けんです。
返戻へんれい形式けいしきは、HTML形式けいしきTurtle形式けいしきJSON形式けいしき、XML形式けいしき、CSV形式けいしきから選択せんたくできます。このページに記載きさいしている検索けんさくは、SPARQL1.1でも使用しよう可能かのうです。よりあたらしいエンドポイントであるSPARQL1.1では、SPARQL1.0よりもおおくの結果けっかいちられるため、SPARQL1.1による検索けんさくをおすすめします。
ただし、SPARQL 1.1による検索けんさくは、毎日まいにち午前ごぜん4から5ふん程度ていど、データ更新こうしんのため、利用りようできません。

SPARQL 1.1に対応たいおうしたエンドポイントでのくわしい検索けんさく方法ほうほうについては、「SPARQL 1.1について」をごらんください。

このページの先頭せんとう