建設情報連携のためのポータル標準インタフェースガイドライン（案）第1版

平成 19 年 10 月

国 土 交 通 省

はじめに
公共事業では、ライフサイクルの各段階の業務を支援するために、さまざまな情報シ
ステムが整備・運用されている。これらのシステムは、それぞれの目的に応じて独立に運用され効果を上げているが、複数の情報システムを連携して利用できれば、さらに大きな効果が得られると期待される。しかしシステム間の連携を図るための適切な管理基準や制度が存在しないために、分野横断的な情報連携が困難なことがある。このため、建設分野において流通するデータの標準化、および分散システムの検索・利用技術の確
立は、業界全体の効率化推進に特に大きな効果があると期待される。
情報を有効に利活用するためには、「情報の蓄積と管理」が不可欠である。国土交通
省では、直轄事業のすべての業務・工事を対象に電子納品を実施している。また、地方
自治体でも電子納品が展開されてきており、様々な建設情報が蓄積されている。今後、蓄積された様々な建設情報を効率よく検索・収集・利活用していくためには、情報シス
テムの基盤整備が特に重要な課題と言える。
蓄積された建設情報を有効活用するには、情報システムの連携による相互運用性を高めていく必要がある。相互運用性を高める方策として、既存のデータベースの構造に大きな変化を加えることなく、何らかの標準的なインタフェースを用いて分散環境にある
情報システムを連携させる手法が考えられる。建設情報の分野横断的な連携利用の実現のためには、既存の規格や事例を踏まえた、建設分野全体を対象とした分散システムの連携と、データ検索・利用技術の仕組みを開発することが望まれる。
本書は、建設分野で流通する情報を、効率よく検索・収集・利活用できるようにする
ため、情報システムの連携による相互運用性を高めるための「標準的なインタフェース」
として、インターネット／イントラネット環境で動作するアプリケーションプログラムが実装すべきインタフェースの考え方を示すとともに、インタフェースの仕様を定めている。
本書の策定にあたっては、国土交通省が（財）日本建設情報総合センターに業務を委託し、建設情報標準化委員会 電子地図／建設情報連携小委員会（柴崎亮介小委員長）に、ご検討・ご審議をいただいた。多大なご協力をいただいた関係各位に深く謝意を表する次第である。

平成 19 年 10 月
国土交通省

＜目次＞
【本編】
1.

ガイドラインの概要 ................................................................................................ 1
1-1.

目的 .................................................................................................................. 1

1-2.

本ガイドライン策定の背景と標準インタフェースの意義 ............................... 2

1-3.

適用範囲 ........................................................................................................... 5

1-4.

利用者と利用方法............................................................................................. 6

1-5.

引用規格 ........................................................................................................... 9

1-5-1.

国際的な標準化団体による標準規格......................................................... 9

1-5-2.

既存の標準インタフェース仕様との関係 ............................................... 10

1-6.
2.

3.

4.

用語の定義 ..................................................................................................... 12

標準インタフェースの考え方................................................................................ 15
2-1.

本ガイドラインにおける標準インタフェースの位置づけ ............................. 15

2-2.

標準インタフェースの定義 ............................................................................ 20

2-3.

標準インタフェースの種類 ............................................................................ 21

2-4.

標準インタフェースの定義方法 ..................................................................... 24

2-5.

関数仕様の考え方........................................................................................... 25

2-6.

関数仕様の実装方式 ....................................................................................... 26

2-7.

標準インタフェースを利用したアプリケーションプログラムの運用形態 .... 27

2-8.

インタフェース公開･管理の考え方................................................................ 28

2-9.

インタフェース接続の考え方......................................................................... 30

標準インタフェース関数仕様................................................................................ 32
3-1.

関数の一覧 ..................................................................................................... 33

3-2.

関数の説明 ..................................................................................................... 35

3-2-1.

共通 ......................................................................................................... 35

3-2-2.

地理情報に関するインタフェース .......................................................... 36

3-2-3.

地名辞典に関するインタフェース .......................................................... 38

3-2-4.

メタデータ検索に関するインタフェース ............................................... 53

3-2-5.

構造体 ..................................................................................................... 58

標準インタフェース実装仕様................................................................................ 82
4-1.

POST/GET 利用のための実装仕様................................................................ 82

4-1-1.

地理情報に関するインタフェース .......................................................... 82

4-1-2.

地名辞典に関するインタフェース .......................................................... 82

4-1-3.

メタデータ検索に関するインタフェース ............................................... 82

4-2.

SOAP と WSDL 利用のための実装仕様 ........................................................ 83

5.

6.

4-2-1.

共通事項.................................................................................................. 83

4-2-2.

各サービスに共通するインタフェース ................................................... 86

4-2-3.

地理情報に関するインタフェース .......................................................... 89

4-2-4.

地名辞典（空間参照系管理）に関するインタフェース.......................... 90

4-2-5.

地名辞典（地名辞典管理）に関するインタフェース ........................... 100

4-2-6.

メタデータ検索に関するインタフェース ............................................. 110

関数仕様作成に関する取り決め .......................................................................... 111
5-1.

関数仕様作成に関する取り決め ................................................................... 111

5-2.

関数と引数の命名規則 ................................................................................. 116

実装仕様作成に関する取り決め .......................................................................... 118
6-1.

7.

8.

実装仕様作成に関する取り決め ................................................................... 118

標準インタフェースの運用に関する取り決め..................................................... 120
7-1.

インタフェース公開・管理方法 ................................................................... 120

7-2.

インタフェース接続方式.............................................................................. 122

標準インタフェース公開・管理仕様 ................................................................... 123
8-1.

アプリケーションプログラムの内容に関する公開・管理仕様 .................... 124

8-2.

アプリケーションプログラムで利用できる関数等の技術的な公開・管理仕様 .
..................................................................................................................... 127

【附属書】
1.

参考とすべきインタフェース.................................................................................. 1
1-1.

1-1-1.

関数仕様.................................................................................................... 2

1-1-2.

詳細情報の入手先 ..................................................................................... 3

1-2.

2.

地物単位で地理情報を取得するインタフェース（参考） ............................... 2

SOAP による地理情報等の標準インタフェース（参考） ............................... 4

1-2-1.

関数仕様.................................................................................................... 5

1-2-2.

詳細情報の入手先 ................................................................................... 10

ガイドラインの適用事例 ....................................................................................... 11
2-1.

システム実装の事例 ....................................................................................... 12

2-1-1.
2-2.

連携システムの詳細 ....................................................................................... 14

2-2-2.
2-3.

概要 ......................................................................................................... 12
実装の手順（例） ................................................................................... 17

インタフェース策定の事例 ............................................................................ 23

2-3-1.

河川 GIS・河川アプリケーション標準インタフェースガイドラインにおける事例................................................................................................................ 23

2-3-2.

電子納品保管管理システムにおける事例 ............................................... 25

1. ガイドラインの概要
1-1. 目的「建設情報連携のための標準インタフェースガイドライン」（以下、「本ガイドライン」という）は、インタ
ーネット/イントラネット環境で動作するアプリケーションプログラムが実装すべきインタフェースの考え方を示すとともに、インタフェースの仕様/取り決めについて定める。
なお本ガイドラインでは、各節の要点を枠内に記述し、本文を枠外に記述する。
【解説】
本ガイドラインでは、国及び地方公共団体などの建設情報を作成、利用する各機関・各部署で採用・開発する情報システムを相互に連携するための考え方と方法論を示している。方法論については、「仕様」と「取り決め」として取りまとめている。本ガイド
ラインに記載している内容は、概ね以下のとおりである。
¾

インタフェースの考え方¾

インタフェースを利用したシステムの開発と運用¾

インタフェースに関わる仕様¾

インタフェースに関わる取り決め

11-2. 本ガイドライン策定の背景と標準インタフェースの意義
現在稼動中のアプリケーションプログラムの多くは、システム間の連携が困難であり、データの連携ができないだけでなく、利用者にとっても様々なシステムを操作しなければならない不便な状況を作っている。そこで、異なるアプリケーションプログラム間において円滑な情報共有を実現するために、アプ
リケーションプログラム間の情報連携の標準的なルールとして「標準インタフェース」を策定し、これを導入することとした。標準インタフェースの導入により、アプリケーションプログラムの相互運用性が高まり、分野横断的な情報共有が可能となる。
【解説】
現在稼動中のアプリケーションプログラムの多くは、開発者の違い、開発言語の違い、プログラムの処理方法の違い、データ仕様の違いにより、システム間の連携が困難であり、データの連携ができないだけでなく、利用者にとっても様々なシステムを操作しなければならない不便な状況を作っている（図 1-1）。
例えば、国道事務所における業務を例にとると、ある道路の盛土区間で亀裂等の変状が見つかった場合、当該区間の状況は道路管理システムで、地質等の状況は地盤情報データベースから、試験等の竣工時の状況は電子納品保管管理システムから、それぞれ検索して入手する必要がある（図 1-2）。
データの取得に関する処理方法を標準化し、それを標準インタフェースとして公開することで、道路管理システムを通じて地盤情報データベースに対して当該区間のボーリ
ング柱状図を要求したり、電子納品保管管理システムに対して当該区間の竣工図書を要求したりすることが可能となる（図 1-3）。これにより、今まで困難であったデータの入手・利用が容易になるだけでなく、新規のシステム開発の場合にすでにあるシステム
やデータを利用することが可能となり、データ整備やシステム開発のコストの縮減につながる効果が見込まれる。

2

電子納品
保管管理システム

道路管理システム
施設台帳を見るときは道路管理システムへアクセス
道路台帳
名称：BBB橋梁管理者 ：BCD 国道事 務所＊＊＊＊：RRRRRKKKKK ：GGG GG GG G
HHH H
HHH H ：GGG GG GG G
HHH H
HHH H ：GGG GG GG G＊＊＊＊：RRRRRKKKKK ：GGG GG GG G
HHH H＊＊＊＊：RRRRRKKKKK ：GGG GG GG GKKKKK ：GGG GG GG GKKKKK ：GGG GG GG G
HHH H＊＊＊＊：RRRRRKKKKK ：GGG GG GG GKKKKK ：GGG GG GG G
HHH H ：GGG GG GG G＊＊＊＊：RRRRRKKKKK ：GGG GG GG G
HHH H ：GGG GG GG G

報告書の確認は電子納品保管管理システムへアクセス

2006.2.10
12345673456789

距離 （自）
112.3kp（至123.1kp）＊＊＊＊：RRRRR
HHHH
HHHH ：GGGGG GG G
KKKKK
HHHH ：GGGGG GG G＊＊＊＊：RRRRR
HHHH
KKKKK ：GGGGG GG G
HHHH＊＊＊＊：RRRRRKKKKK ：GGGGG GG G
HHHH
KKKKK ：GGGGG GG G
HHHH ：GGGGG GG G＊＊＊＊：RRRRR
HHHH ：GGGGG GG G＊＊＊＊：RRRRRKKKKK ：GGGGG GG G
HHHH ：GGGGG GG G
HHHH ：GGGGG GG G
HHHH ：GGGGG GG G＊＊＊＊：GGGGG GG G＊＊＊＊：RRRRR
HHHH ：GGGGG GG GKKKKK ：GGGGG GG G
HHHH
＊＊＊＊
：RRRRRKKKKK ：GGGGG GG G
HHHH ：GGGGG GG G
HHHH ：GGGGG GG G
HHHH
＊＊＊＊
：RRRRRKKKKK ：GGGGG GG G
HHHH ：GGGGG GG G
HHHH
HHHH ：GGGGG GG G＊＊＊＊：RRRRR
HHHH ：GGGGG GG G＊＊＊＊：RRRRRKKKKK
HHHH ：GGGGG GG GKKKKK ：GGGGG GG G
HHHH ：GGGGG GG G＊＊＊＊：GGGGG GG G

河川管理
システム

地盤情報
データベース

河川台帳付図を見るときは河川管理システムへアクセス
職員
それぞれ別々のシステムにアクセスし、データを入手する必要がある

図 1-1

ボーリング柱状図の確認は地盤情報データ
ベースへアクセス

現在のシステム利用状況

地盤情報システムz 開発者の違い
z 開発言語の違い
z 処理方法の違い
z データ仕様の違い
ボーリング柱状
図の表示

道路管理
システム

電子納品
保管管理システム

道路管理システムで、「○kp〜△kp の盛土区間」の施設諸元を確認
当該区間の基礎の地質状況を確認するには➞ 地盤情報データベースを起動

竣工図書のダウンロード

竣工時の転圧状況や試験結果を確認するには➞ 電子納品保管管理システムを起動
システム間のデータの相互利用は困難で、それぞれのシステムでデータを検索し取得する必要がある

図 1-2

現在のシステム利用の例

3標準インタフェースがないと・・・

標準インタフェースがあると・・・

既存インタフェース≒多数の異なる言葉

標準インタフェース≒共通の言葉連携するには、個別のインタフェースを実装しなければならない

連携するには、標準インタフェースを実装すればよい インタフェース≒言葉
9 インタフェースとは、システム同士が会話するための言葉と考えてよい
9 言葉ごとに、文法も単語も違う 標準インタフェース≒共通の言葉
9 すべてのシステムが理解できる共通の言葉を持てば、すべてのシステムと会話できる
9 共通の文法さえ覚えれば、あとは単語を増やせばよい 文法（インタフェースを利用するための手順やルール）
 単語（利用したい機能） インタフェースの実装
9 母国語しか知らないシステムと連携するには、相手が理解できる言葉を習得（個別のインタフェースを実装）する必要がある
9 連携するシステムが多ければ、習得しなければならない言葉も増える（相手に合わせたイ
ンタフェースを実装する必要がある）
 コスト
9 N個のシステムを連携させるには・・・
N ( N-1 ) 通りの実装費用

図 1-3

 インタフェースの実装
9 各システムは、母国語のほかに共通の言葉をひとつ習得（標準インタフェースを実装）す
ればよい
9 連携するシステムが増えることは、覚えなけ
ればならない単語を増やすのに等しい（使いたいインタフェース機能＝新しい単語） コスト
9 N個のシステムを連携させるには・・・
N 通りの実装費用

標準インタフェースによる連携のイメージと効果

4

1-3. 適用範囲
本ガイドラインは、建設情報を取り扱うアプリケーションプログラムの開発及び保守・運用管理に適用する。このうち、データの共用性を考慮し、インターネット/イントラネット環境で動作するアプリケーションプログラムを対象とする。
なお、上記アプリケーションプログラムには、新規に開発するもの、既存のもの（ただし、機能追加や改修の予定があるもの）の両方を含む。
【解説】
インターネット/イントラネット環境で動作するアプリケーションプログラムは、多くの利用者を対象としたものであり、共用性の高いものである。本ガイドラインは、このような共用性の高いアプリケーションプログラムのうち、「建設情報」を取り扱うものに対して適用する。本ガイドラインでは、アプリケーションプログラムを開発・保守・運用管理するにあたっての標準的なルールを定めている。

5

1-4. 利用者と利用方法
本ガイドラインの利用者は、以下のとおりとする。
¾

システム開発の企画者¾

システム開発の発注者¾

システム開発者¾

システム管理者

各利用者は、情報システムの企画〜運用の各フェーズにおいて、本ガイドラインを参照し、情報シ
ステムの管理において自らが担う役割を全うするものとする。
【解説】
本ガイドラインの利用者と利用方法を、表 1-1 の通り定義する。
表 1-1

本ガイドラインの利用者

利用者

No.

システム開発の企画者
新規にシステム開発の企画・調整をする立

1

場にある者

役割
システム開発の企画者は、ガイドラインの概要や位置づけを把握し、標準インタフェースの考え方を理解した上で、本ガイドラインに従ったシステム開発を企画・検討する

稼動中のシステムに対して、システムの機能追加やリニューアルを検討する立場にある者システム開発の発注者
2

システム開発を発注する際の仕様書を作成する立場にある者システム開発者3システムを開発する立場にある者（外部委システム開発の発注者は、標準インタフェースの考え方を理解し、標準インタフェースの関数仕様を理解した上で、本ガイドラインに従ったシステム開発の発注仕様書を作成するシステム開発者は、標準インタフェースの関数仕様を理解した上で、標準インタフェース実装仕様に従ったシステム開発を行う

託企業等を含む）−

システム利用者システムを利用する者

システム管理者
4システムを運用・管理する立場にある者

本ガイドラインの対象外
システム管理者は、標準インタフェースの普及・運用に関する考え方にしたがって、標準インタフェースに対応したシステムの保守・管理・運用を行う

本ガイドラインの利用者は、システム運用の各フェーズにおいて、システムに対して何らかの影響を及ぼす役割を持つ者を想定しており、所謂「システムの利用者」は対象外とする。表 1-1 の内容を図示すると、図 1-4 のようになる。

6

システム発注者
システム開発の企画者

設計・開発

企画・検討

システム開発者
ガイドラインリリース

運用・管理

システム利用者

システム管理者

図 1-4

システム運用の各フェーズにおける本ガイドラインの利用者

それぞれの利用対象者が参照すべき本ガイドラインの内容は、表 1-2 に示すとおり
である。
表 1-2

利用対象者が参照する本ガイドラインの項目

本ガイドラインの目次

企画者

発注者

開発者

管理者

1.1.目的○○○○1.2.本ガイドライン策定の背景と標準インタフェースの意義

○

○

○

○

1.3.適用範囲

○

○

○

○

1.4.利用者と利用方法

○

○

○

○

1.5.引用規格

○

○

○

○

1.6.用語の定義

○

○

○

○

2.1.本ガイドラインにおける標準インタフェースの位置づけ

○

○

○

○

2.2.標準インタフェースの定義

○

○

○

2.3.標準インタフェースの種類○○

2.4.標準インタフェースの定義方法○○

2.5.関数仕様の考え方○○

2.6.関数仕様の実装方式○○

2.7.標準インタフェースを利用したアプリケーションプログラムの運用形態

○

○

○

2.8.インタフェース公開･管理の考え方

○

○

○

2.9.インタフェース接続の考え方

○

○

○

1.ガイドラインの概要・位置づけ

2.標準インタフェースの考え方

7

本ガイドラインの目次

企画者

発注者

開発者

管理者

3.標準インタフェース関数仕様
3.1.関数の一覧○

3.2.関数の説明○

4.標準インタフェース実装仕様
4.1.POST/GET 利用のための実装仕様○

4.2.SOAP と WSDL 利用のための実装仕様○

5.関数仕様作成に関する取り決め
5.1.関数仕様作成に関する取り決め○

5.2.関数と引数の命名規則○

6.実装仕様作成に関する取り決め○

6.1.実装仕様作成に関する取り決め○○

7.標準インタフェースの運用に関する取り決め
7.1.インタフェース公開・管理方法○

7.2.インタフェース接続方式○

8.標準インタフェース公開・管理仕様○

8.1.アプリケーションプログラムの内容に関する公開・管理仕様
8.2.アプリケーションプログラムで利用できる関数等の技術的な公開・

○

管理仕様
附属書
1.参考とすべきインタフェース
1.1.地物単位で地理情報を取得するインタフェース（参考）

○

○

○

1.2.SOAP による地理情報等の標準インタフェース（参考）

○

○

○

2.1.システム実装の事例

○

○

○

2.2.インタフェース策定の事例○○

2.ガイドラインの適用事例

8

1-5. 引用規格
本ガイドラインは、以下に掲げる標準規格を引用する。これにより、本ガイドラインを構成する。

1-5-1. 国際的な標準化団体による標準規格【W3C：World Wide Web Consortium】¾

Simple Object Access Protocol (SOAP) 1.1, W3C Note 08 May 2000¾

Web Services Architecture, W3C Working Group Note 11 February 2004¾

Web Services Description Language (WSDL) 1.1, W3C Note 15 March 2001

【ISO：International Organization for Standardization】¾

ISO19128 Web Map Server interface(WMS)【OGC：Open Geospaial Consortium, Inc.】¾

OGC Web Services Common Specification Version: 1.1.0 with Corrigendum 1
2007-02-09¾

OGC Filter Encoding Implementation Specification Version: 1.1.0 2005-05-03¾

OGC Catalogue Services Specification Version: 2.0.0 with Corregendum
2005-05-20【JIS：日本工業規格】¾

