災害リスク情報クリアリングハウス
API 仕様書

Version 1.2
2015/01/15
独立行政法人 防災科学技術研究所

変更履歴
Version

日付

変更内容

1.0

2013/8/23

初版作成

1.1

2014/1/17

問い合わせ先情報の市区町村名、都道府県名、利用上の制約およびデータアクセス URL の４つの検索 API パラメータの追加。

1.1.1

2014/6/13

検索 API（REST）に INCLUDEPLANNDED パラメータ追加
登録 API に OPENMODE パラメータ追加
認証 API の追加

1.2

2015/1/15

XYZ タイルおよび TMS に関するメタデータ仕様の変更およびアクセス制限管理機能の追加による改訂

2

目次
1.

はじめに .....................................................................................................................................................................................................42.

API 一覧...................................................................................................................................................................................................53.

メタデータ登録 API.................................................................................................................................................................................63.1.

メタデータのファイルを送る場合..................................................................................................................................................6

3.2.

クリアリングハウスがメタデータを参照して登録させることを行う場合 ................................................................................84.

メタデータ更新 API.................................................................................................................................................................................95.

メタデータ削除 API.............................................................................................................................................................................. 106.

クリアリングハウス検索 API ................................................................................................................................................................ 11

7.

6.1.

条件検索（CSW 準拠） ........................................................................................................................................................... 116.2.

条件検索（独自 REST 形式） .............................................................................................................................................. 13

6.3.

個別メタデータ取得（CSW 準拠） ......................................................................................................................................... 16

6.4.

個別メタデータ取得（独自 REST 形式） ............................................................................................................................ 17

クリアリングハウス認証 API ................................................................................................................................................................ 18
7.1.

ログイン .......................................................................................................................................................................................... 18

7.2.

ログアウト ...................................................................................................................................................................................... 18

3

1. はじめに
本書は防災科学技術研究所が開発した災害リスク情報および災害情報の共有のためのクリアリングハウスを外部から利用するための API について記述したものです。
本書に記載の API で扱うメタデータの詳細については別紙「災害リスク情報クリアリングハウス メタデータ説明書」を参照してください。

42.

API 一覧
API の仕様については、下記の 3 項目 7 種類の API である。なお、メタデータ登録・更新・削除 API については、OGCが定めた CSW に仕様はないため、今回新たに API を策定した。クリアリングハウス検索 API については CSW に準拠するものと利便性を考慮した REST 形式の独自 API を用意する。

メタデータ登録・更新・削除 API
メタデータ登録 API

情報を共有する主体がメタデータをクリアリングハウスへ登録する際に使用する API。メタデータのファイルを送る場合と、外部のメタデータを URL で取得させる場合の 2 種類がある。

メタデータ更新 API

情報を共有する主体が、既にクリアリングハウスへ登録してあるメタデータを更新する際に使う API

メタデータ削除 API

情報を共有する主体が、既にクリアリングハウスへ登録してあるメタデータを削除する際に使う API

メタデータ検索 API
条件検索 API

情報を利活用する主体が、クリアリングハウスに対して条件に基づきメタデータから地図データを検索する際に使う API。CSW に準拠するものと REST 形式の独自の API を用意する。

個別メタデータ取得 API

情報を利活用する主体が、個別の地図データのメタデータを取得する際に使う API 。CSW に準拠するものと REST 形式の独自の API を用意する。

認証 API
ログイン API

情報を利活用する主体が、クリアリングハウスに対してログインするためのAPI。
ログインすることで、メタデータの登録・更新・削除が可能になる。また、ログインユーザにのみ公開されたメタデータへのアクセスが可能になる。

ログアウト API

クリアリングハウスからログアウトするための API。

上記 API のうち、メタデータの登録・更新・削除 API およびメタデータ検索 API を提供する URL は以下の通り。
http://サーバ名/CatalogueService/servlet/NIEDCatalogueService
認証 API を提供する URL は以下の通り。
http://サーバ名/CatalogueService/servlet/AccountPermissionService※ サーバ名はクリアリングハウスがインストールされたサーバのホスト名または IP アドレス。

5メタデータ登録 API3.

クリアリングハウスにメタデータを登録するには、予めクリアリングハウスにメタデータ登録権限を持つユーザでログインしている必要がある。
ログインについては、「7.クリアリングハウス認証 API」を参照。

