XML技術
HOME  >  XML技術  >  探検 XMLボキャブラリの世界 第9回

探検 XMLボキャブラリの世界 第9回

第9回:地理情報のボキャブラリ ~GML,G-XML~

2008年2月28日 更新
著者:岸 和孝(JAGAT客員研究員)

今回は,地理情報のボキャブラリについて調べた結果をお話しします。地理情報は,行政,防災,通信,建設,交通,物流などの広範な社会活動を支えている情報基盤の一つであり,現在では,GIS(Geographic Information System:地理情報システム)という概念のもとに様々な利用が進められています。私たちがふだん利用している携帯電話や自動車におけるナビゲーションもGISとGPS(Global Positioning System:全地球測位システム)との連携で実現しています。

「GIS」をキーワードにしてWebを検索すると,国内外に実に夥しい数のサイトが見つかります。GISがそれだけ多くの様々な分野に及んでいることが分かります。しかし,私の理解が及ばない分野が多く,今回はあくまでもXMLボキャブラリからの観点でまとめてみました。誤解している点があるかもしれません。お気付きになりましたらご叱正ください。

GMLとG-XML

GISにおけるデータ表現形式には,MapInfo社のMIF形式,ESRI社のE00形式などの様々な表現形式が使われています。その数は,印刷業で扱う種類をはるかに超えており,他の分野におけるデータ表現形式の場合と同様に,コンテンツの流通する際のデータ変換の負担が問題になっています。そうしたことから,XMLの登場を受けて,GISデータの流通を図るために統一的なXMLボキャブラリが開発されました。それがGML(Geography Markup Language)とG-XMLです。

GMLは,GISにおける地図そのものを記述するボキャブラリであり,Open GIS Consortium(OGC)によって開発され,ISO 19136として制定されました。一方,G-XMLは,GISデータの流通・応用のプロトコルを記述するボキャブラリであり,わが国の日本情報処理開発協会データベース振興センターによって開発され,JIS X 7199として制定されました。G-XMLの普及促進はG-XML実用化連絡会が行っています。G-XML 3.1は,GML 3.1に対する応用スキーマ(ボキャブラリと同義語)として再構築され統合化されているようですが,私にはその詳細がまだ理解できていませんので,断定できません。とりあえず,この二つの規格の違いを表1にまとめてみました。

▼表1 GMLとG-XML

規格の略称 GML G-XML
規格の
正式名称
Geography Markup Language
(Geographic information -
XML encoding for geospatial data exchange)
ISO 19136
地理情報-地理空間データ交換用XML符号化法
JIS X 7199
開発団体 Open GIS Consortium 日本情報処理開発協会
記述の内容 地図そのもの 流通・応用

従来のGIFやJPGの画像で表わす地図に比べて,GMLの利用には次のような利点があります。

  • 様々なサイトにおける地図サービスを切れ目無く利用できる。
  • 一つのデータ交換形式ですべての用途に対応できる。
  • 地図に対するアニメーションを実現できる。
  • 地図に対するフィルターによって必要な特徴だけを表示できる。
  • 地図上のシンボルに焦点を絞る質問メカニズムを提供できる。
  • 地図上のシンボルにリンクを埋め込める。
  • 地図に対して注釈を付与できる。
  • 地図上の地物のスタイルが自由に設定できる。
  • 通常のWebブラウザ(SVG対応)で閲覧できる。
  • 高い表示品質で閲覧・保存・印刷できる。

GMLで記述された地理情報を閲覧するGMLブラウザには,各種ありますが,その中で容易に入手でき簡単に実行できるものを紹介します。Snowflake Software社のGML Viewerは,無償でダウンロードでき,スタンドアローン(オフライン)で動作でき,しかもサンプルデータが揃っています。ぜひお試しください。

GMLの例

さて,ここでGMLの例を示すことは容易ではありません。というのも,GMLで記述された文書インスタンスは,小さな町の地図でも数十メガバイトとなるからです。それはポストスクリプトで表わした地図のような大きさになります。そこで,きわめて小さい文書インスタンスを作り[図1],GML Viewerで表示してみました[図2]。

▼図1 GML文書インスタンスの例