JIS X7112 地理識別子による空間参照

【その他】
¾

Basic Profile Version 1.0, 16 April 2004, The Web Services-Interoperability
Organization (WS-I)

91-5-2. 既存の標準インタフェース仕様との関係
本ガイドラインを作成するにあたり、以下に挙げる既存の標準インタフェースを大いに参考とした。また、いくつかの既存標準インタフェースからは、その一部を引用している。具体的な引用箇所を、表 1-3 に示す。
¾

減災情報共有プロトコル Ver. 1.00.028s

平成 18 年 9 月

独立行政法人 防災科学技術研究所/独立行政法人 産業技術総合研究所¾

平成 18 年度情報家電活用基盤整備事業（時空間情報利活用システム推進事業）「PI の標準化と実装検証」

平成 19 年 2 月

財団法人 日本情報処理開発協会 データベース振興センター¾

地理情報共用 Web システム標準インタフェースガイドライン 第 0.03 版

平成13 年 3 月
国土交通省国土計画局¾

河川 GIS・河川アプリケーション標準インタフェースガイドライン 第 1.0 版
2006 年 6 月 27 日
国土交通省河川局

表 1-3

既存の標準インタフェースからの引用箇所
他の既存インタフェースからの引用

本ガイドラインの目次

減災

PI

WMS

河川

1.ガイドラインの概要・位置づけ
1.1.目的1.2.本ガイドライン策定の背景と標準インタフェースの意義
1.3.適用範囲
1.4.利用者と利用方法
1.5.引用規格○

1.6.用語の定義
2.標準インタフェースの考え方
2.1.本ガイドラインにおける標準インタフェースの位置づけ○

2.2.標準インタフェースの定義
2.3.標準インタフェースの種類
2.4.標準インタフェースの定義方法○

2.5.関数仕様の考え方○

2.6.関数仕様の実装方式○

10

他の既存インタフェースからの引用

本ガイドラインの目次

減災

PI

WMS

河川

2.7.標準インタフェースを利用したアプリケーションプログラムの運用形態○

2.8.インタフェース公開･管理の考え方○

2.9.インタフェース接続の考え方○

3.標準インタフェース関数仕様
3.1.関数の一覧△△△

3.2.関数の説明△△△

4.1.POST/GET 利用のための実装仕様

△

△

△

4.2.SOAP と WSDL 利用のための実装仕様

△

△

△

4.標準インタフェース実装仕様

5.関数仕様作成に関する取り決め
5.1.関数仕様作成に関する取り決め○

5.2.関数と引数の命名規則○

6.実装仕様作成に関する取り決め○

6.1.実装仕様作成に関する取り決め
7.標準インタフェースの運用に関する取り決め
7.1.インタフェース公開・管理方法○

7.2.インタフェース接続方式○

8.標準インタフェース公開・管理仕様○

8.1.アプリケーションプログラムの内容に関する公開・管理仕様
8.2.アプリケーションプログラムで利用できる関数等の技術的な公開・管

○

理仕様
附属書
1.参考とすべきインタフェース
1.1.地物単位で地理情報を取得するインタフェース（参考）△2.2.SOAP による地理情報等の標準インタフェース（参考）△2.ガイドラインの適用事例
2.1.システム実装の事例△

2.2.インタフェース策定の事例
減災： 減災情報共有プロトコルPI：

PI の標準化と実装検証

WMS： 地理情報共用 Web システム標準インタフェースガイドライン
河川： 河川 GIS・河川アプリケーション標準インタフェースガイドライン（○・・・引用、△・・・一部引用）

11

1-6. 用語の定義
本ガイドラインで利用する用語を、以下のとおり定義する。
アプリケーションプログラム(i)

プログラム言語の要素を論理的に組み合わせ、PC システムで機械、プロセスなどを制御するために必要なプログラムの集合体（JIS B3500(ii)

プログラマブルコントローラ用語）

インターネット【Internet】
複数のネットワークを相互に接続して構成されるネットワーク。ここでは、イント

ラネットと区別し、TCP/IP 技術を基礎とした世界中を接続するネットワークの意味で用いる。
（改訂電子情報通信用語辞典：電子情報通信学会編）(iii)

イントラネット【Intranet】
インターネット向けに開発された技術やインフラを LAN に適用したシステム。
（情報処理技術者用語辞典：日経 BP 社）(iv)

インタフェース【Interface】
ハードウェアやソフトウェアを相互に接続するための仕様（規格）や取り決め（規約）。
（情報処理技術者用語辞典：日経 BP 社
(v)を基に定義）Web サービス【Web Service】
インターネットプロトコルをプロトコルとするネットワーク上で、共通の操作で機械間の相互作用ができるように構成されたソフトウェア・システム（Web Services Architecture ：W3C Working Group Note、 11 February 2004

を

基に定義）
(vi)

サービス【service】
アプリケーションなどが所定のインタフェースを通して命令を受けることにより実行される機能で、他から区別して一まとまりものとして認識されるもの（ISO19119

Geographic information – Services12を基に定義）

(vii) クライアント
二つ以上の情報処理機器をネットワークでつないで利用するもののうち、処理を依頼する側。ユーザ（利用者）が操作する端末。
（改訂電子情報通信用語辞典：電子情報通信学会編）(viii) サーバ
二つ以上の情報処理機器をネットワークでつないで利用するもののうち、共通に利用される専門処理機能をもつもの。
（改訂電子情報通信用語辞典：電子情報通信学会編）(ix)

POST/GETHTTP プロトコルで規定されているリクエストのメソッドの一部。

13

(x)

略語
GIS

Geographic Information System（地理情報システム※1）

HTMLHypertext Markup Language（ハイパテキストマーク付け言語※2）

HTTP

Hypertext Transfer Protocol（ハイパテキスト転送プロトコル※3）

ISOInternational Organization for Standardization（国際標準化機構※
4）

NPO

Nonprofit Organization（行政・企業とは別に社会的活動をする非営
利の民間組織※5）

OGC

Open Geospatial Consortium、 Inc.

SOAP

Simple Object Access Protocol（XML によるデータ交換のための通信プロトコル※6）

W3C

World Wide Web Consortium（1994 年 10 月に設立された World
Wide Web に利用される技術の標準化を進める国際的な非営利団体※
6）

WFS

Web Feature Service

WMS

Web Map Server、 Web Map Service

WSDL

Web Service Description Language（Web サービスのサービス仕様
を記述※6）XML

Extensible Markup Language（拡張可能なマーク付け言語※7）

注※1：地理情報科学事典：地理情報システム学会編
注※2：JIS X 4156:2000
注※3：TS X 0085:2004
注※4：改訂電子情報通信用語辞典：電子情報通信学会編
注※5：広辞苑第五版：岩波書店
注※6：情報処理技術者用語辞典：日経 BP 社
注※7：JIS X 4159:2002

14

2. 標準インタフェースの考え方
2-1. 本ガイドラインにおける標準インタフェースの位置づけ
本ガイドラインでいう「標準インタフェース」とは、異なるアプリケーションプログラム間において情報を共有し、新たなサービスを作成するために利用するためのインタフェースである。
本ガイドラインにおける標準インタフェースは、既存の標準インタフェースにおいて策定されている内容から共用性・汎用性の高いものを抽出し、再利用可能となるよう再構成したものと、既存の標準インタフェースでは未検討であるが、多くの分野で応用可能なものを定義している。
【解説】（１）既存インタフェースについて
標準インタフェースについては、本ガイドライン以外にも、(独)防災科学技術研究所、(財)日本情報処理開発協会データベース振興センター、国土交通省国土計画局、国土交
通省河川局等においても、各機関が関係する分野を対象とした検討が実施されている。
¾

減災情報共有プロトコル Ver. 1.00.028s

平成 18 年 9 月

独立行政法人 防災科学技術研究所/独立行政法人 産業技術総合研究所¾

平成 18 年度情報家電活用基盤整備事業（時空間情報利活用システム推進事業）「PI の標準化と実装検証」

平成 19 年 2 月

財団法人 日本情報処理開発協会 データベース振興センター¾

地理情報共用 Web システム標準インタフェースガイドライン 第 0.03 版

平成13 年 3 月
国土交通省国土計画局¾

河川 GIS・河川アプリケーション標準インタフェースガイドライン 第 1.0 版
2006 年 6 月 27 日
国土交通省河川局

それぞれの標準インタフェースについて、特徴、概要、適用範囲／分野等のカテゴリで整理すると、表 2-1 のようになる。

15

表 2-1
整理項目
適用範囲（対象）

各標準インタフェースの関係

河川 I/F

減災 I/F

河川分野のデータ

防災（減災）分野

取得

の情報共有

地理 Web
地理情報全般PI 標準PI(Place
Identifier：場所を特定する名前)技術仕様＋運用
記述内容

技術仕様

技術仕様＋運用

指 針等 の ガ イ ド ラ

指 針等 の ガ イ ド ラインイン

採用している引用

WMS

WFS

WMS

規格（地理情報）（ISO19128）（OGC 実装仕様）（ISO19128）

採用している引用

HTTP、 SOAP

SOAP

HTTP

技術仕様

ISO19112

HTTP、 SOAP

規格（プロトコル）
9 地理情報に関 9 地理情報に関 9 地理情報に関 9 地理情報に関する I/F
他の分野への適用可能性

する I/Fする I/Fする I/F

9 プロトコルの仕 9 プロトコルの仕 9 プロトコルの仕 9 プロトコルの仕
様

様

様

様

9 規 格 引 用 の考 9 規 格 引 用 の考 9 規 格 引 用 の考 9 規 格 引 用 の考
え方

え方

え方

え方

9 拡張の考え方
河川 I/F：
減災 I/F：
地理 Web：PI 標準：
技術仕様：
運用指針：【表題凡例】
河川 GIS・河川アプリケーション標準インタフェースガイドライン
減災情報共有プロトコル
地理情報共用 Web システムガイドライン
PI の標準化と実証検証
通信プロトコルや関数仕様等、インタフェースを利用したアプリケーションを作成するのに必要な技術文書という位置づけ（主に開発者向け）
インタフェースを実際に普及・利用するための考え方や、運用上のルール等の施策までを含んだ文書という位置づけ16

（２）本ガイドラインにおける標準インタフェースの位置づけ
本ガイドラインにおいて策定した標準インタフェースは、図 2-1 に示すように、既存の標準インタフェースのうち、他分野に適用可能な部分に関しては、それを包含し、既存の標準インタフェースでは規定されていない部分に関しては、新たに検討・策定したものである。したがって、既存のインタフェース仕様で定められている内容は尊重し、今後、現在定められていない分野（道路、港湾、下水道など）においても同様の考え方で適用できるようなインタフェース仕様となっている。

仕様
I/F

地理情報
ﾒﾀﾃﾞｰﾀ検索

河川 I/F

地理 Web

減災 I/F

○

○

○

PI 標準

技 術 仕 様

○

○

考え方等

運用ルール

○

○

拡張ルール

○

開発手法

○

○

建設 I/F●※ここでいう「ﾒﾀﾃﾞｰﾀ検索」とは、クリアリングハウスを利用した横断検索を指す

地名辞典

◎

○

●

○

●
●
●

○

○

●

既存の標準インタフェースは、適用範囲や策定時期が異なること等の理由から、相互に連携して策定されてはいな
い状況である。
記述内容には、重複・類似する箇所も存在する。

【凡例】
河川 I/F： 河川 GIS・河川アプリケーション標準インタフェースガイドライン
減災 I/F： 減災情報共有プロトコル
地理 Web： 地理情報共用 Web システムガイドライン
PI 標準：
PI の標準化と実証検証
建設 I/F： 本件における標準インタフェース

図 2-1

etc…

本件における標準イ
ンタフェースは建設情報という広い対象を想定しているため、既存のインタフェースを包括した汎用的な記述となる。

既存 I/F で定義されている事項に関しては、整理・統合が可能なものは整理し、既存 I/F のものをベースに策定。 ○⇒●既存 I/F で定義されていないものは、新規に策定。 ⇒◎既存の標準インタフェースと本件の標準インタフェースの策定内容

17

（３）本ガイドラインにおける標準インタフェースと今後の利用方法
本ガイドラインで定める標準インタフェースは、以下の 3 種類である。
1) 標準インタフェース導入の考え方等、分野を問わない普遍的な概念
2) 共用性の高い技術仕様
3) 汎用性の高いインタフェース仕様
これらは、様々な建設情報を連携して利用する上で必要な事項を定めたものであるが、個々の内容についてはすでに一般的な地理空間情報を利用するために定められたものである。
本ガイドラインにおいて汎用的なインタフェースを策定したことにより、上記に示したような異なるインタフェース間の重複は解消される。各応用分野では図 2-2 に示すように、本ガイドラインにおいて策定した標準インタフェースをベースとし、特定分野の利用に特化したインタフェースを定めることができる。

河川 I/F

減災 I/F 地理 Web PI 標準

道路分野 港湾分野

etc…

標準インタフェース導入の考え方等、分野を問わない普遍的な概念

本件で定める
標準インタフェース

共用性の高い技術仕様（共通利用関数・命名規則・プロトコル etc…）
汎用性の高いインタフェース仕様（地理情報・メタデータ検索・地名辞典 etc…）

応用分野ごとに各機関がそれぞれ取り決め
・ 特 定 分 野 の利 用 に特化した関数・ 特 定 分 野 の運 用 ルール
河川 I/F： 河川 GIS・河川アプリケーション標準インタフェースガイドライン
減災 I/F： 減災情報共有プロトコル
地理 Web： 地理情報共用 Web システムガイドライン
PI 標準：
PI の標準化と実証検証
図中のハッチングは関数や運用ルールの１つを表しており、複数分野において同じハッチングがある場合は、複数分野で同じ関数や運用ルールを採用していることを表す。（イメージ）

図 2-2

本ガイドラインの標準インタフェースと他の標準インタフェースの関係

18

（４）本ガイドラインの位置づけと各分野のメリット
以上のように、本ガイドラインにおいて定義する標準インタフェースとは、特定の分野ではなく、建設情報全般のシステム開発において汎用的に利用可能なものである。以下に、本ガイドラインの位置づけ、および各分野に本ガイドラインを適用した際のメリットを整理した。
【本ガイドラインで定める標準インタフェース】¾

地理情報、メタデータ検索、地名辞典等、汎用性の高い部分を策定¾

標準インタフェースの考え方等、適用分野に左右されない普遍的な概念を定義【他の分野における標準インタフェース】¾

本ガイドラインの標準インタフェースをベースとし、応用分野ごとに必要な部分を策定¾

河川、減災等の既存分野だけでなく、道路、港湾等の分野へも展開予定【各分野におけるメリット】¾

各分野のシステムから、他分野のシステムの持つ情報を収集・利用することが可能となる

¾

他分野の最新の情報を直接入手でき、データの受け渡しが効率化する

標準インタフェースの運用について、各々の分野に特化した関数や運用ルールのみを管理（維持・更新）すればよく、それぞれの管理対象を明確化できる

分野横断的な部分のメンテナンスにかかる費用・時間が削減できる

19

2-2. 標準インタフェースの定義
本ガイドラインで適用するインタフェースとは、インターネット/イントラネット環境で動作するアプリケ
ーションプログラム間を相互接続するための仕様と取り決めを指す。
【解説】
本ガイドラインで適用するインタフェースは、関数と実装方式だけを取り決めるもの
ではなく、それを運用するときのルールも含む。本ガイドラインでは、表 2-2 で“○”印をつけた項目について、仕様と取り決めを定める。

表 2-2

本ガイドラインで定めるインタフェースに関する仕様と取り決め
内容

インタフェース

運用

仕様

取り決め

関数について○○実装方式について○○接続方式について△○

公開・管理について○○○：本ガイドラインで定める項目△：すでにある仕様・取り決めを採用する項目
本ガイドラインでは、標準インタフェース作成に関する取り決めとして、「関数仕様作成に関する取り決め」、「実装仕様作成に関する取り決め」、「接続方式に関する取り決め」、「運用に関する取り決め」を定める。それらの取り決めに基づき、「関数仕様」「実装仕様」「公開・管理仕様」を定める。

20

2-3. 標準インタフェースの種類
本件における標準インタフェースは、その機能によって以下の 3 種類を定義する。
（１） 地理情報に関するインタフェース（２） 地名辞典に関するインタフェース（３） メタデータ検索に関するインタフェース【解説】
本件における標準インタフェースは、その機能によって以下に大分できる。それぞれの種類について概要を説明する（１）地理情報に関するインタフェース
ここでいう「地理情報に関するインタフェース」とは、建設情報を共有する場面を想定したとき、地理情報に関するサービスとして以下の機能を実現するために必要なイン
タフェースである。
表 2-3

地理情報に関するインタフェース

No.

機能

具体例

1

地図を表示する（座標指定）

地名辞典で地名を検索し、地名に該当する座標値を得たので、その座標値を基に地図上で該当位置を
表示させる

2

地図を表示する（縮尺指定）

3

地図を表示する（表示する地 検索結果の地物をハイライト表示させたり、表示する

4

適切な表示縮尺で地図を表示させる物を指定）

地図に含まれる地物を指定する

地図を移動させる

地図を移動させる（スクロールバー、ドラッグ＆ドロップ、
8 方向ボタン等で実現）

5

地図の凡例を表示する

表示されている地図に含まれる地物の凡例を表示する

21

（２）地名辞典に関するインタフェース
ここでいう「地名辞典に関するインタフェース」とは、建設情報を共有する場面を想定したとき、地名辞典に関するサービスとして以下の機能を実現するために必要なイン
タフェースである。
表 2-4
機能

No.
1

2

3

地名辞典に関するインタフェース
具体例

地名（地理識別子）を基に、 「赤坂」「東京タワー」「日本武道館」等の地名（地理地名に該当する座標を検索識別子）にあたるキーワードを基にし、地名に該当する（地理識別子と座標の変換）

座標を検索する

座標を基に、付近の地名（地 GIS 等で取得した座標や座標範囲の値から、座標
理識別子）を検索

値の近傍や座標範囲内に含まれる地名(地理識別（座標と地理識別子の変換）子)を検索する

地名（地理識別子）を基に、 「千代田区」という地名をキーワードとし、千代田区の地名に関連する別の地名を 下位住所の検索（「神田」や「九段南」など）
検索※ 通常は、上記の処理を行った後、「地図上で位置を表示する」等の処理を行うが、地名辞典が提供するサービスではなく、地名辞典が実現すべきイ
ンタフェースには該当しない為、その後の処理に関してはここでは定義しない

22

（３）メタデータ検索に関するインタフェース
ここでいう「メタデータ検索に関するインタフェース」とは、建設情報を共有する場面を想定したとき、メタデータ検索に関するサービスとして以下の機能を実現するために必要なインタフェースである。
メタデータ検索とは、特定のデータベースや特定の情報を検索するということではな
く、様々な情報がメタデータとして整備され、クリアリングハウスのような仕組みにより、横断的にメタデータの検索を実現する仕組みのことを指す。
表 2-5

メタデータ検索に関するインタフェース

No.

機能

具体例

1

建設情報の検索（キーワード）「スーパー堤防」「舗装」「環境」等のキーワードを利用し、キーワードに関連する建設情報（電子納品成果）
を検索する

2

建設情報の検索（地理的範 上記に加え、地図のインタフェース等を組み合わせ、
囲）3

検索結果の表示（候補一覧 キーワードや地理的範囲に該当する建設情報の候
表示）

4

地理的範囲（座標範囲）も考慮した検索を行う
補一覧を表示する

検索結果の表示（メタデータの 検索結果の候補一覧を 1 件ずつ選択することで、そ表示）

れぞれのメタデータを確認できる。

23

2-4. 標準インタフェースの定義方法
標準インタフェースの定義方法を以下に示す。
（１） 建設情報の連携を実現するうえで必要とされる機能を抽出する。
（２） 同種の機能をとりまとめ、関数を整理する。
（３） ISO で提示されているインタフェースについては、それを採用する。
（４） ISO で提示されているインタフェースだけでは不十分と判断したものについては、独自のインタ
フェースを定義する。
（５） 既存の標準インタフェースで、該当する機能が規定されているかどうかを調査し、既存の標準
インタフェースで取り扱っている機能は、それを引用する。
【解説】
上記の定義方法を定義するにあたり、基本的な考え方としては、以下の考え方に基づき、既存の標準インタフェースや ISO 等の標準規格を最大限に利用するものとする。
¾

