• 検索結果がありません。

符号化法とGML 村尾 吉章

N/A
N/A
Protected

Academic year: 2021

シェア "符号化法とGML 村尾 吉章"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

村尾:〒550-0004 大阪市西区靭本町 1-10-10 日本アイ・ビー・エム株式会社 GIS 事業推進 Tel: 06-6449-2910 Fax:06-6445-7381 E-mail:[email protected]

符号化法と

GML

村尾 吉章

Considerations for applying the standards for encoding, including GML

Yoshiaki MURAO

Abstract: For data exchanges, the encoding specification is one of the most important issues. The concept of the encoding for geographic information is standardized by ISO 19118. And then, ISO 19118, 19136 and 19139 provide encoding specifications for each. This paper describes differences of them and indicates some considerations for selections and implementations of them.

Keywords:

符号化(encoding),GML(Geography Markup Language),地理情 報標準(the standards for geographic information)

1. はじめに

ISO 19100(本稿では,19100

番台の国際規格群 をまとめて「ISO 19100」と呼ぶ)は,地理空間デ ータに関するさまざまな局面を細分化し,それぞれ の部分に対して標準化された仕様を規定し提供して いる.その中で,実際に地理空間データを作成し利 用者に届けるための物理データ形式を規定する「符 号化」(単体で呼ぶ場合は「符号化法」とも言う)は,

地理空間データ作成者にとっても,利用者にとって も,実装システムを構築する上で最も重要な仕様を 提供する規定となる.本稿は,ISO 19100において 定義されている符号化の考え方を解説し,また,当 国際規格群の中で複数提供されている符号化規則の それぞれの特徴を述べて,実際に符号化法を利用す る上での指針を与えるものである.

2. 符号化とは

一般に,符号化(encoding)とは,ある情報の内 容を何らかの記号形式に変換することである.ISO

19100

では,応用スキーマによってデータ構造が定

義された地理空間データ等の各インスタンスを,そ の定義にしたがったシステム可読な形式に変換する ことを符号化と呼ぶ.符号化された地理空間データ は,地理空間データ提供者にとって作成・提供すべ きデータであり,地理空間データ利用者にとれば,

読み込むべきデータに他ならない.

符号化処理において情報欠落がなければ,その結 果としてのデータ形式が異なっても情報の意味は変 化しない.したがって,符号化仕様が目的や用途に 応じて複数存在することは容認される.そのことか ら,特定の符号化仕様を選択して符号化を実施する ことは,一種の「サービス」として位置づけられる.

ISO 19100

では,「ISO 19118:2005 地理情報-符 号化(Geographic Information - Encoding)」1) が,サービスとしての符号化の基本概念とその仕組 みを規定している.ここで規格番号に“:2005”が 付加されているのは,参照するこの規格が

2005

発行のものであることを示している.

(2)

3. ISO 19118 における符号化の考え方

ISO 19118:2005

は,符号化に関する規定を提供 する.その規格書本体では,符号化の基本概念を定 義し,附属書

A(参考)で XML

を使用した場合の 符号化規則を提供している.本章では,その本体で 定義されている符号化の基本概念を解説する.

3.1 データ交換のしくみ

ISO 19118:2005

規格書の本体では,地理空間デ ータの交換のための符号化を対象として,そのしく みと基本仕様を規定している.ここでデータ交換と 呼んでいるのは,ファイルを交換することによる方 法も,データ転送サービスなどを呼び出して相互交 換する方法も含んでいる.

地理空間データのデータ構造を定義する応用スキ ーマから共通データ形式を導き出すことができれば,

それを交換形式としてデータ交換が可能となること から,その導出仕様を符号化仕様として定義するこ とを目的とすればよいことになる.

図1は,データ交換のしくみを示している.

図1 ISO 19118によるデータ交換のしくみ

3.2 符号化サービスと符号化規則

図1にあるように,「符号化サービス」はデータ変 換を実施する際に,応用スキーマを入力としている.

地理空間データ提供者側(システムA)は正方向の 処理,すなわち「符号化(encode)」を実施して,

自システムの形式のデータを応用スキーマから導出 された共通データ形式に変換する.このとき,当然 ながら,変換前のデータが,応用スキーマに対応し た各種情報は保持していることが必要である.

一方,利用者側(システムB)は逆方向の処理,

すなわち「復合化(decode)」を実施して,その共 通データ形式のデータを,自システムで理解可能な 形式に変換する.

