トップページ > OAI-PMH

OAI-PMH

Table of Contents



1. URL

https://kn.ndl.go.jp/api/oaipmh

2. リクエスト形式

https://kn.ndl.go.jp/api/oaipmh?verb=[リクエスト名]

リクエストによっては、詳細を引数で指定します。引数は、[引数]=[値]で指定します。
指定する場合は以下の形式となります。
https://kn.ndl.go.jp/api/oaipmh?verb=[リクエスト名]&[引数]=[値]

引数を複数使用する場合は、[引数]=[値]を&で連結します。
https://kn.ndl.go.jp/api/oaipmh?verb=[リクエスト名]&[引数1]=[値]&[引数2]=[値]&...

3. リクエスト種別

リクエスト名 内容 引数指定
GetRecord 特定のメタデータを1件取得する 必須
identify ひなぎくが提供するOAI-PMHについての情報を取得する -
ListIdentifiers ひなぎくから取得できるメタデータのISSトークンを取得する 必須
ListMetadataFormats ひなぎくが対応しているメタデータの形式を取得する 任意
ListRecords ひなぎくから取得できるメタデータを取得する 必須
ListSets ひなぎくが対応しているset(絞込み条件)を取得する 任意

4. リクエスト種別と引数

リクエスト名 引数
identifier metadataPrefix from until set resumptionToken
GetRecord ----
identify ------
ListIdentifiers -
ListMetadataFormats -----
ListRecords -
ListSets -----
◎:必須、○:任意、- : 対象外
fromとuntilで指定する期間は最大で1年間

5. 引数

引数名 内容
identifier ISSトークンを指定。
identifier=oai:kn.ndl.go.jp:[ISSトークン]の形式で指定する。
ISSトークンは、詳細画面のURL:http://kn.ndl.gojp/#/part/xxxxのxxxxの部分。
identifier=oai:kn.ndl.go.jp:R200200041-I000000226-00
metadataPrefix メタデータの返戻形式を指定する。
oai_dc・・・Dublin Coreの基本15要素であるDublin Core Metadata Element Setを出力する際の形式
ndlkn・・・国立国会図書館東日本大震災メタデータスキーマ形式
metadataPrefix=ndlkn
from 日付(datestamp)の下限を指定する。
YYYY, YYYY-MM, YYYY-MM-DD形式で指定する。
from=2016-10-01
until 日付(datestamp)の上限を指定する。
YYYY, YYYY-MM, YYYY-MM-DD形式で指定する。
※untilを指定しない場合、返戻期間はfromから365日。
until=2016-10-01
set リポジトリID又は資料種別名を指定
・リポジトリID
リポジトリIDは1つしか指定できません。
set=[リポジトリID]

・資料種別
set=[資料種別名] 以下の日本語に対応した資料種別名で指定します。
文書資料・・・documents, Webサイト・・・website, 写真・・・picture, 音声・動画・・・audio-video, その他・・・other

・リポジトリIDと資料種別を指定
区切り文字として「:」(半角コロン)を使用し以下の様に指定する。
set=[リポジトリID]:[資料種別名]
set=200041
set=audio-video
set=200041:audio-video
resumptionToken 1リクエストの返戻メタデータ件数が取得上限数である200件を超えた場合、201件目以降のメタデータを取得するために指定。メタデータを全て取得するには、200件ごとにresumptionTokenを指定する必要がある。
指定するresumptionTokenの引数値は、200件ごとのメタデータの最後に表示されるresumptionTokenタグの値である。

※resumptionTokenタグの説明
1リクエストで200件以上メタデータが返戻された場合、以下の様にresumptionTokenタグの行が返戻される。

<resumptionToken cursor="0" completeListSize="△△△">○○○</resumptionToken>

・タグ値・・・○○○
・"cursor"・・・前回のリクエストで取得したメタデータの件数。初回リクエストの場合、"0"、2回目の場合、"200"、3回目の場合、"400"となる。
上記の例は、初回リクエスト時の返戻なのでcursor="0"となっている。
・"completeListSize"・・・メタデータの総件数。上記の例では、△△△。

201件目から400件目までのメタデータ取得する場合、resumptionToken=○○○と指定する。
201件目から400件目のメタデータを取得する際に、

・401件目以降のメタデータが存在・・・resumptionTokenタグが表示されるので、401件目以降のメタデータを取得したい場合には、新たに表示されたresumptionTokenタグの値を使用する。
・メタデータの件数が400件以下・・・リクエストに対するメタデータが全件取得できたことを示す以下のタグが表示される。
<resumptionToken completeListSize="○○○"/>
resumptionToken=ndlkn/2016-09-01/2017-07-07T01:08:39Z/200041/400/1498470365577

6. ひなぎくで提供しているOAI-PMH

Identifyリクエストにより、ひなぎくで提供しているOAI-PMHについての情報が、<Identify>タグの値として取得できます。
<Identify>タグ内のタグとその内容は以下の通り

タグ名 内容 応答値
repositoryName OAI-PMHを提供しているサービス名 NDL The Great East Japan Earthquake Archive
baseURL 提供するOAI-PMHのベースURL http://kn.ndl.go.jp/api/oaipmh
protocolVersion 提供するOAI-PMHのバージョン Version 2.0
adminEmail 管理者のメールアドレス hinagiku@ndl.go.jp
earliestDatestamp システム初期構築日ないし全面再構築日 -
deletedRecord 削除済みレコードに対する処理法。
・no: 削除についての情報を保持しません。
・persistent: 削除についての情報を永続的に保持します。削除履歴をすべて永続的に保持し、削除済みレコードのステータスを常に表示します。
・transient:削除についての情報を制限付で保持(一定日付以降のものに関して保持)。
persistent
Granularity システムが対応している日付精度 YYYY-MM-DDThh:mm:ssZ
repositoryIdentifier サービスを一意に同定する名前 kn.ndl.go.jp

7. リクエスト例

例1. Identify リクエスト
https://kn.ndl.go.jp/api/oaipmh?verb=Identify
例2. ListMetadataFormats リクエスト
https://kn.ndl.go.jp/api/oaipmh?verb=ListMetadataFormats
例3. ListIdentifiers リクエスト
https://kn.ndl.go.jp/api/oaipmh?verb=ListIdentifiers&metadataPrefix=oai_dc&from=2019-04-01
例4. ListRecords リクエスト
https://kn.ndl.go.jp/api/oaipmh?verb=ListRecords&metadataPrefix=oai_dc&from=2019-04-01
例5. ListSets リクエスト
https://kn.ndl.go.jp/api/oaipmh?verb=ListSets
例6. GetRecord リクエスト
https://kn.ndl.go.jp/api/oaipmh?verb=GetRecord&metadataPrefix=oai_dc&identifier=oai:kn.ndl.go.jp:R200200041-I000000065-00


Copyright © 2013- National Diet Library. All Rights Reserved. 国立国会図書館 〒100-8924 東京都千代田区永田町1-10-1 電話:03-3581-2331(代表)