ISO あるいは JIS による規格を「引用すべき規格」と位置づけ、インタフェース
として定められている既存の標準規格が存在するものに関しては、それを採用する¾

ISO 等の標準化機関が策定する標準規格には、「正式な版」と「検討中の版」が存在する場合がある。検討中の版に関しては、今後細部の仕様が変更になる可能性もあるため、引用する際は可能な限り正式な版を採用することとする¾

同様に、ISO や JIS に次ぐ標準化機関として、OGC があるが、ISO ほどの強制力を持たない「業界主導の実装仕様」であることから、該当するインタフェースの規格が ISO で存在しない場合に、OGC の実装仕様を採用することとする

24

2-5. 関数仕様の考え方（１） 標準インタフェースの関数仕様は、本ガイドラインにおいて定める。アプリケーションプログラムの開発・提供を行う者で、本ガイドラインに定めた機能に該当するサービスを開発・提供する場
合は、本ガイドラインで定めた関数仕様に従わなければならない。
（２） 本ガイドラインで定める関数仕様に該当しない関数を用いる必要が生じた場合は、本ガイド
ラインで定める取り決めに従い、アプリケーションプログラムの開発・提供者が関数仕様を作
成する。
【解説】
アプリケーションプログラムの開発・提供者は、開発・提供しようとするアプリケー
ションプログラムのサービスが、本ガイドラインで定めた関数仕様に該当する場合には、本ガイドラインで定めた関数仕様に従いアプリケーションプログラムの開発・提供を行わなければならない。
開発・提供しようとするアプリケーションプログラムのサービスが、本ガイドライン
で定める関数仕様に該当しない場合には、アプリケーションプログラムの開発・提供者
は、本ガイドライン第 5 章・第 6 章で定める取り決めに従い、関数仕様と実装仕様を作成しなければならない。また作成した関数仕様と実装仕様は、他のアプリケーションプ
ログラムからの利用も可能とする必要があるため、本ガイドライン第 8 章により公開しなければならない。

25

2-6. 関数仕様の実装方式
標準インタフェース関数仕様の実装方式として、以下の 2 種類を定める。
方式１）HTTP による POST/GET を利用した実装
方式２）HTTP による SOAP と WSDL を利用した実装【解説】(1) HTTP による POST/GET を利用した実装方式について
標準インタフェース関数仕様の実装方式は、接続方式を考慮する必要がある。
アプリケーションプログラム間での通信プロトコルは、インターネット/イント
ラネット環境に一般的に利用されている HTTP を採用し、接続方式としてはさらに HTTP による POST/GET の 2 種類の接続方式を採用する。したがって、それぞれの接続方式に対応する実装方式を定める。HTTP のバージョンは 1.0 または 1.1 とするが、推奨は 1.1 とする。
(2) HTTP による SOAP と WSDL を利用した実装方式について
アプリケーションプログラムにおいて種々の機能を実現するためには、（１）の HTTP による POST/GET を利用した接続方式だけでは不十分な場合がある。
その場合は、HTTP による SOAP と WSDL を利用した実装方式を採用する。
たとえば、地理情報に関するインタフェースは、ISO19128 を採用することで、方式１の接続方式となるが、地名辞典に関するインタフェースやメタデータ検索に関するインタフェースに関しては、方式２の SOAP と WSDL を利用した接続方式を採用している。
方式２の実装方式の策定にあたっては、OGC における実装仕様を参考にしつつ、OGC が仕様策定時に参照した上位の標準技術（W3C における Web サービス等）を活用している。

26

2-7. 標準インタフェースを利用したアプリケーションプログラムの運用形態
標準インタフェースによるアプリケーションプログラムは、次に示す運用形態を想定する。
（１） 国（各省庁内）や各地方公共団体内など、単一の機関内における運用（２） 国の研究機関など省庁をまたいだ機関も含めた運用（３） 大学、NPO、民間企業など、一般利用も含めた運用【解説】
標準インタフェースに準拠したアプリケーションプログラムは、「建設情報」を取り扱うあらゆる機関での運用を想定する。
建設情報を取り扱う機関の代表的なものは国や地方公共団体であり、まずは単一の機関における業務アプリケーションプログラムでの運用を想定する。将来的には、国、地方公共団体、教育・研究機関、NPO、民間企業等の一般の機関にまでその運用範囲が広がる。
このような運用形態を踏まえ、本ガイドラインでは以下の内容を定める。
¾

インタフェースの公開、管理に関する仕様・取り決め¾

インタフェースの接続に関する仕様・取り決め27

2-8. インタフェース公開･管理の考え方（１） インタフェースの公開¾

アプリケーションプログラムは、本ガイドラインで定めた関数仕様、実装仕様に基づくインタフ
ェースを公開する。公開したインタフェースを介して、複数の異なるアプリケーションプログラムに対してサービスを提供する。

¾

逆にアプリケーションプログラムは、公開されたインタフェースを介して、複数の異なるアプリケ
ーションプログラムに対して、サービスの提供を依頼する。

（２） インタフェースの管理¾

アプリケーションプログラムを管理するため、アプリケーションプログラムの開発者は、公開する
インタフェースの関数仕様、実装仕様、ならびにアプリケーションプログラムが提供するサービスの内容を文書として作成し、アプリケーションプログラムの管理者に提出する。

【解説】（１） インタフェースの公開製品として提供・販売されている GIS 等アプリケーションプログラムのなかには、
インタフェース仕様を公開しているものがあり、アプリケーションプログラムの開発者
は、公開されたインタフェース仕様に従い、その GIS 等アプリケーションプログラムを利用するアプリケーションプログラムの開発を行うことができる。このとき、インタ
フェース仕様を公開しているアプリケーションプログラムのことを、特に「サービス」と位置づける。
ただし、そこで公開されているインタフェース仕様は、そのアプリケーションプログ
ラムにのみ適用される独自の仕様であり、たとえそのアプリケーションプログラムと同種の機能を提供するアプリケーションプログラムがあったとしても、機関 A が開発したアプリケーションプログラムが、機関 B のアプリケーションプログラムを利用することは不可能であった。この結果、同様のサービスを提供するアプリケーションプログ
ラムであっても、製品によってインタフェースが異なるためにその都度アプリケーショ
ンプログラムを開発するという非効率な状況にあった。このような非効率な状況を避けるため、同様のサービスを提供する場合は、本ガイドラインに基づく共通のインタフェース仕様に基づいた実装を行うものとする。
（２） インタフェースの管理
標準インタフェースが公開され、アプリケーションプログラム間を自由に接続できるようになったとしても、どこにどのようなインタフェースを提供するサービスがあるの

28

か分からなければ、そのインタフェースを利用することはできない。また、サービスの存在を発見できたとしても、公開されているインタフェースの仕様が不明な場合、インタフェースへの接続はできず、利用することができない。
このような課題を克服するためには、どこにどのようなインタフェースを提供するサービスが存在しているかという情報と、そのインタフェースに接続するためのインタフ
ェース仕様を管理する必要がある。その方法のひとつとして、アプリケーションプログ
ラム管理サーバを設け運用する方法が考えられる。サービスの管理とそれを基にしたインタフェースへの接続の概念図を、図 2-3 に示す。サービスを管理する単位としては、事務所単位、地方整備局単位のほか、将来的には外部機関による管理も考えられる。

アプリケーション
応用プログラム
応用プログラムプログラム(5)サービス(5)サービスの利用(3)サービスの問合せ(4)サービスの(4)サービスの一覧、接続方法の返答

アプリケーション
プログラム管理サーバ
(2)認証

I/F
I/F
I/F

(1)登録
(1)登録

サービス
サービス
サービス
図 2-3

インタフェース管理方法概念図（参考）29

2-9. インタフェース接続の考え方
アプリケーションプログラム間での接続は、インタフェースを介して行う。
アプリケーションプログラム間での接続に用いる通信プロトコルは、HTTP とし、以下のうちいずれかの方式とする。
方式１）POST/GET により行う場合
方式２）SOAP により行う場合
アプリケーション間で接続を行う場合には、基本的に以下の手順で行う。
（１） アプリケーションプログラムとサービスを提供するアプリケーションプログラム間の接続認証（２） アプリケーションプログラムによる具体的な命令の送信（３） サービスを提供するアプリケーションプログラムによる命令に対する処理結果の送信【解説】
アプリケーションプログラム間での接続に用いる通信プロトコルは、インターネット/イントラネット環境に一般的に利用されている HTTP を採用する。
HTTP による通信では、HTML 文書の表示等、一般的にクライアントからサーバへの要求に POST/GET メソッドを使う方法が利用されている。また Web サービスにおいても、HTTP などにより XML 形式のデータをやり取りする SOAP の利用が現在の主流である。
そこで本ガイドラインでは、一般的に利用されている POST/GET による接続方式（方式１）と、Web サービスを念頭に、SOAP による接続方式（方式２）の 2 種類を採用する。
アプリケーションプログラム間では、基本的には次に示す手順に則り接続を行う（図2-4）。
（１） アプリケーションプログラムとサービスを提供するアプリケーションプログラ
ム間の接続認証¾

アプリケーションプログラムから、サービスを提供するアプリケーション
プログラムに対して、接続の依頼を行う。

¾

サービスを提供するアプリケーションプログラムは、それに対して接続の認証を行う。

¾

サービスを提供するアプリケーションプログラムは、認証結果を問合せしたアプリケーションプログラムに返す。

（２） アプリケーションプログラムによる具体的な命令の送信¾

アプリケーションプログラムから、サービスを提供するアプリケーション

30

プログラムに対して、サービスに対する具体な命令（関数、引数、戻り値の型）を送信する。
（３） サービスを提供するアプリケーションプログラムによる命令に対する処理結果の送信¾

サービスを提供するアプリケーションプログラムは、命令に対する処理を行い、その結果について処理を依頼したアプリケーションプログラムに返す。

あるアプリケーションプログラム（サービス利用側）から、処理の命令を受け取った
サービス提供側のアプリケーションプログラムは、その命令が接続認証されたアプリケーションプログラムからのものなのかどうか、どのアプリケーションプログラムからの命令で結果をどこに返すのかを把握しておかなければならない。したがって接続においては、(a)認証に関する情報と、(b)命令の内容や命令に対する処理結果に関する情報により通信を行う。
I/F
I/F
I/F

サービスを提供するアプリケーションプログラム

アプリケーション
応用プログラム
応用プログラム
プログラム

接続依頼

(1)
(2)

接続承認

処理の指示
例：○○
の範囲の地図の取得
例：○○の範囲の地図の取得

(3)

図 2-4

処理の結果
例：○○
の範囲の
例：○○の範囲の
地図画像

インタフェース接続の手順

SOAP による接続方式（方式２）においては、SOAP の仕様の解釈の違いから異なる
プラットフォームで実装されたインタフェースが接続できないことがあることが知られている。そこで、本ガイドラインでは、相互運用のための指針として、WS-I Basic
Profile 1.0 を適用し、実装プラットフォームに依存しないインタフェースを定義する。

31

3. 標準インタフェース関数仕様
地名辞典サービス、地図サービス、検索サービス等を連携する上で必要となるインタ
フェースについて、「関数仕様」を定め、解説する。
関数仕様では、以下の項目を定める。
¾

関数名

¾

戻り値

¾

機能

¾

関連項目

¾

引数

¾

説明

それぞれのインタフェースにおいて、必要となる関数は、以下のとおりである。
A) 提供するサービスの内容を取得するための関数
B) 情報を検索するための関数
C) 情報を取得するための関数
D) 情報を登録するための関数32

3-1. 関数の一覧
以下に、本ガイドラインで定義する関数の一覧を示す。
表 3-1

本ガイドラインで定義する関数の一覧

インタフェース種類

種別

必要な機能

共通

A

サービスメタデータの取得

GetCapabilities

地理情報

B

地図画像の取得

GetMapB(地物の属性情報の取得)(GetFeatureInfo)

地理識別子による空間参照系のSearchLRS

地名辞典

B(空間参照系管理)C

検索
地理識別子による空間参照系の

D

D

D

機能を実現するための関数

GetLRS

取得(地理識別子による空間参照系(AddLRS)を新規登録する)(地理識別子による空間参照系(UpdateLRS)を更新する)(地理識別子による空間参照系(DeleteLRS)を削除する)

B

場所型の検索SearchLocationType

C

場所型の取得GetLocationType

D(場所型の新規登録)(AddLocationType)D(場所型の更新)(UpdateLocationType)D(場所型の削除)(DeleteLocationType)B

場所型関連の検索

SearchLocationTypeAssociation

D(場所型関連の新規登録)(AddLocationTypeAssociation)

D(場所型関連の削除)(DeleteLocationTypeAssociation)

地名辞典

D

(地名辞典の新規登録)(AddGazetteer)(地名辞典管理)D(地名辞典の更新)(UpdateGazetteer)

D(地名辞典の削除)(DeleteGazetteer)

場所インスタンスの PI 部分の検SearchPI

B
C
D

索
場所インスタンスの取得

GetLocationInstance(場所インスタンスタンスの新規登(AddLocationInstance)録)33

インタフェース種類

種別

機能を実現するための関数

D(場所インスタンスの更新)(UpdateLocationInstance)

D(場所インスタンスの削除)(DeleteLocationInstance)

複数場所インスタンス関連の検SearchLocationInstanceAssociatio

索n(場所インスタンス関連の新規登(AddLocationInstanceAssociation)

B

D

D

メタデータ検索必要な機能

録)(場所インスタンス関連の削除)(DeleteLocationInstanceAssociation)

メタデータで使用される型定義のC

DescribeRecord

取得

C

メタデータの属性の定義域の取得 (GetDomain)

B

検索結果一覧の取得

GetRecordsC

ID による検索結果の取得

GetRecordById

D

メタデータの登録、更新、削除(Transaction)

C

メタデータ情報の収集(Harvest)【種別凡例】
A：提供するサービスの内容を取得するための関数
B：情報を検索するための関数
C：情報を取得するための関数
D：情報を登録するための関数※ 表中のカッコ（斜体）はオプション扱いの関数であり、実装は必須ではない。
それ以外の関数に関しては、当該インタフェースを実装する場合は実装を必須とした。本ガイドラインでは、上記に挙げた全ての関数に関して関数仕様を定義したが、実装仕様に関しては必須扱いの関数のみの提示とした。

34

3-2. 関数の説明
以下より、表 3-1 で示した各関数の概要を示す。

3-2-1. 共通
3 -2 -1 -1 .

GetCapabilities

機能

サービスメタデータを取得する

引数

型

名前

説明

Stringversion

準拠する標準インタフェースのバージョン番号
該当するバージョンのサービスメタデータのみを取得する
指定なしの場合は、最新バージョン

Stringservice

サービスタイプ
要求するサービスの識別子
例）Stringrequest

地理情報

“WMS”

地名辞典（空間参照系管理）“SRS”

地名辞典（地名辞典管理）“Gazetteer”

メタデータ検索“CSW”

要求名”GetCapabilities”でなければならない

Stringformat

サービスメタデータの出力フォーマット
応答をどのようなフォーマット（MIME Type）で返すかを指定する
省略された場合は、”text/xml”とみなされる

StringupdateSeq
uence

サービスメタデータの連番
サービス呼び出し側がこの連番に該当するサービスメタデ
ータをキャッシュしている場合に指定する

戻り値

各 ServiceMetadata

関連項目

各 ServiceMetadata 構造体

service の内容に応じたサービスメタデータ（※引数”service”において指定したサービスタイプにより、構造体の内容は異なる）
サービスタイプ

サービスメタデータ

WMS

WMSServiceMetadata

SRS

SRSServiceMetadata

Gazetteer

GazetteerServiceMetadata

CSW

CSWServiceMetadata35

3-2-2. 地理情報に関するインタフェース
3 -2 -2 -1 .

GetMap機能

地図画像を取得する

引数

型

名前

説明

Stringversion

準拠する標準インタフェースのバージョン番号
指定なしの場合は、最新バージョン

String

要求名

request”GetMap”を用いなければならない

String[]layers

描画レイヤのリスト

String[]styles

描画スタイルのリスト

Stringcrs

座標参照系

Integer[]

bBox

座標範囲

Integer

width

画像の幅

Integerheight

画像の高さ

Stringformat

画像フォーマット
image/jpeg、image/png などの MIME タイプ

Booleantransparent

背景透明フラグ
true: 透過する
false: 透過しない

String

背景色

bgColor0x で始まる RGB の 16 進数表現

Stringexceptions

例外報告フォーマット
サービスメタデータに記述されているフォーマットのなかから、例外報告フォーマットを指定できる
省略した場合、XML となる

DateTime

time

時間範囲

Integerelevation

目的のレイヤの標高
サービスメタデータに有効な標高が記述されている場合に記述することができる

Integer

該当する他の次元値

dimension

サービスメタデータに有効な次元が記述されている場合に記述することができる

戻り値

地図画像

引数”format”で指定した MIME タイプの画像

関連項目

36

3 -2 -2 -2 .

GetFeatureInfo

機能

地物の属性情報を表示する

引数

型

名前

説明

Stringversion

準拠する標準インタフェースのバージョン番号
指定なしの場合は、最新バージョン

Stringrequest

要求名”GetFeatureInfo”を用いなければならな
いGetMap 要求のパラメータ

−直前の GetMap 要求で送信したパラメータのうち、version と request を除くすべて

String[]query_layers

問合せ対象の一つ以上のレイヤのリスト

Stringinfo_format

地図情報の出力フォーマット
サービスメタデータに記述されている”text/xml”などの MIME タイプ

Integerfeature_count

情報を取得する対象の地物の個数

Integeri

地物の水平方向のピクセル単位の座標値

Integerj

地物の垂直方向のピクセル単位の座標値

Stringexceptions

例外報告フォーマット
サービスメタデータに記述されているフォーマットのなかから、例外報告フォーマットを指定できる
省略した場合、XML となる

戻り値

地物の情報

info_format で指定した形式で符号化された地物の属性情報

関連項目37

3-2-3. 地名辞典に関するインタフェース
3 -2 -3 -1 .

空間参照系管理

1) SearchLRS
機能

地理識別子による空間参照系を検索する

引数

型

名前

説明

Stringname

名称

GeographicExtent domainOfValidity

地理的範囲

Stringtheme

分類

StringoverallOwner

管理者

String[]locationType

関連する場所型の名称複数指定された場合は AND 検索
を行う

AuthResult

認証結果

authResult

ユーザ認証を必要としないサービスの場合は null を指定する

戻り値

LRS[]

説明

空間参照系が 1 件もヒットしなかった場合は要素数 0 の配列を返す。

関連項目

GeographicExtent 構造体、LRS 構造体、AuthResult 構造体

2) GetLRS
機能

地理識別子による地理識別子による空間参照系を取得する

引数

型

名前

説明

Stringname

名称

AuthResult

authResult

認証結果
ユーザ認証を必要としないサービスの場
合は null を指定する

戻り値

LRS

説明

指定した名称の空間参照系が存在しない場合は null を返す。

関連項目

LRS 構造体、AuthResult 構造体

383) AddLRS
機能

地理識別子による空間参照系を新規登録する

引数

型

名前

説明

LRS

lrs

登録対象

String[]locationType

関連する場所型の名称
場所型は登録済みのものでなければならな
いAuthResult

authResult

認証結果

SRSExamResult

examResult

審査結果

戻り値

boolean

説明

登録対象の空間参照系が地理的境界またはポリゴンを持つ場合、その空間参照系は登録済空間参照系の名称である必要がある。
処理に失敗した場合、空間参照系データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

LRS 構造体、AuthResult 構造体、SRSExamResult 構造体4) UpdateLRS
機能

地理識別子による空間参照系を更新する

引数

型

名前

説明

LRS

lrs

登録対象

String[]locationType

関連する場所型の名称
場所型は登録済みのものでなければな
らない

AuthResult

authResult

認証結果

SRSExamResult

examResult

審査結果

戻り値

boolean

説明

更新対象の空間参照系が地理的境界またはポリゴンを持つ場合、その空間参照系は登録済空間参照系の名称である必要がある。
処理に失敗した場合、空間参照系データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