この符号化サービスの内容をもう少し詳細に見る と,図2のように構成される.

図2 符号化サービスと符号化規則

図2のように,符号化サービスの中には2つの符 号化規則が含まれる.ひとつはスキーマ変換規則で あり,もうひとつはインスタンス変換規則である.

スキーマ変換規則は,応用スキーマの定義情報を 入力とし,その内容にしたがって,データ構造を記 述するためのスキーマを生成する.これは,XML を目的形式とした場合には,XML スキーマ文書ま たは

DTD

を意味することになる.ただし,ISO

19118:2005

本体の規定段階では,まだデータ形式に ついて具体的には言及していないので,一般的な言 い方にとどめている.

インスタンス変換規則は,実際にデータ交換対象 である地理空間データ,すなわち応用スキーマとし て定義されたクラスのインスタンス群について,共 通形式のデータに変換する.このとき,変換元のデ ータ形式はシステムに依存することになるので,規 格上はインスタンス・モデルを定義して,それとの 間での変換を想定している.

これらスキーマ変換規則とインスタンス変換規則 を含んだ符号化サービスは,図3のようにインター フェースとして3つの操作を定義している.

図3 符号化サービスのクラス定義 システム B

システム A

データ転送 サービス

データ転送 サービス 交換

ファイル

交換 ファイル 符号化

サービス

符号化 サービス 応用スキーマ

変換前 データ

変換後 データ

符号化サービス 応用スキーマ

アプリケーション データ

インスタンス モデル スキーマ

モデル スキーマ

変換規則

インスタンス 変換規則

データ構造 スキーマ

符号化 データ

対応 対応 対応

(3)

3.3 オブジェクト ID

符号化されたインスタンスは,個々に識別可能で あることが必要とされるため,それぞれがオブジェ クト

ID

をもつ.オブジェクト

ID

には,id

uuid

があって,

id

は交換データセット内でユニークな値,

uuid

は,アプリケーション範囲のすべてのデータ内 でユニークな値となる.既にデータベース内にある オブジェクトに対する更新情報だけを送信するため には

uuid

が必要となる.なお,id,uuidについては 同じ概念であれば別の仕様を定義してもよい.

ISO 19118:2005

本体では,上記の他にも,交換 メタデータ情報(ExchangeMetadata)の構成,更 新メカニズム,使用する文字コードなどが規定され ているが,本稿でのこれらの内容の解説は省略する.

4. ISO 19100 が提供する符号化規則の概要

ISO 19118:2005

本体は,符号化の基本的概念を 規定するものではあるが,実際のデータ形式は,さ まざまな環境の中で要件に応じた選択がなされるも のとなることから,具体的なデータ形式を対象とし た符号化規則は提示していない.

一方,データ形式に

XML

を選択した場合の符号 化規則について,

ISO 19100

の中で3つの仕様が提 供されている.これらは,すべて

ISO 19118:2005

本体の基本概念に準拠したものであり,スキーマ変 換規則では

XML

スキーマファイルの生成を前提と している.本章では,これら3つの符号化規則の特 徴を比較しつつ解説する.

なお,具体的に符号化された結果を説明するため,

ごく単純なクラスを1つだけ定義した応用スキーマ を図4のように準備する.以下で符号化規則を説明 する際,この目標点クラスおよびそのインスタンス が符号化された例をそれぞれの仕様において例示す る.

目標点

+ 位置 : GM_Point + 地点名: CharacterString

図4 サンプル応用スキーマ

また,以降の項におけるそれぞれのコード例にお

いて,名前空間を適切に設定する必要があるが説明 は省略する.

4.1 ISO 19118 附属書 A による符号化規則

ISO 19118:2005

は,附属書

A

(参考)として

XML

を使用した場合の符号化規則を提供している.

この符号化規則の特徴は,UML クラス図で定義 された各クラスに対する汎用的な符号化規則を提供 しており,かつ,それを

ISO 19100

仕様群にも適用 する点にある.また,その出自からも当然のことな がら,

ISO 19118

本体の規定に完全に準拠した仕様 である.

このスキーマ変換規則に従って図4の応用スキー マを変換した例をリスト4-1に示す.

目標点クラスは,

IM_Object

を継承して定義され る.属性のデータ型は,そのまま指定することがで きる.

この附属書

A

のインスタンス変換規則に従って,

図4の応用スキーマにもとづいた

XML

データを生 成した例をリスト4-2に示す.

XML