3.1.

メタデータのファイルを送る場合以下のリクエストを送信する（*は必須パラメータ）
METHOD： POST（multipart/form-data）
パラメータ値

説明SERVICE

*CSW

固定

VERSION

*

2.0.2

固定

REQUEST*

UploadMetadata

固定

リダイレクト先 URL

登録後に REDIRECT するページの URL を指定する。

REDIRECTURL*

この URL には、パラメータ FILEIDENTIFIER が渡される。
パラメータの値は以下の通り。
登録成功 －登録したメタデータのファイル識別子
登録失敗 － 空
REDIRECT 不要の場合は以下を指定する/CatalogueService/csw/edit/dummy.jsp
METADATAFILE*

メタデータファイル（XML）

登録するメタデータファイル

OVERVIEWFILE

サムネイル画像ファイル

サムネイルとして表示する画像ファイル（gif,png,jpeg）
サムネイル画像の URL がメタデータ内に記述されている場合は省略可。
サムネイル画像が不要の場合は省略可

DISASTERTYPE

災害区分

地図データが対象とする災害の区分を指定する。

以下のいずれか。

対象の災害区分を特定しない場合は指定しなくてもよい。

1:地震
2:津波・高潮
3:火山
4:風水
5:土砂
6:氷雪
7:その他

6

OPENMODE

公開設定

メタデータの公開範囲を設定する。

以下のいずれか。

「常に公開」はクリアリングハウスへのログインの有無にかかわらず全て利用者がアクセス可能なメタデータ。

0:常に公開「ログインユーザに公開」はクリアリングハウスにログイン中の利用者のみアクセス可能なメタデータ。

1:ログインユーザに公開-1:非公開「非公開」はメタデータの登録者または管理者でログイン中のみアクセス可能なメタデータ。

7

3.2.

クリアリングハウスがメタデータを参照して登録させることを行う場合

以下のリクエストを送信する（*は必須パラメータ）
METHOD： GET または POST（applicationi/x-www-form-urlencoded）
パラメータ

値

説明

SERVICE

*

CSW

固定

VERSION

*

2.0.2

固定

REQUEST*

UploadMetadata

固定

リダイレクト先 URL

登録後に REDIRECT するページの URL を指定する。

REDIRECTURL*

この URL には、パラメータ FILEIDENTIFIER が渡される。
パラメータの値は以下の通り。
登録成功 － 登録したメタデータのファイル識別子
登録失敗 － 空
REDIRECT 不要の場合は以下を指定する/CatalogueService/csw/edit/dummy.jsp
METADATAURL*DISASTERTYPE

メタデータの URL

登録するメタデータの URL（XML）

災害区分

地図データが対象とする災害の区分を指定する。

以下のいずれか。

対象の災害区分を特定しない場合は指定しなくてもよい。

1:地震
2:津波・高潮
3:火山
4:風水
5:土砂
6:氷雪
7:その他
OPENMODE

公開設定

メタデータの公開範囲を設定する。

以下のいずれか。

「常に公開」はクリアリングハウスへのログインの有無にかかわらず全て利用者がアクセス可能なメタデータ。

0:常に公開「ログインユーザに公開」はクリアリングハウスにログイン中の利用者のみアクセス可能なメタデータ。

1:ログインユーザに公開-1:非公開「非公開」はメタデータの登録者または管理者でログイン中のみアクセス可能なメタデータ。

84.

メタデータ更新 API「3. メタデータ登録 API」のメタデータ登録 API を利用してメタデータの更新が可能である。
「0. クリアリングハウスにメタデータを登録するには、予めクリアリングハウスにメタデータ登録権限を持つユーザでログインしている必要がある。
ログインについては、「7.クリアリングハウス認証 API」を参照。
メタデータのファイルを送る場合」の場合は、METADATAFILE で指定したメタデータのファイル識別子（fileIdentifier 項目の値）と同じものが登録済みの場合は更新となる。
「3.2. クリアリングハウスがメタデータを参照して登録させることを行う場合」の場合は、METADATAURL で指定したメタデータのファイル識別子（fileIdentifier 項目の値）と同じものが登録済みの場合は更新されるものとする。
メタデータを更新するには、予めクリアリングハウスに更新対象のメタデータの登録を行なったユーザまたは管理者でログインしている必要がある。
ログインについては、「7 クリアリングハウス認証 API」を参照。