LRS 構造体、AuthResult 構造体、SRSExamResult 構造体

395) DeleteLRS
機能

地理識別子による空間参照系を削除する

引数

型

名前

説明

String[]lrs

削除対象の空間参照系の名称

AuthResult

authResult

認証結果

戻り値

boolean

説明

1 件でも空間参照系の削除に失敗した場合は false を返す。
処理に失敗した場合、空間参照系データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

AuthResult 構造体6) SearchLocationType
機能登録されている場所型を検索する

引数

型

名前

説明
名称

String

場所型の名称を指定する。一部のみの指定もname可能である。名称を特定しない場合は null を指定する。
分類

String

一部のみの指定も可能である。分類を特定しなthemeい場合は null を指定する
PI タイプPITypeidentification

PI タイプの各要素の値は一部のみの指定が可能

Geograph
icExtent

territoryOfUse

地理的範囲

Stringowner

管理者
関連する空間参照系の名称

String[]空間参照系を限定しない場合は null を指定す

lrsる
複数した場合は OR 検索を行う。
親の場所型の名称

String[]parentType

親関連の条件を指定しない場合は null を指定
する
子の場所型の名称

String[]子関連の条件を指定しない場合は null を指定

childTypeする

AuthResult

認証結果

authResult

ユーザ認証を必要としないサービスの場合は null
を指定する

40

戻り値

LocationType[]説明lrs に地理識別子による空間参照系の名称を指定することで、特定の空間参照系に関連する場所型を検索することが可能である。
また、場所型の Nesting 関連の条件を指定する場合は、 parentType またはchildType に関連する場所型の名称を指定する。
地理的範囲が指定された場合は、場所型が持つ地理的範囲と一部でも重なるものを返す。
条件に合致する場所型が存在しない場合にはサイズ 0 の配列を返す。

関連項目

PIType 構造体、GeographicExtent 構造体、LocationType 構造体、
AuthResult 構造体

7) GetLocationType
機能登録されている場所型を取得する

引数

型

名前

説明

String[]name

名称

AuthResult

authResult

認証結果
ユーザ認証を必要としないサービスの場合
は null を指定する

戻り値

LocationType[]

説明

条件に合致する場所型が存在しない場合にはサイズ 0 の配列を返す。

関連項目

LocationType 構造体、AuthResult 構造体

8) AddLocationType
機能

場所型を新規登録する

引数

型

名前

LocationTypelocationType

AuthResult

authResult

認証結果

LocationTypeExamResult

examResult

審査結果

説明
登録対象
null 指定不可

戻り値

boolean

説明

処理に失敗した場合、空間参照系データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

LocationType 構造体、AuthResult 構造体、LocationTypeExamResult 構造体

419) UpdateLocationType
機能登録されている場所型を更新する

引数

型

名前

説明
更新対象

LocationTypelocationType

登録済みの場所型であること。
null 指定不可

AuthResult

authResult

認証結果

LocationTypeExamResult

examResult

審査結果

戻り値

boolean

説明

処理に失敗した場合、空間参照系データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

LocationType 構造体、AuthResult 構造体、LocationTypeExamResult 構造体

10) DeleteLocationType
機能登録されている場所型を削除する

引数

型

名前

String[]name

AuthResult

authResult

説明
削除対象の場所型の名称
登録済みの場所型であること。
認証結果

戻り値

boolean

説明

処理に失敗した場合、空間参照系データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

AuthResult 構造体4211) SearchLocationTypeAssociation
機能

登録されている場所型関連を検索する。

引数

型

名前

説明

StringchildLocationType

子場所型の名称

StringparentLocationType

親場所型の名称

AuthResult

authResult

認証結果
ユーザ認証を必要としないサービスの場
合は null を指定する

戻り値

LocationTypeAssociation[]

説明

子場所型を指定しない場合は親場所型で指定された場所型のすべての子場所型を返す。
親場所型を指定しない場合は子場所型で指定された場所型のすべての親場所型を
返す。

関連項目

LocationTypeAssociation 構造体、
AuthResult 構造体12) AddLocationTypeAssociation
機能

場所型関連を新規に登録する。

引数

型

名前

説明

LocationTypeA
ssociation[]association

登録対象

AuthResult

authResult

認証結果
ユーザ認証を必要としないサービスの場合
は null を指定する

戻り値

boolean

説明

１件でも登録に失敗した場合には例外 UpdateFailure を発生する。
処理に失敗した場合、空間参照系管理ベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

LocationTypeAssociation 構造体、AuthResult 構造体4313) DeleteLocationTypeAssociation
機能

場所型関連を削除する。

引数

型

名前

説明

LocationTypeAssociation association

削除対象

AuthResult

認証結果

authResult

ユーザ認証を必要としないサービスの場合は null を指定する

戻り値

boolean

説明

削除に失敗した場合は false を返す。
処理に失敗した場合、空間参照系管理サービスを本関数呼び出し前の状態に戻す
こと。

関連項目

LocationTypeAssociation 構造体、AuthResult 構造体

44

3 -2 -3 -2 .

地名辞典管理1) AddGazetteer
機能

地名辞典を新規登録する

引数

型

名前

Gazetteergazetteer

Stringlrs

AuthResult

authResult

説明
登録対象
座標参照系は登録済みのものであること
参照する空間参照系の名称
登録済みの空間参照系であること
認証結果

戻り値

boolean

説明処理に成功した場合、地名辞典サービスメタデータの連番を更新する。
処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

Gazetteer 構造体、AuthResult 構造体2) UpdateGazetteer
機能登録されている地名辞典を更新する

引数

型

名前

Gazetteergazetteer

AuthResult

authResult

説明
更新対象
座標参照系は登録済みのものであること
認証結果

戻り値

boolean

説明処理に成功した場合、地名辞典サービスメタデータの連番を更新する。
処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

Gazetteer 構造体、AuthResult 構造体3) DeleteGazetteer
機能登録されている地名辞典を削除する

引数

型

名前

説明

String[]name

削除対象の地名辞典の名称

AuthResult

authResult

認証結果

戻り値

boolean

説明

１件でも削除に失敗した場合は false を返す。
処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

AuthResult 構造体

454) SearchPI
機能登録されている場所インスタンスの PI 部分を検索する

引数

型

名前

説明

RouteCondition

routeCondition他サービス呼び出し条件

Stringgazetteer

地名辞典の名称
地名辞典を特定しない場合は null を指定す
る

StringlocationType

String[]geographicId
entifier

Geographic
ExtentgeographicE
xtent

TemporalEx
tent

temporalExte
ntStringadministrator

場所型の名称
場所型を特定しない場合は null を指定する
地理識別子
地理識別子を特定しない場合は null を指定
する
地理的範囲
地理的範囲を限定しない場合は null を指定する
時間範囲
時間範囲を限定しない場合は null を指定する
管理者
管理者を特定しない場合は null を指定する
検索語句
場所インスタンスの PI の値または代替地理識
別子を対象とした全文検索用フリーワード。

String[]searchWord

語句が複数指定された場合は、地理識別子、
または代替地理識別子のいずれかがすべての検索語句を含むものを検索する。
検索語句を設定しない場合は null を指定する。

AuthResult

authResult

認証結果
ユーザ認証を必要としないサービスの場合はnull を指定する

戻り値

PI[]

46

説明

指定した条件に合致する PI を検索する。
地理的範囲で地理的境界またはポリゴンを指定した場合は、一部でも地理的範囲が交差する PI を検索する。
条件に合致する PI が存在しない場合はサイズ 0 の配列を返す。
（A）routeCondition.cascadingLevel > 0 の場合
他 の 地 名 辞 典 管 理 サ ー ビ ス の SearchPI 関 数 を 呼 び 出 す 場 合 は
routeCondition.cascadingLevel の値を 1 だけ減じ、かつ routeConditionrouteHistory の 末 尾 に 自 サ ー バ を 追 加 し な け れ ば な ら な い 。 ま た 、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(B)routeCondition.cascadingLevel = 0 の場合
他の地名辞典管理サービスの SearchPI 関数を呼び出すことはできない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(C)routeCondition.cascadingLevel < 0 の場合
他の地名辞典管理サービスの SearchPI 関数はrouteCondition.routeDefinition の順に呼び出さなければならない。

関連項目

GeographicExtent 構 造 体 、 TemporalExtent 構 造 体 、 PI 構 造 体 、RouteCondition 構造体、AuthResult 構造体

475) GetLocationInstance
機能登録されている場所インスタンスを取得する

引数

型

名前

説明

RouteConditionrouteCondition

他サービス呼び出し条件
地名辞典の名称

Stringgazetteer

地名辞典を特定しない場合は null を
指定する。
PI

PI[]

PI を特定しない場合は null を指定す

piる。

AuthResult

authResult

認証結果
ユーザ認証を必要としないサービスの場
合は null を指定する

戻り値

LocationInstance[]

説明指定した PI に合致する場所インスタンスを取得する。
地名辞典を特定して場所インスタンスを取得することもできる。
PI が複数指定された場合は、指定された順に対応する場所インスタンスを返す。PI に対応する場所インスタンスが存在しない場合は、配列中の当該要素に null を格納して返す。
条件に合致する場所インスタンスが存在しない場合はサイズ 0 の配列を返す。
(A) routeCondition.cascadingLevel > 0 の場合
他の地名辞典管理サービスの GetLocationInstance 関数を呼び出す場合はrouteCondition.cascadingLevel の値を 1 だけ減じ、かつ routeConditionrouteHistory の 末 尾 に 自 サ ー バ を 追 加 し な け れ ば な ら な い 。 ま た 、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(B) routeCondition.cascadingLevel = 0 の場合
他の地名辞典管理サービスの GetLocationInstance 関数を呼び出すことはできない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(C) routeCondition.cascadingLevel < 0 の場合
他の地名辞典管理サービスの GetLocationInstance 関数は
routeCondition.routeDefinition の順に呼び出さなければならない。

関連項目

PI 構 造 体 、 LocationInstance 構 造 体 、 RouteCondition 構 造 体 、AuthResult 構造体

486) AddLocationInstance
機能

場所インスタンスタンスを新規登録する

引数

型

名前

説明

Stringgazetteer

地名辞典の名称
場所インスタンス

LocationInstance[]locationInstance

代表点、地理的境界、ポリゴンのいずれかを持つ場合、座標参照系は登録済みのものである必要がある。

AuthResult

authResult

認証結果

戻り値

Boolean

説明

1 件でも登録に失敗した場合には例外 UpdateFailure を発生する。
処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこと。

関連項目

LocationInstance 構造体、AuthResult 構造体7) UpdateLocationInstance
機能登録されている場所インスタンスを更新する

引数

型

名前

説明

Stringgazetteer

地名辞典の名称
場所インスタンス

LocationInstance[]locationInstance

代表点、地理的境界、ポリゴンのいずれかを持つ場合、座標参照系は登録済みのものである必要がある。

AuthResult

authResult

認証結果

戻り値

boolean

説明

1 件でも更新に失敗した場合には false を発生する。
処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこと。

関連項目

LocationInstance 構造体、AuthResult 構造体8) DeleteLocationInstance
機能登録されている場所インスタンスを削除する

引数

型

名前

説明

Stringname

地名辞典の名称

String[]geographicIdentifier

AuthResult

authResult

戻り値

Boolean

説明

1 件でも削除に失敗した場合には false を返す。

削除対象場所インスタンスの地
理識別子
認証結果

処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこと。

関連項目

AuthResult 構造体

499) SearchLocationInstanceAssociation
機能

複数場所インスタンス関連を検索する

引数

型

名前

説明

RouteCondition

routeCondition

他サービス呼び出し条件

StringStringsourceGazetteersourceGeograp
hicIdentifier

関連元場所インスタンスの地名辞典の名称
関連元場所インスタンスの地名辞典を特定しない場合は null を指定する
関連元場所インスタンスの識別子
関連元場所インスタンスを特定しない場合はnull を指定する。
関連先場所インスタンスの地名辞典の名称

StringtargetGazetteer

関連先場所インスタンスの地名辞典を特定しない場合は null を指定する

StringtargetGeograp
hicIdentifier

関連先場所インスタンスの地理識別子
関連先場所インスタンスを特定しない場合はnull を指定する。
位相の名称
個々の値にはString[]“Nesting” またはphase“Equivalent” を指定する。
複数指定した場合は OR 検索を行う。

AuthResult

authResult

認証結果
ユーザ認証を必要としないサービスの場合はnull を指定する

戻り値

LocationInstanceAssociation[]

50

説明

条件に合致する場所インスタンス関連が存在しない場合はサイズ 0 の配列を返す。
(A) routeCondition.cascadingLevel > 0 の場合
他の地名辞典管理サービスの SearchLocationInstanceAssociation 関数を呼び 出 す 場 合 は routeCondition.cascadingLevel の 値 を 1 だ け 減 じ 、 かつ
routeCondition routeHistory の末尾に自サーバを追加しなければならない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(B) routeCondition.cascadingLevel = 0 の場合
他の地名辞典管理サービスの SearchLocationInstanceAssociation 関数を呼び出すことはできない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(C) routeCondition.cascadingLevel < 0 の場合
他の地名辞典管理サービスの SearchLocationInstanceAssociation 関数は
routeCondition.routeDefinition の順に呼び出さなければならない。
Nesting 関連を検索する場合は source を child に、target を parent に読み替
える。

関連項目

LocationInstanceAssociation 構 造 体 、AuthResult 構造体

51

RouteCondition 構 造 体 、

10) AddLocationInstanceAssociation
機能場所インスタンス関連を新規登録する

引数

型

名前

説明
登録対象

LocationInsta
nceAssociation[]association

AuthResult

authResult

親および子の場所インスタンスは登録済みのものでなければならない
認証結果

戻り値

boolean

説明

1 件でも登録に失敗した場合は false を返す。
処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこと。

関連項目

LocationInstanceAssociation 構造体、AuthResult 構造体

11) DeleteLocationInstanceAssociation
機能

登録されている場所インスタンス関連を削除する

引数

型

名前

説明

LocationInstanceAssociation association

削除対象

AuthResult

認証結果

authResult

戻り値boolean

説明

1 件でも削除に失敗した場合は false を返す。
処理に失敗した場合、地名辞典データベースを本関数呼び出し前の状態に戻すこ
と。

関連項目

LocationInstanceAssociation 構造体、AuthResult 構造体

52

3-2-4. メタデータ検索に関するインタフェース
3 -2 -4 -1 .

DescribeRecord

機能

レコードの概要（レコードが記述される形式の詳細）を取得する

引数

型

名前

説明

Stringrequest

要求名”DescribeRecord”でなければならない

String

サービスタイプ

service”CSW”でなければならない

String準拠する標準インタフェース(CSW)のバージョンversion

番号
該当するバージョンのサービスメタデータのみを取得する
指定なしの場合は、最新バージョン

Stringnamespace

レコードが参照する名前空間のリスト

StringtypeName

レコードが持つ型のリスト

StringoutputFormat

出力フォーマット
応答をどのようなフォーマット（MIME Type）で返すかを指定する
省略された場合は、”text/xml”とみなされる

StringschemaLanguage

スキーマの言語
デフォルトは、XML Schema

戻り値

DescribeRecordResponse

schemaLanguage で指定したスキーマ言語に基づくレコードの構造

関連項目

DescribeRecordResponse 構造体

53

3 -2 -4 -2 .

GetDomain

機能

メタデータの各項目に対する定義域を取得する

引数

型

名前

説明

Stringrequest

要求名”GetDomain”でなければならない

String

サービスタイプ

service”CSW”でなければならない

String準拠する標準インタフェース(CSW)のバージョン番

version号
該当するバージョンのサービスメタデータのみを取得する
指定なしの場合は、最新バージョン

戻り値

StringparameterName

パラメータ名StringpropertyName

プロパティ名指定したパラメータあるいはプロパティのデータ構造

GetDomainResponseを示した XML Schema

関連項目

GetDomainResponse 構造体

54

3 -2 -4 -3 .

GetRecords

機能

検索結果一覧の取得

引数

型

名前

説明

Stringrequest

要求名”GetRecords”でなければならない

String

サービスタイプ

service”CSW”でなければならない

Stringversionバージョン番号

Stringnamespace

レコードが参照する名前空間のリスト

StringresultType

以下のいずれかより選択：

String-hits-

results-

validate

出力ファイルフォーマット。

outputFormat“text/xml” 等

StringoutputSchema

出力ファイルフォーマット（XML）が参照するスキー
マ名IntegerstartPosition

検索開始位置（カーソル位置）

IntegermaxRecords

検索結果の件数の上限値

StringtypeNames

コレクション ID

StringelementName / 要素名 or 要素体名
elementSetNam
eStringconstraintLanguage

検索条件式の形式

Stringconstraint

検索条件式（クエリ）

String[]sortBy

ソート対象のフィールドと順番のリスト

BooleandistributedSearch

検索クエリが既存であるかどうかの論理値

hopCount

検索クエリの上限値

Integer

CQL_TEXT or FILTER(OGC Filter)

規定値は FALSE
規定値は”2”

URL

responseHandl
er

操作要求の応答状況をモニタするハンドラ

戻り値

GetRecordsResponse

関連項目

GetRecordsResponse 構造体55

3 -2 -4 -4 .

GetRecordById

機能

ID による検索結果（メタデータ）の取得

引数

型

名前

説明

Stringversionバージョン番号

String[]id

GetRecords で取得した ID（複数指定可能）

戻り値

Metadata

関連項目

Metadata 構造体

3 -2 -4 -5 .

検索結果レコードTransaction

機能

レコードを追加・更新・削除する

引数

型

名前

説明

Transaction

transaction

トランザクションの種類
以下の３つのいずれかを指定する-

insert-update-deleteURI

requested

リクエスト ID

BooleanverboseRes
ponse

レスポンスの種類
TRUE：通常のレスポンスを要求
FALSE：CSW サーバ固有のレスポンスを要求

戻り値

TransactionResponse

関連項目

Transaction 構造体、 TransactionResponse 構造体

実行したトランザクションの結果を報告する

56

3 -2 -4 -6 .

Harvest機能

レコードの更新状況の収集

引数

型

名前

説明

Stringrequest

要求名”Harvest”でなければならない

String

サービスタイプ

service”CSW”でなければならない

String準拠する標準インタフェース(CSW)のバージョンversion

番号
指定なしの場合は、最新バージョン

String[]namespace

レコードが参照する名前空間のリスト

URI

sourceリソースとなるメタデータを示す URI

URI

resourceType

リソースとなるメタデータの構造を示す URI
例）
リ ソ ー ス と な る メ タ デ ー タ を 規 定 す る XML
Schema を参照する URI など

StringresourceFormat

リソースのフォーマット
収 集 （ Harvest ） す る リ ソ ー ス の フ ォ ー マ ッ ト（MIME Type）を指定する
省略された場合は、”text/xml”とみなされる

URL

responseHandler

操作要求の応答状況をモニタするハンドラ

TemporalExtent

harvestInterval

時間範囲

戻り値

TransactionResponse

関連項目

TemporalExtent 構造体、 TransactionResponse 構造体

57

3-2-5. 構造体
3 -2 -5 -1 .

地理情報

1) WMSServiceMetadata
説明

地理情報サービスのメタデータ

要素

型

名前

説明

Stringname

サービスの名称。
規定では”WMS”でなければならない。

Stringサービス提供元を示す名前。

title

WMS サーバ名などを記述する。

Stringサービスの概要。

abstract

サービス提供元あるいは WMS サーバを簡潔に説明した文章。

String[]keywordList

キーワードのリスト。
提供するサービスを端的に表すキーワード
のリスト。

URL

onlineResource

オンラインリソース。
WMS における要求を送信可能な具体
的 URL。

ResponsibleP
arty

contactInformatio 問合せ先情報。
nサービス提供元や WMS サーバ開発元など、サービスに関する問合せが可能な連
絡先等の情報。
※ ISO19115

で 規 定 さ れる”CI_ResponsibleParty”クラスを引用しており、住所、電話番号等の情報を含む。

Stringサービスの利用における課金の有無。

fees※有料である場合は、必ず示されなければならない。

IntegerlayerLimit

一回の GetMap 要求で指定できるレイヤ
ーの上限数。
※上限が存在する場合は、必ず示されなければならない。