データは,クラス名,属性名をタグ名と することが基本となり,タグ名の変換テーブルが用

<xs:element name="目標点" type="目標点“

substitutionGroup="iso:IM_Object" />

<xs:complexType name="目標点">

<xs:complexContext>

<xs:extension base="iso:IM_Object">

<xs:sequence>

<xs:element name="地点名" type="iso:CharacterString"/>

<xs:element name="位置" type="iso:GM_Point"/>

</xs:sequence>

</xs:extension>

</xs:complexContext>

</xs:complexType>

リスト4-1

リスト4-2

<目標点id="M001" uuid="mesh1234.M001">

<地点名>ABC地点</地点名>

<位置id="M001P">

<iso:position>

<iso:CRS uuidref="jgd2000.bl"/>

<iso:coordinate>36.12345 135.12345</iso:coordinate>

</iso:position>

</位置>

</目標点>

(4)

意されればそれぞれ別名に変換される.各オブジェ クトには

id

が付与されなければならず,必要であれ

uuid

を付加してもよい.

他のオブジェクトを参照する際は,同一データセ ットであれば

idref

を,データセット外であれば

uuidref

を用いて,該当オブジェクトIDを指定する.

「位置」属性のデータ型はGM_Pointであるため,

ISO 19107

4) で定義された

GM_Point

のクラス図 について,同じ符号化規則が適用されて

XML

デー タに展開される.

先にも述べたように,この附属書Aによる符号化 規則は,UML クラス図が定義されていれば,汎用 的に符号化が可能である点に大きな特徴がある.今 後,新しい仕様が規格化されたり,現在の仕様に対 する変更があっても,符号化規則は一定のまま対応 可能である.ただしこれには短所もあり,汎用的符 号化規則を貫くことから,XML データとしては冗 長度が高くなり,ファイルが大きくなってしまう.

一方,

ISO 19118

本体の規定に完全に準拠してい ることから,

ExchangeMetadata

を作成でき交換デ ータセットに関する十分な記述が可能である.また,

更新メカニズムを含んでおり,データベースの更新 を含む本格的業務システムにも適用可能である.

なお,現在

ISO 19118

の改定作業が進められてお り,その一環として附属書の構成を他の規格と合わ せる必要から,現在の附属書

A

は,その内容のまま 附属書

C

に移すことが検討されている.

4.2 ISO 19136 (GML)による符号化規則

ISO 19136:2007

2) は, OGC(Open Geospatial

Consortium, Inc.)が開発した符号化規則である GML(Geography Markup Language)を ISO

19100

の各規格との整合をとるように改訂し,国際

規格化したものであり,ISO 19118:2005 本体に準 拠した地理空間データのための符号化規則を規定し ている.

このスキーマ変換規則に従って図4の応用スキー マを変換した例をリスト4-3に示す.

目標点クラスは,AbstractFeature を継承して定 義される.その点は,4.1の附属書

A

符号化規則と 大差はない.一方,ISO 19100提供の符号化に関係

するほぼすべてのクラスについて,対応する型名が 定義されており,この例のように

CharacaterString

であれば,XML

String

型を,GM_Pointであれ ば,

GML

が提供する

PointProperty

型を設定する.

この

ISO 19136

のインスタンス変換規則に従っ て図4の応用スキーマにもとづいた

XML

データを 生成した例をリスト4-4に示す.

XML

データは,応用スキーマで定義された部分 については,クラス名,属性名をタグ名とすること が基本であり,その点は

4.1

と同じである.

しかし,

ISO 19100

が提供するクラスについては 大幅に異なっており,それぞれのクラスに対して

XML

データとして適した符号化形式が個別に定義 されている.リスト4-2と比較するとタグ名や構 成がかなり異なっていることがわかる.したがって,

生成された

XML

データは

4.1

のそれに比べて効率 よく理解しやすい形式となっている.

ここに示した例では

GM_Pointによる点データの

表現であるため大きな変化はみられないが,線,面 のデータになると,両者の違いはかなり大きなもの となり,

GML

のほうが効率的でわかりやすい

XML

データ形式になる.

<xs:element name="目標点" type="目標点Type"

substitutionGroup="gml:AbstractFeature" />

<xs:complexType name="目標点Type">

<xs:complexContext>

<xs:extension base="gml:AbstractFeatureType">

<xs:sequence>

<xs:element name="地点名" type="xs:String"/>

<xs:element name="位置"

type="gml:PointPropertyType"/>

