JPGIS-XML 変換 説明書
2014/09/02
有限会社ジオ・コーチ・システムズ
http://www.geocoach.co.jp/
info@geocoach.co.jp「JPGIS-XML 変換」プログラムについての説明書です。

この説明書は次のバージョンに対応しています。
アプリケーション名

バージョン

日付

JPGIS-XML 変換

8.0.0

2014/09/02

プログ ラムのインス トールについ ては「 GeoCoach3D シリー ズ イ ンストール説明書」 を参照してく ださい。
「JPGIS-XML 変換」は Windows 7(64bit), Vista(64bit), XP Professional x64 上ではパソコンが搭載しているメモリすべてが使えます。

http://www.geocoach.co.jp/download/GeoCoach3D-series-8-install.pdf「JPGIS-XML 変換」とフリーソフト「JPGIS-XML ビューF」の表示などの機能は共通です。共通する機能については、「JPGIS-XML ビューF」の説明書を参照してください。
アプリケーション名

バージョン

日付

JPGIS-XML ビューF

8.0.1

2014/07/10

・説明書 http://www.geocoach.co.jp/jpgis/GeoCoach3D-JPGIS-F-8-0-1-manual.pdf
・フリーソフトダウンロードhttp://www.vector.co.jp/soft/winnt/business/se433427.html

目次
1.

変換の対象 .......................................................................................................................................... 1

2.

JPGIS-XML変換メニュー .................................................................................................................. 2
2.1.

2.1.1.

DM分類コードと地物の対応表CSV..................................................................................... 3

2.1.2.

主題属性値の設定CSV ......................................................................................................... 4

2.1.3.

テンプレートXML ................................................................................................................ 5

2.1.4.

変換処理................................................................................................................................ 8

2.1.5.

エラーチェック................................................................................................................... 11

2.2.

シェープファイルからXMLへ変換............................................................................................ 122.2.1.

シェープファイルと地物の対応表CSV .............................................................................. 13

2.2.2.

主題属性値の設定CSV ....................................................................................................... 14

2.2.3.

テンプレートXML .............................................................................................................. 15

2.2.4.

変換処理.............................................................................................................................. 18

2.2.5.

JP_RectifiedGrid ............................................................................................................... 19

2.2.6.

エラーチェック................................................................................................................... 20

2.3.

JPGIS-XML検査 ....................................................................................................................... 21

2.3.1.

対象 ..................................................................................................................................... 21

2.3.2.

JPGIS-XML検査 ................................................................................................................ 21

2.4.

XMLからDMファイルへ変換 .................................................................................................... 26

2.4.1.

対象 ..................................................................................................................................... 26

2.4.2.

XMLの地物とDMの分類コードの対応CSV ...................................................................... 26

2.4.3.

分類コード以外の変換対応表 ............................................................................................. 27

2.4.4.

ダイアログ .......................................................................................................................... 29

2.4.5.

変換内容.............................................................................................................................. 30

2.5.

3.

DMからXMLへ変換 .................................................................................................................... 2

XMLからシェープファイルへ変換............................................................................................ 30

2.5.1.

対象 ..................................................................................................................................... 30

2.5.2.

設定 ..................................................................................................................................... 30

2.5.3.

ダイアログ .......................................................................................................................... 32

その他 ................................................................................................................................................ 33
3.1. 更新記録 ..................................................................................................................................... 33ii

1. 変換の対象
JPGIS-XML 変換は、以下のファイルを JPGIS-XML に変換します。
● 旧 DM（準則の DM は現時点では未サポート)● シェープファイル
変換については、任意にスキーマファイルに対応できることを目指していますが、現段階では特定のスキーマについて動作を確認しています。
DM からの変換については、現在、次のスキーマの XML ファイルへの変換を確認しています。
●地図情報レベル 2500 数値地形データ

JPGIS バージョン 2.1

シェープファイルからの変換については、現在、次のスキーマの XML ファイルへの変換を確認しています。
● 土砂災害危険地域レーザ計測検索用索引図データ JPGIS バージョン 2.0● ○○市道路台帳平面図

JPGIS バージョン 2.1

変換可能なスキーマか？あるいはバージョンアップで対応できるか？等はお問い合わせください。順次、対応していく予定です。

作成した JPGIS-XML ファイルをスキーマファイルと照らし合わせて検査する機能はありますが、個々の地物特有の検査機能はありません。

基盤地図情報の XML ファイルへの変換については「基盤地図情報作成検査ツール」で行っており、この「JPGIS-XML変換」では対象外です。
http://www.geocoach.co.jp/fgd/index.html
また、作成した XML の詳細な検査が必要になった場合、変換と検査を専用の別アプリケーションに分離する可能性が
あります。

1

2. JPGIS-XML変換メニュー
2.1.

DMからXMLへ変換

DM データファイルから JPGIS-XML ファイルを作成します。まだ、特定のスキーマファイルでの検証しか動作確認
できていません。

09LD001.dm

変換

09LD002.dm

7101_ContourIndex_0001.xml
7102_ContourInter_0001.xml

DM データファイル(入力フォルダ)変換する DM データファイルのフォルダを指定します。拡張子は「.dm」「.kih」です。公共測量作業規程の DM と作業規程の準則の DM に対応しています。
図形スキーマ XSD(入力ファイル)
図形を GM_Point, GM_Curve, GM_Surface などで記述するスキーマファイル(.xsd)を指定します。このアプリケーシ
ョンでは、描画スキーマと区別するため「図形スキーマ」と表現します。
描画スキーマ XSD(入力ファイル)
描画スキーマファイル(DMFeaturePortrayal.xsd など)を指定します。空白の場合、描画用の要素は出力しません。
DM 分類コードと地物の対応表 CSV(入力ファイル)
DM の取得分類コードとデータタイプ(面、線、点、注記など)に対して、変換する地物名などの対応表を指定します。
主題属性値の設定 CSV
XML の地物の主題属性の値と DM の要素の情報を関連付ける CSV を指定します。