Integer

maxWidth

WMS サーバが生成する地図画像サイズ（幅）の上限値。
※上限が存在する場合は、必ず示されなければならない。

58

IntegermaxHeight

WMS サーバが生成する地図画像サイズ（高さ）の上限値。
※上限が存在する場合は、必ず示されなければならない。

OperationMet
adata[]

request

GetCapabilities、

GetMap、

GetFeatureInfo それぞれに関する詳細情報

String[]exception

例外報告フォーマットに指定可能なフォー
マットの情報
例外報告を行う際に指定可能なフォーマット

LayerMetadata
関連項目

地図画像生成元となるレイヤーに関する

layer

情報

ResponsibleParty 構造体、OperationMetadata 構造体、LayerMetadata
構造体592) LayerMetadata
説明

地図画像生成元となるレイヤーに関する情報

要素

型

名前

説明

Stringname

レイヤーの名称

Stringtitle

レイヤーのタイトル※GetMap 要求では、Name ではなくTitle によりレイヤー名を指定するため、Title は必須である。

Stringレイヤーの概要

abstract

レイヤーに含まれる地物の情報や、主題の名称

String[]keywordList

キーワードリスト
レイヤーを端的にあらわすキーワードのリス
トStringレイヤーに適用される座標参照系

crs

レイヤーCRS の座標参照系識別子

Double[]EX_Geographic
BoundingBox

地理境界ボックス
レイヤー全体の東西南北の境界緯度経度※絶対緯度経度による記述

GeographicB
oundingBox[]boundingBox

境界ボックス
レイヤー全体の境界座標※座標参照系を含み、座標参照系ごとの記述が可能dimension次元
レイヤーが属する次元。※さらに子要素を持つクラスである

InfoURL

attribution

情報提供元の属性情報

InfoURL

authorityURL

作者のリソース情報

Stringidentifier

レイヤーを識別する ID（識別子）

InfoURL

metadataURL

メタデータのリソース情報

InfoURL

dataURL

実データのリソース情報

InfoURL

featureListURL

地物リストのリソース情報

InfoURL

style

描画スタイルのリソース情報

IntegerminScaleDenomi
nator

最小スケールの分母最小表示スケールが存在する場合、その分母の数値

IntegermaxScaleDenom
inator最大スケールの分母最大表示スケールが存在する場合、その
分母の数値

60

Layer子レイヤの情報layer※レイヤーは、子レイヤーを持つことができ、階層構造を構成できる

関連項目

GeographicBoundingBox 構造体、InfoURL 構造体、Layer 構造体

3) InfoURL
説明

画像リソースの URL 情報

要素

型

名前

説明

Stringname

名称

Stringtitle

リソースのタイトル

Stringabstract

リソースの概要

Integerwidth

画像の幅（pixel）※リソースが画像の場合

Integer

画像の高さ（pixel）

height※リソースが画像の場合

Stringformatリソースの MIME タイプ

URL

onlineResource

リソースの URL

InfoURL

url

リソースの URL 情報

関連項目

61

3 -2 -5 -2 .

地名辞典（ 空間参照系管理）

1) SRSServiceMetadata
用途

空間参照系管理サービスのメタデータ

要素

型

名前

説明

Stringversion

空間参照系管理サービスのバージョン
本仕様によるサービスメタデータでは 1.0を指定する。

boolean

canUpdateLRS

地理識別子による空間参照系の登録可否説明

boolean

canUpdateCRS

座標参照系の登録可否

boolean

canUpdateConversion
Info座標参照系変換情報の登録可否

boolean

canUpdateLocationTy
pe

場所型の登録可否

booleanneedsExam

登録審査の必要性

StringupdateSequence

更新連番

更新連番は任意の文字列であるが、キャッシュ機能を実現するために、サービスは更新
連番の値の大小を判断できることが必要である。

関連項目
2) LRS
用途

地理識別子による空間参照系

要素

型

名前

説明

Stringname

名称

GeographicExtent

domainOfValidity

地理的範囲

Stringtheme

分類

StringoverallOwner

管理者

説明
関連項目

GeographicExtent 構造体

623) SRSExamResult
用途

空間参照系審査結果

要素

型

名前

説明

Stringname

空間参照系名称

StringexamNo

審査結果番号説明
関連項目
4) PIType
用途

PI タイプ

要素

型

名前

説明

StringschemaUrl

PI スキーマ文書の URL

StringencodingRuleUrl

PI 符号化規則文書の URL

StringgenerationRuleUrl

PI 符号化規則作成規則文書の URL

説明
関連項目
5) LocationType
用途

場所型

要素

型

名前

説明

Stringname

名称

Stringtheme

分類

PITypeidentification

PI タイプStringdefinition

定義

GeographicExtent

territoryOfUse

地理的範囲

Stringowner

管理者

Stringname

名称

String

theme

分類

説明
関連項目

PIType 構造体、GeographicExtent 構造体

636) LocationTypeAssociation
用途

場所型関連

要素

型

名前

説明

StringchildLocationType

子場所型の名称null 指定不可

StringparentLocationType

親場所型の名称null 指定不可

説明関連項目
7) LocationTypeExamResult
用途

場所型審査結果

要素

型

名前

説明

String

name

場所型名称

StringexamNo

審査結果番号

説明
関連項目

64

3 -2 -5 -3 .

地名辞典（ 地名辞典管理）

1) GazetteerServiceMetadata
用途

地名辞典サービスメタデータ

要素

型

名前

説明

Stringversion

地名辞典サービスのバージョン
本仕様によるサービスメタデータでは 1.0を指定する。

Gazetteer[]gazetteer

地名辞典情報

GazetteerSt
atistics[]

gazetteerStatistics

地名辞典統計情報

boolean

canUpdateLocation
Instance

場所インスタンスの登録可否

boolean

canUpdateLocation
InstanceAssociation

場所インスタンス関連の登録可否

StringupdateSequence

連番

説明
関連項目

Gazetteer 構造体、GazetteerStatistics 構造体2) Gazetteer
用途

地名辞典

要素

型

名前

説明

Stringname

名称

String[]

alias

別名

String

scope

スコープ

GeographicExtent

territoryOfUse

地理的範囲

Stringcustodian

管理者

Stringcrs

座標参照系

TemporalExtent

date

時間範囲

説明
関連項目

GeographicExtent 構造体、TemporalExtent 構造体

653) GazetteerStatistics
用途

地名辞典統計情報

要素

型

名前

説明

Stringgazetteer

地名辞典名称

StringlocationType

場所型名称

Integercount

総データ件数

説明
関連項目
4) PI
用途

PI

要素

型

名前

説明

String

value

地理識別子
null は指定不可

String

地理識別子による空間参照系の名称

lrsnull は指定不可

説明

現実世界のある場所を一意に識別するための識別子。

関連項目

66

5) LocationInstance
用途場所インスタンス

要素

型

名前

説明

PI

PI

PI
地理識別子と空間参照系の組
null は指定不可

StringlocationType

場所型名称
場所型の実体は空間参照系管理サービス
が保持するnull は指定不可

String[]alternativeGeographicIdentifi
er

代替地理識別子
地理識別子の別名
代替地理識別子がない場合は null を指定
する

Geographic
ExtentgeographicExtent

地理的範囲

Position

position

位置
代表点の座標Stringadministrator

管理者
場所インスタンスの特質を定義する責任がある組織の名前null は指定不可

TemporalE
xtent

temporalExtent

時間範囲
時間範囲を限定しない場合は null を指定す
る

String

地名辞典の名称

gazetteer

説明関連項目

PI 構造体、GeographicExtent 構造体、Position 構造体、TemporalExtent
構造体676) LocationInstanceAssociation
用途場所インスタンス関連

要素

型

名前

説明

StringsourceGazetteer

関連元場所インスタンスの地名辞
典の名称

StringsourceGeographicIdentifier

関連元場所インスタンスの地理識
別子String

関連先場所インスタンスの地名辞

targetGazetteer

典の名称

StringtargetGeographicIdentifier

関連先場所インスタンスの地理識
別子String
説明

位相の名称

phase

phase には“Nesting”または”Equivalent”を指定することができる。

関連項目
7) RouteCondition
用途

地名辞典管理サービス呼び出し経路条件

要素

型

名前

説明

IntegercascadingLevel

他サービス呼び出し可能レベル0 以下: 他サービスを呼び出さない
1 以上: 他サービスを最大 N 段階呼び出すことができる

Route[]

routeHistory

他サービス呼び出し経路履歴

Route[]

routeDefinition

他サービス呼び出し経路定義

説明
関連項目
8) Route
用途

地名辞典管理サービスの呼び出し経路

要素

型

名前

説明

StringserviceName

地名辞典管理サービスの名称

説明
関連項目

68

3 -2 -5 -4 .

メ タ デ ー タ 検索

1) CSWServiceMetadata
用途

カタログサービスのサービスメタデータ

要素

型

名前

説明

Stringname

サービスの名称。
規定では”CWS”でなければならない。

Stringサービス提供元を示す名前。

title

CWS サーバ名などを記述する。

Stringサービスの概要。

abstract

サービス提供元あるいは CWS サーバを簡潔に説明した文章。

String[]keywordList

キーワードのリスト。
提供するサービスを端的に表すキーワードのリスト。

URL

onlineResourceオンラインリソース。
CWS に お け る 要 求 を 送 信 可 能 な 具 体 的
URL。

Responsible
PartycontactInfor
mation

問合せ先情報。
サービス提供元や CWS サーバ開発元など、サービスに関する問合せが可能な連絡先等の情報。
※

ISO19115

で

規

定

さ

れ

る”CI_ResponsibleParty”クラスを引用 しており、住所、電話番号等の情報を含む。

Stringサービスの利用における課金の有無。

fees※有料である場合は、必ず示されなければならない。

OperationM
etadata[]operationsMetadata

CWS サーバが提供可能な操作についてのメタデ

Filter_Capabilities

filter_Capabil
ities

CWS サーバが処理可能な Transaction クエリにータ関するメタデータ※OGC Filter1.0 に基づく

説明

カタログサービスが提供可能なサービスのメタデータを返す

関連項目

ResponsibleParty 構 造 体 、 OperationsMetadara
Filter_Capabilities 構造体

69

構 造 体 、

2) DescribeRecordResponse
用途

検索対象メタデータの構造

要素

型

名前

説明

URI

targetNamespace

スキーマの規定名前空間

StringparentSchema

親スキーマのファイル名称

StringschemaLanguage

スキーマの言語説明

検索対象メタデータの構造を明らかにするために必要な XML Schema の情報を返す

関連項目
3) Filter_Capabilities
用途

CWS サーバが処理可能な Transaction クエリに関するメタデータ

要素

型

名前

説明

Logicaloperators

andCSW サーバが処理可能な

or

論理演算

not
Comparison
operators

propertyIsEqualTo

CSW サーバが処理可能な

propertyIsNotEqualTo

比較演算

propertIsLessThan
propertIsGreaterThan
propertIsLessThanOrEqualTo
propertIsGreaterThanEqualTo
propertIsLike
Spatialoperators
説明

CSW サーバが処理可能な

BBox

空間演算

CWS サーバが処理可能な Transaction クエリに関するメタデータの情報を返す

関連項目
4) GetDomainResponse
用途

メタデータ属性値の項目(Property)と定義域(Values)

要素

型

名前

説明

StringparameterName

項目名

Sting[]

value

項目名に対応する値のリスト

説明

検索対象メタデータの各属性値の情報を返す

関連項目

70

5) GetRecordsResponse
用途

検索結果

要素

型

名前

説明

StringrequestId

リクエスト ID

Stringstatus

検索結果ステータス

StringresultSetId

検索結果セット ID

StringelementSet

要素セット名称

StringrecordSchema

レコードの書式（ XML Schema
等のスキーマを特定する名称）

IntegernamberOfRecordsMatched

検索ヒット総数

IntegernumberOfRecordsReturned

検索結果に含まれる総数

IntegernextRecord

次の検索結果リストの始まりのレコード位置Metadata

検索結果レコード

resultRecord

説明

検索結果メタデータの概要情報を返す

関連項目

Metadata 構造体

6) Metadata
用途

検索結果メタデータの詳細

要素

型

名前

説明
検索結果メタデータレコードにより異なる

any
説明

9

検索結果レコードである Metadata 構造体は、GetRecordResponse 構造体におけるパラメータ recordSchema で示されるスキーマによってその構造が決定され
る。

関連項目

71

7) Transaction(i)Transaction.Insert
用途

トランザクションクエリ(Insert)

要素

型

名前

説明

StringtransactionType“update”

StringrequestId

リクエスト ID

Recordrecord

処理対象レコード

BooleanverboseResponse

レスポンスの種類
TRUE：通常のレスポンスを要求
FALSE：CSW サーバ固有のレスポンスを要求

String

操作要求の応答状況

handle説明

Insert 処理のリクエストクエリを記述

関連項目

Record 構造体※Record 構造体は、処理対象レコードの構造によりその都度異なる

72

(ii)

Transaction.Update
用途

トランザクションクエリ(Update)

要素

型

名前

説明

StringtransactionType“update”

StringrequestId

リクエスト ID

Recordrecord

処理対象レコード

BooleanverboseResponse

レスポンスの種類
TRUE：通常のレスポンスを
要求
FALSE：CSW サーバ固有のレスポンスを要求

StringrecordProperty

レコードプロパティ※Record がリクエストされな
い場合

StringtypeNames

処理対象レコードの種類
例）“Service” 、Dataset”Dataset” 、Collection” 、“Application” 等

Codelist

constraintLanguage

規定値”Filter”

Stringconstraint

OGC Filter1.0.0 に基づく符号化規則によるクエリ式

String

操作要求の応答状況

handle説明

Update 処理のリクエストクエリを記述

関連項目

Record 構造体※Record 構造体は、処理対象レコードの構造によりその都度異なる

73

(iii)

Transaction.Delete
用途

トランザクションクエリ(Delete)

要素

型

名前

説明

StringtransactionType“delete”

StringrequestId

リクエスト ID

Recordrecord

処理対象レコード

BooleanverboseResponse

レスポンスの種類
TRUE：通常のレスポンスを要求
FALSE：CSW サーバ固有のレスポン
スを要求

String

レコードプロパティ

recordProperty※Record がリクエストされない場合

String

処理対象レコードの種類

typeNames

例）“Service” 、 ”Dataset” 、 Dataset
Collection”、 “Application” 等

Codelist

constraintLanguage

規定値”Filter”

Stringconstraint

OGC Filter1.0.0 に基づく符号化規則によるクエリ式

String

操作要求の応答状況

handle

説明

Delete 処理のリクエストクエリを記述

関連項目

Record 構造体※Record 構造体は、処理対象レコードの構造によりその都度異なる
8) TransactionResponse
用途

トランザクションの結果

要素

型

名前

説明

StringrequestId

リクエスト ID

Integer

totalInserted

Insert 成功数（※Insert の場合）

Integer

totalUpdated

Update 成功数（※Update の場合）

Integer

totalDeleted

Delete 成功数（※Delete の場合）

StringhandleRef

操作 ID

RecordbriefRecord

Insert/Update/Delete した内容の詳細

説明

トランザクションの結果を報告する

関連項目

Record 構造体（※Record 構造体は、Insert/Update/Delete したレコードの構造をそのまま報告する）

74

3 -2 -5 -5 .

共通仕様

1) AuthResult
用途

ユーザ認証結果

要素

型

名前

説明

Stringtoken

認証トークン

説明

サービスが発行する、ユーザ認証の結果を一意に特定する文字列を保持する。この文
字列を認証トークンと呼ぶことにする。
関数呼び出しの際にユーザ認証結果を受け取ることで、サービスは利用ユーザを特定でき、ユーザごとに機能の利用を制限することができる。

関連項目
2) ContactAddress
説明

住所情報

要素

型

名前

説明

StringaddressType

住所の型

Stringaddress

住所Stringcity

市町村

StringstateOrProvince

州、郡、都道府県

StringpostCode

郵便番号

Stringcountry国

関連項目
3) ContactPersonPrimary
説明

問合せ先名称情報

要素

型

名前

説明

StringcontactPerson

問合せ先個人名

StringcontactOrganization

問合せ先組織名

関連項目

754) Datum
用途

原子

要素

型

名前

説明

StringdatumID

原子の識別子String[]

alias

原子の別名

Stringtype

原子の型

Stringpoint

地球に固定するために使用する点

DateTime

realizationEpoch原子の実現時期

ExtentvalidArea

有効な地域

Stringscope

有効な応用分野

Stringremark注釈

PrimeMeridian

primeMeridian

本初子午線情報

Ellipsoid

ellipsoid

楕円体情報

説明
関連項目

Extent 構造体、PrimeMeridian 構造体、Ellipsoid 構造体5) Ellipsoid
用途

楕円体

要素

型

名前

説明

StringellipsoidID原子に対する楕円体の識別
子

String[]

alias

別名

DoublesemiMajorAxis

楕円体の長半径の長さ

booleanellipsoidShape

楕円体の計上InverseFlattening

inverseFlattening

楕円体の逆扁平率

Stringremark

注釈

説明
関連項目

InverseFlattening 構造体

766) Extent
用途

範囲情報

要素

型

名前

説明

Stringdescription

記述

GeographicExtent[]

geographicElement

地理的範囲

TemporalExtent[]

temporalElement

時間範囲

VerticalExtent[]

verticalElement

鉛直範囲

説明
関連項目

GeographicExtent 構造体、TemporalExtent 構造体、VerticalExtent 構
造体7) GeographicBoundingBox
用途

地理的境界

要素

型

名前

説明

double[]

min

最小座標

double[]

max

最大座標

String

crs

座標参照系

説明

矩形で領域を定義する。min と max は下図で示す位置の座標を指定する。

max
min
座標配列には座標参照系で定義された順番で値を格納する。
各座標は以下の条件を満たす必要がある。
min[i] ≦ max[i] (i: 配列のインデックス)

関連項目
8) GeographicExtent
用途

地理的範囲

要素

型

名前

説明

PolygonboundingPolygon

ポリゴン

GeographicBoundingBox

boundingBox

矩形

Stringdescription

記述

説明boundingPolygon、 boundingBox、 description のいずれか１つのみ null 以外の値を指定する。

関連項目

Polygon 構造体、GeographicBoundingBox 構造体

779) InverseFlattening
用途

楕円体扁平率

要素

型

名前

説明

DoubleinverseFlattening

逆扁平率boolean

isInfinite

説明関連項目10) OperationMetadata
説明サービスが提供可能な操作（Operation）の詳細情報

要素

型

名前

説明

Stringoperation

提供可能な操作の名称

String[]format応答のファイル形式（MIME Type）

URL[]

onlinerResource

Get メソッド/POST メソッドの要求先 URL（※
POST メソッドの URL は、POST メソッドを実装している場合のみ）

StringParameter.
name

操作が持つパラメータの名称

StringParameter.
value

操作が持つパラメータの名称に対応する値

StringextendedCap
abilities

本体持つ操作に対し、実装者が拡張した内
容

関連項目
11) Polygon
用途

ポリゴン

要素

型

名前

説明

Ring

exterior

外周
null を指定してはならない

Ring[]

内周

interior

穴あきポリゴンを定義する場合に指定する。穴あきポリゴンでない場合は null を指定する。

説明

1 つの外周と複数の内周からなる多角形を定義する。
外周や内周が内部でもつ座標参照系はすべて同一のものでなくてはならない。

関連項目

Ring 構造体

7812) Position
用途

位置

要素

型

名前

説明

double[]

coord

座標

String

crs

座標参照系

説明

座標配列には空間参照系で定義された順番で値を格納する。

関連項目
13) PrimeMeridian
用途

本初子午線

要素

型

名前

説明

StringmeridianID

本初子午線の識別子

DoubleGreenwichLongtitude

本書子午線グリニッジ経度

Stringremark注釈

説明
関連項目
14) ResponsibleParty
説明

問合せ先情報

要素

型

名前

説明

ContactPersonPrimary

contactPersonPrimary

問合せ先名称情報

StringcontactPosition

問合せ先の役職

ContactAddresscontactAddress

問合せ先住所情報

StringcontactVoiceTelephone

問合せ先電話番号