9

5.

メタデータ削除 API
メタデータを削除するには、予めクリアリングハウスに削除対象のメタデータの登録を行なったユーザまたは管理者でログインしている必要がある。
ログインについては、「7 クリアリングハウス認証 API」を参照。

METHOD： GET または POST（applicationi/x-www-form-urlencoded）
パラメータ値

説明SERVICE

*

CSW

固定

VERSION

*

2.0.2

固定

REQUEST*

DeleteMetadata

固定

リダイレクト先 URL

削除後に REDIRECT するページの URL を指定する。

REDIRECTURL*

この URL には、パラメータ FILEIDENTIFIER が渡される。
パラメータの値は以下の通り。
削除成功 － 削除したメタデータのファイル識別子
削除失敗 － 空
REDIRECT 不要の場合は以下を指定する/CatalogueService/csw/edit/dummy.jsp*

FILEIDENTIFIER

ファイル識別子

削除するメタデータのファイル識別子。
（メタデータ項目 fileIdentifier の値）

10

6.

クリアリングハウス検索 API

6.1.

条件検索（CSW 準拠）

OGC CSW GetRecords リクエストに準拠した API
このリクエストはパラメータではなく、以下の形式の XML のテキストを POST する。
XML テキストの文字エンコーディングは UTF-8 とする。
METHOD： POST（applicationi/x-www-form-urlencoded）
タグ/属性

値

GetRecords タグ

説明--

service 属性

CSW

固定

version 属性

2.0.2

固定

resultType 属性

レスポンスの形式

hits/results/validate のいずれか

outputFormat 属性

application/xml

レスポンス ドキュメントの MIME タイプ
固定

outputSchema 属性

出力スキーマの URI

http://www.isotc211.org.2005/gmd
または
http://www.ope ngis.net/cat/csw/2.0.2

startPosition 属性

取得レコード先頭位置

デフォルト値：1maxRecords 属性

最大取得レコード数

デフォルト値：10、最大値：100--

gmd:MD_Metadata

固定

Query タグ
typeName 属性
ElementSetName タグ-

typeName 属性
Constraint タグ
version 属性
ogc:Filter タグ

結果セットの形式

brief/summay/full のいずれか-

-

1.1.0

固定

検索条件

OGC Filter Encoding 仕様（http://www.opengeospatial.org/standards/filter）に準拠した条件※ 各タグの仕様については、OpenGIS Catalogue Services Specification 2.0.2（http://www.opengeospatial.org/standards/specifications/catalog） を参照。

ogc:Filter に設定できる検索項目とメタデータの検索対象項目の対応は以下の通り。
検索項目

検索項目名

メタデータの対象項目（XPath）

タイトル

Title

/MD_Metadata/identificationInfo/MD_DataIdentification/citation/title

要約

Abstract/MD_Metadata/identificationInfo/MD_DataIdentification/abstract

キーワード

AnyText/MD_Metadata/identificationInfo/MD_DataIdentification/descriptiveKe11

ywords/MD_Keywords/jmp:keyword
および/MD_Metadata/identificationInfo/MD_DataIdentification/abstract
メタデータ更新日

Modified/MD_Metadata/dateStampID

Identifier/MD_Metadata/fileIdentifier

範囲

BoundingBox

以下の４つの要素で構成される緯度経度矩形との交差/MD_Metadata/identificationInfo/MD_DataIdentification/extent/geogr
aphicElement/EX_GeographicBoundingBox/westBoundLongitude/MD_Metadata/identificationInfo/MD_DataIdentification/extent/geogr
aphicElement/EX_GeographicBoundingBox/southBoundLongitude/MD_Metadata/identificationInfo/MD_DataIdentification/extent/geogr
aphicElement/EX_GeographicBoundingBox/eastBoundLongitude/MD_Metadata/identificationInfo/MD_DataIdentification/extent/geogr
aphicElement/EX_GeographicBoundingBox/northBoundLongitude