</xs:sequence>

</xs:extension>

</xs:complexContext>

</xs:complexType>

<目標点gml:id="M001">

<地点名>ABC地点</地点名>

<位置>

<gml:Point gml:id="M001P" srsName="jgd2000.bl">

<gml:pos>36.1234 135.1234</gml:pos>

</gml:Point>

</位置>

</目標点>

リスト4-3

リスト4-4

(5)

他方,この

ISO 19136

ISO 19100

において符 号化に関係するほぼすべてのクラスについての

XML

変換規則を定義していることから,規格更新 時の追随性などに懸念点があることは否めない.

オブジェクト

ID

として

id

を設定するが

uuid

定義はない.データセットを超えてオブジェクトを 参照する際には,xlinkによる

uri

参照を行う.

また,

ExchangeMetadata

は定義されていないが,

データセット内容を記述するタグは提供されている.

更新メカニズムについては定義されていない.

なお,

ISO 19136

を参照する際には,

GML

スキ ーマ」という用語に注意する必要がある.GML は,

XML

スキーマによって記述された

XML

文書構 造の定義が,

ISO 19100

内で一般に使用されている

「応用スキーマ」とば別に存在しており,これを

GML

スキーマと呼ぶ.応用スキーマからスキーマ 変換規則によって

XML

スキーマ定義文書を作成す ることは,応用スキーマから

GML

スキーマに対し てスキーマ変換していることになる.

4.3 ISO 19139 による符号化規則

ISO 19139:2007

3) は,ISO 19115 5) で定義され たメタデータに関する

XML

符号化規則を提供する.

メタデータを構成する各データ項目は,ISO

19115

において

UML

クラス図によって定義されて いることから,ここでも

UML

クラス図に対する汎 用的な符号化規則が

ISO 19118:2005

本体に準拠し たものとして提供されている.

このスキーマ変換規則に従って図4の応用スキー マを変換した例をリスト4-5に示す.

目標点クラスは,

AbstractObject

を継承して定義 される.その点は,4.1の附属書

A

符号化規則およ

4.2 GML

と大差はない.

このスキーマ変換規則では

ISO 19100

が定義す るクラスについては,一見,規格で定義されたクラ ス名のデータ型を参照しているかに見えるが,その 実体としての定義は

4.2

GML

での定義を参照し ている.したがって,ISO 19139のインスタンス変 換規則に従って図4の応用スキーマにもとづいた

XML

データを生成したリスト4-6の例に見える ように,「位置」属性の展開内容は,4.2によるもの と同じ内容となる.

このインスタンス変換規則では,それぞれのデー タ型名のタグを出力する点に特徴がある.例えば,

「地点名」属性のデータは応用スキーマにおいて

CharacterString

型として定義されているため,そ の型名のタグを出力してからデータを出力している.

この符号化の方式は,継承関係の下位型とそうでな い型が混在した場合にわかりやすい符号化規則であ り,メタデータ・クラス図の特性にかなっている.

また,この方式の場合,

4.1

よりさらに冗長な

XML

タグ構成となってしまうが,その点も符号化の対象 がメタデータであって,さほど大量のデータとなら ない点を考慮している.

ISO 19139

は,本来の符号化対象がメタデータで あることから,オブジェクトごとへの

id

付与が必須 ではないなど,地理空間データの符号化規則として は十分な仕様とは言えない.

ExchangeMetadata

更新メカニズムも想定されていない.

<xs:element name="目標点" type="目標点_Type"/>

<xs:complexType name="目標点_Type">

<xs:complexContext>

<xs:extension base="gmd:AbstractObject_Type">

<xs:sequence>

<xs:element name="地点名"

type="gco:CharacterString"/>

<xs:element name="位置"

type="gss:GM_Point_PropertyType"/>

</xs:sequence>

</xs:extension>

</xs:complexContext>

</xs:complexType>

<目標点gml:id="M001">

<地点名>

<gco:CharacterString>ABC地点</gco:CharacterString>

</地点名>

<位置>

<gml:Point gml:id="M001P" srsName="jgd2000.bl">

<gml:pos>36.1234 135.1234</gml:pos>

</gml:Point>

</位置>

</目標点>

リスト4-5

リスト4-6

(6)

5. 符号化法の利用

5.1 符号化法の選択と実装における考慮点

前章での比較により,

ISO 19100

が提供する3つ の符号化規則によって生成される

XML