StringcontactFacsimileTelephone

問合せ先 FAX 番号

StringcontactElectronicMailAddress

問合せ先電子メールアドレ

関連項目

ス

ContactPersonPrimary 構造体、ContactAddress 構造体15) Ring
用途

リング

要素

型

名前

説明

Position[]

coords

座標列

説明

交差しない閉図形を定義する。始点と終点は一致する必要がある。座標列は 3 つ以
上の点を含まなければならない。

関連項目

Position 構造体

7916) TemporalExtent
用途

時間範囲

要素

型

名前

説明

DateTime

begin

開始時点
終了時点以前のすべての期間を指定する場合は nullを指定する

DateTime

終了時点

end

開始時点以後のすべての期間を指定する場合は null
を指定する

説明

begin、 end のいずれか１つは null でない値を指定しなければならない。
また、 begin、 end ともに値を指定する場合は begin ≦ end でなければならない。

関連項目
17) VerticalExtent
用途

鉛直範囲

要素

型

名前

説明

DoubleminimumValue

最低値

DoublemaximumValue

最大値

StringunitOfMeasure

測定単位

Datum

verticalDatum

鉛直原子

説明
関連項目

Datum 構造体80

3 -2 -5 -6 .

例外

1) InvalidUpdateSequence
用途

サービスメタデータの更新連番の異常

説明

更新連番の大小関係が異常な場合や大小関係を評価できない場合に発生する。
例外の表現方法は処理系ごとに定義する共通仕様に従う。

関連項目

GetCapabilities 関数

2) InvalidArgument
用途

関数の引数に不正な値が指定された場合の例外

説明

null を許可しない引数に null が指定された場合に発生する。
例外の表現方法は処理系ごとに定義する共通仕様に従う。

関連項目

すべての関数

3) InvalidValue
用途

構造体に不正な値が指定された場合の例外

説明

null を許可しない構造体要素に null が指定された場合に発生する。ただし、関数の引数に指定された構造体の場合は InvalidArgument を発生する。
例外の表現方法は処理系ごとに定義する共通仕様に従う。

関連項目

すべての関数

4) UpdateFailure
用途

データベースの追加、更新、削除に失敗した場合の例外

説明

各種更新系の処理で失敗した場合に発生する。
例外の表現方法は処理系ごとに定義する共通仕様に従う。

関連項目

データベースのトランザクション処理を行うすべての関数

81

4. 標準インタフェース実装仕様
3 章で示した関数仕様に対し、アプリケーションプログラムとして実装を行う場合に必要となる各関数の機能の説明、利用条件、リクエストの内容、レスポンスの内容、例
外処理、および各構造体実装時の注意事項について示す。
4-1 節では、POST/GET 利用のための実装仕様について示す。
4-2 節では、SOAP と WSDL 利用のための実装仕様について示す。

4-1. POST/GET 利用のための実装仕様
4-1-1. 地理情報に関するインタフェース
地理情報に関するインタフェースにおける POST/GET 利用のための実装仕様は、
ISO19128Web Map Server Interface に準ずる。POST/GET 利用のためのインタフ

ェースを実装する場合には、ISO19128

Web Map Server Interface のレスポンスの規則、座標系、リクエストパラメータの規則、各関数の記述規則等に従うものとする。
ISO19128 において規定している Web Map Server Interface のプロトコルバージョ
ンは、「1.3.0」である。

4-1-2. 地名辞典に関するインタフェース
地名辞典に関するインタフェースにおける POST/GET 利用の実装仕様は、特に定めない。
本ガイドラインにおいては、地名辞典に関するインタフェースに関しては、4-2-4 に示す SOAP と WSDL 利用の実装を推奨する。

4-1-3. メタデータ検索に関するインタフェース
メタデータ検索に関するインタフェースにおける POST/GET 利用の実装仕様は、
OGC Catalogue Service Specification において規定されている、HTTP を通信プロト
コルとした実装仕様である Catalogue Services for the Web（CSW）に準ずる。
POST/GET 利用のためのインタフェースを実装する場合には、CSW のレスポンスの規則、リクエストパラメータの規則、各関数の記述規則等に従うものとする。
CSW において規定しているプロトコルバージョンは、「2.0.0」である。

82

4-2. SOAP と WSDL 利用のための実装仕様
4-2-1. 共通事項
4 -2 -1 -1 .

トラ ン ス ポートプ ロ トコ ル

SOAP1.1 では、通信プロトコルとして、HTTP のほか、SMTP、FTP などの利用が可能であるが、本ガイドラインでは、HTTP での SOAP 通信を実装することとする。
4 -2 -1 -2 .

例外処理

無効なリクエストが発行された場合、実装されていないサービスが要求された場合などは、例外処理として、Fault 要素を含む SOAP メッセージを送付する。Fault 要素には子要素として detail 要素を設け、以下のアプリケーション固有のメッセージを付与す
るものとする。
<someFault><message>メッセージ</message><code>コード</code></someFault>（someFault は例外の内容を表す任意の文字列）代表的な例として以下のものを定義する。
コード

メッセージ

999

この関数は未実装です。

001

パラメータが不正です。

002

セッションがタイムアウトしました。

使用するすべてのコードはインタフェース実装ごとに ServiceMetadata 構造体で定
義する。

83

4 -2 -1 -3 .

座標参照系

本ガイドラインで取り扱う座標系は、JIS X 7115 の 付属書２（規定）「日本における座標参照系の表記」に従い、測地原子と座標系の組み合わせで表記し、表 4-1 のとおりとする。
表 4-1
必須

○

本ガイドラインで取り扱う座標系

座標参照系
JGD2000 / (B, L)
JGD2000 / (B, L, h)
JGD2000, TP / (B, L), H
JGD2000 / (X, Y, Z)
WGS84 / (B, L)
WGS84 / (B, L, h)
WGS84, TP / (B, L), H
WGS84 / (X, Y, Z)
JGD2000 / [Zone No.]※3) (X, Y)

内容日本測地系 2000 ／ 緯度経度
日本測地系 2000 ／ 緯度経度および高さ※1)
日本測地系 2000 ／ 緯度経度および高さ※2)
日本測地系 2000 ／ 3 次元座標
世界測地系 ／ 緯度経度
世界測地系 ／ 緯度経度および高さ※1)
世界測地系 ／ 緯度経度および高さ※2)
世界測地系 ／ 3 次元座標
日本測地系 2000 ／ 平成 14 年国土交通省告示第 9 号に定める平面直角座標系
日本測地系 2000 ／ UTM 座標系
日本測地系 2000 ／ 平成 14 年国土交通省告示第 9 号に定める平面直角座標系（高さを含む）※2)
日本測地系 2000 ／ UTM 座標系（高さを含む）※

JGD2000 / [Zone No.]※4) (E, N)
JGD2000, TP / [Zone No.]※3) (X, Y), H
JGD2000, TP / [Zone No.]※4) (E, N), H

2)※3)

WGS84 / [Zone No.]

世界測地系 ／ 平成 14 年国土交通省告示第 9号に定める平面直角座標系
世界測地系 ／ UTM 座標系
世界測地系 ／ 平成 14 年国土交通省告示第 9号に定める平面直角座標系（高さを含む）※2)
世界測地系 ／ UTM 座標系（高さを含む）※2)(X, Y)

WGS84 / [Zone No.]※4) (E, N)
WGS84, TP / [Zone No.]※3) (X, Y), H
WGS84, TP / [Zone No.]※4) (E, N), H※1：楕円体高※2：東京湾平均海面からの高さ※3：平成 14 年国土交通省告示第 9 号に定める平面直角座標系で用いられる 1〜19 までのゾーン No.のいずれか※4：UTM 座標系で用いられる 1〜60 までのゾーン No.のいずれか

84

4 -2 -1 -4 .

データ タ イプ

エンコーディングは、XML Schema Part2 に準拠する。なお本ガイドライン中で取り 扱 わ れ て い る 変 数 の デ ー タ 型 は 、 同 規 格 に 準 拠 し た デ ー タ 型 （ XML Schema
DataType）とする（表 4-2）。
表 4-2
ガイドライン表記データ型
整数
実数
文字
日時
論理
バイト

4 -2 -1 -5 .

データ型

XML Schema DataTypelongdoublestringdateTimebooleanbase64Binary

文字エンコーディング

SOAP メッセージの文字エンコーディングは Basic Profile 1.0 で規定されている以下のものを採用する。
¾

UTF-8

¾

UTF-1685

4-2-2. 各サービスに共通するインタフェース
4 -2 -2 -1 .

GetCapabilities

1) 機能説明
サービス提供者（以下、プロバイダ）が提供するサービスの内容（サービスメタデー
タ）を取得する。主な用途は、以下のとおり。
¾

サービス利用者（以下、リクエスタ）が取扱可能な標準インタフェースのバージ
ョンと、サービス提供者（以下、プロバイダ）が提供可能な標準インタフェースのバージョンの互換性確認を行う。

¾

プロバイダが提供するサービスに関しての利用条件を把握する。

¾

なおサービスメタデータは、プロバイダが提供するサービスの内容についてを示したものである。サービスメタデータの内容に関わるサービス更新がされた場合（地図サービスにおけるレイヤ追加など）は、メタデータが更新され、追随して連番が加算される。

2) 利用条件
リクエスタは、サービス接続直後にバージョンを取得し互換性を確認する。
3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型
String名前version

入力規則

説明

指定しない場合は Null を

リクエスタが利用する標準インタフェース

入力するのバージョン番号を指定する

Stringservice

必須要求するサービスの識別子を指定する

Stringrequest

必須要求名”GetCapabilities”を指定する

Stringformat指定しない場合は Null をサービスメタデータの出力フォーマットを

入力する

指定する

指定しない場合は Null を

リクエスタがすでにキャッシュしているサー

入力する

ビスメタデータの連番を指定する

String(i)

updateSequence

versionリクエスタが使用可能な共通インタフェースのバージョン番号を指定する。バージョ

ン番号を指定しない場合は、プロバイダが提供可能なバージョンのうち、最新のバージョンを指定したことと同様の動作となる。
リクエスタが指定したバージョン番号とプロバイダが返すバージョン番号の関係は、以下のとおり。

86リクエスタが指定するバージョン番号

プロバイダが返すバージョン番号

指定なし

提供可能なバージョンのうち最新のバージョン番号を返す

指定あり

指定されたバージョン以下での最新のバージョン番号を返す（プロバイダが提供可能なバージョン以下のバージョンを指・指定したバージョンが存在する場合は、指定したバージョン

定した場合）

番号を返す
・指定したバージョン以下のバージョンが存在しない場合
は、提供可能なバージョンのうち最も古いバージョン番号を返す
提供可能なバージョンのうち最新のバージョン番号を返す

指定あり（プロバイダが提供可能なバージョンより大きいバージョンを指定した場合）【書式】
共通インタフェースバージョン番号は、小数点一桁までの数字で定義される。
(ii)

service

要求するサービスの識別子を指定する。
【書式】
service は、以下のいずれかの値によって定義される。

(iii)

¾

地理情報

“WMS”

¾

地名辞典（空間参照系管理）

“SRS”

¾

地名辞典（地名辞典管理）“Gazetteer”¾

メタデータ検索“CSW”

request

要求名は、”GetCapabilities”でなければならない。
【書式】“GetCapabilities”を指定する。
(iv)

format

レスポンスの書式を指定する。省略された場合は、”text/xml”とみなされる。
【書式】
format は、有効な MIME-Type の文字列で定義される。

87

(v)

updateSequence

リクエスタがサービスメタデータをキャッシュしていた場合、キャッシュしているメ
タデータの連番を指定することで、プロバイダとの差異を確認する。サービスメタデー
タの連番を指定しない場合は、プロバイダが提供可能なバージョンのうち、最新の連番を指定したことと同様の動作となる。リクエスタが指定した連番とプロバイダが返す連番などの関係は、以下のとおり。
リクエスタが指定する連番

プロバイダが返す連番

指定なし

最新の連番を返す（最新のサービスメタデータを返す）

指定あり

最新の連番を返す（プロバイダ保有の連番と同じの場合）（NULL 空のサービスメタデータを返す）

指定あり

最新の連番を返す（プロバイダ保有の連番以下の場合）（最新のサービスメタデータを返す）

指定あり

例外処理：指定した連番は無効（プロバイダ保有の連番より大きい場合）【書式】
サービスメタデータの連番は、整数値で定義される。
4) レスポンスの内容
以下のとおりである。
型
ServiceMetadata 構造体

説明
要求内容に沿ったサービスメタデータ型のデータを送信する

サービスメタデータの内容は、構造体「ServiceMetadata」の型として送信される。
ServiceMetadata は、要求するサービスの種類により異なる。以下に、本ガイドライン
で規定するサービスの種類に対応する ServiceMetadata 構造体を示す。
サービスの種類

識別子

応答される ServiceMetadata 構造体

地理情報

WMS

WMSServiceMetadata

地名辞典（空間参照系管理）

SRS

SRSServiceMetadata

地名辞典（地名辞典管理）

Gazetteer

GazetteerServiceMetadata

メタデータ検索

CSW

CSWServiceMetadata

5) 例外処理
リクエストしたサービスメタデータの連番が、プロバイダで保有する連番よりも大きい場合など（3-2-5-6.1)に示した InvalidUpdateSequence を利用する）。

88

4-2-3. 地理情報に関するインタフェース
地理情報に関するインタフェースにおける SOAP と WSDL 利用の実装仕様は、本ガ
イドラインにおいては特に定めない。
本ガイドラインにおいては、地理情報のインタフェースに関しては、4-1-1 に示すと
おり、ISO19128 に基づく POST/GET 利用の実装を推奨する。

89

4-2-4. 地名辞典（空間参照系管理）に関するインタフェース
4 -2 -4 -1 .

SearchLRS

1) 機能説明
地理識別子による空間参照系を検索する。空間参照系が１件もヒットしなかった場合
は要素数 0 の配列を返す。
2) 利用条件
特になし。
3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型

名前

StringnameGeographicExtent

domainOfValidity

Stringtheme

StringoverallOwner

String[]locationType

AuthResult

authResult

(i)

入力規則
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
必須指定しない場合は Null を入
力する

説明
名称
地理的範囲
分類
管理者
関連する場所型の名称複数指定された場合は AND 検索
を行う
認証結果
ユーザ認証を必要としないサービスの場合は null を指定する

name
地理識別子による空間参照系の名称を指定する。

【書式】
特になし。文字列で定義される。
(ii)

domainOfValidity

地理識別子による空間参照系が含まれる地理的範囲の情報を指定する。
【書式】
GeographicExtent 構造体を用いて、東西南北の境界座標を定義する。

90

(iii)

theme

地理識別子による空間参照系が持つ分類（主題）を指定する。
【書式】
特になし。文字列で定義される。
(iv)

overallOwner

地理識別子による空間参照系の管理者の名称を指定する。
【書式】
特になし。文字列で定義される。
(v)

locationType

地理識別子による空間参照系が持つ場所型の名称を指定する。複数指定可能であり、複数指定は配列として指定する。複数指定された場合は、AND 検索となる。
【書式】
場所型の名称（String）の配列として定義される。
(vi)

authResult

認証結果を指定する。
ユーザ認証を必要としないサービスの場合は null を指定する。
【書式】
AuthResult 構造体によって定義される。
4) レスポンスの内容
以下のとおりである。
型
LRS 構造体の配列

説明
リクエスト内容に応じた地理識別子による空間参照系のリストを送信する【関連する構造体】¾

GeographicExtent 構造体¾

AuthResult 構造体5) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。

91

4 -2 -4 -2 .

GetLRS1) 機能説明
地理識別子による地理識別子による空間参照系を取得する
2) 利用条件
特になし。
3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型

名前

Stringname

AuthResult

authResult

(i)

入力規則
指定しない場合は Null を入力する
指定しない場合は Null を入
力する

説明
名称
認証結果
ユーザ認証を必要としないサービスの場合は null を指定する

name
地理識別子による空間参照系の名称を指定する。

【書式】
特になし。文字列で定義される。
(ii)

authResult

認証結果を指定する。
ユーザ認証を必要としないサービスの場合は null を指定する。
【書式】
AuthResult 構造体によって定義される。
4) レスポンスの内容
以下のとおりである。
型
LRS 構造体

説明
リクエスト内容に応じた地理識別子による空間参照系を送信する【関連する構造体】¾

AuthResult 構造体5) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。
92

4 -2 -4 -3 .

SearchLocationType1) 機能説明登録されている場所型を検索する。
lrs に地理識別子による空間参照系の名称を指定することで、特定の空間参照系に関連する場所型を検索することが可能である。
ま た 、 場 所 型 の Nesting 関 連 の 条 件 を 指 定 す る 場 合 は 、 parentType ま た は
childType に関連する場所型の名称を指定する。
地理的範囲が指定された場合は、場所型が持つ地理的範囲と一部でも重なるものを返す。
条件に合致する場所型が存在しない場合にはサイズ 0 の配列を返す。
2) 利用条件
特になし。
3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型
StringStringPITypeGeographicExtent
StringString[]String[]String[]AuthResult

(i)

名前
name
theme
identification
territoryOfUse
owner
lrs
parentTypechildTypeauthResult

入力規則
指定しない場合は Null を入力する
指定しない場合は Null を入力する
必須
指定しない場合は Null を入力する
必須
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する

説明
名称
分類
PI タイプ
地理的範囲
管理者
関連する空間参照系の名称
親の場所型の名称
子の場所型の名称
認証結果

name
場所型の名称を指定する。一部のみの指定も可能である。名称を特定しない場合はnull を指定する。
【書式】
場所型の名称は、文字列型によって定義される。
(ii)

theme

場所型の分類を指定する。一部のみの指定も可能である。分類を特定しない場合はnull を指定する。
【書式】

93

場所型の分類は、文字列型によって定義される。
(iii)

identification

PI タイプの名称を指定する。PI タイプの各要素の値は一部のみの指定が可能。
【書式】
PI タイプの名称は、PIType 型によって定義される。
(iv)

territoryOfUse

場所型が含まれる地理的範囲を指定する。
【書式】
地理的範囲は、GeographicExtent 型によって定義される。
(v)

owner

場所型の管理者の名称を指定する。
【書式】
管理者の名称は、文字列型によって定義される。
(vi)

lrs

場所型が関連する地理識別子による空間参照系の名称を指定する。空間参照系を特に限定しない場合は、null を指定する。複数の名称を指定できるが、複数指定した場合はOR 検索となる。
【書式】
地理識別子による空間参照系の名称は、文字列型の配列として定義される。
(vii) parentType
親子関連の親に相当する場所型の名称を指定する。複数指定可能であるが、親関連の条件を指定しない場合は、null を指定する。
【書式】
親の場所型の名称は、文字列型の配列として定義される。
(viii) childType
親子関連の子に相当する場所型の名称を指定する。複数指定可能であるが、子関連の94

条件を指定しない場合は、null を指定する。
【書式】
子の場所型の名称は、文字列型の配列として定義される。
(ix)

authResult

認証結果を指定する。ユーザ認証を必要としないサービスの場合は、null を指定する。
【書式】
認証結果は、authResult 構造体により定義される。
4) レスポンスの内容
以下のとおりである。
型
LocationType 構造体の配列

説明
リクエスト内容に合致する場所型を、LocationType 構造体として返す。複数の場所型が合致した場合は、LocationType 構造体の配列として返す。

リクエスト時、引数に地理的範囲が指定された場合は、場所型が持つ地理的範囲と一部でも重なるものを返す。
条件に合致する場所型が存在しない場合にはサイズ 0 の配列を返す。
【関連する構造体】¾

PIType 構造体¾

GeographicExtent 構造体¾

LocationType 構造体¾

AuthResult 構造体5) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。

95

4 -2 -4 -4 .

GetLocationType1) 機能説明登録されている場所型を取得する。
2) 利用条件
・ 場所型の名称が明らかである場合に利用する。場所型の名称が明らかでない場
合は、SearchLocationType 関数を利用する。
3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型
StringAuthResult

(i)

名前
name
authResult

入力規則
必須
指定しない場合は Null を入力する

説明
名称
認証結果

name
場所型の名称を指定する。

【書式】
場所型の名称は、文字列型によって定義される。
(ii)

authResult