2

テンプレート XML(入力ファイル)
GI 要素など、出力する XML ファイルの雛型を指定します。
平面直角座標系
XML ファイルに記録する平面直角座標系番号を指定します。
JPGIS-XML(出力フォルダ)
JPGIS-XML ファイルを出力するフォルダを指定します。
最初の地物 ID
地物の id について、最初の番号を指定します。各地物別に、この番号から連番で id を出力します。
ID の整数部分の桁数
id は例えば「Contour0000001」と、地物名+整数値で記録します。整数部分の桁数を指定します。
XML ファイルのサイズ指定したサイズより XML ファイルが大きくなりそうな場合、XML ファイルを分割します。

2.1.1. DM分類コードと地物の対応表CSVDM の取得分類コードとデータタイプ(面、線、点、注記など)に対して、変換する地物名などの対応表です。1 行目はヘッダで、2 行目からがデータです。
列

型

内容

1

整数

DM の取得分類コードで、4 桁の整数です。
最初の文字が C あるいは c の場合、コメント行として読み飛ばします。

2

文字列

DM のデータタイプです。
「線」「面」
「円」
「円弧」
「点」
「方向」
「注記」です。

3

文字列

XML の地物名です。図形スキーマあるいは描画スキーマで定義されている名称を指定します。

4

整数

0 の場合、図形スキーマを参照します。XML の図形部分に出力します。
1 の場合、描画スキーマを参照します。XML の描画部分に出力します。

5

文字列

コメントです。なくてもかまいません。

3

2.1.2. 主題属性値の設定CSVXML の地物の主題属性と DM の情報を関連付けを CSV ファイルで設定します。
列

内容

1

地物の名称あるいは「*」(半角アスタリスク)
地物の名称が指定されている場合、その地物の主題属性の指示になります。地物によって、同じ主題属性名でも内容が異なる場合、地物名を明示してください。
「*」の場合、すべての地物が対象になります。
「altitude」など、等高線や基準点に共通の主題属性の場合、「*」を指定します。

2

主題属性の名称
例「code」「altitude」「visibility」

3

条件
DM の情報について、注目する条件を指定します。次の指定が可能です。
「分類コード」：分類コードの値で処理を分岐します。分類コードは 4 列目で指定します。
「間断区分」：間断区分の値で処理を分岐します。間断区分は 4 列目で指定します。
「*」：無条件で 5 列目の処理を行います。

4

条件値
3 列目が「分類コード」の場合、4 桁の分類コードを指定します。
3 列目が「間断区分」の場合、1 桁の間断区分を指定します。
「*」：すべての分類コードあるいはすべての間断区分を意味します。条件のマッチング時には上の行から調べていきますので、この「*」はその他の値の意味になります。

5

処理
条件と条件値にがマッチした場合の処理内容を指定します。
「省略」：要素（タグ）を出力しない。
「分類コード」：DM の要素の分類コードを出力します。
「標高値」：主題属性の型が「Integer」の場合、標高値を整数値で、それ以外の「Decimal」などの場合、少数点以下 3 桁までのメートル単位で出力します。
「⇒」：6 列目の文字列をそのまま出力します。

6

5 列目が「⇒」の場合、主題属性の値として出力する文字列

7

拡張のための列

8

コメント

9

コメント

１,2,3 列目に文字列が入っている行を有効な行として参照します。

4

2.1.3. テンプレートXML
出力する XML ファイルの雛型になります。下図はサンプルです。

5

<?xml version="1.0" encoding="utf-8"?><GI xmlns:dm="http://www.gsi.go.jp/DM/schema/1.0_2009-01"
xmlns:jps="http://www.gsi.go.jp/GIS/jpgis/standardSchemas2.1_2009-05"
xmlns:dic="http://www.gsi.go.jp/GIS/jpgis/standardSchemas2.1_2009-05"
xmlns:fp="http:// http://www.gsi.go.jp/DM/schema/FeaturePortrayal"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:schemaLocation="http://www.gsi.go.jp/DM/schema/1.0_2009-01 DMSchema.xsd"
xmlns="http://www.gsi.go.jp/DM/schema/1.0_2009-01"
version="1.0" timeStamp="TEMPLATE_TIME_STAMP"><exchangeMetadata><jps:datasetCitation><jps:title>DM データセット</jps:title><jps:date><jps:date>TEMPLATE_PROCESS_DATE</jps:date><jps:dateType>001</jps:dateType></jps:date></jps:datasetCitation><jps:metadataCitation><jps:title>DM-META-TEMPLATE_FEATURE_NAME</jps:title><jps:date><jps:date>TEMPLATE_PROCESS_DATE</jps:date><jps:dateType>001</jps:dateType></jps:date></jps:metadataCitation><jps:encodingRule><jps:encodingRuleCitation><jps:title>JPGIS 附属書 8 XML に基づく符号化規則</jps:title><jps:date><jps:date>2009-05-01</jps:date><jps:dateType>001</jps:dateType></jps:date></jps:encodingRuleCitation><jps:toolName/><jps:toolVersion/></jps:encodingRule>6

