メインページ > 国立国会図書館サーチについて > 国立国会図書館サーチが提供するOAI-PMH

国立国会図書館サーチが提供するOAI-PMH

 

1. OAI-PMHについて

国立国会図書館サーチ(NDL Search)では、Webサービスや研究開発等にご活用いただくため、NDL Searchの書誌メタデータをOAI-PMHで提供しています。
OAI-PMHとは、データの自動収集によってメタデータを交換するためのプロトコルです。OAI-PMHの基本仕様は以下のページに記述されています(国立情報学研究所による日本語訳)。
また、国立国会図書館では、これまでのNDL Searchの経験や反省をふまえ、OAI-PMHの概要と実装時の注意点などをまとめた「OAI-PMHの要点」(ZIPファイル)を公開しています。

OAI-PMHの入力形式はURL、出力形式はXMLです。リクエスト種別や取得したいメタデータの条件、フォーマット等を指定したOAI-PMHリクエスト(URL)を送信すると、NDL Searchがそのリクエストを受け取り、リクエストされた条件やフォーマット等に合致するメタデータをXML形式で返戻します。
以下で、NDL SearchのOAI-PMHの使い方をご紹介します。

2. OAI-PMHリクエストURLの作成方法

OAI-PMHのリクエストURLの構成は以下のとおりです。


NDL SearchへのリクエストURLはすべてこの「基本URL」から始まります。基本URLの後ろには、①リクエスト種別と②メタデータの選択条件を記述します。

①リクエスト種別は、次の6種類です。基本URLの後ろに、「verb=リクエスト種別」と記述します。1つのリクエストURLで設定できるリクエスト種別は1つだけです。
リクエスト種別
リクエスト種別 内容
GetRecord NDL Searchの特定の書誌1件のメタデータを取得する
Identify NDL SearchがサポートするOAI-PMHについての情報を取得する
ListIdentifiers NDL Searchの全書誌のメタデータID を取得する
ListMetadataFormats NDL Searchのサポートするメタデータの形式を取得する
ListRecords NDL Searchのメタデータを取得する
ListSets NDL Searchのサポートしているset(絞込み条件)を取得する
②メタデータの選択条件は、次の6つです。リクエスト種別の後ろに、「&選択条件=[値]&選択条件=[値]…」 と記述します。なお、リクエストの種類ごとに必須な選択条件や使用可能な選択条件が異なります。
メタデータの選択条件
選択条件 内容
identifier NDL Searchの書誌メタデータID を指定する
metadataPrefix リクエストに対して返戻されるメタデータのフォーマットを指定する。oai_dc 、dcndl 、dcndl_simpleのいずれかを選択可能。dcndlおよびdcndl_simpleの内容は、「メタデータ」のページを参照。
from 日付(datestamp)の下限を指定する
until 日付(datestamp)の上限を指定する
set 収集対象とするsetパラメータを指定する。詳しくは後述
resumptionToken 一度では取得できないメタデータの続きを取得する場合に指定する。1回のリクエストに返戻されるデータの件数の上限は200件なので、201 件以降を取得したい場合には、200 件を取得した際に通知されるresumptionToken を指定してリクエストする
*setパラメータについて
NDL Searchでは、特定の属性を持つメタデータのみを取得できるよう、setパラメータを設けています。setとは、メタデータを特定の属性ごとにグループ化する定義です。NDL SearchのOAI-PMHにおけるsetは、以下の3つです。
  • データプロバイダのID
  • データプロバイダグループ(資料の類型、ジャンル)のID
  • NDC
データプロバイダ及びデータプロバイダグループのID については、「外部提供インタフェース(API)> 4. API仕様書」をご覧ください。
setパラメータを指定してリクエストした場合、setパラメータで指定したデータプロバイダないしデータプロバイダグループ、NDCの書誌メタデータのみが返戻されます。たとえば、データプロバイダにNDL-OPACを指定する場合は、「set=iss-ndl-opac」のように指定します。NDC分類735のものを指定する場合は「set=735」とします。NDL-OPACのNDC分類735のものを指定する場合は、「set=iss-ndl-opac:735」もしくは「set=735:iss-ndl-opac」とします。
取得したいメタデータの特性に合わせて、setパラメータを指定してください。

3. OAI-PMHで書誌メタデータを取得する