データ形式 は汎用的なものであり,インスタンスレベルの概略 仕様は,ほぼ同じであることが理解いただけたであ ろう.しかしその中で,仕様の性質上,地理空間デ ータを対象とした符号化規則として

ISO 19139

選択することは妥当でないといえる.

ISO 19118

附属書

A

ISO 19136(GML)の比

較では,前者は参考仕様,後者は規定であることか ら,今後,一般的には

ISO 19136

の利用をまず優先 的に検討することが望ましい.特に,データサイズ を少しでも小さくしたい場合には,

ISO 19136

を選 択したほうがよい.

一方,更新メカニズムを伴うか否か,GML が提 供していない

ISO 19100

標準規格の利用の有無,今 後の規格の改定への対応,既存データの仕様,プロ グラム資産,既存スキル等を考慮して,条件が合え ばISO 19118 附属書

A

を選択することもありうる.

特に,これが統一した符号化規則である点は,シス テム構築上のメリットもある.

生成される

XMLファイルでの両者の違いは, ISO

19100

が提供するクラス/データ型を展開する部分

である.

ISO 19136

では

GML

スキーマをベースに した個別の展開となり,ISO 19118 附属書

A

はク ラス図をベースにした汎用的な展開となる点は,そ れぞれを選択し実装する上で考慮すべきである.

5.2 符号化法が利用される局面

データ交換を中心に,符号化法が利用される局面 を考えると,次のように,基本的にシステム間で地 理空間データの授受がある場合である.

i)

ファイルによるデータ交換

ii)

サービスとしてのデータ配信・受信

(WFS:Web Feature Serviceを含む)

iii)

長期にわたるデータ蓄積

iv)

データベース更新のための差分データ交換 しかし,これらのシステム化を本格的に検討する 際には,まず応用スキーマで構造が定義された地理 空間データを作成・管理するシステムが必要である.

システム内にそのようなデータが準備されて初めて ファイルによるデータ交換や,データ配信サービス が可能となる.

そのシステムにとってのデータ実装方法について は自由に検討すればよいが,まず第1ステップとし

ISO 19100

が提供する符号化法を直接利用する 方法が考えられる.応用スキーマを正しく理解し処 理するシステムにとって,標準に準拠した仕様をシ ステムの基本部分でサポートできることが必要であ るし,今後求められることとなるだろう.

そして,そのシステムにとってみれば,これら符 号化規則の違いは小さな差異であって,選択肢とし て提供することに問題は生じない.

6. おわりに

符号化の詳細な仕様を実際に必要とするのは,デ ータ変換を実施するソフトウェアである.もし,

GIS

パッケージが

ISO 19100

にもとづいたデータ形式 を受け入れて直接データ変換機能を提供してくれれ ば,大多数のユーザーは,GML なり,ISO 19118 附属書

A

なり,仕様の名称を確認するだけでこと足 りる.

昨年度より,基盤地図情報が

ISO

標準形式で提供 されるようになり,しかも今後はデータ更新の仕組 みも取り込まれようとしている.多くの

GIS

パッケ ージによるこの符号化法のサポートが,早期に実現 することを期待したい.

参考文献

1) ISO 19118:2005, Geographic Information - Encoding, ISO.

2) ISO 19136:2007, Geographic Information - Geography Markup Language

(GML)

ISO.

3) ISO/TS 19139:2007, Geographic Information

-Metadata-XML schema implementation,

ISO.

4) ISO 19107:2005, Geographic Information - Spatial schema, ISO.

5) ISO 19115:2003, Geographic Information -

Metadata, ISO.

参照

関連したドキュメント

チツヂヅに共通する音声条件は,いずれも狭母音の前であることである。だからと

チョウダイは後者の例としてあげることが出来

しい昨今ではある。オコゼの美味には 心ひかれるところであるが,その猛毒には要 注意である。仄聞 そくぶん

 回報に述べた実験成績より,カタラーゼの不 能働化過程は少なくともその一部は可三等であ

あらまし MPEG は Moving Picture Experts Group の略称であり, ISO/IEC JTC1 におけるオーディオビジュアル符号化標準の

これはつまり十進法ではなく、一進法を用いて自然数を表記するということである。とは いえ数が大きくなると見にくくなるので、.. 0, 1,

編﹁新しき命﹂の最後の一節である︒この作品は弥生子が次男︵茂吉

この大会は、我が国の大切な文化財である民俗芸能の保存振興と後継者育成の一助となることを目的として開催してまい