<dataset><dm:object><!-- 座標参照系 --><jps:RS_CRS id="crs01"><jps:name><jps:code>JGD2000, TP / TEMPLATE_COORDINATE_NUMBER (X, Y), H</jps:code></jps:name></jps:RS_CRS><jps:TM_ReferenceSystem id="trs01"><jps:name><jps:code>GC / JST</jps:code></jps:name></jps:TM_ReferenceSystem>
TEMPLATE_GEOM_BEGIN<!-- DM 地物 -->TEMPLATE_GEOM_CONTENTTEMPLATE_GEOM_END
TEMPLATE_PORT_BEGIN<fp:PortDataset><!-- 記号と注記 --><fp:PortDataset.annotDic xlink:href="AnnotStlDic.xml#AnStlDic" /><fp:PortDataset.mapSmlDic xlink:href="MapSmlDic.xml#MapSmlDic" /><fp:PortDataset.element>
TEMPLATE_PORT_CONTENT</fp:PortDataset.element></fp:PortDataset>
TEMPLATE_PORT_END</dm:object></dataset></dm:GI>

出力する XML ではテンプレート内の次の文字列を入れ替えます。
テンプレート中の文字列
TEMPLATE_PROCESS_DATEXML を作成した日付。例「2009-11-23」

TEMPLATE_TIME_STAMP

XML を作成した日時。例「2009-11-23T10:38:02」

TEMPLATE_FEATURE_NAME

地物名。例「ContourIndex」

TEMPLATE_COORDINATE_NUMBER

ダイアログで指定された平面直角座標系番号。例「9」7図 形 は 「 TEMPLATE_GEOM_CONTENT 」 の 部 分 に 出 力 し ま す 。 図 形 の 要 素 ま で の イ ン デ ン ト は「TEMPLATE_GEOM_CONTENT」の前側のインデントと同じです。
描 画 は 「 TEMPLATE_PORT_CONTENT 」 の 部 分 に 出 力 し ま す 。 描 画 の 要 素 ま で の イ ン デ ン ト は「TEMPLATE_PORT_CONTENT」の前側のインデントと同じです。
XML ファイルに図形を出力する場合、「TEMPLATE_GEOM_BEGIN」から「TEMPLATE_GEOM_END」の間が出力されます。XML ファイルに図形のみ出力する場合、「TEMPLATE_PORT_BEGIN」から「TEMPLATE_PORT_END」の間は出力しません。
XML ファイルに描画を出力する場合、「TEMPLATE_PORT_BEGIN」から「TEMPLATE_PORT_END」の間を出力します。XML ファイルの描画のみを出力する場合は「TEMPLATE_GEOM_BEGIN」から「TEMPLATE_GEOM_END」の間は出力しません。
テンプレートの XML には、必ず「TEMPLATE_GEOM_BEGIN」「TEMPLATE_GEOM_CONTENT」「TEMPLATE_GEOM_END」「TEMPLATE_PORT_BEGIN」「TEMPLATE_PORT_CONTENT」「TEMPLATE_PORT_END」の順でこれらの文字列を配置してください。

作成する XML の文字コードは、テンプレートの XML 宣言(<?xml version="1.0" encoding="utf-8"?>)の encoding に従います。

2.1.4. 変換処理指定されたフォルダの DM データファイルを１ファイルづつリードし、要素をひとつづつ XML ファイルに出力していきます。メモリ使用量を節約するため、ひとつの DM データファイルをリードして、処理したらその DM データファイ
ルのデータを削除して、次の DM データファイルを開きます。最初に図形スキーマの要素を書き出し、描画スキーマが指定されている場合、図形の後に描画の要素を出力するため、再度 DM データをリードします。つまり、同じ DM デー
タを２回リードすることになります。
XML ファイルは地物別に作成します。地物別の XML ファイルを同時に複数個作成し、順次それぞれに要素を出力していきます。

8

09LD001.dm

09LD002.dm

変換

7101_ContourIndex_0001.xml< ContourIndex id=" ContourIndex 0000001" …
< ContourIndex id=" ContourIndex 0000002" …
< ContourIndex id=" ContourIndex000000 3" …
…

8181_DescAnnot_0001.xml< DescAnnot id=" DescAnnot 0000001" …
< DescAnnot id=" DescAnnot 0000002" …
< DescAnnot id=" DescAnnot000000 3" …
< DescAnnot id=" DescAnnot 0000004" …
< DescAnnot id=" DescAnnot 0000005" …
…

id は、例えば「ContourIndex0000001」と、地物名＋整数値で記録します。整数部分は、各地物別にダイアログで指定された開始番号から連番をセットします。

要素の分類コードとデータタイプが「分類コードと地物の対応表 CSV」になければ、その要素の出力はスキップします。

出力する XML ファイルのファイル名は以下のようになります。
取得分類コード + "_" + 地物名 + "_" + ４桁の整数 + ".xml"
4 桁の整数は「0001]から始まります。XML ファイルの最大サイズが指定された場合、「0002」「0003」と数値が増えていきます。

「分類コードと地物の対応表 CSV」で異なる分類コードに対して、同じ地物名が指定されている場合、XML のファイル名の取得分類コード部分はどちらになるか不定です。DM データファイルで最初に出現した分類コードになります。

XML ファイルの座標は平面直角座標系です。DM データファイルの要素の座標を小数点以下３桁までのメートル単位で出力します。標高値を出力する場合も小数点以下３桁までのメートル単位です。例「<altitude>326.000</altitude>」。
面(E1)と線(E2)については図形をそのまま XML に変換します。端点の座標が一致する等高線を接続したり、図郭で分9

かれている普通建物をひとつの閉じた形状にするようなことはしません。DM の点列で同じ座標が連続していてもそのま
ま同じ座標を出力します。

DM のデータタイプと出力する図形(GM_Point, GM_Curve, GM_Surface)は次のように対応します。これ以外の対応があって XML ファイルに図形要素を出力できなかった場合、その旨のワーニングを表示します。
データタイプ
GM_Surface あるいは GM_Curve面(E1)