以下に XML テキストの記述例を示す。
タイトル（Title）を検索条件とした場合の例<?xml version="1.0" encoding="UTF-8"?><GetRecords xmlns="http://www.opengis.net/cat/csw/2.0.2" xmlns:ogc="http://www.opengis.net/ogc"
service="CSW" version="2.0.2" resultType="results" outputFormat="application/xml"
outputSchema="http://www.isotc211.org/2005/gmd" startPosition="1" maxRecords="10"><Query typeNames="gmd:MD_Metadata"><ElementSetName typeNames="">full</ElementSetName><Constraint version="1.1.0"><ogc:Filter><ogc:PropertyIsLike escape="\" singleChar="_" wildCard="%"><ogc:PropertyName>Title</ogc:PropertyName><ogc:Literal>%地震%</ogc:Literal></ogc:PropertyIsLike></ogc:Filter></Constraint></Query></GetRecords>

12

6.2.

条件検索（独自 REST 形式）

簡便性や検索方法の拡張のために REST 形式の API を用意する。
以下のリクエストを送信する（*は必須パラメータ）
METHOD： GET または POST（applicationi/x-www-form-urlencoded）
パラメータ
SERVICE*
VERSION*REQUEST*
resultType*outputFormat*

outputSchema*

値

説明CSW

固定

2.0.2

固定

GetRecords

固定results

固定

application/xml

固定

http://www.opengis.net/cat/csw

固定/2.0.2ElementSetName*

結果セットの形式

brief/summay/full のいずれか

startPosition

取得レコード先頭位置

デフォルト値：1

maxRecords

最大取得レコード数

デフォルト値：10、最大値：100

DISASTERTYPE

以下のいずれかの番号

災害区分、カンマ区切りで複数指定可能

1:地震
2:津波・高潮
3:火山
4:風水
5:土砂
6:氷雪
7:その他
KEYWORD

文字列

AND キーワード、スペース区切りで複数指定可
能。部分一致。

KEYWORDOR

文字列

OR キーワード、スペース区切りで複数指定可
能。部分一致。

KEYWORDNOT

文字列

NOT キーワード、スペース区切りで複数指定可
能。部分一致。

FUZZYSEARCH

true（する）/ false（しない）

あいまい検索制御

CONTACTNAME

文字列

問い合わせ先の名称に対する検索条件。部分一致。空白文字で区切って複数指定可能。複数指定した場合は全ての文字列に部分一致するものを検索する。

13

CONTACTCITY

文字列

問い合わせ先の市区町村名に対する検索条件。部分一致。空白文字で区切って複数指定可能。複数指定した場合は全ての文字列に部分一致するものを検索する。

CONTACTADMINAREA

文字列

問い合わせ先の都道府県名に対する。部分一致。空白文字で区切って複数指定可能。複数指定した場合は全ての文字列に部分一致するものを検索する。

USELIMITATION

文字列

利用上の制約に対する検索条件。部分一致。
空白文字で区切って複数指定可能。複数指定した場合は全ての文字列に部分一致するものを検索する。
但し、コード（001 等３桁の数字）が指定された場合は完全一致。

BBOX

西側経度,南側緯度,東側経度,北 地理範囲条件、度単位
側緯度TERMTYPE

以下のいずれかの番号

期間条件の対象、カンマ区切りで複数指定可能

1:作成日
2:刊行日
3:改訂日
TERM

開始日付,終了日付

期間条件、開始日と終了日のカンマ区切り、一方を省略可能、省略すると片側無制限

DATATERM

開始日付,終了日付

データの期間条件、開始日と終了日のカンマ区
切り、一方を省略可能、省略すると片側無制限

RATING

最低値,最高値

評価条件、最低値と最高値のカンマ区切り、値は 0～5、一方を省略可能、省略すると片側無制限

RESOURCEURL

文字列

データアクセス URL に対する検索条件。部分一致。空白文字で区切って複数指定可能。複数指定した場合は全ての文字列に部分一致するものを検索する。

APPLICATIONPROFILE

WMS,WFS,WCS のいずれかを指定

データ提供サービスの種類を条件として検索、カンマ区切りで複数指定可能

INCLUDEPLANNED

以下のいずれかを１つ指定する。

検索対象に予定メタデータを含むかどうかを指定

TRUE: 予定メタデータを含む全てする。

FALSE: 予定メタデータを含まない
ONLY: 予定メタデータのみ

14

ORDERBY