認証結果を指定する。ユーザ認証を必要としないサービスの場合は、null を指定する。
【書式】
認証結果は、authResult 構造体により定義される。
4) レスポンスの内容
以下のとおりである。
型
LocationType 構造体の配列

説明
リクエスト内容に合致する場所型を、LocationType 構造体として返す。

条件に合致する場所型が存在しない場合にはサイズ 0 の配列を返す。
【関連する構造体】¾

LocationType 構造体¾

AuthResult 構造体

965) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。

97

4 -2 -4 -5 .

SearchLocationTypeAssociation

1) 機能説明登録されている場所型関連を検索する。
2) 利用条件
特になし。
3) リクエストの内容
リクエストパラメータは、以下のとおりである。
String型

名前childLocationType

StringparentLocationType

AuthResult

authResult

(i)

入力規則
parentLocationType を指定しない場合は必須
childLocationType を指定しない場合は必須指定しない場合は Null を入力する

説明子となる場所型関連の名称
親となる場所型関連の名称
認証結果

childLocationType子となる場所型関連の名称を指定する。parentLocationType を指定しない場合は、必須である。
【書式】
子場所型は、文字列型として定義される。
(ii)

parentLocationType

親となる場所型関連の名称を指定する。childLocationType を指定しない場合は、必
須である。
【書式】
親場所型は、文字列型として定義される。
(iii)

authResult

認証結果を指定する。ユーザ認証を必要としないサービスの場合は、null を指定する。
【書式】
認証結果は、AuthResult 構造体により定義される。

984) レスポンスの内容
以下のとおりである。
型
LocationTypeAssociation
構造体

説明

子場所型を指定しない場合は親場所型で指定された場所型のすべての子場
所型を返す。
親場所型を指定しない場合は子場所型で指定された場所型のすべての親場
所型を返す。

【関連する構造体】¾

LocationTypeAssociation 構造体¾

AuthResult 構造体5) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。

99

4-2-5. 地名辞典（地名辞典管理）に関するインタフェース
4 -2 -5 -1 .

SearchPI

1) 機能説明登録されている場所インスタンスの PI 部分を検索する。
地理的範囲で地理的境界またはポリゴンを指定した場合は、一部でも地理的範囲が交差する PI を検索する。
条件に合致する PI が存在しない場合はサイズ 0 の配列を返す。
（A）routeCondition.cascadingLevel > 0 の場合
他 の 地 名 辞 典 管 理 サ ー ビ ス の SearchPI 関 数 を 呼 び 出 す 場 合 は
routeCondition.cascadingLevel の 値 を 1 だ け 減 じ 、 か つ routeConditionrouteHistory の 末 尾 に 自 サ ー バ を 追 加 し な け れ ば な ら な い 。 ま た 、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
（B）routeCondition.cascadingLevel = 0 の場合
他の地名辞典管理サービスの SearchPI 関数を呼び出すことはできない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
（C）routeCondition.cascadingLevel < 0 の場合
他の地名辞典管理サービスの SearchPI 関数はrouteCondition.routeDefinition の順に呼び出さなければならない。
2) 利用条件
特になし。

100

3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型
RouteCondition
StringStringString[]GeographicExtent
TemporalExtent
StringString[]AuthResult(i)

名前
routeConditiongazetteer
locationType
geographicIdentifier
geographicExtent
temporalExtent
administrator
searchWord
authResult

入力規則
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する

説明他サービス呼び出し条件
地名辞典の名称
場所型の名称
地理識別子
地理的範囲
時間範囲
管理者
検索語句
認証結果

routeCondition
他サービス呼び出し条件を指定する。

【書式】
他サービス呼び出し条件は、RouteCondition 構造体によって定義される。
(ii)

gazetteer

PI が含まれる地名辞典の名称を指定する。地名辞典を特定しない場合は、null を指
定する。
【書式】
地名辞典の名称は、文字列型によって定義される。
(iii)

locationType

PI が関連する場所型の名称を指定する。場所型を特定しない場合は、null を指定する。
【書式】
場所型の名称は、文字列型によって定義される。
(iv)

geographicIdentifier

PI に含まれる地理識別子を指定する。複数指定可能であり、複数指定する場合は地配列として指定する。地理識別子を特定しない場合は、null を指定する。
【書式】
地理識別子は、文字列型の配列によって定義される。

101

(v)

geographicExtent

PI が含まれる地理的範囲を指定する。地理的範囲を限定しない場合は、null を指定する。
【書式】
地理的範囲は、GeographicExtent 構造体により定義される。
(vi)

temporalExtent

PI が持つ有効な時間範囲を指定する。時間範囲を限定しない場合は、null を指定する。
【書式】
時間範囲は、TemporalExtent 構造体により定義される。
(vii) administrator
PI の管理者の名称を指定する。管理者を特定しない場合は、null を指定する。
【書式】
管理者の名称は、文字列型により定義される。
(viii) searchWord
検索語句を指定する。検索語句は、場所インスタンスの PI の値または代替地理識別子を対象とした全文検索用フリーワードとして用いられる。語句が複数指定された場合は、地理識別子、または代替地理識別子のいずれかがすべての検索語句を含むものを検索する。
検索語句を設定しない場合は null を指定する。
【書式】
検索語句は、文字列型の配列として定義される。
(ix)

authResult

認証結果を指定する。ユーザ認証を必要としないサービスの場合は、null を指定する。
【書式】
認証結果は、AuthResult 構造体により定義される。

102

4) レスポンスの内容
以下のとおりである。
型
PI 構造体の配列

説明
指定した条件に合致する PI を返す。複数合致した場合は、PI 構造体の配列として返す。

【関連する構造体】¾

GeographicExtent 構造体¾

TemporalExtent 構造体¾

PI 構造体¾

RouteCondition 構造体¾

AuthResult 構造体5) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。

103

4 -2 -5 -2 .

GetLocationInstance1) 機能説明登録されている場所インスタンスを取得する。
指定した PI に合致する場所インスタンスを取得する。
地名辞典を特定して場所インスタンスを取得することもできる。
PI が複数指定された場合は、指定された順に対応する場所インスタンスを返す。PIに対応する場所インスタンスが存在しない場合は、配列中の当該要素に null を格納して返す。
条件に合致する場所インスタンスが存在しない場合はサイズ 0 の配列を返す。
（A）routeCondition.cascadingLevel > 0 の場合
他の地名辞典管理サービスの GetLocationInstance 関数を呼び出す場合はrouteCondition.cascadingLevel の 値 を 1 だ け 減 じ 、 か つ routeConditionrouteHistory の 末 尾 に 自 サ ー バ を 追 加 し な け れ ば な ら な い 。 ま た 、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(B)routeCondition.cascadingLevel = 0 の場合
他の地名辞典管理サービスの GetLocationInstance 関数を呼び出すことはできない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(C)routeCondition.cascadingLevel < 0 の場合
他 の 地 名 辞 典 管 理 サ ー ビ ス の

GetLocationInstancerouteCondition.routeDefinition の順に呼び出さなければならない。
2) 利用条件
特になし。

104

関 数 は

3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型
RouteCondition
StringPI[]
AuthResult(i)

名前
routeConditiongazetteerpiauthResult

入力規則
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する
指定しない場合は Null を入力する

説明他サービス呼び出し条件
地名辞典の名称
PI
認証結果

routeCondition
他サービス呼び出し条件を指定する。

【書式】
他サービス呼び出し条件は、RouteCondition 構造体によって定義される。
(ii)

gazetteer

PI が含まれる地名辞典の名称を指定する。地名辞典を特定しない場合は、null を指
定する。
【書式】
地名辞典の名称は、文字列型によって定義される。
(iii)

pi

PI を指定する。複数の PI を指定することができ、その場合は PI の配列を指定する。
PI を特定しない場合は、null を指定する。
【書式】
PI は、PI 構造体によって定義される。
(iv)

authResult

認証結果を指定する。ユーザ認証を必要としないサービスの場合は、null を指定する。
【書式】
認証結果は、AuthResult 構造体により定義される。

1054) レスポンスの内容
以下のとおりである。
型
LocationInstance 構造体の配列

説明
検索条件に合致する場所インスタンスを、LocationInstance 構造体の配列として返す。

【関連する構造体】¾

PI 構造体¾

LocationInstance 構造体¾

RouteCondition 構造体¾

AuthResult 構造体5) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。

106

4 -2 -5 -3 .

SearchLocationInstanceAssociation

1) 機能説明複数場所インスタンス関連を検索する。
条件に合致する場所インスタンス関連が存在しない場合はサイズ 0 の配列を返す。
（A）routeCondition.cascadingLevel > 0 の場合
他の地名辞典管理サービスの SearchLocationInstanceAssociation 関数を呼び 出 す 場 合 は routeCondition.cascadingLevel の 値 を 1 だ け 減 じ 、 か つrouteCondition routeHistory の末尾に自サーバを追加しなければならない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(B)routeCondition.cascadingLevel = 0 の場合
他の地名辞典管理サービスの SearchLocationInstanceAssociation 関数を呼び出すことはできない。また、routeCondition.routeHistory で指定された呼び出し経路に自サービスが含まれている場合はサイズ 0 の配列を返す。
(C)routeCondition.cascadingLevel < 0 の場合
他の地名辞典管理サービスの SearchLocationInstanceAssociation 関数は
routeCondition.routeDefinition の順に呼び出さなければならない。
Nesting 関連を検索する場合は source を child に、target を parent に読み替える。
2) 利用条件
特になし。
3) リクエストの内容
リクエストパラメータは、以下のとおりである。
型
RouteCondition
String名前routeCondition
sourceGazetteer

StringsourceGeographicIdentifier

StringtargetGazetteer

StringtargetGeographicIdentifier

String[]AuthResult

phaseauthResult

入力規則
必須
指定しない場合は Nullを入力する
指定しない場合は Nullを入力する
指定しない場合は Nullを入力する
指定しない場合は Nullを入力する
必須指定しない場合は Null
を入力する

107

説明
他サービス呼び出し条件
関連元場所インスタンスの地名辞
典の名称
関連元場所インスタンスの識別子
関連先場所インスタンスの地名辞
典の名称
関連先場所インスタンスの地理識
別子
位相の名称
認証結果

(i)

routeCondition
他サービス呼び出し条件を指定する。

【書式】
他サービス呼び出し条件は、RouteCondition 構造体によって定義される。
(ii)

sourceGazetteer

関連元場所インスタンスの地名辞典の名称を指定する。関連元場所インスタンスの地
名辞典を特定しない場合は null を指定する。
【書式】
関連元場所インスタンスの地名辞典の名称は、文字列型として定義される。
(iii)

sourceGeographicIdentifier

関連元場所インスタンスが含む地理識別子を指定する。関連元場所インスタンスを特定しない場合は null を指定する。
【書式】
関連元場所インスタンスが含む地理識別子は、文字列型として定義される。
(iv)

targetGazetteer

関連先場所インスタンスの地名辞典の名称を指定する。関連先場所インスタンスの地
名辞典を特定しない場合は null を指定する。
【書式】
関連先場所インスタンスの地名辞典の名称は、文字列型として定義される。
(v)

targetGeographicIdentifier

関連先場所インスタンスが含む地理識別子を指定する。関連先場所インスタンスを特定しない場合は null を指定する。
【書式】
関連先場所インスタンスが含む地理識別子は、文字列型として定義される。
(vi)

phase

位相の名称を指定する。個々の値には、

108

“Nesting” または“Equivalent” を指定する。
複数指定した場合は OR 検索を行う。
【書式】
位相の名称は複数指定することができ、文字列型の配列として定義される。
(vii) authResult
認証結果を指定する。ユーザ認証を必要としないサービスの場合は、null を指定する。
【書式】
認証結果は、AuthResult 構造体により定義される。
4) レスポンスの内容
以下のとおりである。
型
LocationInstanceAssociation
構造体の配列説明
検索条件に合致する場所インスタンス関連を、LocationInstanceAssociation 構造
体の配列として返す。
検索条件に合致する場所インスタンス関連が存在しない場合は、サイズ 0 の配列を返す。

【関連する構造体】¾

LocationInstanceAssociation 構造体¾

RouteCondition 構造体¾

AuthResult 構造体5) 例外処理
定義域以外の値が指定された場合など（3-2-5-6 に示す構造体により報告する）。

109

4-2-6. メタデータ検索に関するインタフェース
メタデータ検索に関するインタフェースにおける SOAP と WSDL 利用の実装仕様は、
OGC Catalogue Service Specification において規定されている、HTTP を通信プロト
コルとした実装仕様である Catalogue Services for the Web（CSW）に準ずる。SOAPと WSDL 利用のためのインタフェースを実装する場合には、CSW のレスポンスの規則、
リクエストパラメータの規則、各関数の記述規則等に従うものとする。
本ガイドラインで規定する CSW のプロトコルバージョンは、「2.0.0」とする。

110

5. 関数仕様作成に関する取り決め
5-1. 関数仕様作成に関する取り決め
アプリケーションプログラムを開発する場合、そのアプリケーションプログラムで使用する関数は、本
ガイドラインの「標準インタフェース関数仕様」で定める関数とする。
アプリケーションプログラムで使用する関数が、本ガイドラインの「標準インタフェース関数仕様」で定める関数に該当しない場合には、当該アプリケーションプログラムの開発者は、使用する関数について関数仕様を作成する。
関数仕様は、以下の 2 種類を作成する。
（１） 使用する関数一覧（２） 各関数の説明文書【解説】
アプリケーションプログラムの開発者は、当該アプリケーションプログラムで使用する関数が本ガイドラインの「標準インタフェース関数仕様」で定める関数に該当しない
場合に、関数の概要を説明する「使用する関数一覧」および関数の詳細を説明する「各関数の説明文書」の 2 種類を作成しなくてはならない。

111

（１） 使用する関数の一覧
アプリケーションプログラムが使用する関数の一覧を作成する。一覧表には、使用する各関数について「機能分類」「機能」「内容」「関数名」を記載しなくてはならない（表 5-1）。記載例を表 5-2 に示す。

表 5-1

使用する関数一覧の記載項目
要求度

最大記述

/条件

回数

クラス

必須

N

文字列

任意

1

文字列

必須

1

項目

定義

データ型

関数

アプリケーションプログラムで使用
する関数

機能分類

機能について、それをいくつかのまとまりでとりまとめたもの

機能

関数が行う処理を簡潔に説明
したもの

内容

関数が行う処理内容の概要

文字列

必須

1

関数名

関数の名前

文字列

必須

1

表 5-2

使用する関数一覧の記載例

機能分類
初期設定

機能

関数名

サービ スメタデータ取 利用可能な操作の情報を取 GetCapabilities
得

･･･

内容
得する

･･･

･･･

112

･･･

（２） 各関数の説明文書一覧として作成したアプリケーションプログラムが使用する各関数について、以下の項目を記載した説明文書を作成する。
¾

関数名

¾

説明

¾

引数

¾

戻り値

¾

関連項目

記載事項の詳細を表 5-3 に示す。関数の引数および戻り値の詳細は、表 5-4 および表 5-5 のとおりである。記載例を表 5-6 に示す。

表 5-3

各関数の説明文書記載事項
要求度

最大記述

/条件

回数

クラス

必須

N

項目

定義

データ型

関数説明文書アプリケーションプログラムで使用する
各関数についての説明

関数名

関数の名称

文字列

必須

1

説明

その関数が行う処理内容の概要

文字列

必須

1

引数

関数を呼び出すときに相手に渡す

クラス

必須

N

値。呼び出された側では、この引数

表 5-4
必須

1

任意（引

N

に応じて処理を行う
戻り値
関連項目

関数が処理を終了し、処理の結果クラスとして返す値

表 5-5

当該関数で参照する他の関数

文字列

数と戻り値
で、構造
体を用い
る場合

113

表 5-4各関数の説明文書記載事項（引数）
要求度

最大記述

/条件

回数

クラス

必須

N

項目

定義

データ型

引数

関数を呼び出すときに相手に渡す値。呼び出された側では、この引数に応じて処理を行う

引数の型

引数のデータ型

文字列

必須

1

引数の名前

引数の名称

文字列

必須

1

引数の説明

引数が意味する内容、引数の定義

文字列

必須

1

文字列

必須

1

要求度

最大記述

/条件

回数

域
引数の要求度/当該関数に対し、当該引数が必須

条件

であるか任意であるかの区別。また、その場合の条件。

表 5-5

各関数の説明文書記載事項（戻り値）

項目

定義

データ型

戻り値

関数が処理を終了し、処理の結果

クラス

必須

1

として返す値
戻り値の型

戻り値の型

文字列

必須

1

戻り値の説明戻り値が意味する内容

文字列

必須

1

114

表 5-6関数の説明文書の記載例

名称

GetCapabilities

機能

サービスメタデータを取得する

引数

型

名前

説明

Stringversion

準拠する標準インタフェースのバージョン番号
該当するバージョンのサービスメタデータのみを取得する
指定なしの場合は、最新バージョン

Stringservice

サービスタイプ
要求するサービスの識別子
例）Stringrequest

地理情報

“WMS”

地名辞典（空間参照系管理）“SRS”

地名辞典（地名辞典管理）“Gazetteer”

メタデータ検索“CSW”

要求名”GetCapabilities”でなければならない

Stringformat

サービスメタデータの出力フォーマット
応答をどのようなフォーマット（MIME Type）で返すかを指定する
省略された場合は、”text/xml”とみなされる

StringupdateSeq

サービスメタデータの連番

uence

サービス呼び出し側がこの連番に該当するサービスメタデータをキャッシュしている場合に指定する

戻り値

ServiceMetadata

関連項目

ServiceMetadata 構造体

サービスメタデータ（※引数”service”において指定したサービスタイプにより、構造体の内容は異なる）

115

5-2. 関数と引数の命名規則
関数仕様を作成する場合の関数と引数の命名規則を、以下のとおり取り決める。
関数の命名規則¾

識別子の名前は英語を基本とする。

¾

動詞または動詞句とする。

¾

識別子の最初の文字と、後に続いて連結されている各単語の最初の文字を大文字にする。

引数の命名規則¾

識別子の名前は英語を基本とする。

¾

識別子の最初の文字は小文字にし、後に続いて連結されている各単語の最初の文字を大文字とする（Camel 形式）。

¾

原則として、引数の型を説明する名前ではなく、引数の意味を説明する名前を使用する。

【解説】
アプリケーションプログラムの開発者は、当該アプリケーションプログラムで使用する関数が本ガイドラインの「標準インタフェース関数仕様」で定める関数（第 3 章参照）に該当しない場合に、使用する関数について関数仕様を作成する（5-1 節参照）。
作成する関数仕様は、本ガイドラインで定める関数仕様と同様に、他のアプリケーシ
ョン開発者が利用する。したがってアプリケーション開発者が混乱しないよう、その名称を、同じ規則で命名する必要がある。従って、関数と引数についての命名規則を
以下のとおり取り決める。
関数、引数とも、命名は英語を基本とする。
関数については、動詞または動詞句とする。特に、処理内容が相対的な関係にある関数の命名にあたっては、以下の英語の相対性に留意する。
¾

Add / Remove¾

Insert / Delete¾

Get / Set¾

Start / Stop¾

Begin / End¾

Send / Receive¾

First / Last¾

Get / Release¾

Put / Get116

¾

Up / Down¾

Show / Hide¾

Source / Target¾

Open / Close¾

Source / Destination¾

Increment / Decrement¾

Lock / Unlock¾

Old / New¾

Next / Previous117

6. 実装仕様作成に関する取り決め
6-1. 実装仕様作成に関する取り決め
アプリケーションプログラムで使用する関数が、本ガイドラインの「標準インタフェース関数仕様」で定める関数に該当しない場合には、当該アプリケーションプログラムの開発者は、「標準インタフェー
ス関数仕様作成に関する取り決め」に従い作成した関数仕様に対応する実装仕様を作成する。
この場合の実装は、HTTP による SOAP と WSDL を利用した実装とする。
実装仕様は、以下の 2 種類を作成する。
（１） 実装仕様の概要（２） WSDL による記述文書【解説】
アプリケーションプログラムの開発者は、当該アプリケーションプログラムで使用する関数が、本ガイドラインの「標準インタフェース関数仕様」で定める関数（第3 章参照）に該当しない場合には、「標準インタフェース関数仕様作成に関する取り決め」に従い関数仕様を作成する（5 章参照）。当該アプリケーションプログラムの開発者は、さらに作成した関数仕様に対応する実装仕様を作成しなければならない。
実装仕様は、人間にとって可読性の高い「実装仕様の概要」および機械にとって可読性の高い「WSDL による説明文書」の 2 種類からなる。作成する実装仕様の詳細を次に示す。