もし始終点が異なっている場合、GM_Curve
GM_Curve線(E2)

始点と終点が同じ座標の場合 GM_Surface も可能
円(E3)

GM_Surface

円弧(E4)

GM_Curve

点(E5)

GM_Point
描画スキーマによる指定の場合、地図記号
GM_Point

方向(E6)

描画スキーマによる指定の場合、地図記号
注記(E7)

描画スキーマによる注記の出力のみ

図形はスキーマの指定によります。ひとつの地物に複数の図形が指定されている場合、先にマッチした方を出力します。
下図の場合、GM_Point の出力が GM_Curve より優先します。

<xs:complexType name="Monument"><xs:annotation><xs:documentation>type of 記念碑</xs:documentation></xs:annotation><xs:complexContent><xs:extension base="dm:SmallObject"><xs:sequence><xs:element name="pos" type="jps:GM_Point" minOccurs="0"/><xs:element name="loc" type="jps:GM_Curve" minOccurs="0"/></xs:sequence></xs:extension></xs:complexContent></xs:complexType>

例えば、普通建物の出力で、GM_Surface と GM_Curve が可能な場合、面(E1)なら GM_Suface、線(E2)でも始点と終点が同じ座標の場合 GM_Suface として出力できます。
XML の地物の主題属性については「主題属性値の設定 CSV」に従いますが、次の主題属性はプログラムでコントロー
ルしています。
。

10

タグ名

型

値

DMFtAnnot.nameCharacterString

注記(E7)の文字列

Map2500FtAnnot.nameCharacterString

注記(E7)の文字列

レポートパネルに次のような内容が赤い文字で表示されることがあります。
4236(電波塔):点(E5):要素識別番号=

1 の座標が出力できませんでした

分類コードとタグの対応 CSV を見ると次のように、点(E5)を変換することになっています。

DMSchema.xml では、図形が GM_Curve となっていて、点(E5)から GM_Curve には変換できないため、上記のワー
ニングが表示されることになります。

2.1.5. エラーチェック「分類コードと地物の対応表 CSV」について以下の項目をチェックします。


対応表の「データタイプ」が「線」
「面」
「円」
「円弧」
「点」
「方向」
「注記」以外

対応表の「図形・描画」が 0 と 1 以外



対応表の「地物名」について、図形スキーマあるいは描画スキーマに定義がない。
「図形・描画」が 0 の場合、図形スキーマを、1 の場合、描画スキーマを調べます。

テンプレート XML について以下の項目をチェックします。


TEMPLATE_GEOM_BEGIN がある



TEMPLATE_GEOM_CONTENT がある



TEMPLATE_GEOM_END がある



TEMPLATE_PORT_BEGIN がある



TEMPLATE_ PORT _CONTENT がある



TEMPLATE_ PORT _END がある

11

2.2.

シェープファイルからXMLへ変換

シェープファイルから JPGIS-XML(JPGIS2.0)ファイルを作成します。まだ、特定のスキーマファイルでの検証しか動作確認できていません。JPGIS2.1 のスキーマでの動作確認もまだです。

NBMMapBorder.shp

変換

LasMesArea.shp○○○.xml

FilArea.shp

ひとつの XML ファイルにまとめて出力する

NBMMapBorder.shp

変換

NBMMapBorder_0001.xml

LasMesArea.shp

LasMesArea_0001.xml

FilArea.shp

FilArea_0001.xml
地物別に XML を分けて出力する

シェープファイル(入力フォルダ)
変換するシェープファイルのフォルダを指定します。
図形スキーマ XSD(入力ファイル)
図形を GM_Point, GM_Curve, GM_Surface などで記述するスキーマファイル(.xsd)を指定します。このアプリケーシ
ョンでは、描画スキーマと区別するため「図形スキーマ」と表現します。
描画スキーマ XSD(入力ファイル)12

描画スキーマファイルを指定する予定ですが、まだ未対応です。空白にしておいてください。
テンプレート XML(入力ファイル)
GI 要素など、出力する XML ファイルの雛型を指定します。
シェープファイル名と地物の対応表 CSV(入力ファイル)
シェープファイル名と変換する XML 地物名などの対応表を指定します。
主題属性値の設定 CSV
XML の地物の主題属性の値とシェープファイルのフィールド情報を関連付ける CSV を指定します。
平面直角座標系
XML ファイルに記録する平面直角座標系番号を指定します。シェープファイルの座標は平面直角座標系で記録されているものとし、出力する XML の座標も平面直角座標系です。
JPGIS-XML(出力フォルダ)
地物別の JPGIS-XML ファイルを出力するフォルダを指定します。ひとつの XML にまとめる場合は「XML ファイル名(出力ファイル)」でファイル名を指定します。
ファイルの分け方
地物別に XML ファイルを作成するか、ひとつの XML ファイルにまとめて出力するかを指定します。ひとつの XMLにまとめる場合は「XML ファイル名(出力ファイル)」でファイル名を指定します。
構造化する
ON の場合、図形の構造化をします。シェープファイルのポリゴンが隣接する場合、隣接する部分をひとつの GM_curve
として共有するようにします。シェープファイルのポリラインがネットワークになっている場合、分岐で CM_Curve を分けます。分岐点は GM_Point として参照するようにします。OFF の場合、ポリゴンはひとつの GM_Curve として、
ポリラインもひとつの GM_Curve として出力します。現在、ひとつの XML ファイルに出力する場合有効です。
最初の地物 ID
地物の id について、最初の番号を指定します。各 XML ファイル別に、この番号から連番で id を出力します。
ID の整数部分の桁数
id は例えば「LasMesArea0000001」と、地物名+整数値で記録します。整数部分の桁数を指定します。
XML ファイルのサイズ指定したサイズより XML ファイルが大きくなりそうな場合、XML ファイルを分割します。ひとつの XML ファイルにまとめる場合は無効です。また、GM_Surface や GM_Curve を構造化する場合も無効です。