<?xml version='1.0' encoding='UTF-8'?>
<FeatureCollection
    xmlns='http://www.ordnancesurvey.co.uk/xml/namespaces/osgb'
    xmlns:g='http://www.opengis.net/gml'>
  <!-- 内水路 -->
  <topographicMember>
    <TopographicArea>
      <theme>Water</theme>
      <descriptiveGroup>Inland Water</descriptiveGroup>
      <polygon>
        <g:Polygon>
          <g:outerBoundaryIs>
            <g:coordinates>
              215,210 215,140 300,100 310,100 220,143 220,210 210,210
            </g:coordinates>
          </g:outerBoundaryIs>
        </g:Polygon>
      </polygon>
    </TopographicArea>
  </topographicMember>
  <!-- 道路 -->
  <topographicMember>
    <TopographicArea>
      <theme>Roads Tracks And Paths</theme>
      <descriptiveGroup>Road Or Track</descriptiveGroup>
      <polygon>
        <g:Polygon>
          <g:outerBoundaryIs>
            <g:coordinates>
              230,160 400,160 400,150 230,150 230,160
            </g:coordinates>
          </g:outerBoundaryIs>
        </g:Polygon>
      </polygon>
    </TopographicArea>
  </topographicMember>
  <!-- 道路 -->
  <topographicMember>
    <TopographicArea>
      <theme>Roads Tracks And Paths</theme>
      <descriptiveGroup>Road Or Track</descriptiveGroup>
      <polygon>
        <g:Polygon>
          <g:outerBoundaryIs>
            <g:coordinates>
              230,100 240,100 240,210 230,210 230,100
            </g:coordinates>
          </g:outerBoundaryIs>
        </g:Polygon>
      </polygon>
    </TopographicArea>
  </topographicMember>
  <!-- 道路 -->
  <topographicMember>
    <TopographicArea>
      <theme>Roads Tracks And Paths</theme>
      <descriptiveGroup>Road Or Track</descriptiveGroup>
      <polygon>
        <g:Polygon>
          <g:outerBoundaryIs>
            <g:coordinates>
              350,100 360,100 360,210 350,210 350,100
            </g:coordinates>
          </g:outerBoundaryIs>
        </g:Polygon>
      </polygon>
    </TopographicArea>
  </topographicMember>
  <!-- 建物の名前 -->
  <cartographicMember>
    <CartographicText>
      <theme>Building</theme>
      <descriptiveGroup>Building</descriptiveGroup>
      <anchorPoint>
        <g:Point><g:coordinates>350,180</g:coordinates></g:Point>
      </anchorPoint>
      <textRendering>
        <anchorPosition>4</anchorPosition>
        <height>4</height>
      </textRendering>
      <textString>日本印刷技術協会</textString>
    </CartographicText>
  </cartographicMember>
  <!-- 建物 -->
  <topographicMember>
    <TopographicArea>
      <theme>Building</theme>
      <descriptiveGroup>Building</descriptiveGroup>
      <polygon>
        <g:Polygon>
          <g:outerBoundaryIs>
            <g:coordinates>
              330,170 330,190 350,190 350,170 330,170
            </g:coordinates>
          </g:outerBoundaryIs>
        </g:Polygon>
      </polygon>
    </TopographicArea>
  </topographicMember>
  <!-- 建物の名前 -->
  <cartographicMember>
    <CartographicText>
      <theme>Building</theme>
      <descriptiveGroup>Building</descriptiveGroup>
      <anchorPoint>
        <g:Point><g:coordinates>220,110</g:coordinates></g:Point>
      </anchorPoint>
      <textRendering>
        <anchorPosition>4</anchorPosition>
        <height>4</height>
      </textRendering>
      <textString>中野富士見町駅</textString>
    </CartographicText>
  </cartographicMember>
  <!-- 建物 -->
  <topographicMember>
    <TopographicArea>
      <theme>Building</theme>
      <descriptiveGroup>Building</descriptiveGroup>
      <polygon>
        <g:Polygon>
          <g:outerBoundaryIs>
            <g:coordinates>
              230,100 220,100 220,110 230,110 230,100
            </g:coordinates>
          </g:outerBoundaryIs>
        </g:Polygon>
      </polygon>
    </TopographicArea>
  </topographicMember>
</FeatureCollection>

▼GML Viewerによる表示

voc09-fig1.png

図1と図2を見比べれば,おおよその働きをご理解いただけると思います。見ての通り,道路や建物は多角形で表わします。図1は,GML Viewerで表示するために,地図をGML 2.0(G-XMLと統合する直前のバージョン)で,道路や建物などの地物を英国陸地測量部が定めたXMLボキャブラリで表わしました。なお,地図の座標系は左下隅が原点になりますが,私の指定した座標点はまったく正確ではありません。

GMLの事例

わが国におけるGISの取組み事例については,国土交通省国土計画局で紹介されています。例えば,静岡県防災情報支援システムのホームページでは,基本地図の上に,東海地震で想定される震度,津波の程度などを表示できます。また,岐阜県のふるさと地理情報センターのホームページでは,基本地図の上に指定した各種施設の場所を表示でき,さらに衛星写真も合成表示できます。それらのシステムではG-XMLを利用していると紹介されていますが,関連ページの更新が滞っているために,最近の実態については把握できませんでした。

インターネットの活用によってGISデータの流通はますます広がっていきますので,印刷業においても,印刷物やWebにおけるGISデータの活用を研究する必要があるでしょう。今後,この分野についてさらに調べていきたいと思います。

社団法人日本印刷技術協会(JAGAT)
PrintersCircle PrintersCircle 2007年3月号より転載
探検 XMLボキャブラリの世界

▲このページのTOPへ

  • XMLとは?IT初心者でもすぐわかるXML超入門
  • 無償で使える!XMLDB「NeoCore」
  • サイバーテック求人情報
  • メールマガジン申し込み
  • TEchScore

  • ▲NeoCoreについて記載されています!

  • ▲XMLマスター教則本です。試験対策はこれでばっちり!
Copyright (c) CyberTech corporation ltd. All ights Reserved. | サイバーテックについて | ご利用ガイド