以下のいずれかの番号１つ並べ替え方法、デフォルト値：10

1:更新日付
2:アクセス数
3:評価
5:検索条件との関連度
10:ID 昇順
11:ID 降順
12:メタデータ更新日時昇順
13:メタデータ更新日時降順
enc

文字エンコーディング

値の文字エンコーディングを指定
デフォルトは EUC-JP

15

6.3.

個別メタデータ取得（CSW 準拠）

OGC CSW GetRecordById リクエストに準拠した API。
このリクエストはパラメータではなく、以下の形式の XML のテキストを POST する。
XML テキストの文字エンコーディングは UTF-8 とする。
METHOD： POST（applicationi/x-www-form-urlencoded）
タグ/属性
GetRecordById タグ

値

説明--service 属性

CSW

固定

version 属性

2.0.2

固定

resultType 属性

レスポンスの形式

hits/results/validate のいずれか

outputFormat 属性

application/xml

レスポンス ドキュメントの MIME タイプ
固定

outputSchema 属性

出力スキーマの URI

http://schemas.info-bosai.jp/ch/jmpex
または
http://www.opengis.net/cat/csw/2.0.2

ElementSetName タグ
typeName 属性
Id タグ

--

結果セットの形式

brief/summay/full のいずれか

メタデータのファイル識別子

メタデータの fileIdentifier 要素の値

※各タグの仕様については、OpenGIS Catalogue Services Specification 2.0.2 を参照。
XML データの記述例を以下に示す。
ファイル識別子 = NIED_JMP_33 のメタデータを取得する例<?xml version="1.0" encoding="UTF-8"?><GetRecordById xmlns="http://www.opengis.net/cat/csw/2.0.2" xmlns:ogc="http://www.opengis.net/ogc"
service="CSW" version="2.0.2" resultType="results" outputFormat="application/xml"
outputSchema="http://www.isotc211.org/2005/gmd"><ElementSetName>full</ElementSetName><Id>NIED_JMP_33</Id></GetRecordById>

16

6.4.

個別メタデータ取得（独自 REST 形式）

簡便性や検索方法の拡張のために REST 形式の API を用意する。
以下のリクエストを送信する（*は必須パラメータ）
METHOD： GET または POST（applicationi/x-www-form-urlencoded）
パラメータ
SERVICE

*

値

説明CSW

固定

2.0.2

固定

GetRecordById

固定

outputFormat*

application/xml

固定

outputSchema*

出力スキーマの URI

http://schemas.info-bosai.jp/ch/jmpex

VERSION*REQUEST*または
http://www.opengis.net/cat/csw/2.0.2
ElementSetName*

結果セットの形式

brief/summay/full のいずれか

Id*

メタデータのファイル識別子

メタデータの fileIdentifier 要素の値

17

7.

クリアリングハウス認証 API

7.1.

ログイン

クリアリングハウスにログインすると以下のことが可能になる。
・ ログインユーザに公開されているメタデータへのアクセス（検索および取得）
・ メタデータ登録権限がある場合はメタデータの登録
・ ログインユーザによって登録されたメタデータの更新・削除
クリアリングハウスにログインするには以下のリクエストを送信する（*は必須パラメータ）
METHOD： GET または POST（applicationi/x-www-form-urlencoded）
パラメータ
REQUEST*

値

説明

AuthAccount

固定

LOGINNAME

ログイン名

ログインするユーザのログイン名

*

パスワード

ログインするユーザのパスワード

*

JSON

固定

*PASSWORDRESPONSE

ログイン結果は以下の JSON（mime-type:application/json）形式の文字列で返される。
{ "code":ログイン結果 }ログイン結果
0: ログイン成功
0 以外:ログイン失敗

7.2.

ログアウト

ログイン済みのクリアリングハウスからログアウトするには、以下のリクエストを送信する（*は必須パラメータ）
ログインしていない状態でこのリクエストを送信しても何もせず、エラーにもならない。
METHOD： GET または POST（applicationi/x-www-form-urlencoded）
パラメータ
REQUEST**RESPONSE

値

説明Logout

固定

JSON

固定
ログアウト結果は以下の JSON（mime-type:application/json）形式の文字列で返される。
{ "code":ログアウト結果 }ログアウト結果
0: ログアウト成功（ログアウトは失敗しない）

18