2.2.1. シェープファイルと地物の対応表CSV
ひとつのシェープファイルは一種類の地物の情報が記録されているものとします。シェープファイルに対して、変換す
る地物名などの対応表です。1 行目はヘッダで、2 行目からがデータです。
列

型

内容

1

文字列

シェープファイル名2

文字列

シェープファイルのタイプ。
「ポリゴン」「ポリライン」「ポイント」のどれか。

3

文字列

XML の地物名です。スキーマで定義されている名称を指定します。

4

整数

固定値「0」

5

文字列

コメント。なくてもかまいません。

13

2.2.2. 主題属性値の設定CSVXML の地物の主題属性とシェープファイルの属性情報との関連付けを CSV ファイルで設定します。
列

内容

1

地物の名称あるいは「*」(半角アスタリスク)
地物の名称が指定されている場合、その地物の主題属性の指示になります。地物によって、同じ主題属性名でも内容が異なる場合、地物名を明示してください。
「*」の場合、すべての地物が対象になります。

2

主題属性の名称
JP_RectifiedGrid に変換する場合は、Record の名称を指定します。

3

シェープファイルのフィールド名。
指定されたフィールドの内容を、XML の主題属性の内容として出力します。
主題属性が TM_Period の場合、begin と end の日付を半角セミコロン";"で結んだ文字列をシェープファイルに入力しておきます。例「20100501;20100531」。XML の TM_Instant には date8601 形式「2010-05-01」「2010-05-31」に変換して出力します。フィールド値が「20100501」とセミコロンで分けてない場合、beginと end の両方に同じ日付を出力します。
JP_RectifiedGrid に変換する場合で、複数のフィールド、例えば「国土基本図図郭名称」「フィルタ有無」をRecord に記録する場合、シェープファイルに記録されているフィールドの順に値を並べます。従って、「国土基本図図郭名称」を先にしたい場合、対応するフィールドの列番号が「フィルタ有無」の列番号より小さくなるようにしておきます。

4

拡張のための列で空白にしておきます。

5

JP_RectifiedGrid に変換する場合は、Record の型を指定します。
「CharacterString」「Boolean」「Integer」「Real」など JPGIS で定義されている型の名称です。
「Boolean」の場合、シェープファイルのフィールド値が空白、「0」「false」「FALSE」だったら「false」を出力、それ以外は「true」を出力します。

6

拡張のための列で空白にしておきます。

7

拡張のための列で空白にしておきます。

8

コメント

9

コメント

１,2,3 列目に文字列が入っている行を有効な行として参照します。

14

2.2.3. テンプレートXML
出力する XML ファイルの雛型になります。下図はサンプルです。

15

<exchangeMetadata><!-- データ集合の情報定義 --><jps:datasetCitation><jps:title>土砂災害危険箇所レーザ計測検索用索引図データ集合</jps:title><jps:date><jps:date>2008-07-10</jps:date><jps:dateType>001</jps:dateType></jps:date></jps:datasetCitation><!-- このデータ集合のメタデータ情報定義 --><jps:metadataCitation><jps:title>土砂災害危険箇所レーザ計測索引図メタデータ</jps:title><jps:date><jps:date>2008-07-10</jps:date><jps:dateType>001</jps:dateType></jps:date></jps:metadataCitation><!-- このデータ集合の応用スキーマ情報定義 --><jps:applicationSchemaCitation><jps:title>土砂災害危険箇所レーザ計測索引図応用スキーマ</jps:title><jps:date><jps:date>2008-07-01</jps:date><jps:dateType>001</jps:dateType></jps:date></jps:applicationSchemaCitation><!-- このデータ集合の符号化規則情報定義 --><jps:encodingRule><jps:encodingRuleCitation><jps:title>土砂災害危険地域レーザ計測データの検索用索引図の XML スキーマ文書

第 1.00 版</jps:title><jps:date><jps:date>2008-07-01</jps:date><jps:dateType>001</jps:dateType></jps:date></jps:encodingRuleCitation><jps:toolName>土砂災害危険箇所レーザ計測索引図標準化ツール</jps:toolName><jps:toolVersion>1.0</jps:toolVersion></jps:encodingRule></exchangeMetadata>

16

<dataset><jps:RS_CRS id="rs001"><jps:name><jps:code>JGD2000 / TEMPLATE_COORDINATE_NUMBER(X,Y)</jps:code></jps:name></jps:RS_CRS><slmi:SLMIDataset><crs idref="rs001"/><object>
TEMPLATE_GEOM_BEGIN
TEMPLATE_GEOM_CONTENTTEMPLATE_GEOM_END
TEMPLATE_PORT_BEGIN
TEMPLATE_PORT_CONTENTTEMPLATE_PORT_END</object></slmi:SLMIDataset></dataset>

出力する XML ではテンプレート内の次の文字列を入れ替えます。
テンプレート中の文字列
TEMPLATE_PROCESS_DATEXML を作成した日付。例「2009-11-23」

TEMPLATE_TIME_STAMP

XML を作成した日時。例「2009-11-23T10:38:02」

TEMPLATE_FEATURE_NAME

地物名(地物別に XML ファイルを作成する場合)

TEMPLATE_COORDINATE_NUMBER