118

（１） 実装仕様の概要
機能の説明や処理の内容について、文書形式により作成する。作成する実装仕様は、
本ガイドラインで示す実装仕様と同様の書式とする。実装仕様の概要として記載しなければならない項目とその内容を、表 6-1 に示す。

表 6-1

実装仕様の概要の記載項目
要求度

最大記述

/条件

回数

文字列

必須

1

項目

定義

データ型

関数名

実装仕様を記述する関数の名
前

機能説明

関数の処理内容の詳細説明

文字列

必須

1

利用条件

関数を利用する場合に必要とな

文字列

必須

1

文字列

必須

1

文字列

必須

1

文字列

必須

1

る条件
リクエストの内容

リクエストに使用するパラメータの説明

レスポンスの内容

レスポンスで受け渡される情報の
説明

例外処理

無効なリクエストが発行された場
合やサービスが実装されていない場合などの例外処理の発生時の説明と、その処理内容（２） WSDL による記述文書
SOAP でのメッセージの受け渡しを考慮し、WSDL の仕様に基づき WSDL 文書を作成する。
WSDL 文書の作成単位は、アプリケーションプログラム単位とする。

119

7. 標準インタフェースの運用に関する取り決め
7-1. インタフェース公開・管理方法
アプリケーションプログラムの開発者は、開発するアプリケーションプログラムが他のアプリケーション
プログラムから接続できるよう、インタフェースを公開する。公開するインタフェースは、本ガイドラインに基づき作成する。
アプリケーションプログラムの開発者は、開発するアプリケーションプログラムについて、アプリケーションプログラムのインタフェースに関する以下の 2 種類の情報を記載した文書を作成する。
（１） アプリケーションプログラムの内容¾

アプリケーションプログラムの目的と、機能およびデータの概要¾

利用にあたっての制限や条件

¾

接続方法

¾

利用許可・利用申請のための問合せ先（２） アプリケーションプログラムで利用できる関数等の技術的な仕様
これらの文書は、別途標準インタフェースの管理機関において公開する。
【解説】
本ガイドラインに従って開発するアプリケーションプログラムを有効に利用するために、アプリケーションプログラムの開発者は、開発するアプリケーションプログ
ラムが他のアプリケーションプログラムから接続できるよう、本ガイドラインに基づ
くインタフェースを実装し、それを公開する。
公開するインタフェースに関する情報は、以下の用途に利用する。
¾

アプリケーションプログラムを利用したい機関が、利用可能なアプリケーショ
ンプログラムの有無を検索する。

¾

利用にあたって、アプリケーションプログラムに関する概要ならびに開発に必
要な技術情報を入手する。

アプリケーションプログラムの開発者は、公開するインタフェースを他者が利用するために、アプリケーションプログラムのインタフェースに関する情報を文書として、
アプリケーションプログラムの概要を説明する「アプリケーションプログラムの内容」およびアプリケーションプログラムの技術的な内容を説明する「アプリケーショ
ンプログラムで利用できる関数等の技術的な仕様」の 2 種類を作成しなければならない。作成した文書は、インタフェースを利用しようとする機関がその情報を入手できるよう公開する。
公開する情報は、表 7-1 に示す情報とする。その仕様は、公開・管理仕様（8 章）
に示す。

120

表 7-1

公開する情報公開する情報(1)

説明

アプリケーション アプリケーション  アプリケーションプログラム作成の目的
プログラムの内 プログラムの目  アプリケーションプログラムで提供可能な機能
容的と、機能およ  アプリケーションプログラムで取り扱うデータの種類、デびデータの概要

ータの範囲に関する情報利用にあたって  プログラムやデータに関する利用上の制限の制限や条件 著作権保護に関する情報
 使用料に関する情報
 アプリケーションプログラムを利用するための物理的な環境に関する情報 利用可能な時間に関する情報
 利用可能な期間に関する情報
 利用可能なデータの範囲に関する情報
 ネットワーク環境に関する情報

接続方法

 接続ポイントに関する情報（URL など）

利 用 許 可 ・ 利  アプリケーションプログラムを利用するにあたり、利用用申請のため

許可や利用申請を行うために必要となる問合せ先の問合せ先や問合せ方法に関する情報
 アプリケーションプログラムの管理者の組織名
称・担当者役職・問合せ方法・問合せ可能時
間・電話番号・住所等
 アプリケーションプログラムの開発者の組織名
称・担当者役職・問合せ方法・問合せ可能時
間・電話番号・住所等
 アプリケーションプログラムやデータの著作権者の組織名称・担当者役職・問合せ方法・問合せ
可能時間・電話番号・住所等(2)

アプリケーションプログラムで利用で  アプリケーションプログラムが対応している関数・引きる関数等の技術的な仕様

数・戻り値に関する情報（関数仕様）
 アプリケーションプログラム間でそれらがやり取りされる形式に関する情報（実装仕様）
 取得可能なデータの情報

1217-2. インタフェース接続方式
他のアプリケーションプログラムと接続する場合は、以下の手順で接続する。
（１） 標準インタフェース登録機関において、利用可能なアプリケーションプログラムを検索する。
（２） 利用するアプリケーションプログラムについて、そのアプリケーションプログラムの管理者に利用の申請を行う。必要に応じて、利用するための各種条件の処理を行う。
（３） 利用に必要な関数仕様・実装仕様等の技術資料を入手し、アプリケーションプログラムを利用するためのインタフェースを実装する。
（４） アプリケーションプログラムに接続し、利用する。
アプリケーションプログラム間の接続は、本ガイドラインで定めるインタフェースを介して行う。
接続に用いる通信プロトコルは、HTTP とし、以下のうちいずれかの方式とする。接続するアプリ
ケーションプログラムの実装仕様に従い、接続を行う。
方式１）POST/GET による方法
方式２）SOAP による方法【解説】
他のアプリケーションプログラムと接続する場合には、まず既に登録してあるアプリ
ケーションプログラムに関する情報を検索し、利用可能なアプリケーションプログラムが存在するかどうか確認を行う。利用可能なアプリケーションプログラムが見つかった
場合には、あわせて登録してあるアプリケーションプログラムの管理者情報を基に、そのアプリケーションプログラムの管理者に対して接続・利用申請を行う。利用にあたっての条件等が解決し、利用に問題がなければ、公開されている技術的な仕様を基に、接続のためのインタフェースを実装する。
なお、アプリケーションプログラム間の接続に用いる通信プロトコルは HTTP とする。アプリケーションプログラムの開発者は、方式１あるいは方式 2 を採用し、アプリ
ケーションプログラムを接続する必要がある。アプリケーションプログラムの開発者は、以下のいずれかの方式で実装する。
方式１）POST/GET による方法
方式２）SOAP による方法

122

8. 標準インタフェース公開・管理仕様
標準インタフェース公開・管理仕様として、以下の 2 種類の文書を定義する。
¾

公開・管理のためのアプリケーションプログラムの内容に関する文書¾

公開・管理のためのアプリケーションプログラムで利用できる関数等の技術的文書【解説】
標準インタフェース公開・管理仕様では、以下の 2 種類の文書を定義する。アプリケ
ーションプログラムの開発者は、公開するインタフェースを他者が利用するために、これらの 2 種類を作成しなければならない。
¾

公開・管理のためのアプリケーションプログラムの内容に関する文書¾

公開・管理のためのアプリケーションプログラムで利用できる関数等の技術的文書「公開・管理のためのアプリケーションプログラムの内容に関する文書」は、アプリ
ケーションプログラムの目的、機能、取り扱うデータ、利用時の制限や条件、接続方法、および問合せ先について、その概要を明らかにするための文書である。
「公開・管理のためのアプリケーションプログラムで利用できる関数等の技術的文書」は、アプリケーションプログラムがどのようなインタフェースを公開しているのか、
具体的な関数とそれに関する引数等の条件を明らかにするための文書である。
１つのインタフェース公開情報には１つの実装方式のみを記述する。たとえば、
HTTP POST/GET と SOAP（セッションあり、セッションなし）をすべて実装するア
プリケーションプログラムは、合計３つのインタフェース公開情報を作成する。

123

8-1. アプリケーションプログラムの内容に関する公開・管理仕様
公開・管理のためのアプリケーションプログラムの内容に関する文書は、以下の内容を含む。
（１） アプリケーションプログラムの目的と、機能およびデータの概要（２） 利用にあたっての制限や条件（３） 接続方法（４） 利用許可・利用申請のための問合せ先【解説】
上述 4 項目の詳細を以下の（１）から（４）で示す。この 4 つの項目は公開・管理仕様として原則必須であるが、（４）についてはアプリケーションプログラムの開発者のみ必須である。
（１） アプリケーションプログラムの目的と、機能およびデータの概要「アプリケーションプログラムの目的と、機能およびデータの概要」として記載する項目は、「名称」「概要」「目的」「データの種類」「データの範囲」である。
詳細を表 8-1 に示す。

表 8-1

アプリケーションプログラムの目的と機能およびデータの概要記載項目
要求度/

最大記述

条件

回数

クラス

必須

1

項目

定義

データ型

アプリケーションプログラ

アプリケーションプログラムで実現可

ムの目的と、機能および能な機能等の概要

データの概要名称

アプリケーションプログラムの名称

文字列

必須

1

概要

アプリケーションプログラムの機能の

文字列

必須

1

アプリケーションプログラムの目的

文字列

必須

1

アプリケーションプログラムで取り扱う

文字列

必須

N

文字列

必須

1

概要
目的
データの種類

データの種類
データの範囲アプリケーションプログラムで取り扱う
データの空間範囲

124

（２） 利用にあたっての制限や条件「利用にあたっての制限や条件」として記載する項目は、「サービス開始時期」「サービス終了予定時期」「運用時間」「著作権」「費用」である。これらの詳細を、表 8-2 に示す。

表 8-2

利用にあたっての制限や条件記載項目
要求度/

最大記述

条件

回数

クラス

必須

1

文字列

任意

1

文字列

任意

1

文字列

必須

N

文字列

必須

1

文字列

任意

1

項目

定義

データ型

利用にあたっての制

アプリケーションプログラムを利用するに限や条件
サービス開始時期あたっての制限事項や条件
アプリケーションプログラムの利用を開始
する時期

サービス終了予定
時期
運用時間

アプリケーションプログラムの利用を終了する時期（予定）
アプリケーションプログラムの利用可能な時間

著作権

アプリケーションプログラムとアプリケーショ
ンプログラムで取り扱うデータの著作権費用

アプリケーションプログラムの利用に必要な費用（プログラムやデータの使用料など）（３） 接続方法「接続方法」として記載する項目は、「URL」である。詳細を表 8-3 に示す。

表 8-3
項目
接続方法
URL

接続方法記載項目
要求度/

最大記述

条件

回数

クラス

必須

1

文字列

必須

1

定義

データ型

接続に必要な URL
接続先の URL アドレス125

（４） 利用許可・利用申請のための問合せ先「利用許可・利用申請のための問合せ先」として記載する項目は、「問合せ区分」「問合せ先名称」「住所」「電話番号」「ファックス番号」「電子メールアドレス」
および「問合せ条件」である。詳細を表 8-4 に示す。

表 8-4

利用許可・利用申請のための問合せ先記載項目

項目

定義

データ型

利 用 許 可 ・ 利 アプリケーションプログラムの管理者

クラス

要求度/条

最大記

件

述回数

アプリケーショN

用 申 請 の た め 等の問合せ先情報

ンプログラム

の問合せ先

の管理者は
必須
文字列

必須

1

文字列

必須

1

問合せ先の住所

文字列

任意

1

電話番号

問合せ先の電話番号

文字列

必須

N

ファックス番号

問合せ先のファックス番号

文字列

任意

N

電子メールアド

問合せ先の電子メールアドレス

文字列

任意

N

問合せに対応可能な時間、曜日

文字列

任意

N

問合せ先区分

問合せ先の区分
以下のいずれかを記入する。
9

アプリケーションプログラムの管理者

9

アプリケーションプログラムの開発者

9

著作権者（著作権者の場合には、何に対して著作権を保持しているか記述する。

問合せ先名称

管理者や開発者等の組織名、ま
たは個人名

住所

レス
問合せ条件

126

8-2. アプリケーションプログラムで利用できる関数等の技術的な公開・管理仕様
アプリケーションプログラムで利用できる関数等の技術的な公開・管理仕様として、以下の文書を定義する。
（１） アプリケーションプログラムを開発する際に引用したガイドライン（２） 関数仕様
¾

関数一覧

¾

各関数の説明文書（３） 実装仕様¾

実装仕様文書形式¾

WSDL による記述文書（４） 取得可能なデータ【解説】
開発するアプリケーションプログラムで使用するインタフェースには、使用する関数の種類に応じて次のような３つの場合分けがある。
1) 本ガイドラインの関数仕様に示されている関数のみを使用する場合
2) 本ガイドラインの関数仕様に示されている関数以外の関数を使用する場合（使用する関数すべてが、本ガイドラインの関数仕様に示されている関数に該当しない場合）
3) 本ガイドラインの関数仕様に示されている関数に加え、それ以外の関数も使用する場合（使用する関数の一部が、本ガイドラインの関数仕様に示されている関数に該当しない場合）
各場面において作成する関数等の技術的な公開・管理仕様を以下に示す。
1) 本ガイドラインの関数仕様に示されている関数のみを使用する場合開発するアプリケーションプログラムで使用するインタフェースが、本ガイドラ
インの関数仕様に示されている関数のみの場合、「関数等の技術的な公開・管理仕様」として以下の 4 文書を作成しなければならない。
1.

アプリケーションプログラムを開発する際に引用したガイドライン
記載項目を、表 8-5 に示す。

2.

使用した関数の一覧
記載項目を、表 8-6 に示す。

3.

WSDL による記述文書

127アプリケーションプログラム使用する関数についての WSDL 文書を作成する。WSDL 文書は、当該アプリケーションプログラムに対し、1 つのファイルとする。
4.

取得可能なデータの一覧
記載項目を、表 8-7 に示す。
「関数等の技術的な公開・管理仕様」の記載例を表 8-8 に示す。

表 8-5

記載項目一覧（１）

クラス

要求度
/条件
必須

最大記
述回数
1

文字列
文字列
文字列

必須
必須
必須

1
1
1

最大記
述回数
N

項目

定義

データ型

ガイドライン

アプリケーションプログラムを開発する際に引用した「標準インタフェースガイドライ
ン」
ガイドラインの名称
ガイドラインの版
ガイドラインの版の発行年月

名称
版
年月

表 8-6

記載項目一覧（２）

項目

定義

データ型

関数

アプリケーションプログラムを開発する際に引用した「標準インタフェースガイドライン」の関数仕様に記載されている関数
で、当該アプリケーションプログラムで利用できる関数「標準インタフェースガイドライン」の関数仕様に記載されている当該関数の機能分類「標準インタフェースガイドライン」の関数仕様に記載されている当該関数の機能「標準インタフェースガイドライン」の関数仕様に記載されている当該関数の内容「標準インタフェースガイドライン」の関数仕様に記載されている当該関数の関数
名

クラス

要求度
/条件
必須

文字列

任意

1

文字列

必須

1

文字列

必須

1

文字列

必須

1

機能分類

機能
内容
関数名

128

表 8-7

記載項目一覧（３）

項目

定義

データ

開発したアプリケーションプログラムで、「標準インタフェースガイドライン」に基づく関数により取得可能なデータ
データの名称
データの定義、取得基準等の説明
当該データの、データベース上の名称
各データ項目に対応する属性
属性の名称
当該属性の、データベース上の名称

名称
説明
内部名称
属性
名称
内部名称

表 8-8

データ
型
クラス

要求度
/条件
必須

最大記
述回数
N

文字列
文字列
文字列
クラス
文字列
文字列

必須
必須
必須
必須
必須
必須

1
1
1
N
1
1

公開・管理仕様作成例

準拠したガイドラインの名称

標準インタフェースガイドライン

準拠したガイドラインの版

第 1.0 版

準拠したガイドラインの年月日

平成 19 年 3 月 XX 日

機能分類

機能

内容

関数名

サービスメタデータ取得

利用可能な操作の情報を取得する

GetCapabilities

･･･

･･･

･･･

･･･

データ

説明

初期設定

メタデータ ID

内部名称

カタログサービスを利用して recordId

属性 1
ID

得られるメタデータレコード

属性 1
内部名称

属性 2

metadata 名称

属性 2
内部名称
name

Id

の ID
メタデータスキーマ カタログサービスを利用して schema
得られるメタデータのスキー

ス キ ー マ recordSc −
名称

−

hema

マ
メタデータ要素

カタログサービスを利用して elementS

要 素 名 name

要 素 の value

得られるメタデータが持つ要 et

称

値

素の内容

129

2) 開発するアプリケーションプログラムで使用するインタフェースが、本ガイド
ラインの関数仕様に示されていない場合開発するアプリケーションプログラムで使用するインタフェースが、本ガイドラ
インの関数仕様に示されていない場合、「関数等の技術的な公開・管理仕様」として以下の 6 文書を作成しなければならない。
1.

アプリケーションプログラムを開発する際に引用したガイドライン
記載項目を、表 8-5 に示す。

2.

関数一覧
本ガイドラインの「標準インタフェース関数仕様作成に関する取り決め」（5 章）に従い、関数一覧を作成する。

3.

各関数の説明文書
本ガイドラインの「標準インタフェース関数仕様作成に関する取り決め」（5 章）に従い、各関数の説明文書を作成する。

4.

実装仕様の概要
本ガイドラインの「標準インタフェース実装仕様作成に関する取り決め」（6 章）に従い、各関数について実装仕様の概要を作成する。

5.

WSDL による記述文書
アプリケーションプログラム使用する関数についての WSDL 文書を作成する。WSDL 文書は、当該アプリケーションプログラムに対し、1 つのファイルとする。

6.

取得可能なデータの一覧
記載項目を、表 8-7 に示す。

なお、開発するアプリケーションプログラムで使用するインタフェースが、本ガイドラ
インの関数仕様に示されているかどうかの判断には注意を要する。

130

3) 開発するアプリケーションプログラムで使用するインタフェースが、本ガイド
ラインの関数仕様に示されている関数と、それ以外の関数の両方存在する場合開発するアプリケーションプログラムで使用するインタフェースが、本ガイドラ
インの関数仕様に示されている関数と、それ以外の関数の両方存在する場合、以下を作成する。
1.

アプリケーションプログラムを開発する際に引用したガイドライン
記載項目を、表 8-5 に示す。

2.

関数一覧
本ガイドラインの関数仕様に示されている関数と、それ以外の関数とを区別して、作成する。
本ガイドラインの関数仕様に示されている関数については、表 8-6 に示す項目とする。
本ガイドラインの関数仕様に示されていない関数については、本ガイド
ライの「標準インタフェース関数仕様作成に関する取り決め」（5 章）に従い、関数一覧を作成する。

3.

各関数の説明文書
本ガイドラインの関数仕様に示されていない関数についてのみ、本ガイ
ドライの「標準インタフェース関数仕様作成に関する取り決め」（5 章）
に従い、各関数の説明文書を作成する。
本ガイドラインの関数仕様に示されている関数については作成しない。

4.

実装仕様の概要
本ガイドラインの関数仕様に示されていない関数についてのみ、本ガイ
ドライの「標準インタフェース実装仕様作成に関する取り決め」（6 章）
に従い、各関数について実装仕様の概要を作成する。
本ガイドラインの関数仕様に示されている関数については作成しない。

5.

WSDL による記述文書
本ガイドラインの関数仕様に示されている関数と、それ以外の関数とをまとめて、アプリケーションプログラム使用する関数として WSDL 文書を作成する。WSDL 文書は、当該アプリケーションプログラムに対し、1つのファイルとする。

6.

取得可能なデータの一覧
記載項目を、表 8-7 に示す。

131