OAI-PMHで書誌データを取得したい場合は、リクエスト種別にListRecordsを指定します。リクエスト種別の後ろにはメタデータの選択条件を記述しますが、このメタデータの選択条件は以下のとおりパラメータによって必須なもの、任意なものがあります。
ListRecordsリクエストの場合のメタデータの選択条件
選択条件 内容
identifier 使用不可
metadataPrefix 必須
from 必須
until 任意
set 任意
resumptionToken 任意
fromやuntilを使用して特定の期間の書誌メタデータを取得したり、setパラメータを使用して特定のデータプロバイダの書誌メタデータを取得するなど、目的に合わせてメタデータ選択基準の値を設定してください。

リクエスト例は次のとおりです。

4. OAI-PMHで国立国会図書館作成の書誌メタデータを取得する

「3. OAI-PMHで書誌メタデータを取得する」で書誌メタデータを取得する方法をご紹介しましたが、特に国立国会図書館作成の書誌メタデータのみを取得したい場合のリクエストURL作成方法についてご紹介します。
 

4-1. NDL-OPACの書誌データ

NDL-OPAC(NDL新着書誌情報・全国書誌情報を含む)の書誌データをOAI-PMHで取得する場合、メタデータ選択基準のsetパラメータに「iss-ndl-opac」、もしくは「iss-ndl-opac-national」、「iss-ndl-opac-inprocess」を指定します(リクエスト種別はListRecordsです)。
setパラメータの値の定義は以下のとおりです。
  • iss-ndl-opac:作成完了書誌。作成が完了し、正式な書誌となったものです。国内刊行図書、洋図書、博士論文、地図資料等、当館が所蔵する多様な資料の書誌です。
  • iss-ndl-opac-national:全国書誌。法定納本制度に基づき納本された国内出版物と、納本以外の方法により収集した(寄贈、購入等)国内出版物及び外国刊行日本語出版物が対象です。
  • iss-ndl-opac-inprocess:作成中書誌(新着書誌情報)。当館に納入された国内刊行出版物及び外国刊行日本語出版物の基本書誌情報(※)を、納入後数日で取得することができます。これにより取得された書誌は、未完成の書誌であり、後に修正されることがありますのでご注意ください。
※国内刊行出版物及び外国刊行日本語出版物の書誌データのうち、地図資料及びアジア言語資料は含まれません。

リクエスト例は次のとおりです。
 

4-2. 国立国会図書館デジタルコレクションの書誌データ

国立国会図書館デジタルコレクションの書誌データをOAI-PMHで取得する場合は、メタデータ選択基準のsetパラメータに「ndl-dl」、もしくは「ndl-dl-online」を指定します(リクエスト種別はListRecordsです)。
setパラメータの値の定義は以下のとおりです。
  • ndl-dl:国立国会図書館デジタルコレクション。国立国会図書館で収集・集積されているさまざまなデジタル化資料を提供しています。含まれるコレクションは以下のとおりです。
    「図書」「雑誌」「古典籍」「博士論文」「官報」「新聞」「憲政資料」「日本占領関係」「プランゲ文庫」「歴史的音源」「科学映像」
  • ndl-dl-online:国立国会図書館デジタルコレクション(電子書籍・電子雑誌)。国立国会図書館が収集したインターネット上の刊行物を提供しています。2013年7月1日以降に当館が収集したインターネット等で出版(公開)される電子書籍・電子雑誌や、国立国会図書館のホームページにて掲載している刊行物もこちらのデータベースから検索することができます。
リクエスト例は次のとおりです。
 

4-3. 国立国会図書館作成書誌データの起点日

国立国会図書館作成書誌データの起点日(最も古い更新日のデータ)とfrom、until によって指定可能な範囲(期間)は、以下のとおりです。
    • NDL-OPAC(NDL新着書誌情報・全国書誌情報を含む)
起点日:「2013-06-28」 指定可能な範囲:1年
    • 国立国会図書館デジタルコレクション
起点日:「2014-03-20」 指定可能な範囲:1年

なお、リクエストに対する1度の返戻は200件が上限です。resumptionTokenを指定することで200件以降の取得が可能になります。
また、全件のデータ量が多いため、できるだけ期間等で対象を絞ってリクエストしていただくことを推奨いたします。

その他、OAI-PMHにおける ListRecords以外のリクエストの詳細、及びNDL Searchが提供するAPI全般については、以下をご覧ください。

⇒「外部提供インタフェース(API)> 4. API仕様書

前のページへ戻る