ダイアログで指定された平面直角座標系番号。例「9」図 形 は 「 TEMPLATE_GEOM_CONTENT 」 の 部 分 に 出 力 し ま す 。 図 形 の 要 素 ま で の イ ン デ ン ト は「TEMPLATE_GEOM_CONTENT」の前側のインデントと同じです。
描 画 は 「 TEMPLATE_PORT_CONTENT 」 の 部 分 に 出 力 し ま す 。 描 画 の 要 素 ま で の イ ン デ ン ト は「TEMPLATE_PORT_CONTENT」の前側のインデントと同じです。
XML ファイルに図形を出力する場合、「TEMPLATE_GEOM_BEGIN」から「TEMPLATE_GEOM_END」の間が出力されます。XML ファイルに図形のみ出力する場合、「TEMPLATE_PORT_BEGIN」から「TEMPLATE_PORT_END」の間は出力しません。
XML ファイルに描画を出力する場合、「TEMPLATE_PORT_BEGIN」から「TEMPLATE_PORT_END」の間を出力します。XML ファイルの描画のみを出力する場合は「TEMPLATE_GEOM_BEGIN」から「TEMPLATE_GEOM_END」の間は出力しません。
テンプレートの XML には、必ず「TEMPLATE_GEOM_BEGIN」

17

「TEMPLATE_GEOM_CONTENT」「TEMPLATE_GEOM_END」「TEMPLATE_PORT_BEGIN」「TEMPLATE_PORT_CONTENT」「TEMPLATE_PORT_END」の順でこれらの文字列を配置してください。現在、描画部分の出力は未サポートです。

作成する XML の文字コードは、テンプレートの XML 宣言(<?xml version="1.0" encoding="utf-8"?>)の encoding に従います。

2.2.4. 変換処理指定されたフォルダのシェープファイルを１ファイルづつリードし、要素をひとつづつ XML ファイルに出力していきます。メモリ使用量を節約するため、ひとつのシェープファイルをリードして、処理したらそのシェープファイルのデータを削除して、次のシェープファイルを開きます。最初に図形スキーマの要素を書き出し、描画スキーマが指定されている場合、図形の後に描画の要素を出力するため、再度シェープファイルをリードします。つまり、同じシェープファイル
を２回リードすることになります。
XML ファイルを地物別に作成する場合、地物別の XML ファイルを同時に複数個作成し、順次それぞれに要素を出力
していきます。

LasMesArae.shp

FilArea.shp

変換

LasMesArea_0001.xml< slmi:LasMesArea id="LasMesArea000001" …
< slmi:LasMesArea id="LasMesArea000002" …
< slmi:LasMesArea id="LasMesArea000003" …
…

8181_DescAnnot_0001.xml< slmi:FilArea id="FilArea000001" …
< slmi:FilArea id="FilArea000002" …
< slmi:FilArea id="FilArea000003" …
< slmi:FilArea id="FilArea000004" …
< slmi:FilArea id="FilArea000005" …
…

18

id は、例えば「LasMesArea0000001」と、地物名＋整数値で記録します。整数部分は、各地物別にダイアログで指定された開始番号から連番をセットします。

入力フォルダのシェープファイル名が「シェープファイルと地物の対応表 CSV」になければ、そのシェープファイル
データの出力はスキップします。

地物別に XML ファイルを出力する場合、出力する XML ファイルのファイル名は以下のようになります。
地物名 + "_" + ４桁の整数 + ".xml"
4 桁の整数は「0001]から始まります。XML ファイルの最大サイズが指定された場合、「0002」「0003」と数値が増えていきます。
「シェープファイルと地物の対応表 CSV」で異なるシェープファイルに対して、同じ地物名を指定することも可能です。

XML ファイルの座標は平面直角座標系です。座標を小数点以下３桁までのメートル単位で出力します。
シェープファイルのデータタイプと出力する図形(GM_Point, GM_Curve, GM_Surface)は次のように対応します。これ以外の対応があって XML ファイルに図形要素を出力できなかった場合、その旨のワーニングを表示します。
シェープファイルのデータタイプ
ポリゴン

GM_Surface

ポリライン

GM_Curve

ポイント

GM_Point

2.2.5. JP_RectifiedGrid
ポリゴンのシェープファイルを JP_RectifiedGrid に変換する場合、シェープファイルのポリゴンについて条件があり
ます。

19



シェープファイル内のポリゴンは水平垂直の四角形(頂点数 5)になっている



ポリゴンは大と小の２サイズのみ(以下、大ポリゴンと小ポリゴンとします）



大ポリゴンの幅と高さは小ポリゴンの整数倍(例 20 倍)

大ポリゴンと大ポリゴンは重ならない

小ポリゴンと小ポリゴンは重ならない

小ポリゴンは必ずどれかの大ポリゴンの内側にある

小ポリゴンのフィールドには必ず値(XML のレコードに出力する値)が入っている

ひとつの大ポリゴンをひとつの JP_RectifiedGrid として出力します。小ポリゴンは、それが含まれる大ポリゴンのJP_RectifiedGrid の中の Cell になります。

2.2.6. エラーチェック
テンプレート XML について以下の項目をチェックします。


TEMPLATE_GEOM_BEGIN がある



TEMPLATE_GEOM_CONTENT がある



TEMPLATE_GEOM_END がある



TEMPLATE_PORT_BEGIN がある



TEMPLATE_ PORT _CONTENT がある



TEMPLATE_ PORT _END がある

20

2.3.

JPGIS-XML検査

2.3.1. 対象
現段階では DM から変換した JPGIS-XML が検査対象です。また、地図記号と注記の検査は未対応です。

2.3.2. JPGIS-XML検査
XML ファイルの内容を検査します。開いている XML あるいは XML ファイルのフォルダを指定して検査します。

【開いているファイル】
読み込んでいる JPGIS-XML ファイルについて検査します。スキーマファイルも同じフォルダに置いてください。

【フォルダ指定】指定したフォルダ内の基盤地図情報 XML ファイルをすべてリードして検査します。スキーマファイルも同じフォルダに置いてください。

【座標が緯度経度の場合、平面直角座標系で表示する】
トゲやスイッチバックなど距離を指定する検査は平面直角座標系で行います。XML の座標が緯度経度で記録されている場合、ON にして平面直角座標系を指定してください。XML の座標が平面直角座標系のメートル単位で記録されている場合 OFF にします。

21

【必要な属性が欠けている地物】
必要な属性が欠けている地物がある場合、該当する地物をリストアップします。

【列挙型で定義されている値以外の属性値】
スキーマファイル(.xsd)で列挙型として宣言されている属性がありますが、地物の属性値が列挙された値以外の場合、地物をリストアップします。メッセージには地物の値と該当する列挙型の名称および列挙型の値を表示します。

【地物の「地物 ID」の重複】
地物にタグ「地物 ID」がある場合、それぞれの XML ファイルの中に同じ「地物 ID」の有無を検査します。

【地物の「uuid」の重複】
地物にタグ「uuid」がある場合、それぞれの XML ファイルの中に同じ「uuid」の有無を検査します。

22

【自己交差】
面(surface)のねじれや線(curve)の自己交差、つまり点列が交差している箇所を検出します。

面の自己交差(ねじれ)線の自己交差線(curve)の端点付近で交差し、わずかに出ている場合に交差と判定したくない場合、クリアランスで指定します。
１
クリアランス

５

４

３

２

【トゲ】
面(surface)と線(curve)の点列について、ある点の両方の線分のなす角が指定した角度より小さく、かつどちらかの線分の長さが指定した長さより短い場合、リストアップします。
線分 23 と線分 34 のなす角が小さく、

3

線分 23 か線分 34 の長さが短い場合トゲと判定します。
4
1

5

2

面(surface)の場合、始点(終点)がトゲになっているケースも検出します。

23

5

1,6
2

4
3

【スイッチバック】面(surface)と線(curve)についてスイッチバックを検出します。連続する点の角度が両方とも指定した角度より小さい場合を検出します。
1

2
3

点２と点３のなす角が両方とも小さい

4【微小線分】面(surface)と線(curve)について点列の間の距離が指定した距離より短い場合を検出します。
5

1,6

微小線分
2

4

3

点列について、同じ XY 座標が連続している場合も検出します。連続点のみを検出したい場合、微小線分の長さを 0より大きな小さい値(例えば 0.1mm)を指定してください。
同じ XY 座標の点が連続している

２

3,4

１

５

【微小ポリゴン】
面(surface)について、面積が指定した値よりも小さいものをリストアップします。ポリゴンに穴(interior)がある場合、外周の面積から内週の面積を引いた面積を調べます。
つぶれてほぼ一本の線に見えるような面(surface)が検出された場合、ツールバーの[垂直シフト表示]で上下にずらして表示すると確認しやすくなります。

【二重取得】面(surface)と線(curve)、点(Point)について、二重になっている地物を検出します。同じ地物の XML ファイルが複数ある場合、異なるファイル間での重なりも調べます。同じ地物が二重になっている場合、品質要素「完全性(過剰)」を満たしていないことにもなります。
面(surface)の内周(interior)部分に他の面の外周(exterior)が入っている場合、二重取得としません。

24

複数の面の内周が一致している場合も、二重取得としません。

【ポリゴンの始点終点不一致】
面(Surface)について、始点の座標と終点の座標が異なる場合を検出します。

【ポリゴンの構成点数が 3 点以下】
面(Surface)について、ポリゴンを構成する点数が 3 点以下の場合を検出します。もし、同じ座標の点が連続している
場合、1 点とみなして点数をカウントします。

【内周(interior)の重なり】
ひとつの面(Surface)に複数の内周(interior)があり、内週の線が交差してる場合を検出します。また、[レポート]パネルに、面の地物の総数、内周がない地物の数、内周がひとつの地物の数、内周が複数の地物の数を表示します。

【マルチパート】
ひとつの地物について以下のケースを検出します。
・複数の Point(地点)がある
・複数の Curve(場所)がある
・複数の Surface(範囲)の外周(exterior)がある(内周(interior)は検出の対象外)

検査の結果は「チェックリスト」に表示します。

25

2.4.

XMLからDMファイルへ変換

2.4.1. 対象
JPGIS-XML(JPGIS2.0)ファイルから DM ファイルに変換します。現段階では、メニュー「DM ファイルから XML へ変換」で作成した XML に対応しています。

2.4.2. XMLの地物とDMの分類コードの対応CSVXML の地物を DM の要素に変換するわけですが XML の地物名と DM の分類コードの対応を CSV ファイルでしていします。XML の地物名がこの対応表にない場合、DM の要素には変換されません。
CSV ファイルの 1 行目はコメントです。2 行目からがデータです。
列

型

内容

1

文字列

XML の地物名

2

文字列

DM の分類コード26

2.4.3. 分類コード以外の変換対応表
XML の地物名と DM の分類コード以外で、XML の各地物の情報をと DM の各要素の情報への変換を指定します。また、分類コードについても、XML の地物の情報を参照して DM に設定できます。この場合、上記の地物名と分類コードの変換よりこの表の指定を優先します。
CSV ファイルの 1 行へは項目の説明で、プログラムは 2 行目から参照します。

27

列

型

内容

1

文字列

地物の名称。
「*」の場合はすべての地物を意味します

2

文字列参照する XML の属性名

3

文字列

属性の文字列。
「*」は属性の文字列のな要は問わないことを意味します。

4

文字列セットする DM の情報。
以下の文字列が有効です。以下の文字列が有効です。
「分類コード」XML の属性値を DM の分類コードにします「間断区分」 5 列目は 0 か 1 の整数「取得年月」元の文字列が「yyyy-mm-dd」(例「2009-11-25」)の形式の場合のみサポートしています「標高値」XML の属性の標高値（メートル)を DM の要素にセットします5

文字列

分類コードや間断区分などの値を指定します。
空白の場合、3 列目の内容に応じた値を DM の要素にセットします6

文字列

拡張のため保留7

文字列

拡張のため保留

8

文字列

コメント

9

文字列

コメント

28

2.4.4. ダイアログ

XML ファイルフォルダ
XML ファイルのフォルダを指定します。指定されたフォルダ内の.xml が変換対象になります。
地物名と分類コード対応 CSV
XML の地物名と DM の分類コードの対応表です。上記の説明を参照してください。
属性情報の対応 CSV
XML の地物の情報と DM の各要素の情報の対応表です。上記の説明を参照してください。
座標系
作成する DM ファイル名の先頭につける平面直角座標系番号を指定します。
XML は緯度経度で記録されている

29

XML 内の座標は緯度経度で記録されている場合、このチェックを ON にします。上記「座標系」で指定された平面直角座標系に変換します。
ＤＭの地図情報レベル指定された地図情報レベルの図郭名の DM ファイルを作成します。
図郭レコードDM の図郭レコードの内容をしていします。
グループヘッダレコード、要素レコード
DM のグループヘッダレコードと要素レコードの内容を指定します。
注記
作成する注記の内容を指定します。
ＤＭファイルフォルダ
ＤＭデータファイルを出力するフォルダを指定します。
シェープファイル名は FillArea.shp などの地物名になります。

2.4.5. 変換内容
XML の地物とタイプと DM の要素のレコードタイプの対応は次のようになります。
XML

DM の要素GM_Point

点(E5)

GM_Curve線(E2)

GM_Surface

面(E1)

Annot

注記(E7)

保存する DM は国土交通省デジタルマッピングデータファイル(旧 DM)で、公共測量標準図式数値地形図データファイ
ル(拡張 DM)ではありません。

2.5.

XMLからシェープファイルへ変換

2.5.1. 対象
JPGIS-XML(JPGIS2.0)ファイルからシェープファイルに変換します。現段階では、メニュー「シェープファイルからXML へ変換」で作成した XML に対応しています。また、JP_RectifiedGrod については、矩形の親子関係を再現できません。

2.5.2. 設定
変換内容は CSV ファイルで指定します。各地物毎にシェープファイルを作成しますので、地物毎にシェープファイルの内容を指定します。CSV ファイルの 1 行へは項目の説明で、プログラムは 2 行目から参照します。

30

列

型

内容

1

文字列

XML の地物名。次の行からは空白にしておきます。

2

文字列

XML のタグ名。

3

文字列

シェープファイルのフィールド名です。
シェープファイルの仕様上、11 バイトまでなので、全角の場合５文字までになります。

4

文字列

フィールドの型を半角大文字アルファベットで指定します。空白の場合、"C"とみなします。
"C" 文字列"N" 数値

5

整数

フィールド長。記録するデータの最大のバイトすうです。255 まで指定できます。

6

整数

実数の場合の小数点以下の桁数を指定します。文字列や整数の場合は空白にしておきます。

31

2.5.3. ダイアログ

JPGIS-XML ファイルフォルダ(入力)XML ファイルのフォルダを指定します。指定されたフォルダ内の.xml が変換対象になります。
変換設定 CSV ファイル (入力)
上記 CSV ファイルを指定します。
平面直角座標系に変換する
XML 内の座標は緯度経度で記録されています。平面直角座標系のシェープファイルを出力する場合、座標系を指定します。
地物のタグの値から[fgoid][fmdid:]を除く
XML の要素の文字列が「fgoid」「fmdid:」で始まる場合、この部分を削除してシェープファイルに記録します。
シェープファイルフォルダ(出力)シェープファイルを出力するフォルダを指定します。シェープファイル名は FillArea.shp などの地物名になります。

32

3. その他
3.1.

更新記録

【0.00


最初のバージョン【0.01
2009/11/28】

メニュー[DM から XML へ変換]に「主題属性値の設定 CSV」を追加しました。

【0.02


2009/11/23】

2009/12/16】

メニュー[DM から XML へ変換]で id の設定内容を変更しました。出力する XML の「lifeSpan」のインデントをひとつ増やしました。注記の出力を修正しました。

【0.03


メニュー[DM から XML へ変換]で注記と地図記号の出力内容を修正しました。

【0.1.3

2010/03/25】

2010/03/29】

バージョン番号の付け方を変更。

【6.0.1.4

2010/06/21】

Java6, Window7 に対応。



新メニュー[JPGIS-XML 変換]-[シェープファイルから XML へ変換]を追加【6.0.1.5


新メニュー[JPGIS-XML 変換]-[XML からシェープファイルへ変換]を追加【6.0.1.6

2011/03/31】

メニュー[JPGIS-XML 変換]-[シェープファイルから XML へ変換]を修正しました。

【6.0.4

2011/03/23】

新メニュー[JPGIS-XML 変換]-[JPGIS-XML 検査]を追加【6.0.3

2011/03/19】

新メニュー[JPGIS-XML 変換]-[XML から DM へ変換]を追加【6.0.2


2011/03/05】

2011/05/26】

メニュー[JPGIS-XML 変換]-[シェープファイルから XML へ変換]で、「土砂災害危険地域レーザ計測データの検索用索引図」の新しい slmiAppSchema.xsd に対応しました。

【7.0.0Java7 に対応。

【8.0.0

2013/02/12】

2014/09/02】

Windows8、Java8 に対応。

33