サイトトップへこのカテゴリの一覧へ

X 7136:2012 (ISO 19136:2007) 

(1) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

目 次 

ページ 

序文 ··································································································································· 1 

1 適用範囲 ························································································································· 2 

2 適合性 ···························································································································· 3 

2.1 適合性の要件 ················································································································ 3 

2.2 GML応用スキーマに関係する適合性クラス ········································································ 3 

2.3 GMLプロファイルに関係する適合性クラス ········································································ 4 

2.4 GML文書に関係する適合性 ····························································································· 5 

2.5 ソフトウェア実装に関係する適合性 ··················································································· 5 

3 引用規格 ························································································································· 5 

4 用語,定義及び略語 ·········································································································· 6 

4.1 用語及び定義 ················································································································ 6 

4.2 略語 ··························································································································· 14 

5 規則······························································································································ 15 

5.1 XML名前空間 ·············································································································· 15 

5.2 版管理 ························································································································ 15 

5.3 GMLの以前の版における非推奨の部分 ············································································· 15 

5.4 UML表記法 ················································································································· 15 

5.5 XML Schema ················································································································ 17 

6 GMLスキーマの概要 ······································································································· 17 

6.1 GMLスキーマ·············································································································· 17 

6.2 GML応用スキーマ········································································································ 17 

6.3 JIS X 7100シリーズ(ISO 19100シリーズ)の規格, 

GMLスキーマ及びGML応用スキーマの関係 ···································································· 18 

6.4 この規格の編成 ············································································································ 19 

6.5 非推奨の試行的なスキーマ構成部品 ·················································································· 21 

7 GMLスキーマ−一般規則及び基底スキーマ構成部品 ····························································· 21 

7.1 GMLモデル及び構文 ····································································································· 21 

7.2 gmlBaseスキーマ構成部品 ······························································································ 23 

8 GMLスキーマ−XLink及び基本型 ····················································································· 36 

8.1 Xlinks−オブジェクト関連及び遠隔プロパティ ··································································· 36 

8.2 基本型 ························································································································ 37 

9 GMLスキーマ−地物 ······································································································· 46 

9.1 一般概念 ····················································································································· 46 

9.2 JIS X 7109との関係 ······································································································· 46 

9.3 地物 ··························································································································· 46 

X 7136:2012 (ISO 19136:2007) 目次 

(2) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

ページ 

9.4 標準地物プロパティ ······································································································ 47 

9.5 幾何プロパティ ············································································································ 49 

9.6 位相プロパティ ············································································································ 50 

9.7 時間プロパティ ············································································································ 51 

9.8 応用分野に固有の地物型の定義について ············································································ 52 

9.9 地物の集まり ··············································································································· 53 

9.10 地物又は地物の集まりに使用する時空間参照系 ································································· 55 

10 GMLスキーマ−幾何プリミティブ ··················································································· 55 

10.1 一般的な概念 ·············································································································· 55 

10.2 抽象幾何プリミティブ ·································································································· 61 

10.3 幾何プリミティブ(零次元) ························································································· 62 

10.4 幾何プリミティブ(一次元) ························································································· 63 

10.5 幾何プリミティブ(二次元) ························································································· 77 

10.6 幾何プリミティブ(三次元) ························································································· 87 

11 GMLスキーマ−幾何複体,幾何合成及び幾何集成 ······························································· 89 

11.1 概要 ·························································································································· 89 

11.2 幾何複体及び幾何合成 ·································································································· 89 

11.3 幾何集成 ···················································································································· 92 

12 GMLスキーマ−座標参照系スキーマ ················································································ 97 

12.1 概要 ·························································································································· 97 

12.2 参照系 ······················································································································· 99 

12.3 座標参照系 ················································································································ 101 

12.4 座標系 ······················································································································ 108 

12.5 原子 ························································································································· 116 

12.6 座標演算 ··················································································································· 123 

13 GMLスキーマ−位相 ···································································································· 136 

13.1 一般概念 ··················································································································· 136 

13.2 抽象位相 ··················································································································· 136 

13.3 位相プリミティブ ······································································································· 137 

13.4 位相の集まり ············································································································· 142 

13.5 位相複体 ··················································································································· 144 

14 GMLスキーマ−時間情報及び動的地物············································································· 146 

14.1 一般概念 ··················································································································· 146 

14.2 時間スキーマ ············································································································· 147 

14.3 時間位相スキーマ ······································································································· 155 

14.4 時間参照系 ················································································································ 158 

14.5 動的地物の表現 ·········································································································· 166 

15 GMLスキーマ−定義及び辞書 ························································································ 171 

15.1 概要 ························································································································· 171 

X 7136:2012 (ISO 19136:2007) 目次 

(3) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

ページ 

15.2 辞書スキーマ ············································································································· 171 

16 GMLスキーマ−単位,計測値,及び値············································································· 175 

16.1 一般 ························································································································· 175 

16.2 単位スキーマ ············································································································· 175 

16.3 計測値スキーマ ·········································································································· 181 

16.4 値オブジェクトスキーマ ······························································································ 182 

17 GMLスキーマ−方向 ···································································································· 190 

17.1 方向スキーマ ············································································································· 190 

17.2 direction及びDirectionPropertyType··············································································· 190 

17.3 DirectionVectorType ···································································································· 190 

17.4 DirectionDescriptionType ······························································································ 191 

18 GMLスキーマ−観測地物 ······························································································ 192 

18.1 観測地物 ··················································································································· 192 

18.2 観測地物スキーマ ······································································································· 192 

19 GMLスキーマ−被覆 ···································································································· 197 

19.1 被覆のモデル及び表現 ································································································· 197 

19.2 グリッドスキーマ ······································································································· 199 

19.3 被覆スキーマ ············································································································· 202 

20 プロファイル ··············································································································· 217 

20.1 GMLのプロファイル及び応用スキーマ ·········································································· 217 

20.2 プロファイルの定義 ···································································································· 217 

20.3 応用スキーマとの関係 ································································································· 218 

20.4 プロファイルにおける要素及び型のための規則 ································································ 218 

20.5 応用スキーマからGMLプロファイルを参照するための規則 ··············································· 219 

20.6 GMLプロファイルを使用する応用スキーマのための推奨事項············································· 219 

20.7 GMLプロファイルのための規則の要約 ·········································································· 220 

21 GML応用スキーマのための規則 ····················································································· 220 

21.1 GMLオブジェクトのインスタンス ················································································ 220 

21.2 GML応用スキーマ ····································································································· 221 

21.3 地物及び地物の集まりを定義するスキーマ ······································································ 224 

21.4 空間幾何要素を定義するスキーマ ·················································································· 225 

21.5 空間位相を定義するスキーマ ························································································ 226 

21.6 時間を定義するスキーマ ······························································································ 227 

21.7 座標参照系を定義するスキーマ ····················································································· 227 

21.8 被覆を定義するスキーマ ······························································································ 228 

21.9 観測地物を定義するスキーマ ························································································ 230 

21.10 辞書及び定義を示すスキーマ ······················································································· 231 

21.11 値を定義するスキーマ ································································································ 232 

21.12 GMLスキーマのGMLプロファイル ············································································ 232 

X 7136:2012 (ISO 19136:2007) 目次 

(4) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

ページ 

附属書A(規定)GML応用スキーマ,GMLプロファイル及びGML文書のための抽象試験項目群 ···· 235 

附属書B(規定)ソフトウェア実装のための抽象試験項目群 ······················································· 247 

附属書C(参考)GMLスキーマ ··························································································· 251 

附属書D(規定)JIS X 7100シリーズ(ISO 19100シリーズ)の規格の実装プロファイル及び拡張 ····· 253 

附属書E(規定)UMLからGMLへの応用スキーマ符号化規則 ·················································· 315 

附属書F(規定)GMLからUMLへの応用スキーマ符号化規則 ··················································· 337 

附属書G(参考)GMLスキーマ部分集合作成のためのガイドライン ············································ 346 

附属書H(参考)既定表現様式 ····························································································· 362 

附属書I(参考)GML旧版との後方互換性 ·············································································· 374 

附属書J(参考)モジュール化及び依存関係 ············································································ 392 

参考文献 ··························································································································· 394 

索引 ································································································································· 396 

X 7136:2012 (ISO 19136:2007) 目次 

(5) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

まえがき 

この規格は,工業標準化法第12条第1項の規定に基づき,財団法人日本測量調査技術協会(APA)から

工業標準原案を具して日本工業規格を制定すべきとの申出があり,日本工業標準調査会の審議を経て,経

済産業大臣及び国土交通大臣が制定した日本工業規格である。 

この規格は,著作権法で保護対象となっている著作物である。 

この規格の一部が,特許権,出願公開後の特許出願又は実用新案権に抵触する可能性があることに注意

を喚起する。経済産業大臣,国土交通大臣及び日本工業標準調査会は,このような特許権,出願公開後の

特許出願及び実用新案権に関わる確認について,責任はもたない。 

X 7136:2012 (ISO 19136:2007)

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

日本工業規格          JIS 

X 7136:2012 

(ISO 19136:2007) 

地理情報−地理マーク付け言語(GML) 

Geographic information-Geography Markup Language (GML) 

序文 

この規格は,2007年に第1版として発行されたISO 19136を基に,技術的内容及び構成を変更すること

なく作成した日本工業規格である。この規格は,ISO/TC 211が関与する種々の地理情報規格を基とした日

本工業規格(以下,JIS X 7100シリーズという。)の一つである。JIS X 7100シリーズは,地球上の位置と

直接的又は間接的に関連づけられたオブジェクト又は現象に関する情報処理技術のための標準であり,河

川,道路などに関する様々なデータを電子化し,各種情報処理の高度化・効率化に適用される。 

なお,この規格で,側線又は点線の下線を施してある参考事項は,対応国際規格にはない事項である。 

地理マーク付け言語(GML)は,当初Open Geospatial Consortium, Inc. (OGC)が作成した。ISO 19136は,

ISO/TC 211及びOGCが共同で作成した。 

地理マーク付け言語は,地理情報の伝送及び格納を行うとともに,応用スキーマを記述するためにXML 

Schemaで書いたXML文法である。 

実世界をモデル化するために地理マーク付け言語(GML)が使う主要な概念は,JIS X 7100シリーズ(ISO 

19100シリーズ)及びOpenGIS抽象仕様からとった。地球上の場所と関連する“実世界の現象の抽象概念”

(ISO 19101)を地物という。したがって,実世界のデジタルな表現は,地物の集まりと考えられる。地物

の状態は,プロパティの集まりで定義する。ここで各プロパティは,{名前,型,値}の組と考えられる。 

地物がもつことのできる,名前及び型を伴うプロパティの数は,地物の型定義によって定まる。プロパ

ティとして幾何要素をもつ地物は,幾何要素の値をもつことができる。地物の集まりはそれ自身地物とし

て扱うので,地物の集まりは,地物型をもち,それゆえ,それに含まれる複数の地物に加えて,それ自身

も,個別のプロパティをもつことができる。 

JIS X 7109に適合する応用システム及び応用分野における地物型は,通常応用スキーマの中に含まれる。

GML応用スキーマは,XML Schemaに従って示し,次の二つの手段のいずれかによって構築する。 

− JIS X 7109が示すUMLで記述する応用スキーマのための規則を順守し,そしてそれらのスキーマに

対する制約及びこの規格で示すGML応用スキーマへの写像のための規則に適合する。 

− XML Schemaで直接GML応用スキーマを作成するために,この規格で示すGML応用スキーマのため

の規則を順守する。 

この規格では,これらの二つの手段をサポートする。JIS X 7100シリーズ(ISO 19100シリーズ)の規

格の概念モデリングフレームワークの適切な使用を確実にするためには,全ての応用スキーマを,JIS X 

7109が示す一般地物モデルに従ってモデル化することが求められる。JIS X 7100シリーズ(ISO 19100シ

リーズ)では,概念スキーマをモデル化する言語としてUMLを推奨している。 

GMLは,JIS X 7100シリーズ(ISO 19100シリーズ)の規格及びOpenGIS抽象仕様が定義する概念クラ

スの多くに対し,ISO 19118に適合したXML符号化を規定する。規定された概念モデルは,次の規格文書

で規定する概念モデルを含んでいる。 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− ISO/TS 19103−概念スキーマ言語(計測単位,基本型) 

− JIS X 7107−空間スキーマ(幾何及び位相オブジェクト) 

− JIS X 7108−時間スキーマ(時間幾何及び位相オブジェクト,時間参照系) 

− JIS X 7109−応用スキーマのための規則(地物) 

− ISO 19111(JIS X 7111は,旧版に対応)−座標による空間参照(座標参照系) 

− ISO 19123−被覆の幾何と関数のためのスキーマ 

この規格の目的は,上記の規格が示す概念モデルに示す型の,標準的な符号化(すなわち,XMLによる

規格適合の実装)を行うことである。仮に,全ての応用スキーマを個別に符号化し,その符号化処理が,

例えばJIS X 7108:2004からとった型を含むとき,一義的で完全に固定化した符号化規則がなければ,XML

による符号化は,異なるものになってしまう。また,全ての実装手段は,それぞれ長所短所をもつので,

JIS X 7100シリーズ(ISO 19100シリーズ)の規格の中でモデル化する,核となる地理情報概念の規格,

及び応用スキーマで共通的に使用するXMLによる符号化の規格が役に立つ。 

多くの場合,概念クラスからの写像は,簡明なものだが,より複雑になる場合もある(写像の詳細記述

は,この規格の一部である。)。 

加えて,GMLは,JIS X 7100シリーズ(ISO 19100シリーズ)の規格又はOpenGIS抽象仕様でモデル化

していない追加的な概念,例えば,動的地物,単純観測,値オブジェクトなどのためのXMLによる符号

化法を示す。 

適用範囲 

地理マーク付け言語(GML)は,地理情報の伝送及び格納のための,ISO 19118に適合するXML符号

化法である。ここでいう地理情報とは,JIS X 7100シリーズ(ISO 19100シリーズ)の規格で使用する“概

念モデル化フレームワーク”に応じてモデル化されるものであり,空間プロパティ及び非空間プロパティ

を含む。 

この規格は,次に示すような機能・特徴をもつXML Schemaの構文規則,仕組み及び仕様を定義する。 

− XMLで地理情報の伝送及び格納を行うための地理空間応用スキーマの記述を行う,開放型の中立的な

枠組みを提供する。 

− GMLの枠組みの中で記述できる適切な部分集合をサポートするプロファイルを許す。 

− 専門領域及び情報コミュニティのための地理空間応用スキーマの記述を可能とする。 

− 互いに関連する地理応用スキーマ及びデータ集合の生成及び維持を可能とする。 

− 応用スキーマ及びデータ集合の格納及び伝送を可能とする。 

− 地理応用スキーマ及びそれに従う情報を共用する組織の能力を増大させる。 

実装を行う者は,GMLで地理応用スキーマ及び情報を格納することを決めることができ,要求に応じて

別の格納形式から変換したり,スキーマ及びデータの伝送にGMLだけを使用したりすることを決めても

よい。 

注記1 UMLで記述するJIS X 7109に従う応用スキーマを地理情報の格納及び伝送のための基礎と

して使用するとき,この規格は,そのような応用スキーマをXML SchemaによるGML応用

スキーマに写像し,JIS X 7109適合の応用スキーマに応じる論理構造をもつデータをXML

符号にするための規定を示す。 

注記2 地理マーク付け言語(Geography Markup Language)は,地理情報の伝達及び格納を行うとと

もに,応用スキーマを記述するためにXML Schemaで書いたXML文法である。 

background image

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記3 この規格の対応国際規格及びその対応の程度を示す記号を,次に示す。 

ISO 19136:2007,Geographic information−Geography Markup Language (GML)(IDT) 

なお,対応の程度を表す記号“IDT”は,ISO/IEC Guide 21-1に基づき,“一致している”

ことを示す。 

適合性 

2.1 

適合性の要件 

この規格の箇条7〜箇条19は,XML Schema構成部品,言い換えれば,GMLスキーマの仕様を示す。

これは,箇条21に従うGML応用スキーマで使用しなければならない。箇条20は,GML応用スキーマで

使用するために定義することができるGMLプロファイルの仕様の規則を示す。 

GMLスキーマがもつ記述可能性を最大限使用することを要求する応用は,ほとんどない。箇条2は,そ

れゆえ,最低限の単純な地物型を必要とするものからGMLスキーマの完全な仕様を必要とするものまで

の範囲で要求される応用に対応する,適合性クラスの集合を定義する。 

この規格に示す大部分のスキーマ構成部品は,JIS X 7100シリーズ(ISO 19100シリーズ)の規格が定

義する構成部品を実装している。その実装それぞれについて,この規格が定義する適合性クラスは,対応

する規格が定義する適合性クラスに基づく。 

GML応用スキーマ,GMLプロファイル又はソフトウェアの実装が,適合性クラスのいずれか一つに対

して適合性を主張する場合,その適合性クラスに対応する抽象試験項目群の全ての試験項目に合格しなけ

ればならない。 

どのようなソフトウェアの実装であっても,この規格への適合性を主張するときは,その実装がサポー

トするGMLプロファイルを文書上で示さなければならない。その作られたGMLプロファイルは,GML

プロファイル用の複数の抽象試験項目群の中の全ての必須試験項目に合格しなければならない。 

2.2 

GML応用スキーマに関係する適合性クラス 

この規格への適合性を求めるGML応用スキーマは,箇条7〜箇条21に示す規則に適合し,A.1に示す

抽象試験の中にある全ての関係する試験項目に合格しなければならない。 

GML応用スキーマの特性に依存して,適合性クラスを12種類に分類する。表1は,これらのクラス及

び抽象試験項目群が対応する細分箇条の一覧である。 

表1−GML応用スキーマに関係する適合性クラス 

適合性クラス 

抽象試験項目群の細分箇条 

全てのGML応用スキーマ 

A.1.1 

UMLによるJIS X 7109応用スキーマから変換するGML応用スキーマ 

A.1.2 

UMLによるJIS X 7109応用スキーマに変換するGML応用スキーマ 

A.1.3 

地物及び地物の集まりを定義するGML応用スキーマ 

A.1.4 

空間幾何要素を定義するGML応用スキーマ 

A.1.5 

空間位相要素を定義するGML応用スキーマ 

A.1.6 

時間要素を定義するGML応用スキーマ 

A.1.7 

座標参照系を定義するGML応用スキーマ 

A.1.8 

被覆を定義するGML応用スキーマ 

A.1.9 

観測を定義するGML応用スキーマ 

A.1.10 

辞書及び定義を定義するGML応用スキーマ 

A.1.11 

値を定義するGML応用スキーマ 

A.1.12 

background image

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

2.3 

GMLプロファイルに関係する適合性クラス 

応用スキーマの要件によって,GMLプロファイルが含まなければならない,GMLスキーマから取り出

されたXML Schema構成部品が決まる。この規格への適合を求めるGMLプロファイルは,A.2に示した

抽象試験項目群の要件を満たさなければならない。 

個々のGMLプロファイルに関連する内容及び要件によって,クラスを31種類に分類する。表2は,こ

れらのクラス及び抽象試験項目群が対応する細分箇条の一覧である。 

表2−GMLプロファイルに関係する適合性クラス 

適合性クラス 

抽象試験項目群の細分箇条 

全てのGMLプロファイル 

A.2.1 

幾何プリミティブ(空間)−零次元 

A.2.2.1.1 

幾何プリミティブ(空間)−零/一次元 

A.2.2.1.2 

幾何プリミティブ(空間)−零/一/二次元 

A.2.2.1.3 

幾何プリミティブ(空間)−零/一/二/三次元 

A.2.2.1.4 

幾何複体(空間)−零/一次元 

A.2.3.1.1 

幾何複体(空間)−零/一/二次元 

A.2.3.1.2 

幾何複体(空間)−零/一/二/三次元 

A.2.3.1.3 

位相複体(空間)−零/一次元 

A.2.4.1.1 

位相複体(空間)−零/一/二次元 

A.2.4.1.2 

位相複体(空間)−零/一/二/三次元 

A.2.4.1.3 

幾何実現を伴う位相複体(空間)−一次元 

A.2.5.1.1 

幾何実現を伴う位相複体(空間)−二次元 

A.2.5.1.2 

幾何実現を伴う位相複体(空間)−三次元 

A.2.5.1.3 

座標参照系 

A.2.6 

二つの座標参照系間の座標演算 

A.2.7 

時間幾何要素−零次元 

A.2.8.1 

時間幾何要素−零/一次元 

A.2.8.2 

時間位相要素 

A.2.9 

時間参照系 

A.2.10 

動的地物 

A.2.11 

辞書 

A.2.12 

単位辞書 

A.2.13 

観測地物 

A.2.14 

抽象被覆 

A.2.15.1 

離散点被覆 

A.2.15.2 

離散曲線被覆 

A.2.15.3 

離散曲面被覆 

A.2.15.4 

離散立体被覆 

A.2.15.5 

グリッド被覆 

A.2.15.6 

連続被覆 

A.2.15.7 

一次元空間幾何オブジェクトを含むGMLプロファイルにおける曲線の実装には,常に“線形”内挿法

がなければならない。二次元空間幾何オブジェクトを含むGMLプロファイルにおける曲面の実装には,

常に“平面”内挿法がなければならない。追加的な曲線内挿及び曲面内挿の仕組みの選択は任意とするが,

実装する場合は,この規格に含む定義に従わなければならない。 

background image

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記1 JIS X 7107:2005 の2.,JIS X 7108:2004の2.2及びISO 19123:2005の箇条2と,これらの適

合性クラスとを比較するとよい。 

注記2 次の三つの適合性クラス,つまり,“幾何プリミティブ(空間)−零次元”,“幾何プリミティ

ブ(空間)−零/一次元”及び“幾何プリミティブ(空間)−零/一/二次元”(“全てのGML

プロファイル”に加えて)は,ISO 19137:2007で定義した空間プロファイル,並びにISO 

19137:2007のB.1,B.2及びB.3の適合性試験のそれぞれに適合する。 

2.4 

GML文書に関係する適合性 

この規格に適合することを求めるGML文書は,箇条7〜箇条21に示した規則及びA.3に示す抽象試験

項目群の,全ての関連する試験項目に合格しなければならない。 

2.5 

ソフトウェア実装に関係する適合性 

この規格に適合することを求めるGML又はGML応用スキーマを読み書きするソフトウェアの実装は,

附属書Bの抽象試験項目群に規定した,対応する抽象試験項目群全てに合格しなければならない。 

実装の可能性に応じて,適合性クラスを12種類に分類する。表3は,これらのクラス及び抽象試験項目

群中が対応する細分箇条の一覧を示す。 

表3−実装に関係する適合性クラス 

適合性クラス 

抽象試験項目群の細分箇条 

全てのソフトウェア実装 

B.1 

XLinkの遠隔単純リンクのサポート 

B.2.1 

XLinkの拡張リンクのサポート 

B.2.2 

nil値をとることができるプロパティのサポート 

B.2.3 

計測単位のサポート 

B.2.4 

プロパティ所有権の意味規則のサポート 

B.2.5 

メタデータプロパティ 

B.2.6 

インスタンスの妥当性確認におけるGMLプロファイルのサポート 

B.2.7 

GMLの書き出し 

B.3 

GMLの読込み 

B.4 

GML応用スキーマの書き出し 

B.5 

GML応用スキーマの読込み 

B.6 

引用規格 

次に掲げる規格は,この規格に引用されることによって,この規格の規定の一部を構成する。これらの

引用規格のうちで,西暦年を付記してあるものは,記載の年の版を適用し,その後の改正版(追補を含む。)

は適用しない。西暦年の付記がない引用規格は,その最新版(追補を含む。)を適用する。 

JIS X 0301 情報交換のためのデータ要素及び交換形式−日付及び時刻の表記 

注記 対応国際規格:ISO 8601,Data elements and interchange formats−Information interchange−

Representation of dates and times(MOD) 

JIS X 4158 XML名前空間 

注記 W3C XML Namespaces, Namespaces in XML, W3C Recommendation (14 January 1999) に対応し

ている。 

JIS X 4159:2005 拡張可能なマーク付け言語(XML)1.0 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記 W3C XML, Extensible Markup Language (XML) 1.0 (Third Edition), W3C Recommendation (4 

February 2004)に対応している。 

JIS X 4176 XMLリンク付け言語(XLink)1.0 

注記 W3C XLink, XML Linking Language (XLink) Version 1.0, W3C Recommendation (27 June 2001) 

に対応している。 

JIS X 4177-3 文書スキーマ定義言語(DSDL)−第3部:規則に基づく妥当性検証−Schematron 

注記 対応国際規格:ISO/IEC 19757-3,Information technology−Document Schema Definition 

Languages (DSDL)−Part 3: Rule-based validation−Schematron(IDT) 

JIS X 7107:2005 地理情報−空間スキーマ 

注記 対応国際規格:ISO 19107:2003,Geographic information−Spatial schema(IDT) 

JIS X 7108:2004 地理情報−時間スキーマ 

注記 対応国際規格:ISO 19108:2002,Geographic information−Temporal schema(IDT) 

JIS X 7109:2009 地理情報−応用スキーマのための規則 

注記 対応国際規格:ISO 19109:2005,Geographic information−Rules for application schema(IDT) 

JIS X 7112:2006 地理情報−地理識別子による空間参照 

注記 対応国際規格:ISO 19112:2003,Geographic information−Spatial referencing by geographic 

identifiers(IDT) 

JIS X 7115:2005 地理情報−メタデータ 

注記 対応国際規格:ISO 19115:2003,Geographic information−Metadata(MOD) 

ISO/IEC 11404:1996,Information technology−Programming languages, their environments and system 

software interfaces−Language-independent datatypes 

ISO/TS 19103:2005,Geographic information−Conceptual schema language 

ISO 19111:2007,Geographic information−Spatial referencing by coordinates 

注記 JIS X 7111:2004は,ISO 19111:2003に対応していた。 

ISO 19118:2005,Geographic information−Encoding 

ISO 19123:2005,Geographic information−Schema for coverage geometry and functions 

ISO/TS 19139,Geographic information−Metadata−XML schema implementation 

ISO 80000-3,Quantities and units−Part 3: Space and time 

注記 この規格の前身であるISO 31-1:1992,Quantities and units−Part 1: Space and timeは,JIS Z 

8202-1:2000 量及び単位−第1部:空間及び時間に対応する。 

IETF RFC 2396,Uniform Resource Identifiers (URI): Generic Syntax (August 1998) 

W3C XML Schema Part 1,XML Schema Part 1: Structures, W3C Recommendation (2 May 2001) 

W3C XML Schema Part 2,XML Schema Part 2: Datatypes, W3C Recommendation (2 May 2001) 

用語,定義及び略語 

4.1 

用語及び定義 

この規格で用いる主な用語及び定義は,次による。 

4.1.1 

応用スキーマ(application schema) 

一つ以上の応用システムによって要求されるデータのための概念スキーマ。 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

[ISO 19101:2002] 

4.1.2 

関連(association) 

二つ以上の分類子間の意味的な関係であって,そのインスタンスが各分類子のインスタンス間の結合を

示すもの(JIS X 4170 に基づく)。 

4.1.3 

属性(attribute)(XMLにおける) 

名前と値との対であって,要素に含まれるもの。 

注記 この規格では,特に示さないときは,属性は,XML属性を指す。XML属性の構文は,“属性::

=名前=属性値”である。属性は,主にXML要素修飾子(例えば,<道路 gml:id = "r1"/>。こ

こでgml:idは,属性である。)として働く。 

4.1.4 

境界(boundary) 

実体の広がりの限界を示す集合。 

[JIS X 7107:2005] 

4.1.5 

子要素(child element)(XMLにおける) 

要素の直下にある要素。 

4.1.6 

閉包(closure) 

位相オブジェクト又は幾何オブジェクトの内部と境界との和集合。 

[JIS X 7107:2005] 

4.1.7 

符号リスト(codelist) 

許容する値のための符号を含む,値の定義域。 

4.1.8  

符号空間(codespace) 

符号,名前,用語又は範ちゅう(疇)を示す規則又は典拠。 

例 符号空間の例としては,辞書,典拠,符号リストなどがある。 

4.1.9 

合成曲線(composite curve) 

列の各曲線が(最初のものを除き)直前の曲線の終点から開始するような曲線の列。 

[JIS X 7107:2005] 

注記 合成曲線は,直接位置の集合として,曲線の全ての性質をもつ。 

4.1.10 

合成立体(composite solid) 

共有された境界曲面に沿って互いに隣接する立体の連結した集合。 

[JIS X 7107:2005] 

注記 合成立体は,直接位置の集合として,立体の全ての性質をもつ。 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

4.1.11 

合成曲面(composite surface) 

共有された境界曲線に沿って互いに隣接する曲面の連結した集合。 

[JIS X 7107:2005] 

注記 合成曲面は,直接位置の集合として,曲面の全ての性質をもつ。 

4.1.12 

座標(coordinate) 

n次元空間内の点の位置を示すためのn個の数値の列。 

[ISO 19111:2007] 

注記 座標参照系の中では,n個の数は単位を付けて定量化する。 

4.1.13 

座標参照系(coordinate reference system) 

原子によってオブジェクトに関連付けた座標系。 

[ISO 19111:2007] 

4.1.14 

座標系(coordinate system) 

点にどのように座標を割り当てるかを規定する数学的規則の集合。 

[ISO 19111:2007] 

4.1.15 

座標組(coordinate tuple) 

座標の列で構成する組。 

[ISO 19111:2007] 

4.1.16 

被覆(coverage) 

空間定義域,時間定義域又は時空間定義域内の各々の直接位置に対して,決められた値域からの値を返

す関数として機能する地物。 

[ISO 19123:2005] 

4.1.17 

曲線(curve) 

直線の連続な像を表現する一次元の幾何プリミティブ。 

[JIS X 7107:2005] 

注記 曲線の境界は,その両端の点の集合である。曲線が閉路の場合,二つの端は同一であり,その

曲線は(位相的に閉じている場合には),境界をもたないとみなす。最初の点を始点,最後の点

を終点と呼ぶ。“直線の連続的な像”という定義文の語句によって,曲線の連結性が保障される。

位相幾何学の定理は,連結している集合の連続的な像は連結であることを規定している。 

4.1.18 

データ型(data type) 

値の集合を,その集合の要素に適用される操作とともに規定したもの。 

[ISO/TS 19103:2005] 

例 整数,実数,ブール値,文字列,(データを符号の列に変換した)日付 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記 データ型は,基本的で既定義の型及び使用者が定義した型を含む。データ型のインスタンスは,

全て識別性をもたない。 

4.1.19 

原子(datum) 

座標系の原点の位置,尺度,及び軸の向きを定義するパラメタ又はパラメタの集合。 

[ISO 19111:2007] 

注記 原子は,測地原子,鉛直原子,施工基準原子,画像原子又は時間原子となる。 

4.1.20 

直接位置(direct position) 

座標参照系の中で一つの座標によって記述された位置。 

[JIS X 7107:2005] 

4.1.21 

定義域(domain) 

明確に定義された集合。 

[ISO/TS 19103:2005] 

注記1 数学関数は,この集合上で定義する。例えば関数f:A→Bにおいて,Aは,関数fの定義域で

ある。 

注記2 “論議領域”(domain of discourse)の場合の“領域”は,主題又は興味の範囲を指している。 

4.1.22 

エッジ(edge) 

一次元の位相プリミティブ。 

[JIS X 7107:2005] 

4.1.23 

要素(element)(XMLにおける) 

子要素,属性及び文字データを含むXML文書の基本的な情報項目。 

注記 “XML文書は,一つ以上の要素を含み,その境界は開始タグ及び終了タグによって,又は空の

要素の場合は,空要素タグによって区切る。それぞれの要素は,型をもち,ʻ一般識別子ʼ(GI)

ともいう名前によって識別するとともに,属性仕様の集合をもつことができる。それぞれの属

性仕様は,名前及び値をもつ。”(W3C XML Information Setから) 

4.1.24 

外部(exterior) 

全体集合とある集合の閉包との差集合。 

[JIS X 7107:2005] 

4.1.25 

フェイス(face) 

二次元の位相プリミティブ。 

[ISO 19111:2007] 

注記 フェイスの幾何実現は,曲面である。フェイスの境界は,境界関係を通してフェイスに関連付

けられる同じ位相複体内にある有向エッジの集合である。これらは,輪の形にそろ(揃)える

ことができる。 

10 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

4.1.26 

地物(feature) 

実世界の現象の抽象概念。 

[ISO 19101:2002] 

注記 地物は,型又はインスタンスとして出現する。用語“地物型”又は“地物インスタンス”は,

いずれか一方を意味するときに使用されることが望ましい。 

4.1.27 

地物関連(feature association) 

ある地物型のインスタンスを同じ又は異なる地物型のインスタンスに関連付ける関係。 

[ISO 19110:2005] 

4.1.28 

関数(function) 

ある領域[この関数の定義域(source,domain)]の各要素を,別の領域[この関数の値域(target,co-domain,

range)]の一意な要素に関連付ける規則。 

[JIS X 7107:2005] 

4.1.29 

測地原子(geodetic datum) 

二次元又は三次元座標系と地球との関係を記述する原子。 

[ISO 19111:2007] 

4.1.30 

幾何オブジェクト(geometric object) 

幾何集合を表す空間オブジェクト。 

[JIS X 7107:2005] 

4.1.31 

幾何プリミティブ(geometric primitive) 

単一の連結で均質な空間の要素を表す幾何オブジェクト。 

[JIS X 7107:2005] 

4.1.32  

幾何集合(geometric set) 

直接位置の集合。 

[JIS X 7107:2005] 

4.1.33 

幾何プロパティ(geometric property)(GMLにおける) 

地物の幾何的な性質を記述するGML地物のプロパティ。 

注記 幾何プロパティの名前は,地物との関連における役割である。 

4.1.34 

GML応用スキーマ(GML application schema) 

この規格で示す規則に従って,XML Schemaで書く応用スキーマ。 

4.1.35 

GML文書(GML document) 

11 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GMLスキーマで規定されている AbstractFeature要素,Dictionary要素若しくはTopoComplex要素の内の

いずれか,又はこれらの要素のいずれかの代替グループの任意の要素を,根底要素としてもつXML文書。 

4.1.36 

GMLプロファイル(GML profile) 

GMLスキーマの部分集合。 

4.1.37 

GMLスキーマ(GML schema) 

この規格で示すXML名前空間“http://schemas.opengis.net/gml/3.2.1/”の中のスキーマ構成部品の集まり。 

4.1.38 

グリッド(grid) 

複数の曲線からなる集合二つ以上から構成されるネットワークで,各集合の要素となる曲線が,他の集

合の要素となる曲線と一定の規則で交差するもの。 

[ISO 19123:2005] 

注記 曲線は,空間をグリッドセルに分割する。グリッドはJIS X 7107:2005では“格子”としていた

が,一般化しているとの理由で“グリッド”とした。 

4.1.39 

内部(interior) 

幾何オブジェクト上にありその境界上にはない全ての直接位置の集合。 

[JIS X 7107:2005] 

4.1.40 

線列(line string) 

直線分で構成する曲線。 

4.1.41 

計測値(measure)(GMLにおける) 

スカラ参照系で使用する,又は尺度付きの数量を使用して記述する値。 

4.1.42 

測定量(measurand) 

測定の対象となる個々の量。 

4.1.43 

名前空間(namespace)(XMLにおける) 

URI参照によって識別される名前の集まり。要素名及び属性名としてXML文書内で使用する(W3C XML

名前空間)。 

4.1.44 

ノード(node) 

零次元の位相プリミティブ。 

[JIS X 7107:2005] 

4.1.45 

オブジェクト(object) 

状態と振る舞いとをカプセル化した,明確に定義された境界及び識別をもつ実体。 

[JIS X 7107:2005] 

12 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記 GMLオブジェクトは,AbstractGMLTypeから派生する型のXML要素である。 

4.1.46 

可観測型(observable type) 

観測の結果として得られる物理量を示すデータ型。 

4.1.47  

点(point) 

位置を表現する零次元の幾何プリミティブ。 

[JIS X 7107:2005] 

注記 点の境界は,空集合である。 

4.1.48 

ポリゴン(polygon) 

一つの外部境界及び零以上の内部境界によって定義する平面。 

4.1.49  

プロパティ(property)(GMLにおける) 

GMLオブジェクトの子要素。 

注記 これは,JIS X 7109で示す地物属性又は地物関連役割と一致する。地物のGMLプロパティが

地物を参照するxlink:href属性をもつとき,プロパティは,地物関連役割を表現する。 

4.1.50 

物理量(physical quantity) 

物理現象の量的な表記に用いる量。 

注記 GMLでは物理量は,常に,スカラ参照系を使用する,又は尺度付きの数量を使用して記述する

値である。 

4.1.51 

値域(range) 

関数fが,その定義域上で変化する引数に対応して,とることができる全ての値の集合。 

4.1.52 

偏位修正グリッド(rectified grid) 

グリッドであって,そのグリッド座標と外部座標参照系座標との間にアフィン変換(affine transformation,

一次変換)関係が成立しているもの。 

[ISO 19123:2002] 

4.1.53 

スキーマ(schema) 

モデルの形式的な記述。 

[ISO 19101:2002] 

注記 一般的に,スキーマは,オブジェクトの特性及び他のオブジェクトとの関係を抽象化した表現

である。XMLスキーマは,XMLオブジェクト(例えば,文書又は文書の一部)の属性及び要

素間の関係を表現する。 

4.1.54 

スキーマ(XML schema)(XML Schemaにおける) 

同一の対象名前空間中のスキーマ構成部品の集まり。 

13 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

例 W3C XML Schemaのスキーマ構成部品は,型,要素,属性,グループなどである。 

4.1.55 

スキーマ文書(schema document)(XML Schemaにおける) 

スキーマ構成部品の定義及び宣言を含むXML文書。 

注記 W3C XML Schemaは,スキーマ情報のためのXML交換形式を示す。単一のスキーマ文書は,

単一のXML名前区間に関連する構成部品の記述を示すが,複数の文書によって,同じスキー

マ,例えば,同じ対象名前空間中の構成部品を記述してもよい。 

4.1.56 

意味型(semantic type) 

共通の特性を共有するオブジェクトの範ちゅう(疇)。それゆえ,その範ちゅう(疇)には個々の論議領

域中の識別子型の名前が与えられる。 

4.1.57  

列(sequence) 

繰返しを許した,関連する項目(オブジェクト又は値)の,有限で順序をもつ集まり。 

[JIS X 7107:2005] 

4.1.58 

集合(set) 

繰返しを許さない,関連する項目(オブジェクト又は値)の,有限で順序をもたない集まり。 

[JIS X 7107:2005] 

4.1.59 

空間オブジェクト(spatial object) 

地物の空間特性を表現するために用いるオブジェクト。 

[JIS X 7107:2005] 

4.1.60 

曲面(surface) 

局所的に平面領域の連続な像を表す二次元の幾何プリミティブ。 

注記 曲面の境界は,曲面の限界の輪郭を描く向きをもつ閉曲線である。球面又はn次元トーラス(n

次元“把”をもつ位相球面)と同形である曲面は,境界をもたない。このような曲面を輪体と

呼ぶ。 

[JIS X 7107:2005] 

4.1.61 

タグ(tag)(XMLにおける) 

要素の内容を区切るXML文書中のマーク付け。 

例 <道路> 

注記 前方スラッシュのないタグ(例 <道路>)を開始タグと呼び,前方スラッシュ付きのもの(例 

</道路>)を終了タグと呼ぶ。 

4.1.62 

位相オブジェクト(topological object) 

連続した変換のもとでも変わらない空間特性を表す空間オブジェクト。 

[JIS X 7107:2005] 

14 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

4.1.63 

組(tuple) 

順序をもつ,値のリスト。 

注記 組の中の値の順番は,変更できない。 

4.1.64 

UML応用スキーマ(UML application schema) 

JIS X 7109に適合してUMLで書かれた応用スキーマ。 

4.1.65 

統一資源識別子[Uniform Resource Identifier (URI)] 

IETF RFC 2396に適合した構造をもつ,資源の統一的な識別子。 

注記 一般的な構文は,使用するスキーム名(<scheme>)及びスキーム固有部分(<scheme-specific-part>)

からなる<scheme>::<scheme-specific-part>である。名前空間付きの階層的な構文は,

<scheme>://<authority><path>?<query>である(RFC 2396参照)。 

4.2 

略語 

この規格で使用する略語を,次に示す。 

CRS   座標参照系(Coordinate Reference System) 

CS   座標系(Coordinate System) 

CSV   CSV(Comma Separated Values) 

CT   座標変換(Coordinate Transformation) 

DTD  文書型定義(Document Type Definition) 

EPSG  EPSG(European Petroleum Survey Group) 

GIS   地理情報システム(Geographic Information System) 

GML  地理マーク付け言語(Geography Markup Language) 

注記 これまでISOでは,頭字語GMLを文書記述言語(Generalized Markup Language)に対して使用

してきた。文書記述言語は,JIS X 4151では,文書記述言語SGML(Standard Generalized Markup 

Language)となった。 

HTTP  ハイパーテキスト転送プロトコル(Hypertext Transfer Protocol) 

IETF  インターネット技術タスクフォース(Internet Engineering Task Force) 

ISO   国際標準化機構(International Organization for Standardization) 

OGC  OGC(Open Geospatial Consortium) 

RDF   RDF(Resource Description Framework) 

RFC   RFC(Request for Comments) 

SMIL  SMIL(Synchronized Multimedia Integration Language) 

SOAP  単純オブジェクトアクセスプロトコル(Simple Object Access Protocol) 

SVG  スケーラブルベクタグラフィックス(Scalable Vector Graphics) 

UML  統一モデリング言語(Unified Modeling Language) 

URI   統一資源識別子(Uniform Resource Identifier) 

URL  統一資源位置子(Uniform Resource Locator) 

URN  統一資源名(Uniform Resource Name) 

W3C  W3C(World Wide Web Consortium) 

15 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

WFS  ウェブ地物サービス(Web Feature Service) 

XML  拡張マーク付け言語(eXtensible Markup Language) 

XSLT  XSL変換(eXtensible Stylesheet Language - Transformations) 

0D   零次元(Zero Dimensional) 

1D   一次元(One Dimensional) 

2D   二次元(Two Dimensional) 

3D   三次元(Three Dimensional) 

規則 

5.1 

XML名前空間 

全てのGMLスキーマ構成部品は,識別子“http://schemas.opengis.net/gml/3.2.1/”の名前空間に定義され,

この規格では,接頭辞gml又は既定の名前空間を使用する。 

JIS X 4176で示す全ての構成部品は,識別子“http://www.w3.org/1999/xlink”の名前空間に定義され,こ

の規格では,接頭辞xlinkを使用する。 

注記 附属書CのXMLスキーマ文書は,両者の名前空間におけるスキーマ構成部品を示す。 

5.2 

版管理 

GMLスキーマ構成部品を示す各スキーマ文書は,XML Schema勧告が定義する版の属性をもたなければ

ならない。版属性の文字列の形式は,x.y.zとする。ここで,xは,主版番号を表し,yは,副版番号を表

し,zは,誤り訂正の公開番号を表す。この規格が示す版は,3.2.1である。 

注記 この版が,初めて国際規格となったGMLであり,これを基にこのJISを作成した。これまで

のGMLの版は,Open Geospatial Consortium(OGC)が作成し,公開している。 

5.3 

GMLの以前の版における非推奨の部分 

この規格の中で“非推奨とする”などの形で言及する部分は,以前の版との後方互換性を保つために残

してあり,将来の版では,追加的な注意を与えずに削除する可能性があるという注意を示す。 

この規格は,非推奨のGMLの構成部品を記述する又は参照する部分をイタリック体で記述する。 

注記1 この規格の対応国際規格は,Open Geospatial ConsortiumがGML 3.2.1として公開している。

Open Geospatial Consortium におけるGMLの以前の採用された版は,3.1.1であった。 

注記2 この規格においては,GMLの版2.1の部分であったが,版3.0で非推奨となった全てのスキ

ーマ構成部品を削除し,その使用を認めない。 

5.4 

UML表記法 

この規格が示す多くの図は,統一モデリング言語(UML:Unified Modeling Language)の静的構造図を

使用して表す。この規格の中で使用するUMLの表記を図1に示す。 

background image

16 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

図1−UML表記法 

この規格は,次のUMLクラスのステレオタイプを使用する。 

− <<DataType>> 識別性(独立した存在及び副作用の可能性)のないプロパティの集合である。Data Type

は,第一の目的が情報を保持することで,操作をもたないクラスである。 

− <<Union>> プロパティの集合である。その意味規則は,いかなる場合でも複数のプロパティのうち

一つだけ存在するということである。 

− <<FeatureType>> JIS X 7109の定義による地物である。 

− <<CodeList>> とり得る値のリストを表現するための文字列の値を使用する,柔軟性のある列挙型で

ある。 

− <<Enumeration>> 名前付けされた文字の値が有効な識別子となる,固定されたリストである。列挙型

を型とする属性は,このリストからだけ値をとることができる。 

− <<Abstract>> 抽象のオブジェクト型である(クラス名は,イタリック体で記述し,このステレオタ

イプを用いる。)。 

− <<Type>> 抽象の属性及び関連の集合である。抽象とは,属性及び関連の仕様が,必ずしもインスタ

ンス変数として具体的に実装しなければならないわけではないことを意味する。 

この規格は,次の基本データ型を使用する。 

クラス#1 

クラス#2 

関連名 

 役割-1   役割-2 

クラス間の関連 

関連の多重度 

クラス 

一つだけ 

クラス 

0以上 

0..* 

クラス 

任意選択(0又は1) 

0..1 

クラス 

1以上 

クラス 

特定の数 

1..* 

クラス間の集成 

集成 

クラス 

…… 

部品 

クラス#1 

部品 

クラス#2 

部品 

クラス#n 

クラスの継承(クラスの細分類) 

上位 

クラス 

…… 

下位 

クラス#1 

下位 

クラス#2 

下位 

クラス#n 

17 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− CharacterString 文字列(一般に,このデータ型は,XML Schemaの“string”に対応付ける。) 

− Integer 整数(一般に,このデータ型は,XML Schemaの“integer”に対応付ける。) 

− Real 浮動小数点数(一般に,このデータ型は,XML Schemaの“double”に対応付ける。) 

− Boolean TRUE又はFALSEを特定する値(一般に,このデータ型は,XML Schemaの“boolean”に

対応付ける。)。 

5.5 

XML Schema 

この規格の規定部分は,適合するGMLデータインスタンスの文法を記述するために,W3C XML Schema

言語を使用する。XML Schemaは,多くの可能性及び巧妙さをもつ高機能な言語である。XML Schemaに

不慣れな読者は,一般的な方法によって記述された説明を理解できるかもしれないが,この規格は,XML 

Schemaの解説はしない。この規格を完全に理解するためには,読者がXML Schemaの正しい知識をもっ

ている必要がある。 

GMLスキーマの概要 

6.1 

GMLスキーマ 

GMLは,JIS X 7100シリーズの規格及びOpenGISの抽象仕様に適合し,これらの規格及び仕様が定義

する多くの概念クラスの,XMLによる符号化法を示す。 

関連する概念モデルは,次で定義するモデルを含む。 

− ISO/TS 19103 概念スキーマ言語(計測単位,基本型) 

− JIS X 7107 空間スキーマ(空間幾何及び位相) 

− JIS X 7108 時間スキーマ(時間幾何及び位相,時間参照系) 

− JIS X 7109 応用スキーマのための規則(地物) 

− ISO 19111 座標による空間参照(座標参照系) 

− ISO 19123 被覆の幾何及び関数のためのスキーマ(被覆,グリッド) 

多くの場合,概念クラスからXMLへの写像は,簡明なものだが,より複雑になる場合もある。両者の

場合の写像の方法は,附属書Dにその詳細を示す。 

加えて,GMLは,JIS X 7100シリーズの規格又はOpenGIS抽象仕様でモデル化していない追加的な概

念,例えば,動的地物,単純観測,値オブジェクトなどのためのXMLによる符号化法を示す。これらの

拡張に対応する追加的な概念クラスも,附属書Dに示す。 

GMLスキーマは,この規格が示す構成部品(XML要素,属性,単純型,複合型,属性グループ,グル

ープなど)から構成される。XMLによる符号化法は,ISO 19118に適合する。 

6.2 

GML応用スキーマ 

GML応用スキーマの設計者は,応用分野に適する型を定義するために,GMLスキーマが定義する型を

拡張又は制限してよい。GMLスキーマの抽象でない要素及び属性並びに型は,変更する必要がなければ,

応用スキーマにおいて直接的に使用してよい。 

JIS X 7109に従い,応用システム又は応用分野の地物型は,応用スキーマで示される。GML応用スキー

マは,XML Schemaで示し,GMLスキーマをインポートしなければならない。GML応用スキーマは,次

の二つの方法のうちのいずれかで作成してもよい。 

− GML応用スキーマをXML Schemaによって直接的に作成するための,箇条21で示すGML応用スキ

ーマのための規則に従った方法。 

18 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− JIS X 7109で規定するUMLによる応用スキーマ作成の規則を順守し,その制約と附属書Eで示す

GML応用スキーマへの写像規則との両者に適合する方法。JIS X 7109に適合するUMLによる応用ス

キーマから,それに相当するGMLスキーマへの写像は,一連の符号化規則に基づく。一連の符号化

規則は,GML応用スキーマ及びISO 19118のための規則に適合する。 

両者の方法は,GML応用スキーマを作成するために有効な方法である。全ての応用スキーマは,JIS X 

7109で規定する一般地物モデルに従ってモデル化しなければならない。JIS X 7100シリーズ(ISO 19100

シリーズ)は,概念スキーマを記述するための言語としてUMLを推奨する。 

後者の方法は,一般的に,JIS X 7100シリーズ(ISO 19100シリーズ)の規格の概念モデルフレームワ

ークを適切に使用することを保証するために推奨する。しかしながら,前者の方法を適用することを正当

化する例として,次に示す理由がある。 

− 附属書Eで示す符号化規則を用いることで使用しやすくなる可能性に加え,GMLスキーマの追加的

な機能が望める。 

− XMLによる表現だけを望むことができ,応用スキーマは,比較的単純となり得る。したがって,概念

スキーマ言語を用いることは,不当な冗長性をもたらすかもしれない。 

− 応用システムは,附属書Eで示す符号化規則の結果として作成する場合と比較して,より適切,かつ,

より小規模なXMLによる符号化法を望める。 

注記 附属書Fは,GML応用スキーマから,JIS X 7109に適合したUMLによる応用スキーマへの写

像規則を示す。 

両者の場合において,この規格に適合するGML応用スキーマは,全ての適用可能なGMLスキーマ構成

部品を,直接的に又は特化して用いなければならない。そして,XMLスキーマのための規則に従って有効

となる。GML応用スキーマの作成過程は,この規格の要件に対する適合性には関係しない。 

6.3 

JIS X 7100シリーズ(ISO 19100シリーズ)の規格,GMLスキーマ及びGML応用スキーマの関係 

この規格が採用する方法を図2に示す。二つの主要な側面を次に示す。 

− GMLの概念モデルに関する明確な記述:GMLが実装するJIS X 7100シリーズ(ISO 19100シリーズ)

の規格のプロファイルを,このプロファイルへの拡張と同様に記述する。 

− UML又はXML Schemaのいずれかで応用スキーマを開発するための支援:UML図(すなわち,JIS X 

7109に適合したUMLによる応用スキーマ)及びXMLスキーマ(すなわち,XML SchemaによるGML

応用スキーマ)の双方向の写像を実現するために,両者の表現に使用する構造を制限する。これは,

スキーマを記述するための表現をある程度低減させるが,同時に,複雑さを軽減し,実装をより簡単

にする。 

注記 UML図からXMLスキーマへの写像は,ISO 19118の附属書Aで検討しているが,逆方向の写

像は,他のどのJIS X 7100シリーズ(ISO 19100シリーズ)の規格においても検討していない。 

background image

19 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

図2−JIS X 7100シリーズ(ISO 19100シリーズ)の規格とJIS X 7136/GMLとの関係 

6.4 

この規格の編成 

GMLは,GMLオブジェクト型の階層によって,地物,幾何,位相など,様々な実体を定義する。GML

オブジェクト型,JIS X 7100シリーズ(ISO 19100シリーズ)の規格及びOpenGIS抽象仕様の概念モデル

のクラスの写像関係を表D.2に示す。規定となるGMLスキーマは,これらのオブジェクト型を使って編

成される。 

7.2でGMLの基本スキーマ構成部品を示す。基底オブジェクトgml:AbstractObject,及びGMLクラス階

層構造の基底gml:AbstractGMLを定義する。 

8.1でXLinkスキーマを示す。このスキーマは,XML Schemaを使用したXLink仕様に関するOGCの実

装仕様である。将来的には,W3Cが提供する同等なスキーマに置き換わるであろう。 

注記1 この規格の中では,Xlink構成部品をXML Schemaで記述する。これを,XML Schemaを基本

とした環境下において便宜的に提供する。JIS X 4176では,規定となる定義は,XML Schema

以外の形式で示している。 

8.2では,GMLスキーマで使用する基本データ型のGMLによる表現を示す。データ型の大部分は,単

純型又は単純内容型である。 

箇条9では,地物スキーマ構成部品を示し,gml:AbstractFeature及びそれから派生する構成部品を示す。 

箇条10,10.5.10及び箇条11では,幾何スキーマ構成部品を示し,gml:AbstractGeometry,

gml:AbstractGeometricPrimitive,gml:AbstractGeometricAggregate,gml:GeometricComplex及びそれらから派

生する構成部品を示す。 

箇条12では,次の座標参照系スキーマ構成部品を示す。 

− gml:IdentifiedObject 

− gml:AbstractCRS 

− gml:AbstractCoordinateReferenceSystemの下位型 

確実な写像 

(JIS X 7136の附属書D) 

使用者定義の応用スキーマ 

(JIS X 7109及びISO/TS 19103を用いたUML図) 

JIS X 7100シリーズ(ISO 19100シリーズ)への拡張 

(ISO/TS 19103を用いたUML図) 

JIS X 7107 

プロファイル 

JIS X 7108 

プロファイル 

… 

GMLスキーマ 

(XMLスキーマ) 

GML応用スキーマ 
(XMLスキーマ) 

GML応用スキーマ符号化規則

(JIS X 7136の附属書E及び 

ISO 19118) 

GML応用スキーマ 

符号化規則 

(JIS X 7136の附属書F) 

インポート 

20 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− 特定の座標参照系を作成するために必要な要素及び型 

箇条13では,次の位相のためのスキーマ構成部品を示す。 

− gml:AbstractTopology 

− gml:AbstractTopoPrimitive 

− gml:TopoComplex及びそれらから派生する構成部品 

箇条14では,次に示す時間構造のためのスキーマ構成部品及びそれらから派生する部品並びに

gml:DynamicFeature及びそれから派生する部品を定義する。 

− gml:AbstractTimeObject 

− gml:AbstractTimePrimitive 

− gml:AbstractTimeGeometricPrimitive 

− gml:AbstractTimeTopologyPrimitive 

− gml:AbstractTimeComplex 

箇条15では,gml:Definition及びgml:Dictionaryを含む,定義及び辞書のためのスキーマ構成部品を示す。 

箇条16では,計測単位(gml:UnitDefinition及びそれから派生する構成部品),計測及び値オブジェクト

(gml:AbstractValue,gml:AbstractScalarValue,gml:AbstractScalarValueList及びそれらから派生する構成部品)

のためのスキーマ構成部品を示す。 

箇条17では,方向を記述するためのスキーマ構成部品を示す。 

箇条18では,単純観測(gml:Observation及びそれから派生する構成部品)のためのスキーマ構成部品を

示す。 

箇条19では,次のグリッド及び被覆のためのスキーマ構成部品,及び派生する構成部品を示す。 

− gml:Grid 

− gml:AbstractCoverage 

− gml:AbstractDiscreteCoverage 

− gml:AbstractContinuousCoverage  

これらの箇条は,GMLスキーマの規定であり,内容,構造及び依存関係を規定する。 

この規格が示すGMLスキーマの表現では,W3C XML Schemaが与えるXML交換形式を使用する。構

成部品の集合の記述はスキーマ文書に組込み,各スキーマ文書には,図2で示す分類に広く対応する構成

部品が集まる。しかしながら,この規格におけるGMLスキーマ構成部品のXMLによる表現は,規定扱い

とするが,スキーマ文書へのパッケージ化については,規定扱いでない。箇条20及び附属書Gは,GML

スキーマ構成部品をXMLによって表現する他のパッケージ化の方法及び原則を示す。 

この規格が定義又は宣言する全ての構成部品は,同じ対象名前空間http://schemas.opengis.net/gml/3.2.1/

で定義する。 

注記2 XML名前空間は,XML文書における名前の衝突から引き起こされる曖昧さを避けるための

仕組みを与える。一つのスキーマ文書で記述する全ての構成部品は,一つの対象名前空間中

に定義する。一方,複数のスキーマ文書に対する構成部品を一つの名前空間で定義してもよ

い。XML開発者コミュニティでは,ある応用システムのためのスキーマ構成部品の一つの集

合に対して,一つの名前空間の割当てと,複数の名前空間の割当てとを並行させた例がある。

GMLスキーマ構成部品に対して一つの名前空間を使用することは,スキーマ文書間でGML

構成部品のXMLの表現を,規定とせずに使用することと矛盾しない。 

21 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

UMLでは,関連する構成部品をまとめるためにパッケージを使用する。また,JIS X 7100

シリーズ(ISO 19100シリーズ)の規格では,異なるパッケージからクラスを区別するため

に,XML名前空間を象徴する方法として“AA̲”のような接頭辞を使用する。しかしながら,

上述したように,GML構成部品のパッケージ化の方法は,規定とせず,全てのGML構成部

品は,一つの名前空間中に定義する。このため,JIS X 7100シリーズ(ISO 19100シリーズ)

の規格における2文字の接頭辞とGMLにおけるXML名前空間との間には,対応関係がない。 

6.5 

非推奨の試行的なスキーマ構成部品 

GMLオブジェクトの既定表現様式のための規則を扱う,試行的で規定扱いでないスキーマ構成部品を附

属書Hに示す。 

非推奨の大域的なスキーマ構成部品(要素,属性及び型)を附属書Iに示す。 

GMLスキーマ−一般規則及び基底スキーマ構成部品 

7.1 

GMLモデル及び構文 

7.1.1 

GMLインスタンス文書 

GMLでは,JIS X 7109が規定する一般地物モデルに適合したGML応用スキーマをXML文書としてイ

ンスタンス化するために,明確な構文規則を用いる。 

地物は,地物型の名前をもつXML要素として符号化する。その他の識別可能なオブジェクトは,その

オブジェクト型の名前をもつXML要素として符号化する。 

地物属性及び地物関連役割は,地物のプロパティである。地物プロパティは,XML要素として符号化す

る。 

注記1 “属性”という用語は,XMLにおいてXML文書内の特定の構文構成部品を指す。そこで,

XMLによる符号化を説明するときに混乱を避けるため,GMLでは,RDF(W3C:1999)の

用語法に従い,属性又は関連役割の代わりに“プロパティ”という用語を用いる。一般地物

モデル(JIS X 7109)においても“プロパティ”という用語を“属性”,“関連役割”又は“操

作”を汎化した用語として用いている。 

さらに,“プロパティ”の意味は,プロパティの値と区別される。意味は,プロパティを表す要素の名前

で指し示し,値は,プロパティ要素の内容によって定める。プロパティ要素の値は,要素内で符号化した

内容として含んでもよいし,XLinkの単純リンクを用いて参照してもよい。プロパティの値は,単純な値,

地物又は他の複合オブジェクトをとることができる。要素内に値を含める場合,単純プロパティの値は,

組込み型のマーク付けを含まない文字列の値(テキスト)であるが,値が複合であるときは,XMLマーク

付けを用いた部分木として表現する(すなわち,下位構造をもつXML要素となる。)。 

注記2 GMLモデルには,(ISO/TS 19103で定義した)ISO 19100シリーズで使用するUMLプロフ

ァイルを用いた直接的な表現がある。詳細は,附属書D及び附属書Eで示すが,簡潔にはお

おむね次のように要約できる。 

地物は,次のように表現する。 

− UMLではオブジェクトとして表現する。地物型の名前を,オブジェクトクラスの名前と

して用いる。 

− GMLインスタンスではXML要素として記述する。地物型の名前を,要素の名前として

用いる。 

地物プロパティは,次のように表現する。 

22 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− UMLでは,地物型クラス間の関連役割及び地物型クラスの属性として表現する。そのプ

ロパティの意味規則は,関連役割名又は属性名によって定まる。 

− GMLインスタンスでは,(プロパティ要素として知られる)地物要素の副要素として表

現する。そのプロパティの意味規則は,プロパティ要素の名前によって定まる。 

プロパティ値の型は,次のように表現する。 

− UMLでは,関連先となるクラス又は属性のデータ型として示す。 

− GMLでは,複合的な値をもつプロパティの場合は,プロパティ要素内に含むオブジェク

ト要素の名前で示す。単純な値をもつプロパティの場合は,組込み型のXMLマーク付

けを含まない文字列の値の型によって示す。 

結果的には,GMLインスタンス文書は,階層構造をもつXML文書となる。XML文書の中で,地物,

オブジェクト又は値と対応するXML要素,及びそれらに関係するプロパティと対応するXML要素とが,

交互に出現する。文書中の地物,オブジェクト又は値の役目は,直接包含する又は参照するプロパティの

要素名を調べることによって,常に明らかになる。 

注記3 この符号化パターンを,“オブジェクト−プロパティモデル”と呼ぶことがある。このモデル

は,OGCが初版において採択したときからGML符号化モデルの基礎である。この符号化パ

ターンは,インスタンス文書に余分な階層を加える場合もあるが,有利な点もある。GMLイ

ンスタンス文書それ自身を理解しやすく作成することを助け,予測可能な構造となる。また,

XML Schemaに大きく依存することを回避しているため,GMLインスタンス文書がW3C 

XML Schema言語の一般的用法を超えることが期待できる。 

7.1.2 

語彙の規約 

GMLインスタンス及びスキーマを人間が読むことを可能にするため,要素及び複合型の名前に対して,

GMLスキーマの中で用いる語彙の規約が幾つかある。 

− オブジェクトは,大文字(upper case)で始まるキャメル記法(UpperCamelCase−各要素語の先頭の大

文字をラクダのこぶに見立てて命名)によって記述した,概念的に意味のある名前を用いて,XML

要素としてインスタンス化する。 

− プロパティは,小文字(lower case)で始まるキャメル記法(lowerCamelCase)によって記述したXML

要素としてインスタンス化する。 

− 抽象要素は,接頭辞として“Abstract”(オブジェクトの場合)又は“abstract”(プロパティの場合)を

名前の先頭に付ける。 

− XML Schema複合型の名前は,最後の単語に“Type”を用い,大文字で始まるキャメル記法を用いて

記述する。 

− 抽象型のXML Schema複合型の名前は,先頭に“Abstract”という語を付ける。 

GML応用スキーマにおいても,これらの規約に従うことを強く推奨する。ただし,これらの規則は,小

文字と大文字とを区別する言語だけに適用される。 

注記1 大文字で始まるキャメル記法とは,複合語を連結して一つの単語として形成するときに,各

語の最初の一文字を大文字とする命名規則である。小文字で始まるキャメル記法とは,連結

した新しい単語の先頭の一文字だけは小文字とする,上記の規則の変形であり,大文字で始

まるキャメル記法と簡単に識別できる。 

注記2 GML応用スキーマを設計するときには,オブジェクト及びプロパティの名称への日本語の使

用,オブジェクトとプロパティとの区別,並びに語句の連結などの命名規則に留意する。 

23 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

7.1.3 

GML言語におけるXML Schema定義 

GMLスキーマは,W3C XML Schema要素からなる。各要素は,型を定義するか,又は次の宣言を行う。 

− GMLオブジェクトを識別子とともに符号化するXML要素 

− これらオブジェクトのGMLプロパティを符号化するXML要素 

− これらのプロパティに条件を付けるXML属性 

GMLオブジェクトは,gml:AbstractGMLType から直接又は間接的に派生する型となるXML要素である。

この派生によって,GMLオブジェクトは,gml:id属性をもたなければならない。 

GMLプロパティは,gml:AbstractGMLTypeから派生してはならず,gml:id属性又はその他のXMLのID

型をもってはならない。 

要素は,GMLオブジェクトの子要素であるとき,かつ,そのときに限り,GMLプロパティとなる。 

GMLオブジェクトは,GMLオブジェクトの直接の子要素として出現してはならない。 

したがって,GMLオブジェクト,かつ,GMLプロパティである要素が存在することはできない。 

GMLスキーマでは,宣言する全てのXML属性は,名前空間を付けずに定義する。唯一の例外は,gml:id 

XML属性である。 

注記 GML応用スキーマでは,XML属性を追加することを推奨しない。 

7.2 

gmlBaseスキーマ構成部品 

7.2.1 

基底スキーマ構成部品の目的 

gmlBaseスキーマ構成部品は,GMLモデル及び構文を規定する。具体的には,次に示すとおりとする。 

− 全てのGMLオブジェクトのためのXML型が派生すべき根底XML型 

− GMLプロパティのためのパターン及び構成部品 

− 集まり及び配列のためのパターン並びに汎用的な集まり及び配列の構成部品 

− GMLオブジェクトに関連するメタデータのための構成部品 

− 定義及び辞書を構成するための構成部品 

注記 附属書Cに示す,これらに対応するスキーマ文書を,次の(URN構文を用いた)用いる場所

に依存しない名称によって識別する。  

urn:x-ogc:specification:gml:schema-xsd:gmlBase:3.2.1 

7.2.2 

基底オブジェクト 

7.2.2.1 

AbstractObject 

便宜的な抽象要素gml:AbstractObjectを次のように宣言する。 

<element name="AbstractObject" abstract="true"/> 

この要素は,型宣言をもたない。したがって,暗黙的に(W3C XML Schemaの規則に従い)XML Schema

のanyTypeとなる。この要素は,XML Schemaの代替グループの代表要素として用いられる。XML Schema

の代替グループは,gml:AbstractGMLの代替グループを含むGMLのデータ型で用いられる,複合内容要素

及び幾つかの単純内容要素を統合する。 

注記 gml:AbstractObject は,本来,特定の集成パターンにおいて変数として機能するために定義され, 

その集成パターンでは,インスタンスの中で妥当となるgml:AbstractGMLの代替グループの要

素,複合内容要素又は単純内容要素のいずれかを許す必要がある。 

GMLデータ集合(データインスタンス又はデータ文書とも呼ばれる。)は,オブジェクト要素を用いて

表す。言い換えると,このオブジェクトは,GMLオブジェクトの集まりであり得る。 

24 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

7.2.2.2 

AbstractGML及びAbstractGMLType 

識別可能なオブジェクトをスキーマで表現するための最も基本的な三つの構成部品を次に示す。 

<element name="AbstractGML" type="gml:AbstractGMLType" abstract="true" 
substitutionGroup="gml:AbstractObject"/> 
 
<complexType name="AbstractGMLType" abstract="true"> 

<sequence> 

<group ref="gml:StandardObjectProperties"/> 

</sequence> 
<attribute ref="gml:id" use="required"/〕 

</complexType> 
 
<group name="StandardObjectProperties"> 

<sequence> 

<element ref="gml:metaDataProperty" minOccurs="0" maxOccurs="unbounded"/> 

<element ref="gml:description" minOccurs="0"/> 
<element ref="gml:descriptionReference" minOccurs="0"/> 
<element ref="gml:identifier" minOccurs="0"/> 
<element ref="gml:name" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</group> 

抽象要素gml:AbstractGMLは,“識別子をもつ任意のGMLオブジェクト”とする。これは,XML Schema

の代替グループの代表として働き,この代替グループは,全てのGML地物及びその他の識別子をもつオ

ブジェクト要素を取り込むことができる。gml:AbstractGMLは,GMLコアスキーマ(GMLが提供する標

準スキーマ)及びGML応用スキーマの中の内容モデルにおいて変数として用いる。事実上,全てのGML

オブジェクトの抽象上位型とする。 

gml:AbstractGML及びgml:AbstractGMLTypeの組は,GMLスキーマで用いる基本的なパターンとする。

したがって,個々のGMLオブジェクトは,大域要素宣言によって表現され,関連するXML Schemaの型

宣言をもつ。GMLオブジェクトを表す要素名は,オブジェクトの概念的な意味を与える。GMLにおける

汎用的な要素の名前には,gml:AbstractObject,gml:AbstractGML,gml:AbstractFeature,gml:AbstractValue,

gml:AbstractCoverage,gml:AbstractTopology及び gml:AbstractCRSがある。オブジェクトを表すこれらの要

素は,この規格の中で定義する。 

GMLオブジェクトのXML子要素及びXML属性は,そのオブジェクトのプロパティである。したがっ

て,gml:AbstractGML で表されるオブジェクトは,五つのプロパティをもたなければならない。それは,

gml:identifier,gml:description,gml:descriptionReference,gml:name及び gml:idとする。これらは,7.2.4に

おいて示す。 

注記 gml:StandardObjectPropertiesグループは,応用スキーマを作成する上で便利になるために与え 

た。特に,gml:AbstractGMLType及びgml:AbstractFeatureTypeを制限する型を定義したい場合に

便利である。制限によって派生する場合には,変更せずに使用する全ての要素を新しい型定義

に複写する必要がある。全ての標準オブジェクトプロパティのための要素宣言を含む代わりに,

一行で記述するgml:StandardObjectProperties への参照を使用することができる。 

<group ref="gml:StandardObjectProperties"/> 

7.2.3 

GMLプロパティ 

25 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

7.2.3.1 

一般 

“プロパティ”という用語は,GMLプロパティを示すために用いる。GMLプロパティは,GMLオブジ

ェクトの任意の特性とする。GML文書内又はデータストリーム内の要素は,GMLオブジェクト要素の子

要素であるときだけGMLプロパティとなる。個々のプロパティの意味は,それをインスタンス化した要

素の名前で示さなければならない。 

GMLオブジェクトは,gml:AbstractGMLTypeから継承するものに加え,無制限の数のプロパティをもつ

ことができる。 

プロパティは,単純内容又は複合内容のいずれかをもつように定義してよい。単純内容をもつプロパテ

ィは,標準プロパティ要素であるgml:description及びgml:name で表すXML Schemaの単純内容型をとる。

複合内容をもつプロパティは,XML Schemaの複合型をとる。 

プロパティ要素は,二つの様式で使うことができる。 

− 要素内:プロパティの値を,プロパティ要素の内容として,直接記述する。この方法では,標準プロ

パティのgml:name を使う。また,gml:description を使ってもよい(7.2.4.2参照)。 

− 参照:プロパティの値を,他の場所から入手可能とし,プロパティ要素のxlink:href 属性を使って識

別する。この代替手段では,標準プロパティのgml:descriptionReferenceを使わなければならない(7.2.4.3

参照)。 

例 Xlink参照の使用例については,8.1を参照。 

注記 JIS X 7109及びOpenGIS抽象仕様Topic 8で定義する地物関連役割は,GML応用スキーマでは

幾つかの方法によって表すことができる。 

− 誘導可能(navigable)なものとして,ただ一つの関連役割だけを実装,つまり,XML符

号化法によって表現する。これは,GMLスキーマでは,幾つかの例外,例えば,位相オ

ブジェクト間の境界及び双対境界の関連役割,を除き,通常の表現法とする。 

− 関連に関わる各地物型ごとに別々のプロパティとして規定することで表す。しかし,こ

の場合,関連によって明示された一貫性制約は,XML Schemaの妥当性検証では実行で

きない。この符号化様式は,例えば,位相オブジェクトの境界,双対境界の関連役割,

及び附属書Eの中で使われる。7.2.3.9も参照。 

− GMLオブジェクトとして,関連オブジェクトを作成する。これは,n項関連及びモデル

化されるプロパティとの関連も許す。 

− XLinkの拡張リンクを用いる。この符号化法は,“関連オブジェクト”の表現と類似する。 

7.2.3.2 

AssociationAttributeGroup 

XLinkの構成部品は,ハイパーテキスト参照をXMLで利用可能にする標準的な手法である。XML Schema

の属性グループとして規定するgml:AssociationAttributeGroupは,GMLにおいて,XLinkを用いて,一定

の手順でプロパティの値を参照によって示すことを可能にする。この属性グループは,次のように定義す

る。 

<attributeGroup name="AssociationAttributeGroup"> 

<attributeGroup ref="xlink:simpleLink"/> 
<attribute name="nilReason" type="gml:NilReasonType"/> 

<attribute ref="gml:remoteSchema"/> 

</attributeGroup> 

XLink(8.1参照)から来る,次に示す定義を伴う。 

26 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<attributeGroup name="simpleLink"> 

<attribute name="type" type="string" fixed="simple" form="qualified"/> 
<attribute ref="xlink:href"/> 
<attribute ref="xlink:role"/> 
<attribute ref="xlink:arcrole"/> 
<attribute ref="xlink:title"/> 
<attribute ref="xlink:show"/> 
<attribute ref="xlink:actuate"/> 

</attributeGroup> 

xlink:href属性をもつGMLプロパティの値は,リンクをたどって返される情報資源とする。 

nilReason 属性は,nilでもよいプロパティ要素に対して,nil値である理由を示すために使うことができ

る。 

注記 属性グループ内の全ての構成部品は,任意選択とする。 

7.2.3.3 

abstractAssociationRole及びAssociationRoleType 

複合内容をもち得るプロパティの符号化を可能とするために,GMLスキーマでは,次のようなプロパテ

ィ要素のための基本パターンを規定する。 

<element name="abstractAssociationRole" type="gml:AssociationRoleType" abstract="true"/> 
 
<complexType name="AssociationRoleType"> 

<sequence minOccurs="0"> 

<any namespace="##any"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

このパターンを適用するには,この内容モデルを使うプロパティ要素の中に含むオブジェクトの多重度

を厳密に一つに制限しなければならない。この型に基づく一つのインスタンスは,一つのオブジェクトを

表す要素を一つ含むか,又は一つの遠隔オブジェクトへのポインタを与えなければならない。 

応用スキーマに特別なプロパティ型を定義するために,このパターンを適用する場合は,次のような制

限を設ける。 

− 要素内のオブジェクトを,特別なオブジェクト型に制限する。 

− “参照だけ”による符号化に制限する(7.2.3.7参照)。 

− “要素内だけ”による符号化に制限する(7.2.3.8参照)。 

注記1 gml:abstractAssociationRole の宣言及びその型宣言は,応用スキーマ内のプロパティ要素を作

るためのテンプレート又はパターンとして働くときに便利であるため規定する。この規格に

適合するGML応用スキーマにおいて,特別なプロパティを作るためにgml:AssociationType 

から派生するXML Schemaの型を使う必要はない。これは,全ての識別可能なオブジェクト

のための内容モデルがgml:AbstractGMLType から派生し,全ての地物のための内容モデルが

gml:AbstractFeatureType から派生しなければならないという要求とは対照的である。 

注記2 gml:abstractAssociationRoleを抽象型とするのに対し,その型となるgml:AssociationRoleType 

は,抽象型ではない。なぜならば,同じ型を,インスタンス化可能なgml:member プロパテ

ィに使用するからである(7.2.3.10参照)。ただし,このプロパティもまた,非推奨になった

ことに留意する。 

27 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

7.2.3.4 

要素内か参照かの選択 

プロパティの内容モデルの中にあるany要素は,任意選択とする。これは,gml:AssociationAttributeGroup 

の構成部品の多重性と結合して,この型をとる要素が一つの内容要素又はXlink属性をもつことができる

ことを意味する。このパターンに従ったGMLプロパティ要素は,要素内又は参照のいずれかで値を付与

するために用いる。 

例 地物に与えられる便利なプロパティとして,“centerOf”がある。これは,空間的な場所を示すた

めに,次のように要素内で記述することができる。 

<gml:centerOf> 

<gml:Point gml:id="point96" srsName="urn:x-ogc:def:crs:EPSG::4326"> 
<gml:pos>-31.936 15.834</gml:pos> 

</gml:Point> 

</gml:centerOf> 

このプロパティは,GML幾何スキーマ(10.2において説明)で定義するgml:Pointオブジェク

トを使う。同じプロパティ要素を次のように,参照を用いて場所を示すこともできる。 

<gml:centerOf xlink:href="http://my.big.org/locations/point53"/> 

このhttp://my.big.org/locations/point53によって,ここで示すサービスが示す点(gml:Point要素)

を識別する。 

しかしながら,このパターンに従ったプロパティ要素は,内容又は属性をもたなくてもよいし,両方を

もってもよく,いずれにおいてもXML Schemaに対して妥当である。内容及び属性が同時に発生すること

を制約することはできないので,W3C XML Schemaを使用して,要素内又は参照だけのいずれかに制限す

ることはできない。 

プロパティのインスタンスに,参照及び内容の両方が出現する場合,xlink:hrefリンクをたどって見つか

ったオブジェクトは,プロパティの規則に従う値でなければならない。データの受け手は,遠隔のインス

タンスを決定できないときに限り,内容として含まれるオブジェクトを使わなければならない。これは,

オブジェクトの“キャッシュ”版であると考えられる。 

注記 GMLスキーマにおける,GMLオブジェクトを値とするプロパティは,ほとんど,要素内又は

参照のいずれで符号化してもよい。しかしながら,GMLプロファイル(箇条20参照)の使用

において,“要素内だけ”又は“参照だけ”として用法を制限することができる。 

7.2.3.5 

プロパティ値の所有権 

GMLプロパティを要素内で符号化するか,参照で符号化するかにかかわらず,GMLオブジェクトを値

として含むか又は参照することに,“所有(ownership)”に関する何らかの意味をもたせてはならない。す

なわち,符号化の方法に対し,“deep-copy”又は“deep-delete”の意味を多少なりとも,もたせてはならな

い。このgml:OwnershipAttributeGroupという属性グループが,符号化対象のプロパティ要素の内容モデル

の一部ではない場合,プロパティ要素の値となったオブジェクトは,“所有される”ものではないことがあ

る。 

注記 本来,propertyは,“所有物”という意味をもち,この規格で使用する“特性”という意味は,

二次的であるため,プロパティ値と所有権とが無関係であることをこの細分箇条(7.2.3.5)で

補足する。 

この属性グループは,次のように定義する。 

<attributeGroup name="OwnershipAttributeGroup"> 

<attribute name="owns" type="boolean" default="false"/> 

28 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</attributeGroup> 

owns属性の値が“true”の場合,要素内に記述する又は参照するオブジェクトの存在は,親となるオブ

ジェクトの存在に依存する。 

例 仮に“hasOwner”プロパティが,インスタンス文書において次のように記述された場合, 

<parcel gml:id="c123"> 

<hasOwner xlink:href="urn:x-abc:id:o123"/> 

</parcel> 

参照されているオブジェクト,例えば自動車の部品がcar(自動車)という地物によって“所有

(deep-copy)され”ないとき,carが消去(deep-delete)されてもその部品という地物は消去され

ない。しかしながら,次に示すようにowns="true"としてプロパティを符号化する場合は, 

<car gml:id="c123"> 

<hasParts owns="true" xlink:href="urn:x-abc:id:x123"/> 
<!-- … --> 

</car> 

参照されるオブジェクトは,car(自動車)という地物によって“所有される”。すなわち,car

が消去された場合,その部品も消去される。 

7.2.3.6 

abstractStrictAssociationRole 

補助制約言語であるSchematron(JIS X 4177-3参照)を使って,プロパティの値が要素内への組込み又

はXlink参照による指示のいずれかとするという制約を,正確に記述することができる。抽象で大域な要

素であるgml:abstractAssociationRole及びgml:abstractStrictAssociationRoleは,共に gml:AssociationRoleType

を用いるが,次に示すスキーマの素片は,要素宣言において要素内又は参照の両方ではなく,いずれかで

プロパティが働くよう制限するために,Schematoron制約で記述する方法を示す。 

<element name="abstractAssociationRole" type="gml:AssociationRoleType" abstract="true"/> 
 
<element name="abstractStrictAssociationRole" type="gml:AssociationRoleType" abstract="true"/> 
 
<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:gml="http://www.opengis.net/gml/3.2"  
xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en"> 

<sch:title>Schematron constraints for GML / ISO 19136</sch:title> 
<sch:ns prefix="sch" uri="http://purl.oclc.org/dsdl/schematron"/> 
<sch:ns prefix="gml" uri="http://www.opengis.net/gml/3.2"/> 
<sch:ns prefix="xlink" uri="http://www.w3.org/1999/xlink"/> 
<sch:pattern> 

<sch:rule context="gml:abstractStrictAssociationRole"> 

<sch:assert test="not(@xlink:href and (*|text()))">Property element may not carry both a reference to 

an object and contain an object.</sch:assert> 

<sch:assert test="@xlink:href | (*|text())">Property element shall either carry a reference to an object or 

contain an object.</sch:assert> 
</sch:rule> 

</sch:pattern> 

</sch:schema> 

注記 XML検証ソフトには,Schematoron制約を自動的に処理するものがある。自動処理がない場合

は,Schematoronコードは,単なる要求制約の形式的な記述として扱われるだけであろう。

Schematoron制約記述を上で示したのは,応用スキーマの開発者が,特定の目的に対して

29 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

Schematoron制約記述をどのように用いることができるかを示すためである。 

7.2.3.7 

abstractReference及びReferenceType 

遠隔参照で値を示すプロパティの符号化を可能とするために,次のような構成部品を規定する。 

<element name="abstractReference" type="gml:ReferenceType" abstract="true"/> 
 
<complexType name="ReferenceType"> 

<sequence/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:abstractReferenceは,抽象要素なので,参照によって値を提供する,より特化した要素の代替グルー

プの代表として使うことができる。 

注記 gml:abstractReferenceは,抽象要素であるが,その型であるgml:ReferenceTypeは,抽象型では

ない。なぜならば,応用スキーマにおいて,プロパティを“参照だけ”で符号化しなければな

らないとき,この型を直接使用することを意図しているからである。 

7.2.3.8 

abstractInlineProperty及びInlinePropertyType 

要素内でプロパティの値の符号化を可能とするために,次のような構成部品を提供する。 

<element name="abstractInlineProperty" type="gml:InlinePropertyType" abstract="true"/> 

<complexType name="InlinePropertyType"> 

<sequence> 

<any namespace="##any"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:abstractInlinePropertyは,抽象要素とする。したがって,あらかじめ要素内で値をもつ,より特化し

た要素の代替グループの代表として用いることができる。 

7.2.3.9 

同じ関係を表現するプロパティ 

あるオブジェクトのプロパティの値が他のオブジェクトとなり,また,そのオブジェクトが二つのオブ

ジェクト間の関連をプロパティとしてもつ場合,相手のプロパティの名前は,gml:reversePropertyName 要

素として符号化できる。この要素は,“appinfo”注釈の中にある,二つのプロパティ間の制約を記述する

ためのプロパティ要素とする。この要素の値は,プロパティ要素の,修飾子付きの名前を含まなければな

らない。 

<element name="reversePropertyName" type="string"/> 

例 
<element name="owner" type="ex:PersonPropertyType" minOccurs=”0”> 

<annotation> 

<appinfo> 

<gml:reversePropertyName>ex:owns</gml:reversePropertyName> 

</appinfo> 

</annotation> 

</element> 
… 
<complexType name="PersonPropertyType"> 

30 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<sequence minOccurs="0"> 

<element ref="ex:Person"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

7.2.3.10 値オブジェクトのプロパティ 

値オブジェクト(16.4参照)は,特別なオブジェクトであり,単純な文字の値によって記述できる単純

プロパティの場合に,プロパティの外部要素なしに,値をオブジェクト要素の直接内容として表現する。 

例 <gml:Integer>5</gml:Integer>を<gml:Integer><gml:value>5</gml:value></gml:Integer>の代わりに用

いる。 

7.2.4 

GML objectの標準プロパティ 

7.2.4.1 

AbstractGML型からの派生 

GMLオブジェクトのためのXML Schemaの型は,全て,直接又は間接的にgml:AbstractGMLType から

派生する。このことは,全てのGMLオブジェクトがgml:AbstractGMLType の内容モデルに含まれる標準

プロパティを継承することを意味する。 

7.2.4.2 

description 

このプロパティの値は,オブジェクトのテキスト記述とする。gml:descriptionは,gml:StringOrRefType

をその内容モデルとして使用する。すなわち,その内容は,単純な文字列とするのがよい。 

<element name="description" type="gml:StringOrRefType"/> 

注記 gml:descriptionが外部の説明を参照する用法は,非推奨とする。その代替として

gml:descriptionReference プロパティがある(7.2.4.3参照)。gml:descriptionの型には,文字列型

を使用する。 

7.2.4.3 

descriptionReference 

このプロパティの値は,このオブジェクトの遠隔的なテキスト記述とする。gml:descriptionReference プ

ロパティのxlink:href 属性によって,外部の記述を参照する。 

<element name="descriptionReference" type="gml:ReferenceType"/> 

7.2.4.4 

name及びidentifier 

gml:nameプロパティは,通常,オブジェクトの記述的な名前として,ラベル及び識別子を示す。 

一つのオブジェクトは,複数の名前をもち得る。概して異なる典拠ごとに名前が割り当てられることが

ある。gml:nameは,gml:CodeTypeの内容モデルを用いる。名前の典拠は,(任意選択の)codeSpace属性に

よって示す。名前は,一意であるか,そうではないかもしれない。これらは,codeSpaceで示される典拠

の規則によって決定する。一般的な用法では,一つの典拠に一つの名前がある。処理をする応用システム

は,選んだcodeSpaceに従い名前を選択することができる。 

<element name="name" type="gml:CodeType"/> 

しばしば,オブジェクトに対して,地物を維持する典拠がそのオブジェクトを参照するために用いるこ

とを意図して,特別な識別子を与えることがある。このような場合のためにcodeSpaceを用いなければな

らない。この識別子は,大域でも又は応用領域でも,通常,一意とする。gml:identifierは,このような識

別子のためにあらかじめ定義したプロパティとする。 

例 通常,UUID及びURNを,大域的に一意な識別子として用いる。 

<element name="identifier" type="gml:CodeWithAuthorityType"/> 

31 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

7.2.4.5 

id 

gml:id属性は,GMLオブジェクトを表現するXML要素を取り扱う準備ができるようにする。全ての

GMLオブジェクトは,この属性を用いる。 

<attribute name="id" type="ID"/> 

これはXML型のIDであるため,この属性が出現するXML文書内において一意であるよう制約される。

GMLオブジェクトを表すXML要素の外部識別子は,URIの形式で記述し,これは標準記法(IETF RFC 

2396)で作成してよい。これは,文書のURIと分離記号である“#”とXML型のIDである属性値とを連

結して作る。 

7.2.5 

GMLオブジェクトの集まり 

7.2.5.1 

AbstractMemberType及び派生プロパティ型 

全てが地物というわけではない複数のGMLオブジェクトを集まりとして作成するとき,プロパティの

型は,拡張によってgml:AbstractMemberType から派生しなければならない。 

<complexType name="AbstractMemberType" abstract="true"> 

<sequence/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

派生プロパティ型は,7.2.3に示すパターンの一つに従わなければならない。そして,意図した使用法に

応じて,集まりの中のオブジェクトの多重度を設定できる。 

この抽象プロパティ型は,オブジェクト型の中でだけ使うことを意図しており,ソフトウェアは,その

ようなオブジェクト型のインスタンスが,オブジェクトの集まりとして解釈できることを見分けることが

できなければならない。 

例 このようなプロパティの型として,15.2.3に示すgml:DictionaryEntryTypeを参照。 

既定値では,この抽象プロパティ型は,集まりの中のオブジェクトのいかなる所有も示さない。

gml:OwnershipAttributeGroup のowns属性を,集まりの中のオブジェクトの所有を主張するためにプロパテ

ィ要素のインスタンスで使うことができる。この集まりは,既に他のオブジェクトに所有されているオブ

ジェクトを所有してはならない。 

7.2.5.2 

GMLオブジェクトの集まり及びAggregationAttributeGroup 

GMLオブジェクトの集まりは,gml:AbstractMemberTypeから派生した内容モデルをプロパティ要素とし

てもつgml:AbstractObjectとする。 

例 gml:Dictionaryは,GMLオブジェクトの集まりとする。なぜならば,15.2.3に示すように

gml:dictionaryEntry プロパティの内容モデルは,gml:AbstractMemberType から拡張によって派生

するからである。 

さらに,GMLオブジェクトの集まりの内容モデルを記述する複合型は,オブジェクトの集まりの意味規

則に付加的な情報を与える属性グループgml:AggregationAttributeGroupへの参照も取り込む。この情報は,

応用システムにおいて,GMLオブジェクトを分類したり,任意に順序又は索引をつけたりするときに使う

ことができる。 

<attributeGroup name="AggregationAttributeGroup"> 

<attribute name="aggregationType" type="gml:AggregationType"/> 

</attributeGroup> 

aggregationType属性が取り得る値は,gml:AggregationType で定義する。この列挙の値の意味は,ISO/IEC 

11404:1996の8.4を参照。 

32 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<simpleType name="AggregationType" final="#all"> 

<restriction base="string"> 

<enumeration value="set"/> 
<enumeration value="bag"/> 
<enumeration value="sequence"/> 
<enumeration value="array"/> 
<enumeration value="record"/> 

<enumeration value="table"/> 

</restriction> 

</simpleType> 

注記1 応用スキーマにおいて,“配列”集成型の集まりを実装する場合,応用スキーマの中の配列型

には,インデックスを使って処理する付加的な情報をモデリングする必要がある。 

注記2 応用スキーマにおいて“テーブル”集成型の集まりを実装する場合,応用スキーマのテーブ

ル型には,列及びそれらの構造について必要な情報を加える付加的な情報が必要となる。 

7.2.6 

メタデータ 

GMLオブジェクトと,XML Schemaを使って記述した任意のメタデータとを関連させるためには,

gml:AbstractMetadataPropertyType から拡張によって派生した内容モデルをもつプロパティ要素を使って定

義しなければならない。 

このようなプロパティの値は,メタデータでなければならない。このようなプロパティ型の内容モデル,

すなわち,メタデータ応用スキーマは,GML応用スキーマによって示さなければならない。 

<complexType name="AbstractMetadataPropertyType" abstract="true"> 

<sequence/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:AbstractMetadataPropertyTypeから派生するプロパティ型は,7.2.3に示すGMLプロパティのための

パターンの一つに従わなければならない。 

既定値では,この抽象プロパティ型は,メタデータのいかなる所有も意味しない。

gml:OwnershipAttributeGroupの所有属性を,メタデータプロパティ要素のインスタンスにおいて,メタデ

ータの所有を保証するために用いてよい。 

JIS X 7115の概念モデルに従うメタデータを符号化する場合,ISO/TS 19139で示す,対応する実装仕様

をメタデータ情報の符号化に用いなければならない。 

例1 地物型“Road”(道路)は,二つのメタデータプロパティとして,データ品質プロパティ

“horizontalAbstractAccuracy”(水平絶対正確度)及びISO/TS 19139“metadata”プロパティと

関連できる。 

これは,複合プロパティの中でメタデータプロパティをくくることによって,次のように応

用スキーマの中に写像できる。 

<complexType name="RoadType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<!-- ... --> 
<element name="roadMetadata" type="ex:RoadMetadataPropertyType"/> 
<!-- ... --> 

33 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</extension> 

</complexContent> 

</complexType> 
 
<complexType name="RoadMetadataPropertyType"> 

<complexContent> 

<extension base="gml:AbstractMetadataPropertyType"> 

<sequence> 

<element ref="ex:RoadMetadata"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<complexType name="RoadMetadataType"> 

<complexContent> 

<extension base="gmx:AbstractObjectMetadata̲Type"> 

<sequence> 

<element name="horizontalAbstractAccuracy" minOccurs="0" 

type="gmd:DQ̲AbsoluteExternalPositionalAccuracy̲PropertyType"/> 

<element name="metadata" minOccurs="0" 

type="gmd:MD̲Metadata̲PropertyType"/> 
</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="RoadMetadata" type="myAs:RoadMetadataType" 
substitutionGroup="gmx:AbstractObjectMetadata"/> 

次に,Road地物のインスタンスは次のようになる。 

<ex:Road> 

<!-- … --> 
<ex:roadMetadata> 

<ex:RoadMetadata> 

<ex:horizontalAbsoluteAccuracy> 

<gmd:DQ̲AbsoluteExternalPositionalAccuracy> 

<!-- The DQ̲Element subelements are not detailed --> 

</gmd:DQ̲AbsoluteExternalPositionalAccuracy> 

</ex:horizontalAbsoluteAccuracy> 
<ex:metadata> 

<gmd:MD̲Metadata> 

<!- ISO/TS 19139 metadata elements --> 

</gmd:MD̲Metadata> 
</ex:metadata> 

</ex:RoadMetadata> 

</ex:roadMetadata> 

<!-- … --> 

34 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</myAs:Road> 

地物から分離したメタデータプロパティを表現する符号化の代替案は,次のようになる。 

<complexType name="RoadType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<!-- ... --> 
<element name="horizontalAbsoluteAccuracy" minOccurs="0"> 
<complexType> 
<complexContent> 

<extension base="gml:AbstractMetadataPropertyType"> 

<sequence> 

<element ref="gmd:DQ̲AbsoluteExternalPositionalAccuracy"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

</element> 
<!-- ... -->  
<element name="metadata" minOccurs="0"> 

<complexType> 

<complexContent> 

<extension base="gml:AbstractMetadataPropertyType"> 

<sequence> 

<element ref="gmd:MD̲Metadata"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

</element> 
<!-- ... --> 
</sequence> 

</extension> 

</complexContent> 

</complexType> 

インスタンスの例は,次のようになる。 

<ex:Road> 

<!-- ... --> 

<ex:horizontalAbsoluteAccuracy> 

<gmd:DQ̲AbsoluteExternalPositionalAccuracy> 
<!-- The DQ̲Element subelements are not detailed --> 
</gmd:DQ̲AbsoluteExternalPositionalAccuracy> 

</ex:horizontalAbsoluteAccuracy> 
<!-- ... --> 
<ex:metadata> 

<gmd:MD̲Metadata> 
<!-ISO/TS 19139 metadata elements --> 
</gmd:MD̲Metadata> 

35 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</ex:metadata> 

<!-- ... --> 

</ex:Road> 

例2 データ集合が,Dublin Core メタデータ要素を含むことができるようにしなければならないとき

は,応用スキーマにおいて次のように写像できる。 

<import namespace="http://www.purl.org/dc/terms/" 
schemaLocation="http://schemas.opengis.net/csw/2.0.0/rec-dcterms.xsd"/> 
 
<complexType name="DatasetType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 
<!-- ... --> 

<element name="generalMetadata" type="ex:DublinCoreMetadataPropertyType"/> 
<!-- ... --> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

 
 

<complexType name="GeneralMetadataPropertyType"> 

<complexContent> 

<extension base="gml:AbstractMetadataPropertyType"> 

<sequence> 

<element ref="ex:DublinCoreMetadata"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="DublinCoreMetadata"> 

<complexType name="DublinCoreMetadataType"> 

<sequence> 

<group ref="dct:DCMI-terms" xmlns:dct="http://www.purl.org/dc/terms/"/> 

</sequence> 

</complexType> 

</element> 

インスタンスの例は,次のようになる。 

<ex:Dataset> 

<!-- ... --> 
<ex:generalMetadata> 

<ex:DublinCoreMetadata> 

<dc:title>Vector Smart Map Level 0</dc:title> 
<dct:abstract>Vector Map: a general purpose database design to support GIS 

applications</dct:abstract> 

<dc:publisher>US National Geospatial-Intelligence Agency</dc:publisher> 
<dc:format>VPF</dc:format> 

36 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<dc:coverage>world</dc:coverage> 
<dc:language>en</dc:language> 
<!-- … --> 

</ex:DublinCoreMetadata> 

</ex:generalMetadata> 
<!-- ... --> 

</ex:Dataset> 

GMLスキーマ−XLink及び基本型 

8.1 

Xlinks−オブジェクト関連及び遠隔プロパティ 

XLinkの仕様は,W3Cの規定を用いる。 

注記 スキーマ文書xlinks.xsdは,GMLスキーマ文書の一部として附属書Cに示す。 

GMLは,参照によってオブジェクト間の関連を実装するためにXLinkの構成部品を使用する。GMLプ

ロパティ要素(7.2.3参照)は,XLink属性をもつことができる。このXLink属性は,参照によって関連関

係を符号化するものであり,プロパティ要素の名前は,関連先の役割名を示す。最も重要なXLinkの構成

部品を,次に示す。 

xlink:href  関連先の資源の識別子。その値は,URIで与える。 

GMLプロパティにxlink:hrefがある場合は,プロパティの値は,リンクをたどった先になければならな

い。つまり,プロパティの値は,xlink:href属性の値で指示する。XLinkの用語法に従い,xlink:href属性を

もつGMLプロパティは,遠隔プロパティと呼ぶことがある。 

他のXLink構成部品は,関係について付加的な意味規則を示すために使用する。これらの中で最も有用

なものを,次に示す。 

xlink:role 対象資源の性質の記述。その値は,URIで与える。 

xlink:arcrole 当該資源に関係する対象資源の役割又は目的の記述。その値は,URIで与える。 

xlink:title 関連又は対象資源の記述。その値は,テキストで与える。 

上記及び他のXLink構成部品の完全な定義は,XLinkの拡張リンク関連マップでの使用を含め,XLink

仕様を参照。 

URI参照[URI]は,絶対URI又は相対URIかのいずれかで定義され,後に番号記号("#")及び追加参照

情報からなる素片の識別子が続く。GMLオブジェクトのプロパティ及び遠隔関連では,追加参照情報は,

次に挙げるものの内のいずれか一つでなければならない。 

− GMLオブジェクトのgml:id属性の値からなる省略表現(正式には“無装飾名”という。)XPointer 

[XPointerフレームワーク] 

− element()スキームによるXPointer [XPointer element()] 

− xpointer()スキームによるXPointer [XPointer xpointer()]。これは,GMLオブジェクトを選択するXPath

式 [XPath]からなる。任意に選択できることとして,XPath式の中で使用する名前空間の接頭辞を定義

するxmlns()スキームによるXPointer [XPointer xmlns()]を複数,先に置いてもよい。 

絶対URI及び相対URIを含まず,全体が素片の識別子からなるURIは,同じGML文書内のどこかにあ

るGMLオブジェクトを参照する。 

絶対URI又は相対URIには,問合せ構成部品を含むことができる。問合せ構成部品は,疑問符(“?”)

とそれに続く問合せとで構成する。問合せは,URIで指定する資源が解釈しなければならない。GMLオブ

ジェクトのプロパティ及び遠隔関連に関して,問合せはいずれも,GMLオブジェクトを返すサービスに対

37 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

する要求でなければならない。このような問合せを含むURIは,対象のサービスで定義しているリクエス

ト構文によるものとし,素片の識別子を使用してもよいし,使用しなくてもよい。 

このGMLスキーマにおいては,XLinkの単純リンクは,GMLオブジェクトの関連役割を示すこと及び

遠隔参照するプロパティの値を示すことだけに使用する。 

例1 GMLの同じGML文書内のオブジェクト要素への参照は,次のように符号化できる。 

<myProperty xlink:href="#o1"/> 

例2 XMLの遠隔文書のオブジェクト要素への参照は,対象オブジェクトのgml:id値を用いて,次

のように符号化できる。 

<myProperty xlink:href="http://my.big.org/test.xml#o1"/> 

例3 XMLの遠隔文書(又はGMLオブジェクトリポジトリ)のオブジェクト要素への参照は,オブ

ジェクトのgml:identifierプロパティの値を用いて,次のように符号化できる。 

<myProperty xlink:href="http://my.big.org/test.xml#element 

(//gml:GeodeticCRS[./gml:identifier[@codeSpace="urn:x-ogc:def:crs:EPSG:6.3:"]="4326"])"/> 

例4 統一資源名を使用したオブジェクト要素への参照は,次のように符号化できる 

注記 URNリゾルバによって,URNを決定して参照オブジェクトにアクセスする。 

<myProperty xlink:href="urn:x-ogc:def:crs:EPSG:6.3:4326"/> 

IDREFデータ型,unique,key及びkeyref要素は,IDデータ型の識別及びリンクの仕組みの代わりとな

り,単一のXML文書内でのXLink参照に用いる。これらのXML構成部品は,XML Schema上は使用して

もよいが,GMLでは規定としての役割はないので,GMLオブジェクトの関連役割又は遠隔参照するプロ

パティの値を示すために使用してはならない。 

なお,unique,key及びkeyref要素は,XML仕様及びXML Schema仕様で定義している。 

8.2 

基本型 

8.2.1 

概要 

W3CのXML Schemaには,一連の組込み“単純”型がある。この型は,値をリテラルとして内部のマー

ク付けを用いずに表現するための方法を定義する。W3C XML Schema Part 2: 2001に,その記述がある。

GMLは,インスタンスをXML Schemaを使って記述する,XML符号化法なので,これらの単純型をでき

るだけ使用して,実用的にデータ型を表現しなければならない。W3CのXML Schemaには,次に示す型定

義法も与えている。 

− 新規の単純型 組込み型の制限及び組合せによる型 

− 複合型 単純な内容だけでなく,XML属性も保持している型 

当てはまる適当な組込み単純型がない場合には,GMLによるデータ型の表現のために,XML Schemaの

仕組みを使って派生した単純内容型を使用する。 

幾つかのGML構成部品で求められるこれらの単純内容型の集まり及びその型に基づく幾つかの要素を,

basicTypesスキーマの中で定義する。これらは,主に,例外又はヌル値を含め,量,計数値,フラグの値

及び語句を記録するために使う構成部品を基礎とする。 

注記 基本型及び基本要素を,附属書CのbasicTypesスキーマ文書に示す。このスキーマは,次に示

す位置独立名で識別する(URN構文を使用)。 

urn:x-ogc:specification:gml:schema-xsd:basicTypes:3.2.1 

38 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

8.2.2 

ISO/TS 19103との関係 

ISO/TS 19103では,国際規格ISO 19100シリーズ(JIS X 7100シリーズ)の概念スキーマのための基本

型を定義している。GMLでは,D.2.2で示すとおり,その基本型の部分集合を実装する。 

注記 ISO/TS 19103の基本型のうちの幾つかは,GMLスキーマに関する他のスキーマ文書に示す。

計測単位については箇条16を,ベクトルについては10.1.4.5を参照。 

8.2.3 

単純型 

8.2.3.1 

NilReasonType 

gml:NilReasonTypeは,空値又は他の例外の説明を記録する内容モデルを定義する。 

<simpleType name="NilReasonEnumeration"> 

<union> 

<simpleType> 

<restriction base="string"> 

<enumeration value="inapplicable"/> 
<enumeration value="missing"/> 
<enumeration value="template"/> 
<enumeration value="unknown"/> 
<enumeration value="withheld"/> 

</restriction> 

</simpleType> 
<simpleType> 

<restriction base="string"> 

<pattern value="other:¥w{2,}"/> 

</restriction> 

</simpleType> 

</union> 

</simpleType> 

<simpleType name="NilReasonType"> 

<union memberTypes="gml:NilReasonEnumeration anyURI"/> 

</simpleType> 

gml:NilReasonTypeは,次の列挙値の共用体とする。 

− “inapplicable”: 値がない。 

− “missing”: 正しい値をすぐには入手できない。さらに,正しい値は存在しない可能性もある。 

− “template”: 値は,後に提供される予定である。 

− “unknown”: 正しい値をこのデータの送り手は把握しておらず,算定もできていない。しかしなが

ら,正しい値はおそらく存在している。 

− “withheld”: 公表された値ではない。 

− “other: ”+テキスト: 他の簡略な説明。テキストは,スペースを含まない2文字以上の文字列で

ある。 

− anyURI: 例外とした理由を記述している資源を参照することが望ましい。 

個々のコミュニティが,提供する標準的な値に対してより詳細な意味規則を与えてもよい。代わりの方

法として,URIを使用することによって,どこかから提供され,インスタンス文書において参照によって

示される値の欠損を,詳細に又はより完全に説明することができる。 

39 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:NilReasonTypeは,後で定義する(8.2.3.4,8.2.4.1,8.2.4.2及び8.2.4.3参照)多くの単純内容型の中

で,共用体のメンバとして使用する。ただし,元の型の代わりとしてNilReasonType共用体からの値を許

す必要がある場合に限る。 

8.2.3.2 

“nillable”と宣言する要素 

スキーマ内のどの要素宣言にXML Schema属性のnillableを含んでもよい。 

注記 スキーマ属性のnillableの既定値は,“false”とする。 

例1 次の要素宣言の例は,nillable属性の使用方法を示している。 

<element name="amount" type="double" nillable="true"/> 

<element ref="my:amount" nillable="true"/> 

要素をnillable(nillable="true")と宣言することによって,XML Schema のインスタンスとなる名前空間

から属性nilを“true”の値とともに与えることによって,スキーマにとっては通常妥当ではないと考えら

れる空値になる場合を避けることができる。 

例2 スキーマで属性nillable="true"と宣言している要素は,次のようにインスタンス文書に記載して

もよい。 

<my:amount>34.567</my:amount> 

<my:amount xsi:nil="true"/> 

要素をnilであると宣言することは,ISO/IEC 11404の“Void”データ型を実装することを意味する。す

なわち,“オブジェクトの存在が文法的に又は意味的に必須であるが,所与のインスタンスには何も情報を

もたない”ということを意味する(ISO/IEC 11404参照)。 

注記 これは,次の例のように要素を省略可能とする多重度属性をもたせた要素宣言とは異なる。 

<element name="amount" type="double" minOccurs="0"/> 

この例は,要素をインスタンス全体を通して省略可能とする宣言である。 

応用スキーマの要素をnillableと宣言しなければならない場合には,便宜的にgml:NilReasonTypeとした

typeの属性を追加してもよい。 

例3 応用スキーマの構成部品 

<element name="amount" nillable="true"> 

<complexType> 

<simpleContent> 

<extension base="double"> 

<attribute name="nilReason" type="gml:NilReasonType"/> 

</extension> 

</simpleContent> 

</complexType> 

</element> 

<element name="money" type="my:NRMeasureType" nillable="true"/> 

<complexType name="NRMeasureType"> 

<simpleContent> 

<extension base="decimal"> 

<attribute name="uom" type="token" use="required"/> 
<attribute name="nilReason" type="gml:NilReasonType"/> 

</extension> 

40 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</simpleContent> 

</complexType> 

次のように,インスタンスに追加の属性を増補して,値の欠損を説明してもよい。 

<my:amount xsi:nil="true" nilReason="unknown"/> 

<my:money xsi:nil="true" nilReason="other:myDaughterSpentIt" uom="AUD"/> 

GMLスキーマ及びGML応用スキーマでは,“nillable”及び“nilReason”の構成を,GMLプロパティ(7.2.3

参照)を表現する要素に使用してもよい。このことで,GML及びGML応用言語におけるオブジェクト及

び地物の内容の構成部分になるプロパティを必須と宣言する一方で,インスタンス文書中に値をもたない

要素も残すことができる。 

注記 単純内容及び複合内容の要素の両方をnillableと宣言してもよく,その結果,その要素の組立て

によってvoid値をもつプロパティに対して統一された構文が可能になる。 

8.2.3.3 

SignType 

gml:SignTypeは,“+”(正)及び“-”(負)の値をもつ便宜的な型とする。 

<simpleType name="SignType"> 

<restriction base="string"> 

<enumeration value="-"/> 
<enumeration value="+"/> 

</restriction> 

</simpleType> 

注記 この型の要素又は属性は,様々な所で使える。例えば,位相をもったオブジェクトの向きを示

す記号として,順方向には“+”を,逆方向には“-”を使う。 

8.2.3.4 

booleanOrNilReason,doubleOrNilReason,integerOrNilReason,NameOrNilReason及び

stringOrNilReason 

gml:booleanOrNilReason,gml:doubleOrNilReason,gml:integerOrNilReason,gml:NameOrNilReason及び

gml:stringOrNilReasonの各型では,それぞれのXML Schemaに組み込まれた単純型を拡張して,組込み単

純型の値,又はnil値の理由のいずれかを選択できるようにしてもよい。構成の仕方を次に示す。 

<simpleType name="booleanOrNilReason"> 

<union memberTypes="gml:NilReasonEnumeration boolean anyURI"/> 

</simpleType> 

<simpleType name="doubleOrNilReason"> 

<union memberTypes="gml:NilReasonEnumeration double anyURI"/> 

</simpleType> 

<simpleType name="integerOrNilReason"> 

<union memberTypes="gml:NilReasonEnumeration integer anyURI"/> 

</simpleType> 
<simpleType name="NameOrNilReason"> 

<union memberTypes="gml:NilReasonEnumeration Name anyURI"/> 

</simpleType> 

<simpleType name="stringOrNilReason"> 

<union memberTypes="gml:NilReasonEnumeration string anyURI"/> 

</simpleType> 

41 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

8.2.3.5 

CodeType及びCodeWithAuthorityType 

gml:CodeTypeは,語句,キーワード又は名前に使用する一般的な型とする。 

<complexType name="CodeType"> 

<simpleContent> 

<extension base="string"> 

<attribute name="codeSpace" type="anyURI"/> 

</extension> 

</simpleContent> 

</complexType> 

上の例では,XML属性のcodeSpaceを,語句に追加している。ここでは,codeSpace属性の値は,(存在

する場合は),語句の辞書,類語辞典,分類スキーム,典拠又は文字列様式を示す。 

例 次のgmlBaseスキーマは,この型を使用した要素宣言である。 

<element name="name" type="gml:CodeType"/> 

この宣言に対応する要素をインスタンス文書にした例を,次に示す。 

<gml:name codeSpace ="http://www.ukusa.gov/placenames">St Paul</gml:name> 

この例では,“St Paul”をhttp://www.ukusa.gov/placenamesに合致した意味のある名前として明

示的に設定している。全ての場合において,一意性制約のようなものを含む,値のための規則は,

codeSpaceで示す典拠によって設定することに留意する。 

派生型であるgml:CodeWithAuthorityTypeは,codeSpace属性はインスタンスの中で設定することを求め

ている。 

<complexType name="CodeWithAuthorityType"> 

<simpleContent> 

<restriction base="gml:CodeType"> 

<attribute name="codeSpace" type="anyURI" use="required"/> 

</restriction> 

</simpleContent> 

</complexType> 

8.2.3.6 

MeasureType及びUomIdentifier 

gml:MeasureTypeは,XML Schemaのdouble型の値として符号化される量とともに,“units of measure”

の略称であるuom属性で示す計測単位を,記録するために利用する。uom属性の値は,通常,比率尺度又

は間隔尺度で示す量を特定する。 

gml:MeasureTypeは,次のように定義する。 

<complexType name="MeasureType"> 

<simpleContent> 

<extension base="double"> 

<attribute name="uom" type="gml:UomIdentifier" use="required"/> 

</extension> 

</simpleContent> 

</complexType> 

例 応用スキーマは,この型を使用した要素宣言を含んでもよい。 

<element name="height" type="gml:MeasureType"/> 

この宣言に対応する要素をデータインスタンス文書に記載した例を,次に示す。 

42 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<height uom="m">1.4224</height> 

<height uom="http://www.equestrian.org/units/hands">14</height> 

上の例では,uom属性の値で,計測単位又は計測単位を定義する情報資源を特定している。 

注記 上の例は,馬の体高の単位である“hand”を使うと,14handsが,1.422 4 mに相当す

ることによる。 

単純型のgml:UomIdentiferでは,計測単位識別子の構文及び値空間を定義する。 

これは,次のように共用体型として定義する。 

<simpleType name="UomIdentifier"> 

<union memberTypes="gml:UomSymbol gml:UomURI"/> 

</simpleType> 

共用体型の最初のメンバであるgml:UomSymbolは,次のように定義する。 

<simpleType name="UomSymbol"> 

<restriction base="string"> 

<pattern value="[^: ¥n¥r¥t]+"/> 

</restriction> 

</simpleType> 

この型には,1文字以上の文字を指定する。また,コロン“:”,スペース“ ”,(次行),(復帰)及び(タ

ブ)を含んではならない。この型の値には,“kg”,“m/s”などの慣用の略記を用いてもよい。 

注記 記号は,“Unified Code of Units of Measure”(UCUM)(http://aurora.regenstrief.org/UCUM)に明記

している計測単位に対する識別子であることが望ましい。UCUMでは,記号の集合,及び一意

となるように計測単位の識別子を組み立てるための文法を,定めている。この識別子は,7ビ

ットASCIIの限られた文字の入力しかできないキーボードによる入力も容易に行うことができ

る。ISO 2955は,以前はこの利用範囲内での仕様であったが,2001年に廃止された。UCUM

は,大筋でISO 2955に従っているが,曖昧なもの及び他の問題を削除するように修正を加えて

いる。 

共用体型の二番目のメンバであるgml:UomURIは,次のように定義する。 

<simpleType name="UomURI"> 

<restriction base="anyURI"> 

<pattern value="([a-zA-Z][a-zA-Z0-9¥-¥+¥.]*:|¥.¥./|¥./|#).*"/> 

</restriction> 

</simpleType> 

この型は,URIが,“#”,“./”,“../”の後に続く文字で始まるか,又は後ろに“:”が付いた文字列で始

めなければならないという制限を指定する。このような文字様式のパターンによって,絶対URI,相対URI

又は単純な素片の識別子であるURIを含む一般的なURI形式のほとんどに確実に対応する。しかし,単位

記号(例 “m/s”)と間違う可能性のある相対URIの特定の形式は,禁止している。 

注記 そのような相対URIは,制限に整合するように書き直すことが可能である(例えば,“./m/s”)。 

インスタンス文書では, gml:MeasureType型の要素において,必須とするuom属性には,次のようにそ

れぞれに対応した値を与えなければならない。 

− 慣用の計測単位記号 

− 一般的な記号がないとき,又は詳細な定義が要求されるときの計測単位の定義に対するリンク 

後者の目的のGML構成部品は,16.2で定義する。 

43 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

8.2.3.7 

CoordinatesType 

<complexType name="CoordinatesType"> 

<simpleContent> 

<extension base="string"> 

<attribute name="decimal" type="string" default="."/> 
<attribute name="cs" type="string" default=","/> 
<attribute name="ts" type="string" default="&#x20;"/> 

</extension> 

</simpleContent> 

</complexType> 

この型は,座標成分となる数値の組に対しては非推奨とする。 

gml:CoordinatesTypeは,テキスト文字列であり,値の組又は座標の配列の記録に使用する。 

文字列の内部構造をスキーマの検証にかけることはできないが,旧版のGMLでは,内部構造の記述用

に幾つかの任意選択の属性を提供していた。これらの属性は,非推奨とする。これらの属性は,次のよう

に使用することを想定していた。 

Decimal:小数点記号 

(default="." ピリオド) 

cs:数値の組,又は座標の中で要素を分離する記号 

(default ="," コンマ) 

ts:組又は座標列の区切りに使用する記号 

(default =" " スペース) 

gml:CoordinatesTypeは,XML Schemaの文字列型に基づいているので,テキスト及び数値の混在した場

合も含み,値の組の表又は組の配列を作成することに使用できる。 

例 <my:tupleList>ウサギ,357.,2.3,ネコ,140.,0.75,イヌ,770.,17.5</my:tupleList> 

8.2.4 

リスト 

8.2.4.1 booleanList,doubleList,integerList,NameList,NCNameList,QNameList,booleanOrNilReasonList,

NameOrNilReasonList,doubleOrNilReasonList及びintegerOrNilReasonList 

単純な値を羅列することを目的としたリスト型は,次に示すパターンに従って組み立てる。 

<simpleType name="booleanList"> 

<list itemType="boolean"/> 

</simpleType> 

<simpleType name="doubleList"> 

<list itemType="double"/> 

</simpleType> 

<simpleType name="integerList"> 

<list itemType="integer"/> 

</simpleType> 

<simpleType name="NameList"> 

<list itemType="Name"/> 

</simpleType> 

44 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<simpleType name="NCNameList"> 

<list itemType="NCName"/> 

</simpleType> 

<simpleType name="QNameList"> 

<list itemType="QName"/> 

</simpleType> 

<simpleType name="booleanOrNilReasonList"> 

<list itemType="gml:booleanOrNilReason"/> 

</simpleType> 

<simpleType name="NameOrNilReasonList"> 

<list itemType="gml:NameOrNilReason"/> 

</simpleType> 

<simpleType name="doubleOrNilReasonList"> 

<list itemType="gml:doubleOrNilReason"/> 

</simpleType> 

<simpleType name="integerOrNilReasonList"> 

<list itemType="gml:integerOrNilReason"/> 

</simpleType> 

上の例のリスト型では,XML Schemaの組込み単純型の値のリストとして,又は前の細分箇条で指定し

た共用体型の値のリストとして定義している。…OrNilReasonList型は,リスト内に散在しているnil値の

理由を説明するために使っている。 

注記1 上の例のリスト型は,融通性のある型として使える。これらの型は,単純内容型をリスト及

び他の単純内容型を合わせた共用体として定義する場合に,有用である。 

注記2 上の例のリスト型の中には,大文字で始まる型及び小文字で始まる型がある。これは,XML 

Schemaの基底型とGMLの型であることとを明確に区別するために,大文字小文字の区別を

したためである。 

注記3 上の例の型のうちの一つを使用する要素は,これに関連した型のメンバからなるスペースで

区切ったリストをもつことになる(XMLリストの詳細な構造は,

http://www.w3.org/TR/xmlschema-2/#atomic-vs-listを参照)。 

注記4 ここで定義しているどのリスト型においても,XML Schemaの文字列型を項目としては使わ

ない。文字列に,埋め込まれたスペース,改行など(http://www.w3.org/TR/xmlschema-2/#string)

を含んでいる可能性があるからである。リストのインスタンスにおいて,スペースは項目を

区切る働きをするので,スペースを潜在的にもち得る項目は,必ずしも特定することができ

ない。一方で,XML Schemaの名前型のインスタンスは,スペースをもつことは許さない

(http://www.w3.org/TR/2000/WD-xml-2e-20000814#NT-Name)ため,このインスタンスはリス

トの内容の中で安全に使用できる。その帰結として,項目の値にスペースがあるときは,そ

のような項目がリストのインスタンスに発生することはない。 

8.2.4.2 

CodeListType及びCodeOrNilReasonListType 

gml:CodeListType及びgml:CodeOrNilReasonListTypeの二つの型は,項目の値のリストを与える。スキー

45 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

マ定義を,次に示す。 

<complexType name="CodeListType"> 

<simpleContent> 

<extension base="gml:NameList"> 

<attribute name="codeSpace" type="anyURI"/> 

</extension> 

</simpleContent> 

</complexType> 

<complexType name="CodeOrNilReasonListType"> 

<simpleContent> 

<extension base="gml:NameOrNilReasonList"> 

<attribute name="codeSpace" type="anyURI"/> 

</extension> 

</simpleContent> 

</complexType> 

gml:CodeListTypeのインスタンス要素の値は全て,この型がもつcodeSpace属性の値で識別する辞書,

分類スキーム,又は典拠の規則に応じて,妥当なものでなければならない。 

例 ある応用スキーマが,上記の二つの型を使用した要素宣言を含んでいる。 

<element name ="species" type ="gml:CodeListType"/> 

この応用スキーマのインスタンス文書では,これらの宣言に対応する要素が次のように出現す

る。 

<species codeSpace="http://my.big.org/florelegium">バラ ガーベラ マーガレット ラベンダー

</species> 

上の例でリストに挙げた項目は,(架空の)花のリストである“http://my.big.org/florelegium”を

典拠としている。 

gml:CodeOrNilReasonListTypeのインスタンス要素は,gml:NilReasonTypeからとられた埋込み値をもって

もよい。このインスタンス要素は,あるべき項目の値又は分類が何らかの理由で欠落する場合に使用する

ことを想定している。 

8.2.4.3 

MeasureListType及びMeasureOrNilReasonListType 

二つの型gml:MeasureListType及びgml:MeasureOrNilReasonListTypeは,量に関するリストを与える。ス

キーマの定義を,次に示す。 

<complexType name="MeasureListType"> 

<simpleContent> 

<extension base="gml:doubleList"> 

<attribute name="uom" type="gml:UomIdentifier" use="required"/> 

</extension> 

</simpleContent> 

</complexType> 

<complexType name="MeasureOrNilReasonListType"> 

<simpleContent> 

<extension base="gml:doubleOrNilReasonList"> 

<attribute name="uom" type="gml:UomIdentifier" use="required"/> 

</extension> 

46 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</simpleContent> 

</complexType> 

例 ある応用スキーマが,上記の二つの型を使用した要素宣言を含んでいる。 

<element name="heights" type="gml:MeasureListType"/> 

<element name="weights" type="gml:MeasureOrNilReasonListType"/> 

この応用スキーマのインスタンス文書では,これらの宣言に対応する要素が次のように出

現する。 

<heights uom="m">1.76 1.85 1.56 1.98</heights> 

<weights uom="kg">67.0 73.4 withheld 85.1</weights> 

この二つの要素例では,両方ともリスト中の値全てを同じ尺度で記述している。 

二番目の要素例は,通常は計測値があるべきところに何らかの理由で値が欠落し,そこに

nil値の理由を説明する値を入れている。 

GMLスキーマ−地物 

9.1 

一般概念 

GML地物は,GMLを用いて符号化した地物とする。 

例 道路,河川,人,乗り物,行政区画,事象など 

地物スキーマは,GML地物及び地物の集まりを作成するための枠組みを与える。 

注記 地物スキーマ文書feature.xsd(附属書C参照)は,次のように位置独立名によって識別する(URN 

構文を使用)。 

urn:x-ogc:specification:gml:schema-xsd:feature:3.2.1 

9.2 

JIS X 7109との関係 

GML地物モデルは,JIS X 7109:2009の箇条7で定める原理に従う。それは,JIS X 7109の一般地物モ

デルに適合する部分的な実装を示す。この関連性については,D.2.6に示す。 

注記 GML地物モデルは,地物の集まりの概念をOpenGIS抽象仕様からも引き継いでいる。 

9.3 

地物 

9.3.1 

AbstractFeatureType 

基本的な地物モデルは,次のようなスキーマで定義したgml:AbstractFeatureTypeによって示す。 

<complexType name="AbstractFeatureType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGMLType"> 

<sequence> 

<element ref="gml:boundedBy" minOccurs="0"/> 

<element ref="gml:location" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:AbstractFeatureTypeの内容モデルは,gml:AbstractGMLTypeで定義した内容モデルに,地物に必要な

二つの特別なプロパティを付け加えている。 

gml:boundedByプロパティの値は,全ての地物インスタンスを囲う包被を示し,主に特定の位置にある

地物を高速に検索するときに使用する。 

47 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:locationプロパティの値は,地物の大きさ,位置,又は相対的場所を記述する。gml:locationは,

gml:AbstractFeatureTypeの標準内容モデルの一部とするとして非推奨となっている。 

9.3.2 

AbstractFeature 

要素gml:AbstractFeatureは,次のように宣言する。 

<element name="AbstractFeature" type="gml:AbstractFeatureType" abstract="true" 
substitutionGroup="gml:AbstractGML"/> 

この抽象要素は,gml:AbstractFeatureTypeから派生した内容モデルの,いかなる要素も含むことができる

代替グループの代表として使用する。これは,内容モデルを作るための変数として使用してよい。 

gml:AbstractFeatureは,“GML地物となる任意のもの”と考えることができる。また,あるGMLプロパ

ティが“任意の地物”という値をもつ変数又はテンプレートを定義するのに使用してもよい。これは特に,

それぞれの地物メンバプロパティが一つ以上のgml:AbstractFeatureのコピーを含んでいるGML地物の集ま

り(9.9参照)の中で発生する。 

9.4 

標準地物プロパティ 

9.4.1 

boundedBy,BoundingShapeType,EnvelopeWithTimePeriod及びEnvelopeWithTimePeriodType 

このプロパティは,地物全体を囲う最小境界直方体又は長方形を記述する。その内容モデルを次に示す。 

<element name="boundedBy" type="gml:BoundingShapeType" nillable="true"/> 
<complexType name="BoundingShapeType"> 

<sequence> 

<choice> 

<element ref="gml:Envelope"/> 

<element ref="gml:Null"/> 

</choice> 

</sequence> 
<attribute name="nilReason" type="gml:NilReasonType"/> 

</complexType> 

gml:Envelope要素は,10.1.4.6で定義する。 

nil値は,8.2.3.2で示すように符号化しなければならない。属性nilReasonは,nil値の理由を記述する場

合に使用することができる。 

何らかの理由で範囲が適用できない又は使用できないことを符号化するために,以前のGML版で使わ

れたgml:Nulの値は非推奨とされている。 

注記1 包被は,単に対角線の両端の位置で定義するため,包被の正確な形は使用する座標参照系に

よる。記述した地物の範囲が零のときは,その対角線の両端は一致し,その包被の大きさは

零となる。gml:boundedByプロパティは,データ供給者の都合に合わせて提供する。包被の

値は普通,地物の時空間プロパティからデータ使用者が計算する。全てのプロパティに関し

て,値が正確であることを保証するのはデータ提供者の責任とする。 

時間範囲を含む包被には,gml:EnvelopeWithTimePeriodを与える。それは次のように定義する。 

<element name="EnvelopeWithTimePeriod" type="gml:EnvelopeWithTimePeriodType" 
substitutionGroup="gml:Envelope"/> 

<complexType name="EnvelopeWithTimePeriodType"> 

<complexContent> 

<extension base="gml:EnvelopeType"> 

<sequence> 

48 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="beginPosition" type="gml:TimePositionType"/> 
<element name="endPosition" type="gml:TimePositionType"/> 

</sequence> 
<attribute name="frame" type="anyURI" default="#ISO-8601"/> 

</extension> 

</complexContent> 

</complexType> 

ここでは,二つの時間位置プロパティgml:beginPosition及びgml:endPositionを付け加えており,これら

は,時間包被の範囲を示す。 

gml:EnvelopeWithTimePeriodは,gml:Envelopeを代表とする代替グループに割り当てられるので,

gml:Envelopeが妥当なときはいつでも使用することができる。 

注記2 gml:AbstractGeometryType(10.1.3.1参照)から派生した全ての幾何要素と同様に,gml:Envelope

を定義している位置に対して使用している座標参照系は,任意のXML属性srsNameを使用

して示すことができる。使用している座標参照系が時間軸を含む場合,時空間範囲を記述す

るのにgml:Envelopを直接使うことができる。 

9.4.2 

locationName及びlocationReference 

gml:locationNameプロパティ要素は,地物の場所をテキスト値として記述する便宜的なプロパティとす

る。これは次のように定義する。 

<element name="locationName" type="gml:CodeType"/> 

場所の名前を,あらかじめ決められたリストから選ぶ場合,そのリストはcodeSpace属性で識別しなけ

ればならない。 

gml:locationReferenceプロパティ要素は,地物の場所をxlink:href属性によって参照するテキスト値とし

て記述する便宜的なプロパティとする。これは次のように定義する。 

<element name="locationReference" type="gml:ReferenceType"/> 

例 次のインスタンスは,gml:locationName又はgml:locationReferenceが,データのインスタンスの中

で表現できる異なった記述方法を示す。 

あらかじめ決められた情報源から得られる名前を使用して与えられる場所: 

<Feature> 

<gml:locationName 

codeSpace="http://www.icsm.gov.au/icsm/cgna/index.html">Leederville</gml:locationName> 
</Feature> 

文字列を使用して与えられる場所 

<Feature> 

<gml:locationName>Nigel Fosterʼs town of residence</gml:locationName> 

</Feature> 

別のサービスによって与えられる場所: 

<Feature> 
<gml:locationReference 

xlink:href="http://www.ga.gov.au/bin/gazm01?placename=leederville&placetype=R&state=WA+"

/> 
</Feature> 

9.4.3 

FeaturePropertyType及びFeatureArrayPropertyType 

地物間の関連を定義するプロパティクラスがある。それらは,次のようなgml:AssociationRoleTypeパタ

49 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

ーンを使用する。 

<complexType name="FeaturePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractFeature"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

他の地物の配列を含むプロパティを定義するのに役立つ場合もある。それは,次の内容モデルによって

定義するように,地物配列プロパティ型を使用することによって行う。 

<complexType name="FeatureArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractFeature" /> 

</sequence> 

</complexType> 

9.5 

幾何プロパティ 

GML応用スキーマ中の幾何プロパティには,その応用に固有の名前を選択しなければならない。そのプ

ロパティの名前は,値の意味を表現できるように選ぶとよい。それぞれの応用に固有の名前を使うことは,

幾何プロパティを含め,プロパティの命名に望まれる方法である。 

地物型がもつことができる幾何プロパティの型には,プロパティ値がgml:AbstractGeometryを代替する

幾何オブジェクトである限り,個別の制限がない。 

例1 RadioTower(電波塔)地物型は,代表点を通してその場所を識別するために点を返すlocation

(場所)をもつことがあり,物理的構造を記述する曲面を返すfloorSpace(敷地)と呼ぶ一つ

の幾何プロパティをもち,さらに,電波が届くエリアを記述する曲面を返すserviceArea(サー

ビス地域)と呼ぶ第三の幾何プロパティがある。 

<complexType name="RadioTowerType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="location" type="gml:PointPropertyType"/> 
<element name="floorSpace" type="gml:SurfacePropertyType"/> 
<element name="serviceArea" type="gml:SurfacePropertyType"/> 
<!-- … --> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

GMLスキーマは,幾何プロパティ要素の型として使用できる,既定義のプロパティ型を含む(表4参照)。 

background image

50 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表4−既定義の幾何プロパティ型 

XML Schema によるプロパティ型 

関連する幾何オブジェクト型(要素名) 

PointPropertyType 

Point 

CurvePropertyType 

AbstractCurve 
LineString 
Curve 
OrientableCurve 
CompositeCurve 

SurfacePropertyType 

AbstractSurface 
Polygon 
Surface 
OrientableSurface 
CompositeSurface 

SolidPropertyType 

AbstractSolid 
Solid 
CompositeSolid 

MultiPointPropertyType 

MultiPoint 

MultiCurvePropertyType 

MultiCurve 

MultiSurfacePropertyType 

MultiSurface 

MultiSolidPropertyType 

MultiSolid 

MultiGeometryPropertyType 

MultiGeometry 

PointArrayPropertyType  

Point(s) 

CurveArrayPropertyType 

AbstractCurve(s) 
LineString(s) 
Curve(s) 
OrientableCurve(s) 
CompositeCurve(s) 

SurfaceArrayPropertyType 

AbstractSurface(s) 
Polygon(s) 
Surface(s) 
OrientableSurface(s) 
CompositeSurface(s) 

SolidArrayPropertyType 

AbstractSolid(s) 
Solid(s) 
CompositeSolid(s) 

9.6 

位相プロパティ 

幾何プロパティと同様,GML応用スキーマでは,位相プロパティのために,その応用に固有な名前を選

択しなければならない。プロパティの名前は,値の意味を表現できるように選ぶことが望ましい。 

例 StatisticalArea地物型は,統計区の境界を代表するTopoCurveを返す一つ以上のboundary(境界)

プロパティをもち,さらに,統計区自体を代表するTopoSurfaceを返す一つ以上のsurface(曲面)

プロパティをもつ。 

<complexType name="StatisticalAreaType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="boundary" type="gml:TopoCurvePropertyType" 

maxOccurs="unbounded"/> 

background image

51 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="surface" type="gml:TopoSurfacePropertyType" 

maxOccurs="unbounded"/> 

<!-- … --> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

GMLスキーマは,位相プロパティ要素の型として使用できる既定義のプロパティ型を含む。これらのプ

ロパティのうち,最初の四つは方向を表現するが,それ以外のプロパティは,方向を表現していない(表

5参照)。 

表5−既定義の正式な位相プロパティ型 

XML Schema によるプロパティ型 

関連する位相オブジェクト型(要素名) 

DirectedNodePropertyType 

Node 

DirectedEdgePropertyType 

Edge 

DirectedFacePropertyType 

Face 

DirectedTopoSolidPropertyType 

TopoSolid 

TopoPointPropertyType 

TopoPoint 

TopoCurvePropertyType 

TopoCurve 

TopoSurfacePropertyType 

TopoSurface 

TopoVolumePropertyType 

TopoVolume 

TopoComplexPropertyType 

TopoComplex 

9.7 

時間プロパティ 

幾何プロパティ及び位相プロパティと同様に,時間プロパティ要素の定義は,応用スキーマ設計者の責

任の下で行う。 

例 地物型Building(建築物)は,XML型が“gml:TimePeriodPropertyType”であるconstructionTime

(建築期間)プロパティ,XML型が“gml:TimeInstantPropertyType”であるcompletionTime[しゅ

ん(竣)工時点]プロパティ,及びXML型が“gml:TimeIntervalLengthType”であるage(存続期

間)プロパティをもつことができる。 

<complexType name="BuildingType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="constructionTime" type="gml:TimePeriodPropertyType"/> 
<element name="completionTime" type="gml:TimeInstantPropertyType"/> 
<element name="age" type="gml:TimeIntervalLengthType"/> 
<!-- … --> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

表6で示す型は,プロパティ要素を宣言するときに直接使用する。 

background image

52 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表6−既定義の正式な時間プロパティ型 

XML Schema によるプロパティ型 

関連する時間オブジェクト型(要素名) 

TimePrimitivePropertyType 

AbstractTimePrimitive 
AbstractTimeGeometricPrimitive 
TimeInstant 
TimePeriod 
AbstractTimeTopologyPrimitive 
TimeEdge 
TimeNode 

TimeGeometricPrimitivePropertyType 

AbstractTimeGeometricPrimitive 
TimeInstant 
TimePeriod 

TimeInstantPropertyType 

TimeInstant 

TimePeriodPropertyType 

TimePeriod 

TimeTopologyPrimitivePropertyType 

AbstractTimeTopologyPrimitive 
TimeEdge 
TimeNode 

TimeEdgePropertyType 

TimeEdge 

TimeNodePropertyType 

TimeNode 

TimeTopologyComplexPropertyType 

TimeTopologyComplex 

TimeOrdinalEraPropertyType 

TimeOrdinalEra 

TimeCalendarPropertyType 

TimeCalendar 

TimeCalendarEraPropertyType 

TimeCalendarEra 

TimeClockPropertyType 

TimeClock 

TimePositionType 

− (単純型) 

xsd:duration 

− (単純型) 

TimeIntervalLengthType 

− (単純型) 

上に列挙した時間プロパティ型は,時間情報を地物及び他のオブジェクトに関連付けるための比較的包

括的な構成部品集合を与えている。 

9.8 

応用分野に固有の地物型の定義について 

応用スキーマで定義する,固有の地物型は全て,内容モデル(XML Schema型)がgml:AbstractFeatureType

から派生している大域XML要素として実装しなければならない。それゆえ,全てのGML地物は,どのプ

ロパティも制限による派生時に抑制されない限り,標準のgml:identifier,gml:description,

gml:descriptionReference及びgml:nameプロパティとともに,任意選択のgml:boundedBy プロパティを継承

する。gml:AbstractFeatureTypeは,gml:AbstractGMLTypeからgml:idも継承する。これは,GMLでデータ

ベース識別子を使用可能とするために有効な手段である。 

注記 非推奨とされているプロパティは,この継承するプロパティのリストからは除外している。 

この型から派生する理由は,任意のGMLデータを処理するために設計した汎用ソフトウェアが,デー

タストリーム中の要素がGML地物であるかどうかを決めるためにXML Schema派生木をたどることがで

きる,ということである。 

GML地物は,プロパティの集合をもっており,その中の特定のプロパティ集合が地物型を定義する。プ

ロパティは,XML Schema単純内容型を使った単純値,又は複合値をもつ。複合値の場合は,7.2.3に記述

したパターンを用いて宣言することが望ましい。 

地物を定義する応用スキーマには,その名前が論議領域(関心あるもの全てを含んだ,実世界又は仮想

53 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

世界の範囲。ISO 19101参照)にある地物の意味型であるということを宣言した大域要素がなければなら

ない。大域要素は,(直接的又は間接的に)gml:AbstractFeature代替グループのメンバでなければならない。 

<element name="<<featureName>>" type ="<<contentModel >>" substitutionGroup="gml:AbstractFeature"/> 

地物の内容モデルは,名前をもつ複合型又は匿名の複合型とする。 

9.9 

地物の集まり 

9.9.1 

GML地物の集まり 

GML地物の集まりは,GML地物インスタンスの集まりとする。 

gml:AbstractFeatureMemberTypeから拡張によって派生した内容モデルにある,プロパティ要素を伴った

GML地物は,全てGML地物の集まりとする(9.9.2参照)。 

さらに,GML地物の集まりの内容モデルを記述する複合型は,7.2.5.1で示したように,オブジェクトの

集まりの意味規則について,補足的な情報を提供するため属性グループgml:AggregationAttributeGroupへの

参照を含んでもよい。 

例1 次のスキーマ構成部品は,任意の地物の単純な集まりをモデル化している。ここでは,その集

まりはMyFeaturesという名前である。 

<element name="MyFeatures" type="ex:MyFeaturesType" 
substitutionGroup="gml:AbstractFeature"/> 

<complexType name="MyFeaturesType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="myMember" type="ex:MyFeaturesMemberType" minOccurs="0" 

maxOccurs="unbounded"/> 
</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<complexType name="MyFeaturesMemberType"> 

<complexContent> 

<extension base="gml:AbstractFeatureMemberType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractFeature"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

集合の意味をもつ集まりを符号化するインスタンスの例である。ここでは境界包被も示される。 

<MyFeatures aggregationType="set"> 

<gml:boundedBy> 

<gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"> 

<gml:lowerCorner>50.23 9.23</gml:lowerCorner> 
<gml:upperCorner>50.31 9.27</gml:upperCorner> 

54 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</gml:Envelope> 

</gml:boundedBy> 
<myMember> 

<MyFeature gml:id="f1"/> 

</myMember> 
<myMember> 

<MyFeature gml:id="f2"/> 

</myMember> 
<myMember xlink:href="#f3"/> 

</MyFeatures> 

例2 地物の集まりは,固有の型のインスタンスを含むことが多い。次の例では,地物の集まりは,

RoadSegment(道路区間)の列からなるRoad(道路)である。 

<element name="Road" type="ex:RoadType" substitutionGroup="gml:AbstractFeature"/> 

<complexType name="RoadType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="segment" type="ex:RoadMemberType" minOccurs="0" 

maxOccurs="unbounded"/> 
</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<complexType name="RoadMemberType"> 

<complexContent> 

<extension base="gml:AbstractFeatureMemberType"> 

<sequence minOccurs="0"> 

<element ref="ex:RoadSegment"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

順序付けられた道路区間の集まりを符号化したインスタンスの一部の例。 

<Road gml:id="r1" aggregationType="sequence"> 

<segment> 

<RoadSegment gml:id="s1"/> 

</segment> 
<segment xlink:href="#s8"/> 
<segment> 

<RoadSegment gml:id=”s4”/> 

</segment> 

</Road> 

9.9.2 

AbstractFeatureMemberType及びそれから派生するプロパティ型 

55 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GML地物の集まりを作成するには,プロパティ型はgml:AbstractFeatureMemberTypeから拡張によって

派生させなければならない。 

<complexType name="AbstractFeatureMemberType" abstract="true"> 

<sequence/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

派生したプロパティ型は,7.2.3で指定するパターンのうちの一つに合致しなければならない。そして,

意図した使用に必要なように,集まりの中でオブジェクトの多重度を定めることができる。 

既定値では,この抽象プロパティ型は,集まりの中のどのような地物の所有も示さない。

gml:OwnershipAttributeGroupのowns属性は,集まりによる地物の所有を主張するためのプロパティ要素イ

ンスタンスとして使うことができる。集まりは,別のオブジェクトが所有している地物を所有してはなら

ない。 

9.10 地物又は地物の集まりに使用する時空間参照系 

地物又は地物の集まりのgml:boundedByプロパティの値は,通常gml:Envelopeとする。

gml:AbstractGeometryType(10.1.3.1参照)から派生した全ての幾何要素に共通して,gml:Envelopeを定義

している位置が使用している座標参照系は,任意のXML属性srsNameを使用して示すことができる。 

地物及び地物の集まりを作成する便宜上,地物のgml:boundedByプロパティの値であるgml:Envelopeに

関する属性srsNameの値は,局所的なsrsNameの存在によって却下されない限り,地物又は地物の集まり

のメンバの全てのプロパティにおいて,全ての直接的に表された幾何要素が継承しなければならない。そ

のため,その親地物のgml:boundedByプロパティに与えられた同じ座標参照系を使うときは,幾何要素は,

srsName属性を備える必要はない。座標参照系の継承はどこまでも続くが,局所的なsrsNameの宣言によ

って却下した場合は,新しい座標参照系が,代わりに全ての子地物によって継承される。 

この規則にかかわらず,地物又は地物の集まりに使う全ての幾何要素は,それらが親地物と同じであっ

ても,局所的に使用している参照系を示すためにsrsName属性を備えることができる。 

10 GMLスキーマ−幾何プリミティブ 

10.1 一般的な概念 

10.1.1 概要 

この10.1.1では,幾何プリミティブをGMLを用いて指定するためのスキーマ構成部品について規定す

る。 

注記1 GMLの幾何モデルはJIS X 7107に適合する。GML幾何モデルの型及び要素が基づく概念に

ついて,この規格でより詳しく示す。 

注記2 対応する幾何スキーマ文書であるgeometryBasic0d1d.xsd,geometryBasic2d.xsd及び

geometryPrimitives.xsd(附属書C参照)の識別には,次の(URN構文を用いた)位置独立名

を用いる。 

urn:x-ogc:specification:gml:schema-xsd:geometryBasic0d1d:3.2.1 

urn:x-ogc:specification:gml:schema-xsd:geometryBasic2d:3.2.1 

urn:x-ogc:specification:gml:schema-xsd:geometryPrimitives:3.2.1 

gml:AbstractGeometryType型の意味規則を継承する幾何要素は,いずれも直接位置の集合として見ること

ができる。 

56 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:AbstractGeometryType型から派生したクラスは,座標参照系への関連(任意選択)を継承する。直接

位置は全て,直接又は間接に座標参照系に関連しなければならない。(gml:MultiGeometry要素又は

gml:GeometricComplex要素のように)幾何要素が,既に座標参照系を指定された他の幾何要素に集成され

る場合,これらの要素では,他の座標参照系を指定しない限り同じ座標参照系を用いるものとみなす。 

幾何モデルは,幾何プリミティブ,幾何集成及び幾何複体に分けられる。 

幾何プリミティブ,すなわち,gml:AbstractGeometricPrimitiveType型の下位型のインスタンスは,開集合

となる,言い換えると,その境界上の点を含まない。曲線はその端点を含まず,曲面はその境界線を含ま

ず,立体はその境界面を含まない。 

10.1.2 JIS X 7107との関係 

箇条10及び箇条11で規定するGMLスキーマの空間幾何構成要素は,JIS X 7107空間スキーマ(幾何)

の一部を,この規格に従って実装したものである。この関係について,より詳しい解説をD.2.3に示す。 

GMLが実装する“JIS X 7107幾何型”(複数)は,JIS X 7107で規定されている。さらに,これらの型

は,JIS X 7107が規定する制約をもち,これはGMLスキーマの空間幾何構成部品も同じように制約する。 

加えて,GMLではD.3.5〜D.3.8で示す補足的な空間幾何スキーマ構成部品を規定する。 

10.1.3 抽象幾何 

10.1.3.1 AbstractGeometryType 

<complexType name="AbstractGeometryType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGMLType"> 

<attributeGroup ref="gml:SRSReferenceGroup"/> 

</extension> 

</complexContent> 

</complexType> 

幾何要素は全て,この抽象上位型から直接又は間接に派生する。幾何要素はAbstractGMLType(7.2.2.2

参照)からの拡張派生であるため,識別のための属性(gml:id属性)をもたなければならず,一つ以上の

名前(gml:identifier要素及びgml:name要素)及び一つの記述(gml:description要素及び

gml:descriptionReference要素)をもってもよい。幾何要素は,座標参照系と関連(gml:SRSReferenceGroup

属性グループ)してもよい。 

次の規則を厳守しなければならない。 

− 全ての幾何型は,この抽象型から派生する。 

− 全ての幾何要素(すなわち,幾何型の要素)は,AbstractGeometryの代替グループに直接的又は間接

的に属す。 

10.1.3.2 SRSReferenceGroup 

<attributeGroup name="SRSReferenceGroup"> 

<attribute name="srsName" type="anyURI" /> 
<attribute name="srsDimension" type="positiveInteger" /> 
<attributeGroup ref="gml:SRSInformationGroup"/> 

</attributeGroup> 

gml:SRSReferenceGroup属性グループは,この幾何要素で用いるCRSへの任意選択の参照であり,CRS

のより完全な定義を必要としない場合の座標処理を単純化する追加の任意選択情報を伴うことがある。 

一般にsrsName属性は,gml:AbstractCoordinateReferenceSystem(12.2.3参照)のCRSインスタンスを示

す。公知の参照については,URIが指し示す場所にCRSの記述がある必要はない。 

57 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

srsName属性を指定しない場合,この幾何要素が属すより大きい構造の一部として,CRSを指定しなけ

ればならない。 

例 幾何集成及び地物の集まりは,典型的な“より大きい構造”である。 

注記 “srsName”という名前は,熟慮の上で選択された。GMLの現行の版では“crsName”がより適

するが,将来の版では,他の種類の空間参照系,すなわち,地理識別子を用いるようなものも

GMLでサポートするかもしれない。 

任意選択のsrsDimension属性は,位置が含む座標値の座標成分の数とする。この次元は,座標参照系か

ら派生する。srsName属性を省略する場合,この属性も省略しなければならない。 

10.1.3.3 SRSInformationGroup 

<attributeGroup name="SRSInformationGroup"> 

<attribute name="axisLabels" type="gml:NCNameList" /> 
<attribute name="uomLabels" type="gml:NCNameList" /> 

</attributeGroup> 

uomLabels属性及びaxisLabels属性は,gml:SRSInformationGroup属性グループに属し,CRSのより完全

な定義が必要でない場合に,座標値の処理を単純化するためのCRSに関する任意選択の追加情報とする。

この情報は,srsName属性が参照するCRSの完全な定義に含まれる情報と同一でなければならない。

srsName属性を含む場合,axisLabels属性及びuomLabels属性の両方を含むか又はいずれも省略しなければ

ならない。srsName属性を省略する場合,これらの属性は,いずれも省略しなければならない。 

axisLabels属性は,このCRSの全ての座標軸の名称の順序付きリストとする。これらの座標軸の名称に

は,gml:axisAbbrevの値を,スペース及び禁止されている文字を取り去った上で用いることが望ましい。

srsName属性を含む場合,この属性は任意選択とする。srsName属性を省略する場合,この属性も省略しな

ければならない。 

uomLabels属性は,このCRSの全ての座標軸の計測単位(uom)の名称の順序付きリストとする。この

uomの名称には,gml:catalogSymbolの文字列値を,スペース及び禁止されている文字を取り去った上で用

いることが望ましい。axisLabels属性を含む場合,このuomLabels属性もまた,含まなければならない。

axisLabels属性を省略する場合,このuomLabels属性も省略しなければならない。 

10.1.3.4 AbstractGeometry 

<element name="AbstractGeometry" type="gml:AbstractGeometryType" abstract="true" 
substitutionGroup="gml:AbstractGML" /> 

gml:AbstractGeometry要素は,GMLの全ての幾何要素の代替グループの抽象代表とする。これは,既定

及び使用者定義の幾何要素を含む。全ての幾何要素は,gml:AbstractGeometryType型からの直接的又は間接

的な拡張又は制限で派生しなければならず,gml:AbstractGeometry代替グループに直接又は間接に属さなけ

ればならない。 

D.2.3.2は,このGMLオブジェクトによるJIS X 7107のGM̲Objectの実装を示す。 

10.1.3.5 GeometryPropertyType 

<complexType name="GeometryPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractGeometry"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

58 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

幾何プロパティは,その型の要素に格納された幾何要素となることも,遠隔幾何要素(この遠隔とは同

一又は他の文書のどこかにある幾何要素をも含んでいる。)へのXLink参照となることもできる。参照又

は内容となる要素のいずれかを指定しなければならず,7.2.3.4の規定にかかわらず,両方を指定したりい

ずれも指定しなかったりしてはならないことに注意する(7.2.3参照)。 

地物が値に幾何要素をとるプロパティをもつ場合,このプロパティを幾何プロパティと呼ぶ。このよう

な幾何プロパティの総称型は,7.2.3で示した一般規則に従ったgml:GeometryPropertyTypeとする。 

10.1.3.6 GeometryArrayPropertyType 

<complexType name="GeometryArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractGeometry" /> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

地物が値に幾何要素の配列をとるプロパティをもつ場合,このプロパティを幾何配列プロパティと呼ぶ。

このような幾何プロパティの総称型は,7.2.3で示す一般規則に従うgml:GeometryArrayPropertyType型とす

る。 

要素は配列プロパティ内では常にその場に記述する。これらの幾何要素又は幾何要素の配列をXLinkを

通じて参照してはならない。 

例 gml:GeometryArrayPropertyType型の全ての要素は,その要素がgml:AbstractGeometry要素を直接

的又は間接的に代替できるようgml:AbstractGeometryType型(この抽象基底型から派生した型を

含む。)の要素となる。 

10.1.4 座標幾何,ベクトル及び包被 

10.1.4.1 DirectPositionType及びpos 

<complexType name="DirectPositionType"> 

<simpleContent> 

<extension base="gml:doubleList"> 

<attributeGroup ref="gml:SRSReferenceGroup"/> 

</extension> 

</simpleContent> 

</complexType> 
 
<element name="pos" type="gml:DirectPositionType"/> 
 
<sch:pattern> 

<sch:rule context="gml:pos"> 

<sch:assert test="not(@srsDimension) or @srsName">The presence of a dimension attribute implies the 

presence of the srsName attribute.</sch:assert> 

<sch:assert test="not(@axisLabels) or @srsName">The presence of an axisLabels attribute implies the 

presence of the srsName attribute.</sch:assert> 

<sch:assert test="not(@uomLabels) or @srsName">The presence of an uomLabels attribute implies the 

presence of the srsName attribute.</sch:assert> 

<sch:assert test="(not(@uomLabels) and not(@axisLabels)) or (@uomLabels and @axisLabels)">The 

presence of an uomLabels attribute implies the presence of the axisLabels attribute and vice 
versa.</sch:assert> 

59 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sch:rule> 

</sch:pattern> 

直接位置のインスタンスは,ある座標参照系(CRS)での,位置に対応した座標値を保持する。このた

め,直接位置は,データ型として多くの場合,CRSへの参照をもつ,より大きい(幾何要素などの)オブ

ジェクトに含まれる。また,このようなCRSへの参照をもつより大きな要素に含まれる直接位置では,一

般にsrsName属性は省略される。この場合,CRSとしては,暗黙でそれを含むオブジェクトのCRSの値

を用いるものと仮定する。 

gml:SRSReferenceGroup属性グループは,10.1.3.2で示す。srsName属性を指定しない場合,CRSはより

大きい構造の一部として指定されなければならない。この幾何要素は,主に点,曲線などの幾何オブジェ

クトの一部となる。 

注記 直接位置のレベルでこの属性を指定することはまれである。 

D.2.3.4は,これらのスキーマ構成要素によってJIS X 7107のDirectPosition型の実装を規定する。 

10.1.4.2 DirectPositionListType及びposList 

<complexType name="DirectPositionListType"> 

<simpleContent> 

<extension base="gml:doubleList"> 

<attributeGroup ref="gml:SRSReferenceGroup"/> 
<attribute name="count" type="positiveInteger"/> 

</extension> 

</simpleContent> 

</complexType> 
 
<element name="posList" type="gml:DirectPositionListType"/> 

gml:posList要素のインスタンス(及びDirectPositionListType型が規定する内容モデルをもつ他のインス

タンス)は,同一の座標参照系(CRS)での,直接位置の列に対応した座標値をもつ。 

SRSReferenceGroup属性グループは,10.1.3.2で示す。srsName属性を指定しない場合,CRSはより大き

い構造の一部として指定されなければならない。この幾何要素は,主に曲線,曲面などの幾何オブジェク

トの一部となる。 

注記 直接位置のレベルでsrsName属性を指定することはまれである。 

任意選択のcount属性は,リスト中の直接位置の数を指定する。 

リストの項目の数は,座標参照系の次元(言い換えると座標参照系の定義から派生した値)と直接位置

の数との積に等しい。 

D.2.3.4は,これらのスキーマ構成要素によってJIS X 7107のGM̲PointArray型の直接位置だけを用いた

実装を規定する。 

10.1.4.3 geometricPositionGroup 

<group name="geometricPositionGroup"> 

<choice> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

</choice> 

</group> 

GMLでは,直接位置(データ型)と点(幾何オブジェクト)との二つの異なった方法で幾何位置(geometric 

position)を指定してよい。  

60 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:pos要素は,その幾何位置を格納する幾何プリミティブが“所有”する位置である。 

gml:pointProperty要素は,他の幾何要素から参照できる点を含むか,又は別の場所で定義される他の点

を参照する(既存の点の再使用)。 

D.2.3.4は,この選択グループによってJIS X 7107のGM̲Position型の実装を規定する。 

10.1.4.4 geometricPositionListGroup 

<group name="geometricPositionListGroup"> 

<choice> 

<element ref="gml:posList"/> 
<group ref="gml:geometricPositionGroup" maxOccurs="unbounded"/> 

</choice> 

</group> 

GMLでは,(グループ定義を再使用することによる)幾何位置の列及び直接位置の列(gml:posList要素)

という,二つの異なった方法で幾何位置を指定することができる。 

gml:posList要素は,全ての位置が同一の座標参照系で表現される場合に,簡潔な方法で位置の座標値を

指定することを可能にする。 

D.2.3.4は,この選択グループによってJIS X 7107のGM̲PointArray型の実装を規定する。 

注記 このグループの定義を直接用いるのではなく,幾何プリミティブを定義する様式としてこのグ

ループの定義を用いることができる。(このグループから派生する型における)主な変化として,

参照されるグループの多重度の変化が挙げられる。例えば,LineString型は,最低二つの位置を

必要とする。また,非推奨の要素,すなわち,gml:coordinates要素(gml:posList要素によって

置き換えられた)及びgml:pointRep要素(gml:pointProperty要素によって置き換えられた)を

使用可能にするために,例えばGMLにおける曲線分での点配列の現行の符号化は,このグル

ープをパターンとして用い,非推奨の要素を追加している。 

10.1.4.5 VectorType及びVector 

<complexType name="VectorType"> 

<simpleContent> 

<restriction base="gml:DirectPositionType"/> 

</simpleContent> 

</complexType> 
<element name="vector" type="gml:VectorType"/> 

gml:vector要素は,ISO/TS 19103のVector型(D.2.3.2及びISO/TS 19103:2005の6.5.2.6参照)を実装す

る。 

一部の応用において,位置の構成要素は,単位ベクトルに応じるように調整されることがある。 

注記 この定義によって,grids.xsdのoffsetVector要素のように適当と考えられる場合にはどこにでも

VectorType型を用いることが可能となり,direction.xsdのDirectionVector要素のように,それが

適切な場合には直接vector要素を用いることが可能となる。 

10.1.4.6 EnvelopeType及びEnvelope 

<complexType name="EnvelopeType"> 

<choice> 

<sequence> 

<element name="lowerCorner" type="gml:DirectPositionType"/> 
<element name="upperCorner" type="gml:DirectPositionType"/> 

</sequence> 

61 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:pos" minOccurs="2" maxOccurs="2"/> 
<element ref="gml:coordinates"/> 

</choice> 
<attributeGroup ref="gml:SRSReferenceGroup"/> 

</complexType> 

<element name="Envelope" type="gml:EnvelopeType" substitutionGroup="gml:AbstractObject"/> 

gml:Envelope要素は,JIS X 7107のGM̲Envelope型(D.2.3.4及びJIS X 7107:2005の6.4.3参照)を実装

する。 

包被(envelop)は,任意の次元の正対する隅を定義する位置の対を用いて範囲を定義する。一つ目の直

接位置は“下端属性”(各次元に対して包被内の全ての点における座標値の最小値で構成される座標位置)

とし,二つ目の直接位置は“上端属性”(各次元に対して包被内の全ての点における座標値の最大値で構成

される座標位置)とする。 

包被におけるcoordinatesプロパティ及びposプロパティは,非推奨である。これに代えて,明示的な名

前をもつlowerCornerプロパティ及びupperCornerプロパティを用いなければならない。 

注記1 次元にかかわらず,包被は,規定の規則を全ての点に適用することで得られる二つの直接位

置(座標点)で曖昧なく表現できる。包被は,しばしば最小境界直方体又は最小長方形とし

て参照される。しかし,参照するCRSが測地的CRSであったり,だ(楕)円体,球体,極,

円筒座標系(これらの用語の規定については12.4参照)を用いていたりする場合,この包被

は,常に最小の四辺形の包含領域を指定するわけではない。特に,この包被は,角度による

座標軸で不連続な値における点の集合となるような幾何要素に対する最小の四辺形の包含領

域を指定しない。このような軸には,だ(楕)円体及び球の座標系の緯度及び経度がある。

この幾何は,だ(楕)円体又は球体の表面の小さな範囲に収まっている場合も,だ(楕)円

体又は球面の全体の周囲に広がっている場合もある。 

注記2 この規格では,JIS X 7107で示された包被の規定を使用するが,将来,上記の問題が解決さ

れたときには,それに応じた改正を行う予定である。  

10.2 抽象幾何プリミティブ 

10.2.1 AbstractGeometricPrimitiveType及びAbstractGeometricPrimitive 

<complexType name="AbstractGeometricPrimitiveType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGeometryType" /> 

</complexContent> 

</complexType> 

<element name="AbstractGeometricPrimitive" type="gml:AbstractGeometricPrimitiveType" abstract="true" 
substitutionGroup="gml:AbstractGeometry" /> 

gml:AbstractGeometricPrimitiveType型は,幾何プリミティブの抽象基底型とする。幾何プリミティブ

(Geometric Primitive)は,システム内の他のプリミティブにそれ以上分割されることのない幾何オブジェ

クトとする。全てのプリミティブは,その座標の列で示す向きをもつ。 

gml:AbstractGeometricPrimitive要素は,全ての(既定及び使用者定義の)幾何プリミティブの代替グルー

プの抽象代表とする。 

gml:AbstractGeometricPrimitive要素は,JIS X 7107のGM̲Primitive型(D.2.3.3及びJIS X 7107:2005の

6.3.10参照)を実装する。 

62 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

10.2.2 GeometricPrimitivePropertyType 

<complexType name="GeometricPrimitivePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractGeometricPrimitive"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

値の定義域として幾何プリミティブをもつプロパティは,その型の要素内に格納された適切な幾何要素

であっても,遠隔幾何要素(ここでいう遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink

参照であってもよい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりい

ずれも指定しなかったりしてはならない。 

10.3 幾何プリミティブ(零次元) 

10.3.1 PointType及びPoint 

<complexType name="PointType"> 

<complexContent> 

<extension base="gml:AbstractGeometricPrimitiveType"> 

<sequence> 

<choice> 

<element ref="gml:pos" /> 

<element ref="gml:coordinates"/> 

</choice> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="Point" type="gml:PointType" substitutionGroup="gml:AbstractGeometricPrimitive" /> 

gml:Point要素は座標を定義する。点(point)の直接位置は,gml:DirectPositionType型をもつgml:pos要

素で指定する。 

gml:Point要素は,JIS X 7107のGM̲Point型(D.2.3.3及びJIS X 7107:2005の6.3.11参照)を実装する。 

coordinates要素の使用は,推奨しない。代わりにposを用いなければならない。 

10.3.2 PointPropertyType及びpointProperty 

<complexType name="PointPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Point"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
 
<element name="pointProperty" type="gml:PointPropertyType" /> 

値の定義域として点をもつプロパティは,その型の要素内に格納された適切な幾何要素であっても,遠

隔幾何要素(この場合の遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であっ

てもよい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定

63 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

しなかったりしてはならない。 

このプロパティ要素は,点をXLink属性を通じて参照することも,点要素を含むこともある。pointProperty

要素は,GML地物がgml:Point要素で代替可能な値をもつプロパティをもつようなGML応用スキーマで

使用できる既定のプロパティとする。 

10.3.3 PointArrayPropertyType及びpointArrayProperty 

<complexType name="PointArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:Point" /> 

</sequence> 
 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

<element name="pointArrayProperty" type="gml:PointArrayPropertyType" /> 

gml:PointArrayPropertyType型は,点の配列のコンテナとする。その要素は,常に配列プロパティの要素

内に直接含まれる。これらの幾何要素又は幾何要素の配列に対して,XLinkを通じて参照してはならない。 

このプロパティ要素は,点要素のリストを含む。pointArrayProperty要素は,GML地物が点のリストで

置き換え可能な値のプロパティをもつようなGML応用スキーマで使用できる既定のプロパティとする。 

10.4 幾何プリミティブ(一次元) 

10.4.1 AbstractCurveType及びAbstractCurve 

<complexType name="AbstractCurveType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGeometricPrimitiveType"/> 

</complexContent> 

</complexType> 

<element name="AbstractCurve" type="gml:AbstractCurveType" abstract="true" 
substitutionGroup="gml:AbstractGeometricPrimitive"/> 

gml:AbstractCurveType型は,異なる水準の複雑性をもつ曲線(curve)をサポートする,曲線の抽象型で

ある。曲線は,常に幾何プリミティブとみなせる,つまり連続している。 

gml:AbstractCurve要素は,全ての(連続した)曲線要素に対する代替グループの抽象の代表である。 

10.4.2 CurvePropertyType及びcurveProperty 

<complexType name="CurvePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractCurve"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gmlOwnershipAttributeGroup"/> 

</complexType> 

<element name="curveProperty" type="gml:CurvePropertyType"/> 

64 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

値の定義域として曲線をもつプロパティは,その型の要素内に格納された適切な幾何要素であっても,

遠隔幾何要素(この場合の遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であ

ってもよい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指

定しなかったりしてはならない。 

このプロパティ要素は,曲線をXLink属性を通じて参照することも,曲線要素を含むこともある。

curvePropertyは,GML地物がgml:AbstractCurveで代替可能な値をもつプロパティをもつようなGML応用

スキーマで使用できる既定のプロパティとする。 

10.4.3 CurveArrayPropertyType及びcurveArrayProperty 

<complexType name="CurveArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractCurve"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

<complexType> 

<element name="curveArrayProperty" type="gml:CurveArrayPropertyType"/> 

これは,曲線の配列のコンテナである。要素は,常に配列プロパティの要素内に含まれている。参照し

ている幾何要素,又はXLinkを通じた幾何要素の配列は,使用できない。このプロパティ要素は,曲線要

素の列を含む。curveArrayPropertyは,GML地物が曲線のリストに代替される値とともにプロパティをも

つときは,常にGML応用スキーマによって使用できるプロパティをあらかじめ定義する。 

10.4.4 LineStringType及びLineString 

<complexType name="LineStringType"> 

<complexContent> 

<extension base="gml:AbstractCurveType"> 

<sequence> 

<choice> 

<choise minOccurs="2" maxOccurs="unbounded"> 

<element ref="gml:pos"/> 

<element ref="gml:pointProperty"/> 
<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

 
 

<element name="LineString" type="gml:LineStringType" 
substitutionGroup="gml:AbstractCurve"/> 

gml:LineString要素(折れ線)は,線形内挿法を用いる単一の曲線分で構成される特別な曲線とする(D.3.5

参照)。これは,線形内挿する2点以上の座標で定義する。 

65 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

制御点の符号化については,10.1.4.4にそのパターンを示す。リストにおける直接位置の数は,少なくと

も二つでなければならない。 

注記 JIS X 7107のGM̲LineStringは,gml:LineStringSegmentで実装する。 

10.4.5 CurveType及びCurve 

<complexType name="CurveType"> 

<complexContent> 

<extension base="gml:AbstractCurveType"> 

<sequence> 

<element ref="gml:segments"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="Curve" type="gml:CurveType" substitutionGroup="gml:AbstractCurve"/> 

gml:Curve要素は,JIS X 7107のGM̲Curve(D.2.3.3及びJIS X 7107:2005の6.3.16参照)を実装する。 

曲線は,一次元のプリミティブである。曲線は連続で,連結し,座標系に関して計測可能な長さをもつ。 

曲線は,一つ以上の曲線分からなる。曲線内の各々の曲線分は,異なる内挿法を用いて定義してもよい。

曲線分はリストの中で,最後の曲線分を除いて,各曲線分の終点と次の曲線分の始点とが互いに連結して

いる。 

曲線の向きは正とする。 

gml:segments要素は,曲線の曲線分を格納する。 

10.4.6 OrientableCurveType,OrientableCurve及びbaseCurve 

<complexType name="OrientableCurveType"> 

<complexContent> 

<extension base="gml:AbstractCurveType"> 

<sequence> 

<element ref="gml:baseCurve"/> 

</sequence> 
<attribute name="orientation" type="gml:SignType" default="+"/> 

</extension> 

</complexContent> 

<complexType> 

<element name="baseCurve" type="gml:CurvePropertyType"/> 

<element name="OrientableCurve" type="gml:OrientableCurveType" 
substitutionGroup="gml:AbstractCurve"/> 

gml:OrientableCurve要素は,JIS X 7107のGM̲OrientableCurve(D.2.3.3及びJIS X 7107:2005の6.3.14参

照)を実装する。 

gml:OrientableCurve要素は,曲線及び方向で構成する。方向が“+”の場合,gml:OrientableCurve要素は,

gml:baseCurve要素と同一となる。方向が“-”の場合,gml:OrientableCurve要素は,曲線をたどる方向が逆

になることを示すパラメタ付けを伴う別のgmlAbstractCurve要素に関連付ける。 

66 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:baseCurve要素のプロパティは,基となる曲線を参照するか,又は含んでいる。すなわち,XLink属

性を通じて基となる曲線を参照するか,曲線要素を含む。曲線要素は,gml:AbstractCurveに代替するいず

れかの要素とする。基となる曲線は,正の方向をもつ。 

注記 この定義は,入れ子構造を許す。すなわち,gml:OrientableCurve要素は,基本曲線として別の

gml:OrientableCurve要素を用いてもよい。 

10.4.7 Curve segments 

10.4.7.1 AbstractCurveSegmentType及びAbstractCurveSegment 

<complexType name="AbstractCurveSegmentType" abstract="true"> 

<attribute name="numDerivativesAtStart" type="integer" default="0"/> 
<attribute name="numDerivativesAtEnd" type="integer" default="0"/> 
<attribute name="numDerivativeInterior" type="integer" default="0"/> 

</complexType> 
 
<element name="AbstractCurveSegment" type="gml:AbstractCurveSegmentType" abstract="true" 
substitutionGroup="gml:AbstractObject"/> 

gml:AbstractCurveSegment要素は,JIS X 7107のGM̲CurveSegment(D.2.3.3及びJIS X 7107:2005の6.4.9

参照)を実装する。 

曲線分は,曲線と同質のセグメントを定義する。 

numDerivativesAtStart属性,numDerivativesAtEnd属性,及びnumDerivativesInterior属性は,JIS X 7107:2005

の6.4.9.3で示す連続性の型を示す。 

gml:AbstractCurveSegment要素は,全ての曲線分要素,すなわち,同じ内挿方法の連続曲線分の代替グル

ープの抽象代表とする。 

曲線分の制御点の符号化は,10.1.4.4に示すパターンに従わなければならない。 

全ての曲線分は,このセグメントに使われる曲線の内挿法を特徴づけるgml:CurveInterpolationType型と

ともにinterpolation属性をもたなければならない。この内挿法は,制御点及びこの曲線分の位置を決定す

るための制御パラメタを用いる。 

10.4.7.2 CurveSegmentArrayPropertyType及びsegments 

<complexType name="CurveSegmentArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractCurveSegment"/> 

</sequence> 

</complexType> 

gml:CurveSegmentArrayPropertyType型は,曲線分の配列のコンテナとする。 

<element name="segments" type="gml:CurveSegmentArrayPropertyType"/> 

このプロパティ要素は,曲線分のリストを含んでいる。要素の順序には意味があり,配列を処理する時

点で順序が保たれていなければならない。 

10.4.7.3 CurveInterpolationType 

<simpleType name="CurveInterpolationType"> 

<restriction base="string"> 

<enumeration value="linear"/> 
<enumeration value="geodesic"/> 
<enumeration value="circularArc3Points"/> 
<enumeration value="circularArc2PointWithBulge"/> 

67 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<enumeration value="circularArcCenterPointWithRadius"/> 
<enumeration value="elliptical"/> 
<enumeration value="clothoid"/> 
<enumeration value="conic"/> 
<enumeration value="polynomialSpline"/> 
<enumeration value="cubicSpline"/> 
<enumeration value="rationalSpline"/> 

</restriction> 

</simpleType> 

gml:CurveInterpolationType型は,応用スキーマで明記する内挿法を識別するために用いるべき符号リス

トとする。 

この型は,JIS X 7107のGM̲CurveInterpolation(D.2.3.4及びJIS X 7107:2005の6.4.8参照)を実装する。 

10.4.7.4 LineStringSegmentType及びLineStringSegment 

<complexType name="LineStringSegmentType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<choice> 

<choice minOccurs="2" maxOccurs="unbounded"> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 

</sequence> 
<attribute name="interpolation" type="gml:CurveInterpolationType" fixed="linear"/> 

</extension> 

</complexContent>. 

</complexType> 
 
<element name="LineStringSegment" type="gml:LineStringSegmentType" 
substitutionGroup="gml:AbstractCurveSegment"/> 

gml:LineStringSegment要素は,JIS X 7107のGM̲LineString(D.2.3.4及びJIS X 7107:2005の6.4.10参照)

を実装する。 

gml:LineStringSegment要素は,始点と終点とを含む2点以上の制御点,及びそれらの間の線形内挿

(interpolation)で定義する曲線分とする。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.5 ArcStringType及びArcString 

<complexType name="ArcStringType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<choice> 

<choice minOccurs="3" maxOccurs="unbounded"> 

68 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 

</sequence> 
<attribute name="interpolation" type="gml:CurveInterpolationType" fixed="circularArc3Points"/> 
<attribute name="numArc" type="integer"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="ArcString" type="gml:ArcStringType" substitutionGroup="gmlAbstractCurveSegment"/> 

gml:ArcString要素は,JIS X 7107のGM̲ArcString(D.2.3.4及びJIS X 7107:2005の6.4.14参照)を実装

する。 

gml:ArcString要素は,3点弧(“circularArc3Points”)を用いた曲線分とする。 

弧列(arcstring)の中の弧の数は,numArc属性で明示的に指定できる。弧列の制御点の数は,2×numArc+1

でなければならない。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.6 ArcType及びArc 

<complexType name="ArcType"> 

<complexContent> 

<restriction base="gml:ArcStringType"> 

<sequence> 

<choice> 

<choice minOccurs="3" maxOccurs="3"> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 

</sequence> 
<attribute name="numArc" type="integer" fixed="1"/> 

</restriction> 

</complexContent> 

</complexType> 

<element name="Arc" type="gml:ArcType" substitutionGroup="gml:ArcString"/> 

gml:Arc要素は,JIS X 7107のGM̲Arc(D.2.3.4及びJIS X 7107:2005の6.4.15参照)を実装する。 

弧(arc)は,一つの弧単位からなる弧,すなわち,始点と終点とを含む三つの制御点からなる。つまり,

弧は,“1”に固定されたnumArc属性の単一の弧で構成される弧列とする。 

10.4.7.7 CircleType及びCircle 

69 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="CircleType"> 

<complexContent> 

<extension base="gml:ArcType"/> 

</complexContent> 

</complexType> 

<element name="Circle" type="gml:CircleType" substitutionGroup="gml:Arc"/> 

gml:Circle要素は,JIS X 7107のGM̲Circle(D.2.3.4及びJIS X 7107:2005の6.4.16参照)を実装する。 

円(circle)は,単純な閉じた輪に形状が一致するように結んだ弧とする。三つの制御点は,厳密に円を

定義するためには,同一直線上にあってはならない。円は,弧の一番目の制御点に一致するまで三番目の

制御点から単純に軌跡を延長する。 

10.4.7.8 ArcStringByBulgeType及びArcStringByBulge 

<complexType name="ArcStringByBulgeType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<choice> 

<choice minOccurs="2" maxOccurs="unbounded"> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 
<element name="bulge" type="double" maxOccurs="unbounded"/> 
<element name="normal" type="gml:VectorType" maxOccurs="unbounded"> 

</sequence> 
<attribute name="interpolation" type="gml:CurveInterpolationType" 

fixed="circularArc2PointWithBulge"/> 

<attribute name="numArc" type="integer"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="ArcStringByBulge" type="gml:ArcStringByBulgeType" 
substitutionGroup="gml:AbstractCurveSegment"/> 

gml:ArcStringByBulge要素は,JIS X 7107のGM̲ArcStringByBulge(D.2.3.4及びJIS X 7107:2005の6.4.17

参照)を実装する。 

この種の弧では,直接座標を格納する代わりに,弧の中間点を計算する。制御点の列は,各々の弧の始

点と終点とにgml:bulge要素(JIS X 7107:2005の6.4.17.2参照)を加えて構成される。gml:normal要素は,

弧の弦に対する法線ベクトルとする(JIS X 7107:2005の6.4.17.4参照)。 

interpolation属性は,“cicularArc2PointWithBulge”で決定される。 

弧列の弧の数は,numArc属性に明示的に指定できる。弧列の制御点の数は,numArc+1でなければなら

ない。 

70 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.9 ArcByBulgeType及びArcByBulge 

<complexType name="ArcByBulgeType"> 

<complexContent> 

<restriction base="gml:ArcStringByBulgeType"> 

<sequence> 

<choice> 

<choice minOccurs="2" maxOccurs="2"> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 
<element name="bulge" type="double"/> 
<element name="normal" type="gml:VectorType"/> 

</sequence> 
<attribute name="numArc" type="integer" fixed="1"/> 

</restriction> 

</complexContent> 

</complexType> 

<element name="ArcByBulge" type="gml:ArcByBulgeType" substitutionGroup="gml:ArcStringByBulge"/> 

gml:ArcByBulge要素は,JIS X 7107のGM̲ArcByBulge(D.2.3.4及びJIS X 7107:2005の6.4.18参照)を

実装する。 

ArcByBulge要素は,二つの制御点,一つの膨らみ及び一つの法線ベクトルをもつ一つの弧単位からなる

弧列とする。 

弧は,単一の弧で構成される弧列であるため,numArc属性は,“1”で固定される。 

10.4.7.10 ArcByCenterPointType及びArcByCenterPoint 

<complexType name="ArcByCenterPointType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<choice> 

<choice> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 
<element name="radius" type="gml:LengthType"/> 
<element name="startAngle" type="gml:AngleType" minOccurs="0"/> 
<element name="endAngle" type="gml:AngleType" minOccurs="0"/> 

71 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 
<attribute name="interpolation" type="gml:CurveInterpolationType" 

fixed="circularArcCenterPointWithPadius"/> 

<attribute name="numArc" type="integer" use="required" fixed="1"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="ArcByCenterPoint" type="gml:ArcByCenterPointType" 
substitutionGroup="gml:AbstractCurveSegment"/> 

この種の弧では,直接座標を格納する代わりに,弧上の点が必ず計算で求められることが要求される。

唯一の制御点は弧の中心点であり,半径,始点及び終点の方向角が必要である。この表現は,二次元でだ

け用いられる。 

gml:radius要素は,弧の半径を示す。 

gml:startAngle要素は,弧の始点方向角を示す。 

gml:endAngle要素は,弧の終点方向角を示す。 

interpolation属性は,“circularArcCenterPointWithRadius”で決定される。 

この型は,常に単一の弧を表現するので,numArc属性は“1”で固定とする。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.11 CircleByCenterPointType及びCircleByCenterPoint 

<complexType name="CircleByCenterPointType"> 

<complexContent> 

<restriction base="gml:ArcByCenterPointType"> 

<sequence> 

<choice> 

<choice> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 
<element name="radius" type="gml:LengthType"/> 

</sequence> 

</restriction> 

</complexContent> 

</complexType> 

<element name="CircleByCenterPoint" type="gml:CircleByCenterPointType" 
substitutionGroup="gml:ArcByCenterPoint"/> 

gml:CircleByCenterPoint要素は,始点と終点との角度が同一な完全な円の形状をもつ

gml:ArcByCenterPoint要素である。また,この表現は,二次元でだけ用いることができる。 

10.4.7.12 CubicSplineType及びCubicSpline 

<complexType name="CubicSplineType"> 

72 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexContent> 

 <extension base="gml:AbstractCurveSegmentType"> 
  <sequence> 
   <choise> 
    <choice minOccurs="2" maxOccurs="unbounded"> 
     <element ref="gml:pos"/> 
     <element ref="gml:pointProperty"/> 

     <element ref="gml:pointRep"/> 

    </choice> 
    <element ref="gml:posList"/> 

    <element ref="gml:coordinates"/> 

   </choice> 
   <element name="vectorAtStart" type="gml:VectorType"/> 
   <element name="vectorAtEnd" type="gml:VectorType"/> 
  </sequence> 
  <attribute name="interpolation" type="gml:CurveInterpolationType" fixed="cubicSpline"/> 
  <attribute name="degree" type="integer" fixed="3"/> 
 </extension> 

</complexContent> 

</complexType> 

<element name="CubicSpline" type="gml:CubicSplineType" 
substitutionGroup="gml:AbstractCurveSegment"/> 

gml:CubicSpline要素は,JIS X 7107のGM̲CubicSpline(D.2.3.4及びJIS X 7107:2005の6.4.28参照)を

実装する。 

制御点の数は,最低3点でなければならない。 

gml:vectorAtStartは,スプライン始点の単位接線ベクトルである。gml:vectorAtEnd要素は,スプライン

終点の単位接線ベクトルである。三次スプラインの形状を決定するためには,ベクトルの方向だけを使用

しなければならず,その長さは使用しない。 

interpolationは,“cubicSpline”で固定とする。 

degreeは,このスプラインの内挿に用いる多項式の次数でなければならない。したがって,三次スプラ

インの次数は“3”で固定とする。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.13 BSplineType及びBSpline 

<complexType name="BSplineType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<choice> 

<choice minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

73 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</choice> 
<element name="degree" type="nonNegativeInteger"/> 
<element name="knot" type="gml:KnotPropertyType" minOccurs="2" maxOccurs="unbounded"/> 

</sequence> 
<attribute name="interpolation" type="gml:CurveInterpolationType" default="polynomialSpline"/> 
<attribute name="isPolynomial" type="boolean"/> 
<attribute name="knotType" type="gml:KnotTypesType"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="BSpline" type="gml:BSplineType" substitutionGroup="gml:AbstractCurveSegment"/> 

gml:BSplineは,JIS X 7107のGM̲BSplineCurve(D.2.3.4及びJIS X 7107:2005の6.4.30参照)を実装す

る。 

Bスプライン(B-Spline)は,区分パラメタ付き多項式,又はJIS X 7107:2005の6.4.30の規定による制

御点及び基底関数に関して記述された有理曲線とする。したがって,interpolation属性は,内挿の方法によ

って,“polynomialSpline”(多項式スプライン)又は“rationalSpline”(有理スプライン)のいずれかになる。

既定値は,“polynomialSpline”とする。 

degreeは,このスプラインの内挿に用いる多項式の次数でなければならない。 

gml:knotは,スプラインの基底関数を決定するために用いる別々のノットの並びでなければならない

(JIS X 7107:2005の6.4.26.2参照)。 

isPolynomial属性は,多項式スプラインの場合,“true”がセットされなければならない(JIS X 7107:2005

の6.4.30.5参照)。 

knotType属性は,このスプラインを決定するときに用いるノットの配置の型を示さなければならない

(JIS X 7107:2005の6.4.30.4参照)。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.14 KnotType及びKnotPropertyType 

<complexType name="KnotType"> 

<sequence> 

<element name="value" type="double"/> 
<element name="multiplicity" type="nonNegativeInteger"/> 
<element name="weight" type="double"/> 

</sequence> 

</complexType> 

gml:knot要素は,JIS X 7107のGM̲Knot(D.2.3.4及びJIS X 7107:2005の6.4.24参照)を実装する。 

ノット(knot)は,区分的なスプライン曲線のブレークポイントとする。 

gml:value要素は,スプラインのノットにおけるパラメタの値とする(JIS X 7107:2005の6.4.24.2参照)。 

gml:multiplicity要素は,(同じ加重をもつ)スプラインの決定に用いられるノットの多重度とする。 

gml:weight要素は,スプラインのノットに用いられる平均加重の値とする。 

<complexType name="KnotPropertyType"> 

<sequence> 

<element name="Knot" type="gml:KnotType"/> 

</sequence> 

74 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

gml:KnotPropertyType型は,ノットを幾何型に用いるためにノットをカプセル化する型とする。 

10.4.7.15 KnotTypesType 

<simpleType name="KnotTypesType"> 

<restriction base="string"> 

<enumeration value="uniform"/> 
<enumeration value="quasiUniform"/> 
<enumeration value="piecewiseBezier"/> 

</restriction> 

</simpleType> 

gml:KnotTypesType型は,JIS X 7107のGM̲KnotType(D.2.3.4及びJIS X 7107:2005の6.4.25参照)を実

装する。 

この列挙型は,ノットの型の値を規定する(JIS X 7107:2005の6.4.25参照)。 

10.4.7.16 BezierType及びBezier 

<complexType name="BezierType"> 

<complexContent> 

<restriction base="gml:BSplineType"> 

<sequence> 

<choice> 

<choice minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList"/> 

<element ref="gml:coordinates"/> 

</choice> 
<element name="degree" type="nonNegativeInteger"/> 
<element name="knot" type="gml:KnotPropertyType" minOccurs="2" maxOccurs="2"/> 

</sequence> 
<attribute name="interpolation" type="gml:CurveInterpolationType" fixed="polynomialSpline"/> 
<attribute name="isPolynomial" type="boolean" fixed="true"/> 
<attribute name="knotType" type="gml:KnotTypesType"  use="prohibited"/> 

</restriction> 

</complexContent> 

</complexType> 

<element name="Bezier" type="gml:BezierType" substitutionGroup="gml:BSpline"/> 

gml:Bezier要素は,JIS X 7107のGM̲Bezier(D.2.3.4及びJIS X 7107:2005の6.4.31参照)を実装する。 

ベジエ(Bezier)曲線は,内挿を目的とするベジエ多項式又はベルンシュタイン多項式を用いた多項式

スプラインとする。これは,二つのノットをもつBスプラインの特殊なケースとする。 

gml:degreeは,このスプラインの内挿に用いる多項式の次数でなければならない。 

gml:knotは,スプラインの基底関数を決定するために用いる別々のノットの並びでなければならない。 

interpolationは,“polynomialSpline”で固定とする。 

isPolynomialは,“true”で固定とする。 

75 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

knotTypeは,ベジエ曲線分とは異なる。 

10.4.7.17 OffsetCurveType及びOffsetCurve 
<complexType name="OffsetCurveType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<element name="offsetBase" type="gml:CurvePropertyType"/> 
<element name="distance" type="gml:LengthType"/> 
<element name="refDirection" type="gml:VectorType" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="OffsetCurve" type="gml:OffsetCurveType" substitutionGroup="gml:AbstractCurveSegment"/> 

変位曲線(offset curve)は,基となる曲線から一定の距離をもつ曲線とする。 

gml:OffsetCurve要素は,JIS X 7107のGM̲OffsetCurve(D.2.3.4及びJIS X 7107:2005の6.4.23参照)を

実装する。 

gml:offsetBase要素は,変位曲線としてこの曲線を定義するための,基となる曲線とする。gml:distance

要素及びgml:refDirectionは,JIS X 7107:2005の6.4.23の規定と同じ意味とする。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.18 AffinePlacementType及びAffinePlacement 

<complexType name="AffinePlacementType"> 

<sequence> 

<element name="location" type="gml:DirectPositionType"/> 

<element name="refDirection" type="gml:VectorType" maxOccurs="unbounded"/> 
<element name="inDimension" type="positiveInteger"/> 
<element name="outDimension" type="positiveInteger"/> 

</sequence> 

</complexType> 

<element name="AffinePlacement" type="gml:AffinePlacementType" 
substitutionGroup="gml:AbstractObject"/> 

gml:AffinPlacement要素は,JIS X 7107のGM̲AffinePlacement(D.2.3.4並びにJIS X 7107:2005の6.4.21

及び6.4.20.1参照)を実装する。gml:location要素,gml:refDirection要素,gml:inDimension要素及び

gml:outDimension要素は,JIS X 7107:2005の6.4.21の規定と同じ意味とする。 

10.4.7.19 ClothoidType及びClothoid 

<complexType name="ClothoidType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<element name="refLocation"> 

<complexType> 

<sequence> 

<element ref="gml:AffinePlacement"/> 

76 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</complexType> 

</element> 
<element name="scaleFactor" type="decimal"/> 
<element name="startParameter" type="double"/> 
<element name="endParameter" type="double"/> 

</sequence> 
<attribute name="interpolation" type="gml:CurveInterpolationType" fixed="clothoid"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="Clothoid" type="gml:ClothoidType" substitutionGroup="gml:AbstractCurveSegment"/> 

クロソイド(clothoid)又はコルニュのらせんは,曲率が,曲線の長さに対して固定関数となる平面曲線

とする。 

gml:Clothoid要素は,JIS X 7107のGM̲Clothoid(D.2.3.4及びJIS X 7107:2005の6.4.22参照)を実装す

る。gml:refLocation要素,gml:startParameter要素,gml:endParameter要素及びgml:scaleFactor要素は,JIS X 

7107:2005の6.4.22の規定と同じ意味とする。 

interpolation属性は,“clothoid”で固定とする。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.20 GeodesicStringType及びGeodesicString 

<complexType name="GeodesicStringType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<choice> 

<element ref="gml:posList"/> 
<group ref="gml:geometricPositionGroup" minOccurs="2" maxOccurs="unbounded"/> 

</choice> 
<attribute name="interpolation" type="gml:CurveInterpolationType" fixed="geodesic"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="GeodesicString" type="gml:GeodesicStringType" 
substitutionGroup="gml:AbstractCurveSegment"/> 

gml:GeodesicString要素は,測地線分の列である,JIS X 7107のGM̲GeodesicString(D.2.3.4及びJIS X 

7107:2005の6.4.12参照)を実装する。 

制御点の数は,最低2点なければならない。 

interpolation属性は,“geodesic”で固定とする。 

その内容モデルは,曲線分の符号化の一般的なパターンに従う(10.4.7参照)。 

10.4.7.21  GeodesicType及びGeodesic 

<complexType name="GeodesicType"> 

<complexContent> 

<extension base="gml:GeodesicStringType"/> 

</complexContent> 

77 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 
 
<element name="Geodesic" type="gml:GeodesicType" substitutionGroup="gml:GeodesicString"/> 

gml:Geodesic要素は,JIS X 7107のGM̲Geodesic(D.2.3.4及びJIS X 7107:2005の6.4.13参照)を実装す

る。 

10.5 幾何プリミティブ(二次元) 

10.5.1 AbstractSurfaceType及びAbstractSurface 

<complexType name="AbstractSurfaceType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGeometricPrimitiveType"/> 

</complexContent> 

</complexType> 

<element name="AbstractSurface" type="gml:AbstractSurfaceType" abstract="true" 
substitutionGroup="gml:AbstractGeometricPrimitive" /> 

gml:AbstractSurfaceTypeは,様々な,異なる水準の複雑性をもつ曲面をサポートする,曲面の抽象概念

とする。 

曲面は常に,連続な平面の領域とする。 

gml:AbstractSurface要素は,全ての(連続な)曲面要素のための代替グループの抽象代表とする。 

10.5.2 SurfacePropertyType及びsurfaceProperty 

<complexType name="SurfacePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractSurface"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
 
<element name="surfaceProperty" type="gml:SurfacePropertyType" /> 

値の定義域として曲面をもつプロパティは,その型の要素内に格納される適切な幾何要素であっても,

遠隔幾何要素(この遠隔には,同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であって

もよい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定し

なかったりしてはならない。 

このプロパティ要素は,曲面をXLink属性を通じて参照することも,曲面要素を含むこともある。

surfacePropertyは,GML地物がgml:AbstractSurfaceで代替可能な値をもつプロパティをもつようなGML

応用スキーマで使用できる既定義のプロパティとする。 

10.5.3 SurfaceArrayPropertyType及びsurfaceArrayProperty 

<complexType name="SurfaceArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractSurface" /> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:SurfaceArrayPropertyTypeは,曲面の配列のためのコンテナとする。 

78 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

要素は,常に配列のプロパティに含まれており,XLinkを通して幾何要素又は幾何要素の配列を参照で

きない。 

<element name="surfaceArrayProperty" type="gml:SurfaceArrayPropertyType" /> 

このプロパティ要素は,曲面要素のリストを含む。surfaceArrayPropertyは,GML地物が抽象曲面のリス

トに代替可能な値をもつプロパティをもつときは常に,GML応用スキーマが用いることができる,既定義

のプロパティである。 

10.5.4 PolygonType及びPolygon 

<complexType name="PolygonType"> 

<complexContent> 

<extension base="gml:AbstractSurfaceType"> 

<sequence> 

<element ref="gml:exterior" minOccurs="0" /> 
<element ref="gml:interior" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="Polygon" type="gml:PolygonType" substitutionGroup="gml:AbstractSurface"/> 

gml:Polygonは,一つの曲面分によって定義する特別な曲面とする(D.3.6参照)。この曲面分の境界は,

同一平面上にあり,ポリゴンはその内部に平面内挿法を使用する。 

注記 JIS X 7107のGM̲Polygonは,gml:PolygonPatchによって実装される。 

要素gml:exterior及びgml:interiorは,ポリゴンの曲面の境界を記述し,次で示される。 

10.5.5 exterior及びinterior 

<element name="exterior" type="gml:AbstractRingPropertyType"/> 

曲面の境界は,複数の輪からなる。二次元の場合は通常,これらの輪のうちの一つは外部境界(exterior)

として識別される。一般的な多様体では,これは必ずしも可能だとは限らない。その場合には,全ての境

界は内部境界(interior)として示さなければならず,外部は空となる。 

<element name="interior" type="gml:AbstractRingPropertyType"/> 

曲面の境界は,複数の輪からなる。“interior”輪は,輪によって囲まれた領域から曲面及び曲面分を分離

する。 

10.5.6 AbstractRingType及びAbstractRing 

<complexType name="AbstractRingType" abstract="true"> 

<sequence/> 

</complexType> 

<element name="AbstractRing" type="gml:AbstractRingType" abstract="true" 
substitutionGroup="gml:AbstractObject"/> 

gml:AbstractRingTypeは,異なる複雑さの曲面境界をサポートする輪(ring)の抽象概念とする。 

gml:AbstractRing要素は,曲面分の全ての閉じた境界のための代替グループの抽象代表とする。 

10.5.7 AbstractRingPropertyType 

<complexType name="AbstractRingPropertyType"> 

<sequence> 

79 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:AbstractRing"/> 

</sequence> 

</complexType> 

gml:AbstractRingPropertyTypeの内容モデルをもつプロパティは,曲面の曲面境界プロパティを表すため

に輪をカプセル化する。 

10.5.8 LinearRingType及びLinearRing 

<complexType name="LinearRingType"> 

<complexContent> 

<extension base="gml:AbstractRingType"> 

<sequence> 

<choice> 

<choice minOccurs="4" maxOccurs="unbounded"> 

<element ref="gml:pos"/> 
<element ref="gml:pointProperty"/> 

<element ref="gml:pointRep"/> 

</choice> 
<element ref="gml:posList" /> 

<element ref="gml:coordinates" /> 

</choice> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="LinearRing" type="gml:LinearRingType" substitutionGroup="gml:AbstractRing"/> 

gml:LinearRingは,4点以上の座標及びそれらの間の線形内挿によって定義する。最初の座標及び最後の

座標は,一致しなければならない。 

制御点の符号化は,10.1.4.4に記載されたパターンに従う。リスト中の直接の位置の数は,最低4でなけ

ればならない。 

10.5.9 LinearRingPropertyType 

<complexType name="LinearRingPropertyType"> 

<sequence> 

<element ref="gml:LinearRing"/> 

</sequence> 

</complexType> 

gml:LinearRingPropertyTypeの内容モデルをもつプロパティは,曲面の境界の構成要素を表すために点間

を線形内挿する輪をカプセル化する。 

10.5.10 SurfaceType及びSurface 

<complexType name="SurfaceType"> 

<complexContent> 

<extension base="gml:AbstractSurfaceType"> 

<sequence> 

<element ref="gml:patches"/> 

</sequence> 

</extension> 

</complexContent> 

80 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 
 
<element name="Surface" type="gml:SurfaceType" substitutionGroup="gml:AbstractSurface"/> 

曲面は二次元プリミティブで,JIS X 7107:2005の6.3.17.1で示されるように一つ以上の曲面分からなる。

曲面分は互いに接続される。 

gml:Surfaceは,JIS X 7107のGM̲Surfaceを実装する(D.2.3.4及びJIS X 7107:2005の6.3.17参照)。 

gml:patchesは,曲面の曲面分をカプセル化する。 

10.5.11 OrientableSurfaceType,OrientableSurface及びbaseSurface 

<complexType name="OrientableSurfaceType"> 

<complexContent> 

<extension base="gml:AbstractSurfaceType"> 

<sequence> 

<element ref="gml:baseSurface"/> 

</sequence> 
<attribute name="orientation" type="gml:SignType" default="+"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="baseSurface" type="gml:SurfacePropertyType"/> 
 
<element name="OrientableSurface" type="gml:OrientableSurfaceType" 
substitutionGroup="gml:AbstractSurface"/> 

gml:OrientableSurfaceは,JIS X 7107のGM̲OrientableSurfaceを実装する(D.2.3.4及びJIS X 7107:2005

の6.3.15参照)。 

gml:OrientableSurfaceは,曲面及び向きで構成される。向きが“+”である場合,gml:OrientableSurfaceは

gml:baseSurfaceと同一とする。向きが“-”である場合,gml:OrientableSurfaceは,gml:OrientableSurfaceの

曲面の表面の向きを逆にした法線をもつgml:AbstractSurfaceへの参照とする。 

gml:baseSurfaceプロパティは,基となる曲面を参照する,又は含む。gml:baseSurfaceプロパティは,XLink

属性を通じて基となる曲面を参照する,又は曲面の要素を含む。 

曲面の要素は,gml:AbstractSurfaceに対応する代替可能な任意の要素である。基となる曲面は,正の向

きとする。 

注記 この定義は,入れ子の構造を許している,つまり,gml:OrientableSurfaceは,その基となる曲面

として別のgml:OrientableSurfaceを用いてもよい。 

10.5.11.1 Ring,RingType及びcurveMember 

<complexType name="RingType"> 

<complexContent> 

<extension base="gml:AbstractRingType"> 

<sequence> 

<element ref="gml:curveMember" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

81 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 
 
<element name="Ring" type="gml:RingType" substitutionGroup="gml:AbstractRing"/> 
<element name="curveMember" type="gml:CurvePropertyType"/> 

gml:Ringは,JIS X 7107のGM̲Ringを実装する(D.2.3.4及びJIS X 7107:2005の6.3.6参照)。 

輪は,JIS X 7107:2005の6.3.6で示されているように,曲面境界における一つの連結された構成部品を

表すために使用する。 

全てのgml:curveMemberは,一つの曲線,すなわち,gml:AbstractCurveで代替可能なあらゆる要素を参

照する,又は含む。輪との関連では,曲線は曲面の境界を与える。一連の曲線は,輪体中で連続かつ連結

でなければならない。 

指定された場合は,aggregationType属性は“sequence”を値としてもたなければならない。 

注記 この定義は入れ子の構造を許している,つまり,gml:curveMemberは,曲線メンバとして順に

他のgml:CompositeCurvesで構成されるgml:CompositeCurveになることができる。 

10.5.11.2 RingPropertyType 

<complexType name="RingPropertyType"> 

<sequence> 

<element ref="gml:Ring"/> 

</sequence> 

</complexType> 

gml:RingPropertyTypeの内容モデルをもつプロパティは,曲面の境界の構成部品を表すために輪をカプセ

ル化する。 

10.5.11.3 PolyhedralSurface 

<element name="PolyhedralSurface" type="gml:SurfaceType" substitutionGroup="gml:Surface"/> 

gml:PolyhedralSurfaceは,JIS X 7107のGM̲PolyhedralSurfaceを実装する(D.2.3.4及びJIS X 7107:2005

の6.4.35参照)。 

多面体面(polyhedral surface)は,共通な境界曲線に沿って結合したポリゴン面分からなる曲面とする。 

gml:patchesは,多面体面のポリゴン面分をカプセル化する。全ての曲面分は,ポリゴン曲面分でなけれ

ばならない。 

10.5.11.4 TriangulatedSurface 

<element name="TriangulatedSurface" type="gml:SurfaceType" substitutionGroup="gml:Surface"/> 

gml:TriangulatedSurfaceは,JIS X 7107のGM̲TriangulatedSurfaceを実装する(D.2.3.4及びJIS X 7107:2005

の6.4.37参照)。 

三角網曲面(triangulated surface)は,複数の三角形だけで構成する多面体面とする。その三角網曲面の

生成方法に制限はない。 

gml:patchesは,三角網曲面の三角形をカプセル化する。全ての曲面分は,三角形曲面分でなければなら

ない。 

10.5.11.5 TinType及びTin 

<complexType name="TinType"> 

<complexContent> 

<extension base="gml:SurfaceType"> 

<sequence> 

<element name="stopLines" type="gml:LineStringSegmentArrayPropertyType" minOccurs="0" 

82 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

maxOccurs="unbounded"/> 

<element name="breakLines" type="gml:LineStringSegmentArrayPropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 

<element name="maxLength" type="gml:LengthType"/> 
<element name="controlPoint"> 

<complexType> 

<choice> 

<element ref="gml:posList"/> 
<group ref="gml:geometricPositionGroup" minOccurs="3" maxOccurs="unbounded"/> 

</choice> 

</complexType> 

</element> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="Tin" type="gml:TinType" substitutionGroup="gml:TriangulatedSurface"/> 

gml:Tinは,JIS X 7107のGM̲Tinを実装する(D.2.3.4及びJIS X 7107:2005の6.4.39参照)。 

不規則三角網(Tin)は,ドローネ・アルゴリズム又はこれに抑止線(gml:stopLines),傾斜変換線

(gml:breakLines)及び三角形の最大辺長(gml:maxLength)に対する制限を補った,同一のアルゴリズム

を使用する三角形網曲面とする。gml:controlPointには,この不規則三角網の点(不規則三角網を構成する

三角形の頂点)として用いる位置の集合(3点以上)を含まなければならない。詳細は,JIS X 7107:2005

の6.4.39を参照。 

10.5.11.6 LineStringSegmentArrayPropertyType 

<complexType name="LineStringSegmentArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:LineStringSegment" /> 

</sequence> 

</complexType> 

gml:LineStringSegmentArrayPropertyTypeは,線の列のためのコンテナを与える。 

10.5.12 Surface patches 

10.5.12.1 AbstractSurfacePatchType及びgml:AbstractSurfacePatch 

<complexType name="AbstractSurfacePatchType" abstract="true"/> 

<element name="AbstractSurfacePatch" type="gml:AbstractSurfacePatchType" abstract="true"/> 

曲面分(surface patch)は,曲面の共通の性質をもった部分を定義する。 

gml:AbstractSurfacePatchは,JIS X 7107のGM̲SurfacePatchを実装する(D.2.3.4及びJIS X 7107:2005の

6.4.34参照)。 

gml:AbstractSurfacePatch要素は,曲面の連続な部分を表現する全ての曲面分要素のための代替グループ

の抽象代表とする。 

全ての曲面分は,gml:SurfaceInterpolationType(10.5.12.3参照)を用いてその曲面分に使用する内挿法を

指定するinterpolation属性(gml:AbstractSurfacePatchTypeから派生した型で宣言する。)をもたなければな

83 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

らない。 

10.5.12.2 SurfacePatchArrayPropertyType及びpatches 

<complexType name="SurfacePatchArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractSurfacePatch" /> 

</sequence> 

</complexType> 

gml:SurfacePatchArrayPropertyTypeは,曲面分の列のためのコンテナとする。 

<element name="patches" type="gml:SurfacePatchArrayPropertyType"/> 

gml:patchesプロパティ要素は,曲面分の列を含む。要素の順序には意味があり,配列を処理するときに

は順序を保たなければならない。 

10.5.12.3 SurfaceInterpolationType 

<simpleType name="SurfaceInterpolationType"> 

<restriction base="string"> 

<enumeration value="none"/> 
<enumeration value="planar"/> 
<enumeration value="spherical"/> 
<enumeration value="elliptical"/> 
<enumeration value="conic"/> 
<enumeration value="tin"/> 
<enumeration value="parametricCurve"/> 
<enumeration value="polynomialSpline"/> 
<enumeration value="rationalSpline"/> 
<enumeration value="triangulatedSpline"/> 

</restriction> 

</simpleType> 

gml:SurfaceInterpolationTypeは,応用スキーマが指定する内挿法を識別するために使用できる符号リスト

とする。 

この型は,JIS X 7107のGM̲SurfaceInterpolationを実装する(D.2.3.4及びJIS X 7107:2005の6.4.32参照)。 

10.5.12.4 PolygonPatchType及びPolygonPatch 

<complexType name="PolygonPatchType"> 

<complexContent> 

<extension base="gml:AbstractSurfacePatchType"> 

<sequence> 

<element ref="gml:exterior" minOccurs="0"/> 
<element ref="gml:interior" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 
<attribute name="interpolation" type="gml:SurfaceInterpolationType" fixed="planar"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="PolygonPatch" type="gml:PolygonPatchType" 
substitutionGroup="gml:AbstractSurfacePatch"/> 

gml:PolygonPatchは,JIS X 7107のGM̲Polygonを実装する(D.2.3.4及びJIS X 7107:2005の6.4.36参照)。 

84 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:PolygonPatchは,境界曲線の集合で定義した曲面分で,それらの曲線に接する基本的な曲面とする。

曲線は,同一平面上になければならず,ポリゴンは,その内部に平面内挿法を使用する。 

interpolationは,“planar”で固定である。すなわち,内挿法は,単一の平面上の点を返さなければならな

い。面分の境界は,その平面に含まれていなければならない。 

10.5.12.5 TriangleType及びTriangle 

<complexType name="TriangleType"> 

<complexContent> 

<extension base="gml:AbstractSurfacePatchType"> 

<sequence> 

<element ref="gml:exterior"/> 

</sequence> 
<attribute name="interpolation" type="gml:SurfaceInterpolationType" fixed="planar"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="Triangle" type="gml:TriangleType" substitutionGroup="gml:AbstractSurfacePatch"/> 

gml:Triangleは,線形の輪でできる外部境界をもつ曲面分としての三角形を表現する。これは,内部の境

界をもたないポリゴン(下位型)だということに留意する。線形輪中の点の数は,4でなければならない。 

輪(gml:exterior要素)は,gml:LinearRingであり,また,三角形を形成しなければならず,その始点と

最終点とは一致しなければならない。 

interpolationは,“planar”に固定される。すなわち,内挿法は,単一の平面上の点を返さなければならな

い。面分の境界は,その平面に含まれていなければならない。 

10.5.12.6 RectangleType及びRectangle 

<complexType name="RectangleType"> 

<complexContent> 

<extension base="gml:AbstractSurfacePatchType"> 

<sequence> 

<element ref="gml:exterior"/> 

</sequence> 
<attribute name="interpolation" type="gml:SurfaceInterpolationType" fixed="planar"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="Rectangle" type="gml:RectangleType" substitutionGroup="gml:AbstractSurfacePatch"/> 

gml:Rectangleは,線形の輪からなる外部境界をもつ曲面分としての四角形を表現する。これは,内部境

界をもたないポリゴン(下位型)だということに留意する。線形の輪の中の点の数は,5でなければなら

ない。 

注記 四角形は,概念的にポリゴンの下位型といえるが,gml:RectangleTypeをgml:PolygonTypeから

制限によって派生させた型として定義することは,XML Schemaに定義されている制限による

構成方法では問題があるので,この場合では避けた。 

輪(gml:exterior要素)は,gml:LinearRingであり,また,四角形を形成しなければならず,その始点と

最終点とは一致しなければならない。 

85 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

interpolation は,“planar”に固定される。すなわち,内挿法は,単一の平面上の点を返さなければなら

ない。面分の境界は,その平面に含まれていなければならない。 

10.5.12.7 PointGrid 

<group name="PointGrid"> 

<sequence> 

<element name="rows"> 

<complexType> 

<sequence> 

<element name="Row" maxOccurs="unbounded"> 

<complexType> 

<group ref="gml:geometricPositionListGroup"/> 

</complexType> 

</element> 

</sequence> 

</complexType> 

</element> 

</sequence> 

</group> 

gml:PointGridは,JIS X 7107のGM̲PointGridを実装する(D.2.3.4及びJIS X 7107:2005の6.4.6参照)。 

gml:PointGridグループは,列又はグリッドを構成する点又は位置を,含むか又は参照する。全ての

gml:rowsは,同じ数の位置(列)をもたなければならない。 

10.5.12.8 AbstractParametricCurveSurfaceType及びAbstractParametricCurveSurface 

<complexType name="AbstractParametricCurveSurfaceType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractSurfacePatchType"> 

<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="AbstractParametricCurveSurface" type="gml:AbstractParametricCurveSurfaceType" 
abstract="true" substitutionGroup="gml:AbstractSurfacePatch"/> 

gml:AbstractParametricCurveSurfaceは,JIS X 7107のGM̲ParametricCurveSurfaceを実装する(D.2.3.4及

びJIS X 7107:2005の6.4.40参照)。 

この要素は,パラメタ曲線(parametric curve)に基づく曲面分のための代替グループの代表を指定する。 

全てのプロパティは,派生する下位型で指定する。派生する下位型は,全てJIS X 7107:2005の6.4.40

に示す制約に従わなければならない。 

この要素を指定する場合は,aggregationType属性は“set”を値としてもたなければならない。 

10.5.12.9 AbstractGriddedSurfaceType及びAbstractGriddedSurface 

<complexType name="AbstractGriddedSurfaceType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractParametricCurveSurfaceType"> 

<sequence> 

<group ref="gml:PointGrid"/> 

</sequence> 

86 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<attribute name="rows" type="integer"/> 
<attribute name="columns" type="integer"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="AbstractGriddedSurface" type="gml:AbstractGriddedSurfaceType" abstract="true" 
substitutionGroup="gml:AbstractParametricCurveSurface"/> 

gml:AbstractGriddedSurfaceは,JIS X 7107のGM̲GriddedSurfaceを実装する(D.2.3.4及びJIS X 7107:2005

の6.4.41参照)。この要素を指定する場合は,パラメタグリッド(grid)のrows属性に行数,column属性

に列数を与える。パラメタグリッドは,gml:PointGridグループのインスタンスによって表現する。 

この要素は,グリッドに基づく曲面分のための代替グループの代表を指定する。派生する下位型は,全

てJIS X 7107:2005の6.4.41に示す制約に従わなければならない。 

10.5.12.10 ConeType及びCone 

<complexType name="ConeType"> 

<complexContent> 

<extension base="gml:AbstractGriddedSurfaceType"> 

<attribute name="horizontalCurveType" type="gml:CurveInterpolationType" 

fixed="circularArc3Points"/> 

<attribute name="verticalCurveType" type="gml:CurveInterpolationType" fixed="linear"/> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="Cone" type="gml:ConeType" substitutionGroup="gml:AbstractGriddedSurface"/> 

gml:Coneは,JIS X 7107のGM̲Coneを実装する(D.2.3.4及びJIS X 7107:2005の6.4.42参照)。 

10.5.12.11 CylinderType及びgmlCylinder 

<complexType name="CylinderType"> 

<complexContent> 

<extension base="gml:AbstractGriddedSurfaceType"> 

<attribute name="horizontalCurveType" type="gml:CurveInterpolationType" 

fixed="circularArc3Points"/> 

<attribute name="verticalCurveType" type="gml:CurveInterpolationType" fixed="linear"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="Cylinder" type="gml:CylinderType" substitutionGroup="gml:AbstractGriddedSurface"/> 

gml:Cylinderは,JIS X 7107のGM̲Cylinderを実装する(D.2.3.4及びJIS X 7107:2005の6.4.43参照)。 

10.5.12.12 SphereType及びSphere 

<complexType name="SphereType"> 

<complexContent> 

<extension base="gml:AbstractGriddedSurfaceType"> 

<attribute name="horizontalCurveType" type="gml:CurveInterpolationType" 

fixed="circularArc3Points"/> 

<attribe name="verticalCurveType" type="gml:CurveInterpolationType" fixed="circularArc3Points"/> 

87 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</extension> 

</complexContent> 

</complexType> 

<element name="Sphere" type="gml:SphereType" substitutionGroup="gml:AbstractGriddedSurface"/> 

gml:Sphereは,JIS X 7107のGM̲Sphereを実装する(D.2.3.4及びJIS X 7107:2005の6.4.44参照)。 

10.6 幾何プリミティブ(三次元) 

10.6.1 AbstractSolidType及びAbstractSolid 

<complexType name="AbstractSolidType"> 

<complexContent> 

<extension base="gml:AbstractGeometricPrimitiveType"/> 

</complexContent> 

</complexType> 

<element name="AbstractSolid" type="gml:AbstractSolidType" abstract="true" 
substitutionGroup="gml:AbstractGeometricPrimitive" /> 

gml:AbstractSolidTypeは,異なる水準の複雑性をもつ立体(solid)をサポートする抽象概念とする。立

体は,常に幾何プリミティブとみなす,つまり,連続でなければならない。 

gml:AbstractSolid要素は,全ての(連続する)立体要素のための代替グループの抽象代表とする。 

10.6.2 SolidPropertyType及びsolidProperty 

<complexType name="SolidPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractSolid"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

値の定義域を立体とするプロパティは,その型の要素内に格納された適切な幾何要素であっても,遠隔

幾何要素(この遠隔には,同一の文書内の別の場所にある幾何要素を含む。)へのXLink参照であっても

よい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定しな

かったりしてはならない。 

<element name="solidProperty" type="gml:SolidPropertyType"/> 

このプロパティ要素は,XLink属性によって立体を参照するか,又は立体の要素を含む。gml:solidProperty

は,GML地物がgml:AbstractSolidに代替可能であるプロパティの値をもつときはいつでも,GML応用ス

キーマで使うことができる,既定義のプロパティである。 

10.6.3 SolidArrayPropertyType及びsolidArrayProperty 

<complexType name="SolidArrayPropertyType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractSolid" /> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:SolidArrayPropertyTypeは,立体の配列のためのコンテナとする。要素は,配列のプロパティに常に

含まれ,幾何要素又は幾何要素の配列を参照できない。 

88 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="solidArrayProperty" type="gml:SolidArrayPropertyType"/> 

このプロパティの要素は,立体の要素のリストを含む。solidArrayPropertyは,GML地物が

gml:AbstractSolidのリストに代替可能な値をもつプロパティをもつときは常に,GML応用スキーマで使用

してもよい,既定義のプロパティとする。 

10.6.4 SolidType及びSolid 

<complexType name="SolidType"> 

<complexContent> 

<extension base="gml:AbstractSolidType"> 

<sequence> 

<elementname="exterior"type="gml:ShellPropertyType"minOccurs="0"/> 
<elementname="interior" type="gml:ShellPropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 
</sequence> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="Solid" type="gml:SolidType" substitutionGroup="gml:AbstractSolid" /> 

gml:Solidは,JIS X 7107のGM̲Solidを実装する(D.2.3.3及びJIS X 7107:2005の6.3.18参照)。 

立体は,三次元幾何の基礎である。立体の範囲は,JIS X 7107:2005の6.3.18で示されるような境界曲面

で定義する。gml:exteriorは外部の境界を示し,gml:interiorは立体の内部の境界とする。 

10.6.5 ShellType及びShell 

<complexType name="ShellType"> 

<sequence> 

<element ref="gml:surfaceMember" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</complexType> 
 
<elementname="Shell" type="gml:ShellType" substitutionGroup="gml:AbstractObject"/> 
 
<element name="surfaceMember" type="gml:SurfacePropertyType"/> 

gml:Shellは,JIS X 7107のGM̲Shellを実装する(D.2.3.3及びJIS X 7107:2005の6.3.8参照)。 

殻(shell)は,JIS X 7107:2005の6.3.8で示されているように,立体の境界を示す,単一の連結された

構成部品を表すために使用する。 

全てのgml:surfaceMemberは,一つの曲面,すなわち,gml:AbstractSurfaceに代替可能なあらゆる要素を

参照する又は含む。殻との関係では,曲面は立体の境界を示す。 

この要素を指定する場合は,aggregationType属性は,“set”を値としてもたなければならない。 

注記 この定義は,入れ子の構造を許す,つまり,gml:surfaceMemberは,曲面のメンバとして順に他

のgml:CompositeSurfacesから構成されるgml:CompositeSurfaceになることができる。 

10.6.6 ShellPropertyType 

<complexType name="ShellPropertyType"> 

<sequence> 

<element ref="gml:Shell"/> 

89 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</complexType> 

gml:ShellPropertyTypeの内容モデルをもつプロパティは,立体の境界の構成部品を表すために,殻をカ

プセル化する。 

11 GMLスキーマ−幾何複体,幾何合成及び幾何集成 

11.1 概要 

この11.1は,幾何複体及び幾何集成のための幾何スキーマ構成部品について規定する。 

注記 幾何スキーマ文書であるgeometryAggregates.xsd及びgeometryComplexes.xsd(附属書C参照)

は,次の位置独立名(URN構文による。)で識別する。 

urn:x-ogc:specification:gml:schema-xsd:geometryAggregates:3.2.1 

urn:x-ogc:specification:gml:schema-xsd:geometryComplexes:3.2.1 

幾何集成(言い換えれば,gml:AbstractGeometricAggregateTypeの下位型のインスタンス)は,任意の幾

何要素の集成とする。これは,いかなる追加的な内部構造ももたず,規定した型をもつ幾何要素の“集ま

り”に使用する。応用スキーマが地物の表現を複数の幾何オブジェクトを使って行うときに,この集成を

使うことができる。 

幾何複体(言い換えれば,gml:GeometricComplexTypeのインスタンス)は,幾何プリミティブの閉じた

集まりであり,その境界を含む。 

幾何複体(gml:GeometricComplex)は,JIS X 7107:2005の6.6.1において“共通の座標系で規定されたプ

リミティブな幾何オブジェクトの集合であって,各幾何オブジェクトの内部(interior)間には共通部分が

ない。ただし,あるプリミティブAが幾何複体に含まれる場合,一つ以上のプリミティブBiが存在し,A

の境界点とBiの境界点との共通集合が,常にAの境界要素であり,Biの境界要素でもあるという条件も

満たさなければならない。直感的にいえば,幾つかの単体を面で貼り合わせて得られる図形のことである。”

と定義している。 

注記 幾何複体(gml:GeometricComplex)の定義については,JIS X 7107:2005の6.6.1の文章を変更し

ている。 

幾何合成(gml:CompositeCurve,gml:CompositeSurface及びgml:CompositeSolid)は,基本幾何形状がプ

リミティブと同型となる幾何複体を表現する。つまり,これは,プリミティブとして,及び複体としてみ

ることができる。幾何合成のより詳細な性質については,JIS X 7107:2005の6.1及び6.6.3を参照。 

幾何複体及び幾何合成は幾何要素の共用を重視する場合に,応用スキーマで使用することを意図してい

る。 

11.2 幾何複体及び幾何合成 

11.2.1 幾何複体 

11.2.1.1 GeometricComplexType及びGeometricComplex 

<complexType name="GeometricComplexType"> 

<complexContent> 

<extension base="gml:AbstractGeometryType"> 

<sequence> 

<element name="element" type="gml:GeometricPrimitivePropertyType" maxOccurs="unbounded" 

/> 

90 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="GeometricComplex" type="gml:GeometricComplexType" 
substitutionGroup="gml:AbstractGeometry" /> 

gml:GeometricComplexは,D.2.3.6に示し,JIS X 7107のGM̲Complex(JIS X 7107:2005の6.6.2及び6.6.1

参照)を実装する。 

gml:elementは,一つの幾何プリミティブ(これは,幾何合成を含む。)を,要素内に含むか又は参照す

る。 

11.2.1.2 GeometricComplexPropertyType 

<complexType name="GeometricComplexPropertyType"> 

<sequence minOccurs="0"> 

<choice> 

<element ref="gml:GeometricComplex"/> 
<element ref="gml:CompositeCurve"/> 
<element ref="gml:CompositeSurface"/> 
<element ref="gml:CompositeSolid"/> 

</choice> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

値の定義域を幾何複体(geometric complex)とするプロパティは,その型の要素内に格納する適当な幾

何要素であっても,遠隔幾何要素(この遠隔には,同一の文書内のどこかにある幾何要素を含む。)への

XLink参照であってもよい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定し

たりいずれも指定しなかったりしてはならない。 

注記 このようなプロパティ(又はその参照)の中に含むことを許される幾何要素は,合成は(概念

的には),幾何複体及び幾何プリミティブの両者を継承するため,XML Schemaの選択要素でモ

デル化し,常にgml:AbstractGeometricPrimitive代替グループの一部となる。 

11.2.2 合成幾何要素 

11.2.2.1 GMLにおける合成の一般的な表現 

幾何合成(geometric composite)のメンバは,その和集合がその合成体の基本幾何形状となるような,同

一種類の幾何プリミティブの集まりで表現しなければならない。複体は,全ての要素プリミティブを含む

とともに,gml:Pointsが含まれるようになるまで,これらのプリミティブの境界上の全てのプリミティブ

を含む。したがって,gml:CompositeCurve,gml:CompositeSurface及びgml:CompositeSolidが含むmember

プロパティは,gml:GeometricComplexのgml:elementプロパティの部分集合を表現する。 

XML Schemaは,(開いたプリミティブ及び閉じた複体となる)幾何合成の二重性を示すためにJIS X 

7107が使用している多重継承の概念を使用できないため,GMLスキーマ文書の中では,幾何合成は

gml:AbstractGeometricPrimitiveTypeだけの派生となっている。しかし,プロパティ型である

gml:GeometricComplexPropertyTypeの中にある<choice>要素を使用することによって,幾何合成は,その値

91 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

としてgml:GeometricComplexとみなせる任意のプロパティの中で使用することができる。 

11.2.2.2 CompositeCurveType及びCompositeCurve 

<complexType name="CompositeCurveType"> 

<complexContent> 

<extension base="gml:AbstractCurveType"> 

<sequence> 

<element ref="gml:curveMember" maxOccurs="unbounded" /> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="CompositeCurve" type="gml:CompositeCurveType" substitutionGroup="gml:AbstractCurve" 
/> 

gml:CompositeCurveは,D.2.3.6に示し,これは,JIS X 7107のGM̲CompositeCurve(JIS X 7107:2005の

6.6.5参照)を実装する。 

gml:CompositeCurveは,(有向)曲線の列で表現し,それぞれの曲線は,一連の曲線の中で次に続く曲線

の始点で終了する。 

gml:curveMemberは,合成曲線が直接含む一つの曲線又は曲線への参照とする。 

曲線は連続であり,曲線の集まりは順序付けされる。したがって,これを使用するときは,aggregationType

属性の値は“sequence”とする。 

注記 この定義は,入れ子の構造,つまり,gml:CompositeCurveが,例えば,別のgml:CompositeCurve

を曲線の要素として使用することを許す。 

11.2.2.3 CompositeSurfaceType及びCompositeSurface 

<complexType name="CompositeSurfaceType"> 

<complexContent> 

<extension base="gml:AbstractSurfaceType"> 

<sequence> 

<element ref="gml:surfaceMember" maxOccurs="unbounded" /> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="CompositeSurface" type="gml:CompositeSurfaceType" 
substitutionGroup="gml:AbstractSurface" /> 

gml:CompositeSurfaceは,D.2.3.6に示し,JIS X 7107のGM̲CompositeSurface(JIS X 7107:2005の6.6.6

参照)を実装する。 

gml:CompositeSurfaceは,有向曲面の集合によって表現する。これは,幾何プロパティが全て(プリミテ

ィブな)曲面になる幾何要素型とする。基本的には,合成曲面(composite surface)は,共通の境界曲線で

対をなす曲面が互いに結び付き,全体として見たとき,一つの曲面を形成する曲面の集合である。 

92 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:surfaceMemberは,合成曲面が直接含む一つの曲面又は曲面への参照とする。曲面は,連続とする。 

注記 この定義は,入れ子の構造,つまり,gml:CompositeSurefaceが,例えば,別のgml:CompositeSurface

を曲面の要素として使用することを許す。 

11.2.2.4 CompositeSolidType及びCompositeSolid 

<complexType name="CompositeSolidType"> 

<complexContent> 

<extension base="gml:AbstractSolidType"> 

<sequence> 

<element ref="gml:solidMember" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="CompositeSolid" type="gml:CompositeSolidType" substitutionGroup="gml:AbstractSolid"/> 

gml:CompositeSolidは,D.2.3.6に示すJIS X 7107のGM̲CompositeSolid(JIS X 7107:2005の6.6.7参照)

を実装する。 

gml:CompositeSolidは,有向曲面の集合で表現する。これは,幾何プロパティが全て(プリミティブな)

立体になる幾何要素型とする。基本的には,合成立体(composite solod)は,共通の境界曲面で対をなす

立体が互いに結び付き,全体として見たとき,一つの立体を形成する立体の集合とする。 

gml:solidMemberは,合成立体中の一つの立体を含むか又は参照する。この立体は,連続とする。 

注記 この定義は,入れ子構造を許す。すなわち,gml:CompositeSolidは,例えば,別の

gml:CompositeSolidをメンバとして使用してもよい。 

11.3 

幾何集成 

11.3.1 未指定次元要素の集成 

11.3.1.1 AbstractGeometricAggregateType及びAbstractGeometricAggregate 

<complexType name="AbstractGeometricAggregateType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGeometryType"> 

<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="AbstractGeometricAggregate" type="gml:AbstractGeometricAggregateType" abstract="true" 
substitutionGroup="gml:AbstractGeometry"/> 

gml: AbstractGeometricAggregateは,D.2.3.5に示すJIS X 7107のGM̲Aggregate(JIS X 7107:2005の6.5.2

参照)を実装する。これは,全ての幾何集成(geometric aggregate)の代替グループの抽象代表とする。 

11.3.1.2 MultiGeometryType,MultiGeometry,geometryMember及びgeometryMembers 

<complexType name="MultiGeometryType"> 

<complexContent> 

<extension base="gml:AbstractGeometricAggregateType"> 

<sequence> 

93 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:geometryMember" minOccurs="0" maxOccurs="unbounded" /> 
<element ref="gml:geometryMembers" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="MultiGeometry" type="gml:MultiGeometryType" 
substitutionGroup="gml:AbstractGeometricAggregate"/> 

gml:MultiGeometryは,一つ以上の任意の型をとるGML幾何オブジェクトの集まりとする(D.3.8参照)。 

幾何集成のメンバは,標準プロパティ(gml:geometryMember)又は配列プロパティ(gml:geometryMembers)

によって示せばよい。これは,同じ集まりの中で標準プロパティ及び配列プロパティの両者を使うことも

許す。 

注記 配列プロパティは,XLinkを経由して遠隔幾何要素を参照することはできない。 

<element name="geometryMember" type="gml:GeometryPropertyType"/> 

このプロパティ要素は,幾何要素又はXLink属性を経由して幾何要素を参照する,又は幾何要素を直接

含む。 

<element name="geometryMembers" type="gml:GeometryArrayPropertyType"/> 

このプロパティ要素は,幾何要素のリストを含む。要素の順序は意味をもち,配列を処理するときはそ

れを保たなければならない。 

11.3.1.3 MultiGeometryPropertyType及びmultiGeometryProperty 

<complexType name="MultiGeometryPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractGeometricAggregate"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

値の定義域を幾何集成とするプロパティは,その型の要素内に格納した適当な幾何要素であっても,遠

隔幾何要素(この遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であってもよ

い。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定しなか

ったりしてはならない。 

<element name="multiGeometryProperty" type="gml:MultiGeometryPropertyType"/> 

このプロパティ要素は,幾何要素又はXLink属性を経由する複数の幾何要素への参照を含む。

gml:multiGeometryPropertyは,既定義のプロパティであり,GML地物がgml:AbstractGeometricAggregateに

代替される値をもつプロパティをもつときは,常にGML応用スキーマで使用することができる。 

11.3.2 零次元集成 

11.3.2.1 MultiPointType,MultiPoint,pointMember及びpointMembers 

<complexType name="MultiPointType"> 

<complexContent> 

<extension base="gml:AbstractGeometricAggregateType"> 

<sequence> 

<element ref="gml:pointMember" minOccurs="0" maxOccurs="unbounded"/> 

94 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:pointMembers" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="MultiPoint" type="gml:MultiPointType" 
substitutionGroup="gml:AbstractGeometricAggregate"/> 

gml:MultiPointは,D.2.3.5に示すJIS X 7107のGM̲MultiPoint(JIS X 7107:2005の6.5.4参照)を実装す

る。gml:MultiPointは,一つ以上のgml:Pointからなる。 

幾何集成のメンバは,標準プロパティ(gml:pointMember)又は配列プロパティ(gml:pointMembers)に

よって示すことができる。これは,同じ集まりの中で標準プロパティ及び配列プロパティの両者を使うこ

とを許す。 

注記 配列プロパティは,XLinkを経由して遠隔幾何要素を参照することはできない。 

<element name="pointMember" type="gml:PointPropertyType"/> 

このプロパティ要素は,XLink属性を経由して点を参照する,又は点要素を直接含む。 

<element name="pointMembers" type="gml:PointArrayPropertyType"/> 

このプロパティ要素は,点のリストを含む。要素の順序は意味をもち,配列を処理するときはそれを保

たなければならない。 

11.3.2.2 MultiPointPropertyType及びmultiPointProperty 

<complexType name="MultiPointPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:MultiPoint"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

値の定義域を点の集まりとするプロパティは,その型の要素内に格納する適当な幾何要素であっても,

遠隔幾何要素(この遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であっても

よい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定しな

かったりしてはならない。 

<element name="multiPointProperty" type="gml:MultiPointPropertyType" /> 

このプロパティ要素は,幾何要素又はXLink属性を経由する“multi-point”要素への参照を含む。

gml:multiPointPropertyは,定義済みのプロパティであり,GML地物がgml:MultiPointに代替される値をも

つプロパティをもつときは,常にGML応用スキーマで使用することができる。 

11.3.3 一次元集成 

11.3.3.1 MultiCurveType,multiCurve及びcurveMembers 

<complexType name="MultiCurveType"> 

<complexContent> 

<extension base="gml:AbstractGeometricAggregateType"> 

<sequence> 

<element ref="gml:curveMember" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:curveMembers" minOccurs="0"/> 

95 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="MultiCurve" type="gml:MultiCurveType" 
substitutionGroup="gml:AbstractGeometricAggregate"/> 

gml:MultiCurveは,D.2.3.5に示すJIS X 7107のGM̲MultiCurve(JIS X 7107:2005の6.5.5参照)を実装

する。gml:MultiCurveは,一つ以上のgml:AbstractCurveからなる。 

幾何集成のメンバは,標準プロパティ(gml:curveMember)又は配列プロパティ(gml:curveMembers)に

よって示せばよい。これは,同じ集まりの中で標準プロパティ及び配列プロパティの両者を使うことも許

す。 

注記1 配列プロパティは,xlinkを経由して遠隔幾何要素を参照することはできない。 

<element name="curveMembers" type="gml:CurveArrayPropertyType"/> 

このプロパティ要素は,曲線のリストを含む。要素の順序は意味をもち,配列を処理するときはそれを

保たなければならない。 

注記2 gml:curveMemberは,10.5.11.1に示す。 

11.3.3.2 MultiCurvePropertyType及びmultiCurveProperty 

<complexType name="MultiCurvePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:MultiCurve"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

値の定義域を曲線の集まりとするプロパティは,その型の要素内に格納する適当な幾何要素であっても,

遠隔幾何要素(この遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であっても

よい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定しな

かったりしてはならない。 

<element name="multiCurveProperty" type="gml:MultiCurvePropertyType"/> 

このプロパティ要素は,幾何要素又はxlink属性を経由する“multi-curve”要素への参照を含む。

gml:multiCurvePropertyは,定義済みのプロパティであり,GML地物がgml:MultiCurveに代替される値を

もつプロパティをもつときは,いつでもGML応用スキーマで使用することができる。 

11.3.4 二次元集成 

11.3.4.1 MultiSurfaceType,MultiSurface,surfaceMember及びsurfaceMembers 

<complexType name="MultiSurfaceType"> 

<complexContent> 

<extension base="gml:AbstractGeometricAggregateType"> 

<sequence> 

<element ref="gml:surfaceMember" minOccurs="0" maxOccurs="unbounded" /> 
<element ref="gml:surfaceMembers" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

96 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

<element name="MultiSurface" type="gml:MultiSurfaceType" 
substitutionGroup="gml:AbstractGeometricAggregate"/> 

gml:MultiSurfaceは,D.2.3.5に示すJIS X 7107のGM̲MultiSurface(JIS X 7107:2005の6.5.6参照)を実

装する。gml:MultiSurfaceは,一つ以上のgml:AbstractSurfacesからなる。 

幾何集成のメンバは,標準プロパティ(gml:surfaceMember)又は配列プロパティ(gml:surfaceMembers)

によって示せばよい。これは,同じ集まりの中で標準プロパティ及び配列プロパティの両者を使うことも

許す。 

注記 配列プロパティは,XLinkを経由して遠隔幾何要素を参照することはできない。 

<element name="surfaceMember" type="gml:SurfacePropertyType"/> 

このプロパティ要素は,XLink属性を経由して曲面を参照する,又は曲面要素を直接含む。曲面要素は,

gml:AbstractSurfaceに代替可能な任意の要素とする。 

<element name="surfaceMembers" type="gml:SurfaceArrayPropertyType"/> 

このプロパティ要素は,曲面のリストを含む。要素の順序は意味をもち,配列を処理するときはそれを

保たなければならない。 

11.3.4.2 MultiSurfacePropertyType及びmultiSurfaceProperty 

<complexType name="MultiSurfacePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:MultiSurface"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

値の定義域を曲面の集まりとするプロパティは,その型の要素内に格納された適切な幾何要素であって

も,遠隔幾何要素(この遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であっ

てもよい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定

しなかったりしてはならない。 

<element name="multiSurfaceProperty" type="gml:MultiSurfacePropertyType"/> 

このプロパティ要素は,幾何要素又はXLink属性を経由する“multi-surface”要素への参照を含む。

gml:multiSurfacePropertyは,既定義のプロパティであり,GML地物がgml:MultiSurfaceに代替される値を

もつプロパティをもつときは,いつでもGML応用スキーマで使用することができる。 

11.3.5 三次元集成 

11.3.5.1 MultiSolidType,MultiSolid,solidMember及びsolidMembers 

<complexType name="MultiSolidType"> 

<complexContent> 

<extension base="gml:AbstractGeometricAggregateType"> 

<sequence> 

<element ref="gml:solidMember" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:solidMembers" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

97 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 
 
<element name="MultiSolid" type="gml:MultiSolidType" 
substitutionGroup="gml:AbstractGeometricAggregate"/> 

gml:MultiSolidは,D.2.3.5に示すJIS X 7107のGM̲MultiSolid(JIS X 7107:2005の6.5.7参照)を実装す

る。gml:MultiSolidは,一つ以上のgml:AbstractSolidsからなる。 

幾何集成のメンバは,標準プロパティ(gml:solidMember)又は配列プロパティ(gml:solidMembers)に

よって示せばよい。これは,同じ集まりの中で標準プロパティ及び配列プロパティの両者を使うことも許

す。 

注記 配列プロパティは,XLinkを経由して遠隔幾何要素を参照することはできない。 

<element name="solidMember" type="gml:SolidPropertyType"/> 

このプロパティ要素は,XLink属性を経由して立体要素を参照する,又は立体要素を直接含む。立体要

素は,gml:AbstractSolidに代替可能な任意の要素とする。 

<element name="solidMembers" type="gml:SolidArrayPropertyType"/> 

このプロパティ要素は,立体要素のリストを含む。要素の順序は意味をもち,配列を処理するときはそ

れを保たなければならない。 

11.3.5.2 MultiSolidPropertyType及びmultiSolidProperty 

<complexType name="MultiSolidPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:MultiSolid"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

値の定義域を立体の集まりとするプロパティは,その型の要素内に格納する適当な幾何要素であっても,

遠隔幾何要素(この遠隔には同一の文書内のどこかにある幾何要素を含む。)へのXLink参照であっても

よい。参照又は内容となる要素のいずれかを指定しなければならず,両方を指定したりいずれも指定しな

かったりしてはならない。 

<element name="multiSolidProperty" type="gml:MultiSolidPropertyType" /> 

このプロパティ要素は,幾何要素又はXLink属性を経由する“multi-solid”要素への参照を含む。

gml:multiSolidPropertyは,定義済みのプロパティであり,GML地物がgml:MultiSolidで代替する値をもつ

プロパティをもつときは,いつでもGML応用スキーマで使用することができる。 

12 GMLスキーマ−座標参照系スキーマ 

12.1 概要 

12.1.1 一般 

箇条12は,座標参照系及び座標操作について,その内容,構造及び依存関係の説明を符号化するための

GMLスキーマ構成部品について記述する。 

12.1.2 ISO 19111との関係 

箇条12に示すGMLスキーマのスキーマ構成部品は,ISO 19111に示す概念スキーマに適合する完全な

実装を提供する。関係の詳細は,D.2.7で説明する。時間参照系のための追加部品については,D.3.9に示

す。 

98 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GMLで実装するISO 19111の型はISO 19111に示すが,幾つかの追加的な制約がこれらの型に示されて

いるので,GMLスキーマにおいてもスキーマ制約として制約条件を示す。 

注記 対応する5種類のスキーマ文書があり,それはreferenceSystems.xsd,

coordinateReferenceSystems.xsd,datums.xsd,coodinateSystems.xsd及びcoordinateOperations.xsd

とする。これらのスキーマ文書は,概念モデルの中の同様の名前をもつUMLパッケージを実

装している。 

12.1.3 重要なXML要素 

ここで示すXML Schema構成部品は,座標参照系(CRS)及び(座標変換及び換算を含む)座標操作の

両方のための定義データを符号化する。この定義データは,必要に応じて識別子及び仕様データの両者を

含む。スキーマ構成部品の意味規則については,ISO 19111を参照。 

ここで示すXML符号化法は,必要に応じて代替的に使う複数の最上位のXML要素を含む(全てのXML

文書の基礎になる単一の最上位の要素は存在しない。)。最上位のXML要素のほとんどは,参照を可能に

する識別情報を含むGMLオブジェクトである。最上位の代替要素は,次のとおりとする。 

− 抽象XML要素であるSingleCRSで代表する代替グループ中の,全ての具象的なXML要素。これらの

要素は,その型が示す一つの座標参照系の定義を変換するために使用できる。それらは,次の8種類

の具象XML要素とする。 

− CompoundCRS 

− GeodeticCRS 

− ProjectedCRS 

− EngineeringCRS 

− ImageCRS 

− VerticalCRS 

− TemporalCRS 

− DerivedCRS 

− 抽象XML要素であるCoordinateOperationの,全ての代替可能な具象XML要素を次に示す。 

− ConcatenatedOperation 

− PassThroughOperation 

− Transformation 

− Conversion 

SingleCRSに代替可能な具象XML要素は,データ構造を含む複数のより低いレベルのXML要素を使用

する。これらのより低いレベルの要素は,次に示す5種類の具象要素であり,抽象XML要素であるDatum

に代替可能とする。 

− GeodeticDatum 

− VerticalDatum 

− TemporalDatum 

− EngineeringDatum 

− ImageDatum 

これらのより低いレベルのXML要素は,次に示す10種類の,抽象XML要素であるCoordinateSystem

に代替可能な具象要素を含む。 

99 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− EllipsoidalCS 

− VerticalCS 

− CartesianCS 

− AffineCS 

− LinearCS 

− PolarCS 

− SphericalCS 

− CylindricalCS 

− TimeCS 

− UserDefinedCS 

CoodinateOperation要素に代替可能な具象XML要素は,複数のより低いレベルの,次に示すデータ構造

を含む要素に代替可能とする。 

− OperationMethod 

− OperationParameter 

− OperationParameterGroup 

− ParameterValue 

− ParameterValueGroup 

12.2 参照系 

12.2.1 概要 

参照系スキーマ構成部品は,二つの論理的な部分をもち,次に示すXMLによる符号化に必要な要素及

び型を定義する。 

− 座標参照系及び座標演算のために用いられるGMLオブジェクトの10種類の型が継承する識別オブジ

ェクト。 

− 座標参照系定義の上層部分 

このスキーマは,ISO 19111に対するUMLモデルの識別オブジェクト及び参照系パッケージを符号化す

る。 

注記 referenceSystemsスキーマは,GMLスキーマ文書dictionary.xsd をインクルードし,ISO/TS 19139

からスキーマ文書metadataEntitySet.xsdをインポートする。このスキーマ文書は,次の位置独立

名(URN構文による。)で識別する。 

urn:x-ogc:specification:gml:schema-xsd:referenceSystems:3.2.1 

12.2.2 IdentifiedObjectType 

<complexType name="IdentifiedObjectType" abstract="true"> 

<complexContent> 

<extension base="gml:DefinitionType"/> 

</complexContent> 

</complexType> 

gml:IdentifiedObjectTypeは,CRS関連オブジェクトの識別プロパティを示す。gml:DefinitionTypeにおい

て,gml:identifier要素は,このオブジェクトを識別する,UMLモデルにおける“名前(name)”属性を符

号化する基本的な名前でなければならない。 

 
 

100 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

零以上のgml:name要素は,“識別子(identifier)”の順列をもたない集合となることができ,UMLモデ

ルにおける“識別子”属性を符号化する。これらのgml:name要素で,他の場所でオブジェクトが定義する

情報を参照する,又はこのオブジェクトを参照する識別子となることができる。 

零以上のgml:name要素は,このCRS関連オブジェクトを識別する他の名前“別名”の順列をもたない

集合となることができ,UMLモデルにおける“別名(alias)”属性を符号化する。オブジェクトは幾つか

の別名をもってよく,典型的には異なる状況で用いる。別名を用いる状況は,その(任意選択の)codeSpace

属性の値によって示す。 

gml:identifier及びgml:name要素のcodeSpace属性は,必要な版情報は全て含まなければならない。この

使用法の中では,gml:DefinitionTypeのgml:remarks要素は,データの情報源情報を含む,このオブジェク

トに関するコメント及び情報を含まなければならない。 

12.2.3 抽象座標参照系 

12.2.3.1 AbstractCRS 

<element name="AbstractCRS" type="gml:AbstractCRSType" abstract="true" 
substitutionGroup="gml:Definition"/> 

<complexType name="AbstractCRSType" abstract="true"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:domainOfValidity" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:scope" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:AbstractCRSは,通例,単一の座標参照系(CRS)を示すが,複合座標参照系を示してもよい。GML

応用スキーマでは,この文書で示す具象の下位型と同等の意味をもつ具象の下位型を定義するために,こ

の抽象複合型を用いてはならず,拡張又は制限してはならない。 

12.2.3.2 domainOfValidity 

<element name="domainOfValidity"> 

<complexType> 

<sequence minOccurs="0"> 

<element ref="gmd:EX̲Extent"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

</element> 

gml:domainOfValidityプロパティは,ISO/TS 19139で符号化するように,EX̲Extentオブジェクトへの関

連役割を実装し,範囲を参照するか,又は定義を含むかのいずれかとする。 

12.2.3.3 scope 

<element name="scope" type="string"/> 

gml:scopeプロパティは,CRS関連オブジェクトが有効となる使用の記述又は制限を与える。分からない

場合は,“not known”を入力する。 

101 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

12.2.3.4 CRSPropertyType 

<complexType name="CRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:CRSPropertyTypeは,CRS抽象座標参照系への関連役割のためのプロパティ型であり,CRSを参照

するか,又は定義を含むかのいずれかとする。 

12.3 座標参照系 

12.3.1 概要 

空間−時間座標参照系スキーマ構成部品は,二つの論理的な部分に分けられる。一つは,抽象座標参照

系定義のXML符号化のための要素及び型を定義する。もう一つのより大きな部分は,空間−時間座標参

照系の複数の具象型を定義するXML符号化のための特有の構造を定義する。 

これらのスキーマ構成部品は,ISO 19111:2007の箇条8及びこの規格のD.3.9のUMLモデルの座標参照

系パッケージを符号化する。ただし,抽象の“SC̲CRS”クラスを除く。 

注記 座標参照系スキーマ文書は,GMLスキーマ文書のcoordinateSystem.xsd,datum.xsd,及び

coordinateOperations.xsdをインクルードする。このスキーマ文書は,次の位置独立名(URN構

文による。)で識別する。 

urn:x-ogc:specification:gml:schema-xsd:coordinateReferenceSystems:3.2.1 

12.3.2 抽象座標参照系 

12.3.2.1 AbstractSingleCRS 

<element name="AbstractSingleCRS" type="gml:AbstractCRSType" abstract="true" 
substitutionGroup="gml:AbstractCRS"/> 

gml:AbstractSingleCRSは,(複合CRSに対して)単一の座標系及び単一の原子からなる座標参照系を実

装する。 

12.3.2.2 SingleCRSPropertyType 

<complexType name="SingleCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractSingleCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:SingleCRSPropertyTypeは,単一座標参照系(single CRS)への関連役割のためのプロパティ型であり,

座標参照系を参照するか,又は定義を含むかのいずれかとする。 

12.3.2.3 AbstractGeneralDerivedCRS 

<element name="AbstractGeneralDerivedCRS" type="gml:AbstractGeneralDerivedCRSType" abstract="true" 
substitutionGroup="gml:AbstractSingleCRS"/> 

<complexType name="AbstractGeneralDerivedCRSType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

102 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:conversion"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:AbstractGeneralDerivedCRSは,他の座標参照系からの座標換算で定義する座標参照系とする。GML

応用スキーマでは,この文書で示す具象の下位型と同等の意味をもつ具象の下位型を定義するために,こ

の抽象型を用いてはならず,また,拡張又は制限してはならない。 

12.3.2.4 Conversion 

<element name="conversion" type="gml:GeneralConversionPropertyType"/> 

gml:conversionは,派生CRSを定義するために用いる座標換算(conversion)への関連役割とする。 

12.3.3 具象座標参照系 

12.3.3.1 CompoundCRS 

<element name="CompoundCRS" type="gml:CompoundCRSType" substitutionGroup="gml:AbstractCRS"/> 

<complexType name="CompoundCRSType"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<element ref="gml:componentReferenceSystem" minOccurs="2" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

gml:compoundCRSは,二つ以上の独立した座標参照系を通じて点の位置を記述する座標参照系とする。

gml:compoundCRSは,二つ以上の単一CRSのインスタンスの繰返しのない列と関連する。 

12.3.3.2 ComponentReferenceSystem 

<element name="componentReferenceSystem" type="gml:SingleCRSPropertyType"/> 

gml:componentReferenceSystem要素は,この複合参照系が含む全ての座標参照系要素の関連の列とする。

gml:AggregationAttributeGroupは,gml:componentReferenceSystemプロパティが順序をもつことを示すため

に用いなければならない。 

12.3.3.3 CompoundCRSPropertyType 

<complexType name="CompoundCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:CompoundCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:CompoundCRSPropertyTypeは,複合座標参照系(compound CRS)への関連役割のためのプロパティ

型であり,参照系を参照するか,又は定義を含むかのいずれかとする。 

12.3.3.4 GeodeticCRS 

<element name="GeodeticCRS" type="gml:GeodeticCRSType" 
substitutionGroup="gml:AbstractSingleCRS"/> 

103 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="GeodeticCRSType"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<choice> 

<element ref="gml:ellipsoidalCS"/> 
<element ref="gml:cartesianCS"/> 
<element ref="gml:sphericalCS"/> 

</choice> 
<element ref="gml:geodeticDatum"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:GeodeticCRSは,測地原子に基づく座標参照系とする。 

12.3.3.5 EllipsoidalCS 

<element name="ellipsoidalCS" type="gml:EllipsoidalCSPropertyType"/> 

gml:ellipsoidalCSは,このCRSが用いるだ(楕)円体座標系(ellopsoidal CS)への関連役割とする。 

12.3.3.6 cartesianCS 

<element name="cartesianCS" type="gml:CartesianCSPropertyType"/> 

gml:cartesianCSは,このCRSが用いる直交座標系(cartesian CS)への関連役割とする。 

12.3.3.7 sphericalCS 

<element name="sphericalCS" type="gml:SphericalCSPropertyType"/> 

gml:sphericalCSは,このCRSが用いる極座標系(spherical CS)への関連役割とする。 

12.3.3.8 geodeticDatum 

<element name="geodeticDatum" type="gml:GeodeticDatumPropertyType"/> 

gml:geodeticDatumは,このCRSが用いる測地原子(geodetic datum)への関連役割とする。 

12.3.3.9 GeodeticCRSPropertyType 

<complexType name="GeodeticCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:GeodeticCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:GeodeticCRSPropertyTypeは,測地座標参照系(geodetic CRS)への関連役割のためのプロパティ型

であり,座標参照系を参照するか,又は定義を含むかのいずれかとする。 

12.3.3.10 VerticalCRS 

<element name="VerticalCRS" type="gml:VerticalCRSType" substitutionGroup="gml:AbstractSingleCRS"/> 

<complexType name="VerticalCRSType"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<element ref="gml:verticalCS"/> 
<element ref="gml:verticalDatum"/> 

104 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:VerticalCRSは,高さ又は深さを記録するために用いる1D座標参照系とする。鉛直座標参照系(vertical 

CRS)は,高さ又は深さの概念を定義するために重力の向きを使用するが,重力との関係は直接的でなく

てよい。その意味から明らかであるが,だ(楕)円体高(h)は,鉛直座標参照系で記録することができな

い。だ(楕)円体高は独立して存在できないだけでなく,地理3D座標参照系の中で定義される3D座標の,

不可分の部分である。 

12.3.3.11 verticalCS 

<element name="verticalCS" type="gml:VerticalCSPropertyType"/> 

gml:verticalCSは,このCRSが用いる鉛直座標系(vertical CS)への関連役割とする。 

12.3.3.12 verticalDatum 

<element name="verticalDatum" type="gml:VerticalDatumPropertyType"/> 

gml:verticalDatumは,このCRSが用いる鉛直原子(vertical datum)への関連役割とする。 

12.3.3.13 VerticalCRSPropertyType 

<complexType name="VerticalCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:VerticalCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:VerticalCRSPropertyTypeは,鉛直座標参照系(vertical CRS)への関連役割のためのプロパティ型で

あり,座標参照系を参照するか,又は定義を含むかのいずれかとする。 

12.3.3.14 ProjectedCRS 

<element name="ProjectedCRS" type="gml:ProjectedCRSType" 
substitutionGroup="gml:AbstractGeneralDerivedCRS"/> 

<complexType name="ProjectedCRSType"> 

<complexContent> 

<extension base="gml:AbstractGeneralDerivedCRSType"> 

<sequence> 

<choice> 

<element ref="gml:baseGeodeticCRS"/> 

<element ref="gml:baseGeographicCRS"/> 

</choice> 
<element ref="gml:cartesianCS"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:ProjectedCRSは,地球の形状を平面に近似するために用いる2D座標参照系とする。近似によるゆが

(歪)みは注意深く制御されており,その量は把握されている。 

ゆが(歪)み補正は,一般に,実際のフィールドに近い値を作り出すために算出した方位及び距離によ

105 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

って行う。 

12.3.3.15 baseGeodeticCRS 

<element name="baseGeodeticCRS" type="gml:GeodeticCRSPropertyType"/> 

gml:baseGeodeticCRSは,この投影座標参照系(projected CRS)が用いる地理座標参照系への関連役割と

する。 

12.3.3.16 ProjectedCRSPropertyType 

<complexType name="ProjectedCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:ProjectedCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:ProjectedCRSPropertyTypeは,投影座標参照系(projected CRS)への関連役割のためのプロパティ型

であり,参照系を参照するか,又は定義を含むかのいずれかとする。 

12.3.3.17 DerivedCRS 

<element name="DerivedCRS" type="gml:DerivedCRSType" 
substitutionGroup="gml:AbstractGeneralDerivedCRS"/> 

<complexType name="DerivedCRSType"> 

<complexContent> 

<extension base="gml:AbstractGeneralDerivedCRSType"> 

<sequence> 

<element ref="gml:baseCRS"/> 
<element ref="gml:derivedCRSType"/> 
<element ref="gml:coordinateSystem"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:DerivedCRSは,基となるCRSとして,既知の他の単一座標参照系からの座標換算で定義する単一

座標参照系とする。このDerivedCRSを,ISO 19123:2005の箇条8で記述するような,地上への偏位修正

グリッド被覆のために用いる場合には,基となるCRSは,投影座標参照系でよい。 

12.3.3.18 baseCRS 

<element name="baseCRS" type="gml:SingleCRSPropertyType"/> 

gml:baseCRSは,この派生CRSが用いる座標参照系への関連役割とする。 

12.3.3.19 derivedCRSType 

<element name="derivedCRSType" type="gml:CodeWithAuthorityType"/> 

gml:derivedCRSTypeプロパティは,派生座標参照系(derived CRS)の型を記述する。必要となるcodeSpace

属性は,値を既定とする情報源及びこのプロパティのために許す全ての文字列値の意味を参照しなければ

ならない。 

12.3.3.20 coordinateSystem 

<element name="coordinateSystem" type="gml:CoordinateSystemPropertyType"/> 

gml:coordinateSystemは,このCRSが用いる座標系への関連役割とする。 

106 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

12.3.3.21 DerivedCRSPropertyType 

<complexType name="DerivedCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:DerivedCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:DerivedCRSPropertyTypeは,投影による座標参照系以外の派生座標参照系(derived CRS)への関連

役割のためのプロパティ型とし,参照系を参照するか,又は定義を含むかのいずれかとする。 

12.3.3.22 EngineeringCRS 

<element name="EngineeringCRS" type="gml:EngineeringCRSType" 
substitutionGroup="gml:AbstractSingleCRS"/> 

<complexType name="EngineeringCRSType"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<choice> 

<element ref="gml:affineCS"/> 
<element ref="gml:cartesianCS"/> 
<element ref="gml:cylindricalCS"/> 
<element ref="gml:linearCS"/> 
<element ref="gml:polarCS"/> 
<element ref="gml:sphericalCS"/> 
<element ref="gml:userDefinedCS"/> 

<element ref="gml:coordinateSystem"/> 

</choice> 
<element ref="gml:engineeringDatum"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:EngineeringCRSは,大きく次の二つに分類することができる,周辺との関係に依存する局所的な座

標参照系とする。 

− 地球の表面付近又はその上で行われる土木的な活動に適用する,地球に固定された系 

− 道路車両,船舶,航空機,又は宇宙船のような,移動するプラットフォームにおけるCRS(ISO 

19111:2007の8.3参照)。 

12.3.3.23 cylindricalCS 

<element name="cylindricalCS" type="gml:CylindricalCSPropertyType"/> 

gml:cylindricalCSは,このCRSが用いる円筒座標系(cylindrical CS)への関連役割とする。 

12.3.3.24 linearCS 

<element name="linearCS" type="gml:LinearCSPropertyType"/> 

gml:linearCSは,このCRSが用いる線形座標系(linear CS)への関連役割とする。 

12.3.3.25 polarCS 

<element name="polarCS" type="gml:PolarCSPropertyType"/> 

107 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:polarCSは,このCRSが用いる極座標系(polar CS)への関連役割とする。 

12.3.3.26 userDefinedCS 

<element name="userDefinedCS" type="gml:UserDefinedCSPropertyType"/> 

gml:userDefinedCSは,このCRSが用いる,使用者が定義する座標参照系への関連役割とする。 

12.3.3.27 engineeringDatum 

<element name="engineeringDatum" type="gml:EngineeringDatumPropertyType"/> 

gml:engineeringDatumは,このCRSが用いる施工基準原子(engineering datum)への関連役割とする。 

12.3.3.28 EngineeringCRSPropertyType 

<complexType name="EngineeringCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:EngineeringCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:EngineeringCRSPropertyTypeは,施工座標参照系(engineering CRS)への関連役割のためのプロパテ

ィ型であり,参照系を参照するか,又は定義を含むかのいずれかとする。 

12.3.3.29 ImageCRS 

<element name="ImageCRS" type="gml:ImageCRSType" substitutionGroup="gml:AbstractSingleCRS"/> 

<complexType name="ImageCRSType"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<choice> 

<element ref="gml:cartesianCS"/> 
<element ref="gml:affineCS"/> 

<element ref="gml:usesObliqueCartesianCS"/> 

</choice> 
<element ref="gml:imageDatum"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:ImageCRSは,画像の中の位置に適用する施工座標参照系とする。画像座標参照系(image CRS)は,

他とは区別された下位型とみなす。なぜならば,関連する画像原子の定義は,他の施工基準原子に関係し

ない二つの属性を含むからである。 

12.3.3.30 affineCS 

<element name="affineCS" type="gml:AffineCSPropertyType"/> 

gml:affineCSは,このCRSが用いるアフィン座標系(affine CS)に対する関連役割とする。 

12.3.3.31 imageDatum 

<element name="imageDatum" type="gml:ImageDatumPropertyType"/> 

gml:imageDatumは,このCRSが用いる画像原子(image datum)への関連役割とする。 

12.3.3.32 ImageCRSPropertyType 

<complexType name="ImageCRSPropertyType"> 

108 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<sequence minOccurs="0"> 

<element ref="gml:ImageCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:ImageCRSPropertyTypeは,画像座標系への関連役割のためのプロパティ型とし,座標系を参照する

か,又は定義を含むかのいずれかとする。 

12.3.3.33 TemporalCRS 

<element name="TemporalCRS" type="gml:TemporalCRSType" 
substitutionGroup="gml:AbstractSingleCRS"/> 

<complexType name="TemporalCRSType"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<choice> 

<element ref="gml:timeCS"/> 

<element ref="gml:usesTemporalCS"/> 

</choice> 
<element ref="gml:temporalDatum"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:TemporalCRSは,時間の記録に用いる1D座標参照系とする。 

12.3.3.34 timeCS 

<element name="timeCS" type="gml:TimeCSPropertyType"/> 

gml:timeCSは,このCRSが用いる時間座標系(temporal CRS)への関連役割とする。 

12.3.3.35 temporalDatum 

<element name="temporalDatum" type="gml:TemporalDatumPropertyType"/> 

gml:temporalDatumは,このCRSが用いる時間原子(temoiral datum)への関連役割とする。 

12.3.3.36 TemporalCRSPropertyType 

<complexType name="TemporalCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TemporalCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:TemporalCRSPropertyTypeは,時間座標参照系への関連役割のためのプロパティ型とし,参照系を参

照するか,又は定義を含むかのいずれかとする。 

12.4 座標系 

12.4.1 概要 

座標系スキーマの構成部品は,論理的に三つの部分に分けることができる。これらは,次に示すXML

による符号化のための要素及び型を定義する。 

109 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− 座標系の軸 

− 抽象座標系 

− 空間−時間座標系の複数の具象型 

これらのスキーマ構成部品は,ISO 19111:2007の箇条9及びこの規格のD.3.9に示すUMLモデルの座標

系パッケージを符号化する。 

注記 座標系スキーマ文書は,referenceSystems.xsdのGMLスキーマ文書を含む。このスキーマは,

次の(URN構文規則を用いた)位置独立名によって識別する。 

urn:x-ogc:specification:gml:schema-xsd:coordinateSystems:3.2.1 

12.4.2 座標系の軸 

12.4.2.1 CoordinateSystemAxis 

<element name="CoordinateSystemAxis" type="gml:CoordinateSystemAxisType" 
substitutionGroup="gml:Definition"/> 

<complexType name="CoordinateSystemAxisType"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:axisAbbrev"/> 
<element ref="gml:axisDirection"/> 
<element ref="gml:minimumValue" minOccurs="0"/> 
<element ref="gml:maximumValue" minOccurs="0"/> 
<element ref="gml:rangeMeaning" minOccurs="0"/> 

</sequence> 
<attribute name="uom" type="gml:UomIdentifier" use="required"/> 

</extension> 

</complexContent> 

</complexType> 

gml:CoordinateSystemAxisは,座標系の軸(axis)の定義とする。 

12.4.2.2 axisAbbrev 

<element name="axisAbbrev" type="gml:CodeType"/> 

gml:axisAbbrevは,この座標系の軸に用いる略称とする。この略称は,座標中の座標成分を識別するた

めにも用いる。codeSpace属性は,標準化された略称の集合又はこの略称に関するより多くの情報源を参

照してもよい。 

例 典型的な略称は,“X”及び“Y”である。 

12.4.2.3 axisDirection 

<element name="axisDirection" type="gml:CodeWithAuthorityType"/> 

gml:axisDirectionは,この座標系の軸の方向(direction)を示す(又は,直交投影座標の場合は,原点に

おけるこの座標系の軸の方向を示す。)。 

例 典型的な方向は,“南”若しくは“北”,“東”若しくは“西”,又は“上”若しくは“下”である。 

いかなる座標系の軸の組においても,それぞれの言葉の対の一方を用いる。地球上に固定されたCRSに

とって,この方向は大抵はおおよそであり,人間が理解しやすい意味を軸に与えることを目的とする。そ

れゆえ,測地原子を使用する場合は,このおおよその方向は,正確な軸の方向へと多少変化する可能性が

ある。 

110 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記 gml:engineeringCRSでは,大抵は座標系の軸の方向の詳細な説明が必要とされる。 

codeSpace属性は,値を示す情報源及びこのプロパティのために許される全ての文字列値の意味を参照

しなければならない。 

12.4.2.4 minimumValue,maximumValue及びrangeMeaning 

<element name="minimumValue" type="double"/> 
<element name="maximumValue" type="double"/> 

gml:minimumValue及びgml:maximumValueプロパティは,通常この軸に許す最小値(mimimum value)及

び最大値(maximum value)を,この軸の計測単位を使って示すために用いる。経度のような連続した角度

軸の場合,とり得る値は最大値と最小値との間に“巻きつけ”られる。また,この最小及び最大の限界値

は,境界直方体のような特定の目的に用いることができる。gml:minimumValue要素の値は,無限の負数で

もよいし,gml:maximumValue要素の値は,無限の正数でもよい。これらの要素が省略された場合,値は不

明となる。 

<element name="rangeMeaning" type="gml:CodeWithAuthorityType"/> 

gml:rangeMeaningは,gml:mimimumValue及びgml:maximumValueで指定する軸の値の範囲の意味を説明

する。この要素は,gml:mimimumValue及びgml:maximumValueが省略された場合には,省略しなければな

らない。この要素は,gml:mimimumValue及び/又はgml:maximumValueを含む場合は含まれることが望ま

しい。gml:mimimumValue及び/又はgml:maximumValueを含む場合に,この要素が省略されたとき,範囲

の意味は不明となる。codeSpace属性は,値を示す情報源及びこのプロパティのために許す,全ての文字

列値の意味を参照しなければならない。 

注記1 gml:engineeringCRSでは,大抵は座標系の軸の方向の詳細な説明が必要とされる。 

注記2 境界直方体は,本来局所的に分布しているものの検索を高速化するために作られるものであ

り,全球的に分布するものを対象にしてはいない。局所的に分布するものが,経度180°の

ような不連続線を含む地域にある場合は,全体を便宜的に,問題が起こらない座標系にシフ

トしてから,境界直方体を適用するとよい。 

注記3 境界直方体を定義する要素として,包被(10.1.4.6参照)がある。 

12.4.2.5 uom 

uom属性は,この座標系の軸に用いる計測単位(unit of measure)の識別子を示す。この軸を用いる座標

系を使った座標参照系を座標が用いる場合,座標中の座標成分は,この計測単位を用いて記録しなければ

ならない。 

12.4.2.6 CoordinateSystemAxisPropertyType 

<complexType name="CoordinateSystemAxisPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:CoordinateSystemAxis"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:CoordinateSystemAxisPropertyTypeは,座標系の軸への関連役割のためのプロパティ型である。軸を

参照するか又は軸の定義を含むかのいずれかとする。 

12.4.3 抽象座標系 

12.4.3.1 AbstractCoordinateSystem 

111 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="AbstractCoordinateSystem" type="gml:AbstractCoordinateSystemType" abstract="true" 
substitutionGroup="gml:Definition"/> 

<complexType name="AbstractCoordinateSystemType" abstract="true"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:axis" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

gml:AbstractCoordinateSystemは,与えられる座標空間における座標系の軸の列であり,この列の要素は

重複しない。CSは,与えられた空間の中でどのように座標を点に割り当てるかを指定するための数学規則

の集合から導かれる。座標中の座標成分の値は,座標系の軸への関連が記録された順序で記録しなければ

ならない。GML応用スキーマでは,この文書で示す具象の下位型と同等の意味をもつ具象の下位型を定義

するために,この抽象複合型を用いてはならず,拡張又は制限してはならない。 

12.4.3.2 axis 

<element name="axis" type="gml:CoordinateSystemAxisPropertyType"/> 

gml:axisプロパティは,この座標系で使用する座標系の軸への(順序をもつ列)関連役割とする。座標

中の座標成分の値は,この座標系を使用する座標参照系を用いる限り,座標系の軸への関連が記録された

順序で記録しなければならない。gml:AggregationAttributeGroupは,軸オブジェクトの順序付けを示すため

に用いなければならない。 

12.4.3.3 CoordinateSystemPropertyType 

<complexType name="CoordinateSystemPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractCoordinateSystem"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:CoordinateSystemPropertyTypeは,座標系への関連役割のためのプロパティ型であり,座標系を参照

するか,又は座標系の定義を含むかのいずれかとする。 

12.4.4 具象座標系 

12.4.4.1 EllipsoidalCS 

<element name="EllipsoidalCS" type="gml:EllipsoidalCSType" 
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="EllipsoidalCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 
 

112 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:EllipsoidalCSは,測地経度,測地緯度,及び(三次元の場合は)だ(楕)円体高によって位置を特

定する二次元又は三次元座標系とする。EllipsoidalCSは,二つ又は三つのgml:axisプロパティ要素をもた

なければならない。関連の数は,そのCSの次元に等しい。 

12.4.4.2 EllipsoidalCSPropertyType 

<complexType name="EllipsoidalCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:EllipsoidalCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:EllipsoidalCSPropertyTypeは,だ(楕)円体座標系(Ellipsoidal CS)への関連役割のためのプロパテ

ィ型とし,だ(楕)円体座標系を参照するか又は座標系の定義を含むかのいずれかとする。 

12.4.4.3 CartesianCS 

<element name="CartesianCS" type="gml:CartesianCSType" 
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="CartesianCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:CartesianCSは,一次元,二次元又は三次元座標系とする。一次元の場合は,単一のまっすぐな座標

軸をもつ。二次元及び三次元の場合は,直交するまっすぐな軸に対して相対的に点の位置を定める。多次

元の場合,全ての軸は,同じ距離計測単位をもたなければならない。CartesianCSは,一つ,二つ又は三つ

のgml:axisプロパティ要素をもたなければならない。 

12.4.4.4 CartesianCSPropertyType 

<complexType name="CartesianCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:CartesianCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:CartesianCSPropertyTypeは,直交座標系(cartesian CS)への関連役割のためのプロパティ型とする。

座標系を参照するか又は座標系の定義を含むかのいずれかである。 

12.4.4.5 VerticalCS 

<element name="VerticalCS" type="gml:VerticalCSType" 
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="VerticalCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:VerticalCSは,点の高さ又は深さを記録するために用いる一次元の座標系とする。このような座標系

113 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

は通常,地球の重力場によって決まる。大まかに大気圧を鉛直座標系(vertical CS)の軸の基準とすること

がある。VerticalCSは,一つのgml:axisプロパティ要素をもたなければならない。 

12.4.4.6 VerticalCSPropertyType 

<complexType name="VerticalCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:VerticalCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:VerticalCSPropertyTypeは,鉛直座標系(vertical CS)への関連役割のためのプロパティ型とし,座標

系を参照するか,又は座標系の定義を含むかのいずれかである。 

12.4.4.7 TimeCS 

<element name="TimeCS" type="gml:TimeCSType" substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="TimeCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:TimeCSは,時間の軸を含む一次元の座標系とし,特定の時間原点から特定の時間単位を使って,あ

る点の時間位置を記述するために用いる。TimeCSは,一つのgml:axisプロパティ要素をもたなければなら

ない。 

12.4.4.8 TimeCSPropertyType 

<complexType name="TimeCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:TimeCSPropertyTypeは,時間座標系(time CS)への関連役割のためのプロパティ型とし,座標系を

参照するか,又は座標系の定義を含むかのいずれかである。 

12.4.4.9 LinearCS 

<element name="LinearCS" type="gml:LinearCSType" substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="LinearCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:LinearCSは,ここで示す単一の軸上に位置する点群からなる一次元の座標系とする。この座標系を

用いる座標は,指定する原子から軸に沿った点までの,オフセットを含むか又は含まない距離とする。

LinearCSは,一つのgml:axisプロパティ要素をもたなければならない。 

例 輸送管路を表す線状の地物がある場合,この管路上の点又はこれに沿った点を記述するために用

いる。 

114 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記 gml:LinearCSは,単純で連続な線形のシステムのためにだけ用いることができる。線形参照系

(LRS)は,特に運輸産業に適用され,ISO 19133:2005がこれを定めるが,この規格で実装す

るものではない。 

12.4.4.10 LinearCSPropertyType 

<complexType name="LinearCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:LinearCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:LinewrCSPropertyTypeは,線形座標系(linear CS)への関連役割のためのプロパティ型とする。座標

系を参照するか又は座標系の定義を含むかのいずれかとする。 

12.4.4.11 UserDefinedCS 

<element name="UserDefinedCS" type="gml:UserDefinedCSType" 
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="UserDefinedCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:UserDefinedCSは,他の座標系の型が網羅していない座標軸の組合せからなる二次元又は三次元の座

標系とする。UserDefinedCSは,二つ又は三つのgml:axisプロパティ要素をもたなければならない。プロ

パティ要素の数は,CSの次元と一致しなければならない。 

例 多重線形(multilinear)座標系は,自己交差のない,任意の一次元の形状をとることができる一本

の座標軸をもつ。二次元又は三次元の座標系となるために,このまっすぐでない軸を,一本又は

二本のまっすぐな軸によって補完する。まっすぐではない軸は一般的には,局所的に直線又は曲

線となる。 

12.4.4.12 UserDefinedCSPropertyType 

<complexType name="UserDefinedCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:UserDefinedCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:UserDefinedCSPropertyTypeは,使用者定義の座標系への関連役割のためのプロパティ型とする。座

標系を参照するか又は座標系の定義を含むかのいずれかとする。 

12.4.4.13 SphericalCS 

<element name="SphericalCS" type="gml:SphericalCSType" 
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="SphericalCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

115 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexContent> 

</complexType> 

gml:SphericalCSは,原点からの距離と二つの角度座標とからなる三次元の座標系とする。 

注記 球に縮退した(degenerated)だ(楕)円体に基づくだ(楕)円体座標系と混同してはならない。 

SphericalCSは,三つのgml:axisプロパティ要素をもたなければならない。 

12.4.4.14 SphericalCSPropertyType 

<complexType name="SphericalCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:SphericalCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:SphericalCSPropertyTypeは,球面座標系(spherical CS)への関連役割のためのプロパティ型とする。

座標系を参照するか又は座標系の定義を含むかのいずれかとする。 

12.4.4.15 PolarCS 

<element name="PolarCS" type="gml:PolarCSType" substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="PolarCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:PolarCSは,原点からの距離,並びに対象となる点と原点とを結ぶ線及び基準となる方向との角度に

よって位置を特定する二次元の座標系とする。PolarCSは,二つのgml:axisプロパティ要素をもたなけれ

ばならない。 

12.4.4.16 PolarCSPropertyType 

<complexType name="PolarCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:PolarCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:PolarCSPropertyTypeは,極座標系(polar CS)への関連役割のためのプロパティ型とする。座標系を

参照するか又は座標系の定義を含むかのいずれかとする。 

12.4.4.17 CylindricalCS 

<element name="CylindricalCS" type="gml:CylindricalCSType"  
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="CylindricalCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:CylindricalCSは,極座標系に,それと垂直な直線座標軸を追加してできる三次元座標系とする。

CylindricalCSは,三つのgml:axisプロパティ要素をもたなければならない。 

116 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

12.4.4.18 CylindricalCSPropertyType 

<complexType name="CylindricalCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:CylindricalCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:CylindricalCSPropertyTypeは,円筒座標系(cylindrical CS)への関連役割のためのプロパティ型とす

る。座標系を参照するか又は座標系の定義を含むかのいずれかとする。 

12.4.4.19 AffineCS 

<element name="AffineCS" type="gml:AffineCSType" substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="AffineCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:AffineCSは,必ずしも直交しない直線軸をもつ二次元又は三次元の座標系とする。AffineCSは,二

つ又は三つのgml:axisプロパティ要素をもたなければならない。プロパティ要素の数は,CSの次元数と一

致しなければならない。 

12.4.4.20 AffineCSPropertyType 

<complexType name="AffineCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AffineCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:AffineCSPropetyTypeは,アフィン座標系(affine CS)への関連役割のためのプロパティ型とする。

座標系を参照するか又は座標系の定義を含むかのいずれかとする。 

12.5 原子 

12.5.1 概要 

原子スキーマの構成部品は,三つの論理的な部分に分けることができる。XMLによる符号化に必要な要

素及び型の定義を次に示す。 

− 抽象原子 

− だ(楕)円体及び本初子午線を含む測地原子 

− その他複数の,空間又は時間の原子の具象型 

これらのスキーマ構成部品は,ISO 19111:2007の箇条10及びこの規格のD.3.9に示すGMLモデルの原

子パッケージを符号化する。 

注記 原子スキーマ文書は,GMLSchemaのreferenceSystems.xsdを含む。このスキーマは,次の(URN

構文を用いた)位置独立名によって識別される。 

urn:x-ogc:specification:gml:schema-xsd:coordinateSystems:3.2.1 

12.5.2 抽象原子 

12.5.2.1 AbstractDatum 

117 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="AbstractDatum" type="gml:AbstractDatumType" abstract="true" 
substitutionGroup="gml:Definition"/> 

<complexType name="AbstractDatumType" abstract="true"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:domainOfValidity" minOccurs="0"/> 
<element ref="gml:scope" maxOccurs="unbounded"/> 
<element ref="gml:anchorDefinition" minOccurs="0"/> 
<element ref="gml:realizationEpoch" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:AbstractDatumは,地球と座標系との関係を示し,したがって,座標参照系を生成する。原子(datum)

は,座標参照系の原点の位置を定めるパラメタ又はパラメタの集合を用いる。原子の下位型は,それぞれ

特定の座標系の型と関連付けることができる。GML応用スキーマでは,この文書で示す具象の下位型と同

等の意味をもつ具象の下位型を定義するために,この抽象複合型を使用,拡張又は制限してはならない。 

12.5.2.2 anchorDefinition 

<element name="anchorDefinition" type="gml:CodeType"/> 

gml:anchorDefinitionは,原子を地球に固定するために用いる定義の説明とし,座標を含んでもよい。特

に,施工原子及び画像原子では,“原点”としても知られている。codeSpace属性は,この点又は面,若し

くはそれらの記述の集合の詳細な情報源の参照に用いることができる。 

− 測地原子にとって,この点は基本点(fundamental point)として知られており,伝統的にはジオイドと

だ(楕)円体との関係を定義する点のことである。“基本点”は,複数の点から構成されることもあ  

る。また,ジオイドとだ(楕)円体との関係を定義するパラメタがそれらの点の平均となっている場

合もあり,その平均が原子の定義として採用されてきた。 

− 施工原子にとって,固定点の定義は,物理的な点でもよいし,他のCRSの座標で定義された点でもよ

い。 

− 画像原子にとって,固定点の定義は,通常は,画像の中心又は画像の隅のいずれかである。 

− 時間原子では,この属性を定義しない。固定点の定義の代わりに,時間原子は,DateTime型の時間原

点を別にもつ。 

12.5.2.3 realizationEpoch 

<element name="realizationEpoch" type="date"/> 

gml:realizationEpochは,この原子の定義が有効となった時点とする。詳細は,ISO 19111:2007の表33を

参照。 

12.5.2.4 DatumPropertyType 

<complexType name="DatumPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractDatum"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

118 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

gml:DatumPropertyTypeは,原子への関連役割のためのプロパティ型とする。原子を参照するか,又は原

子の定義を記述するかのいずれかとする。 

12.5.3 測地原子 

12.5.3.1 GeodeticDatum 

<element name="GeodeticDatum" type="gml:GeodeticDatumType" 
substitutionGroup="gml:AbstractDatum"/> 

<complexType name="GeodeticDatumType"> 

<complexContent> 

<extension base="gml:AbstractDatumType"> 

<sequence> 

<element ref="gml:primeMeridian"/> 
<element ref="gml:ellipsoid"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:GeodeticDatumは,決められただ(楕)円体(又は球),又はこのだ(楕)円体(又は球)の中心を

通る直交座標系による三次元空間における正確な位置及び方向を定義する測地原子(geodetic darum)とす

る。 

12.5.3.2 primeMeridian 

<element name="primeMeridian" type="gml:PrimeMeridianPropertyType"/> 

gml:primeMeridianは,この測地原子が使用する本初子午線(prime meridian)への関連役割とする。 

12.5.3.3 ellipsoid 

<element name="ellipsoid" type="gml:EllipsoidPropertyType"/> 

gml:ellipsoidは,この測地原子が使用するだ(楕)円体(ellipsoid)への関連役割とする。 

12.5.3.4 GeodeticDatumPropertyType 

<complexType name="GeodeticDatumPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:GeodeticDatum"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:GeodeticDatumPropertyTypeは,測地原子(geodetic datum)への関連役割のためのプロパティ型とす

る。原子を参照するか,又は原子の定義を含むかのいずれかとする。 

12.5.3.5 Ellipsoid,semiMajorAxis及びsecondDefiningParameter 

<element name="Ellipsoid" type="gml:EllipsoidType" substitutionGroup="gml:Definition"/> 

<complexType name="EllipsoidType"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:semiMajorAxis"/> 

119 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:secondDefiningParameter"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:Ellipsoidは,地球の近似形状を記述するために用いることができる幾何図形とする。数学的に説明

すると,だ(楕)円体をその短軸を中心に回転させて形成される形の表面とする。 

<element name="semiMajorAxis" type="gml:MeasureType"/> 

gml:semiMajorAxisは,だ(楕)円体の長半径の長さを単位とともに指定する。これは,uomによって参

照される計測単位は長さに適するものに限るという制限の下,メートル又はフィートのような

MeasureTypeを用いる。 

<element name="secondDefiningParameter"> 

<complexType> 

<sequence> 

<element ref="gml:SecondDefiningParameter"/> 

</sequence> 

</complexType> 

</element> 

<element name="SecondDefiningParameter"> 

<complexType> 

<choice> 

<element name="inverseFlattening" type="gml:MeasureType"/> 
<element name="semiMinorAxis" type="gml:LengthType"/> 
<element name="isSphere" type="boolean" default="true"/> 

</choice> 

</complexType> 

</element> 

gml:secondDefiningParameterは,だ(楕)円体の形状を定める二つ目のパラメタの定義を含むプロパティ

とする。だ(楕)円体では,二つのパラメタを定義することが必要である。それは,長半径及び逆へん(扁)

平率又は長半径及び短半径である。参照体がだ(楕)円体ではなく球のときは,一つのパラメタの定義だ

けが必要となり,それを球の半径と呼ぶ。この場合,長半径が球の半径に“縮退”する。 

gml:inverseflattening要素は,だ(楕)円体の逆へん(扁)平率(inverse flattening)をもつ。この値は,

尺度係数(又は比率)である。uom属性が参照する計測単位は,尺度係数に適するものでなければならな

いという制限の下,例えば百分率,千分率又は百万分率のように,gml:MeasureTypeを使用する。 

gml:semiminorAxis要素は,だ(楕)円体の短半径長(semi minor axis)を含む。gml:isSphere要素を含む

場合,だ(楕)円体は縮退し,実質上球となる。球は,長半径によって完全に定義され,それは,球の半

径となる。 

12.5.3.6 EllipsoidPropertyType 

<complexType name="EllipsoidPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Ellipsoid"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

120 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

gml:EllipsoidPropertyTypeは,だ(楕)円体への関連役割のためのプロパティ型とする。だ(楕)円体を

参照するか又はだ(楕)円体の定義を含むかのいずれかとする。 

12.5.3.7 PrimeMeridian及びgreenwichLongitude 

<element name="PrimeMeridian" type="gml:PrimeMeridianType" substitutionGroup="gml:Definition"/> 

<complexType name="PrimeMeridianType"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:greenwichLongitude"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:PrimeMeridianは,経度の値を決定する原点を定義する。本初子午線(prime meridian)gml:identifier

の省略時値は,“Greenwich”である。 

<element name="greenwichLongitude" type="gml:AngleType"/> 

gml:greenwichLongitudeは,グリニッジ子午線から東回りを正として測った本初子午線の経度とする。本

初子午線の“name”の値が“Greenwich”の場合,greenwichLongitudeの値は0°でなければならない。こ

のプロパティには,gml:AngleTypeを用いる。 

12.5.3.8 PrimemeridianPropertyType 

<complexType name="PrimeMeridianPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:PrimeMeridian"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:PrimeMeridianPropertyTypeは,本初子午線(prime meridian)への関連役割のためのプロパティ型と

する。子午線を参照するか又は子午線の定義を含むかのいずれかとする。 

12.5.4 その他の具象原子 

12.5.4.1 EngineeringDatum 

<element name="EngineeringDatum" type="gml:EngineeringDatumType" 
substitutionGroup="gml:AbstractDatum"/> 

<complexType name="EngineeringDatumType"> 

<complexContent> 

<extension base="gml:AbstractDatumType"/> 

</complexContent> 

</complexType> 

gml:EngineeringDatumは,施工座標参照系(Engineering CRS)の原点を定義し,その原点周辺の範囲で

使用する。この原点は,建設用地に定義した点のように,地球に対して固定してもよいし,船上又は衛星

上のように移動媒体上に定義した点でもよい。 

12.5.4.2 EngineeringDatumPropertyType 

121 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="EngineeringDatumPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:EngineeringDatum"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:EngineeringDatumPropertyTypeは,施工基準原子(engineering datum)への関連役割のためのプロパ

ティ型とする。原子を参照するか又は原子の定義を含むかのいずれかとする。 

12.5.4.3 ImageDatum 

<element name="ImageDatum" type="gml:ImageDatumType" substitutionGroup="gml:AbstractDatum"/> 

<complexType name="ImageDatumType"> 

<complexContent> 

<extension base="gml:AbstractDatumType"> 

<sequence> 

<element ref="gml:pixelInCell"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:ImageDatumは,画像座標参照系(image CRS)の原点を定義し,局所的な状況でだけ使用する。画

像原子において,固定原点の定義は通常,画像の中心又は画像の隅のいずれかである。より詳細な情報は,

ISO 19111:2007のB.3.5を参照。 

12.5.4.4 pixelInCell 

<element name="pixelInCell" type="gml:CodeWithAuthorityType"/> 

gml:pixelInCellは,画像グリッドを画像データ属性に関連付ける方法を示す。必要となるcodeSpace属性

は,値を示す情報源及びこのプロパティのために許される全ての文字列値の意味を参照しなければならな

い。 

12.5.4.5 ImageDatumPropertyType 

<complexType name="ImageDatumPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:ImageDatum"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 
 

gml:ImagedatumPropertyTypeは,画像原子(image datum)への関連役割のためのプロパティ型とする。

原子を参照するか又は原子の定義を含むかのいずれかとする。 

12.5.4.6 VerticalDatum 

<element name="VerticalDatum" type="gml:VerticalDatumType" substitutionGroup="gml:AbstractDatum"/> 

<complexType name="VerticalDatumType"> 

<complexContent> 

<extension base="gml:AbstractDatumType"/> 

</complexContent> 

122 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

gml:VerticalDatumは,文字による記述及び/又は高さ0の面として用いる特定の基準面を識別するパラ

メタの集合とする。この規格が認める高さの型に対して,地球と対応付けた位置を含む。 

12.5.4.7 VerticalDatumPropertyType 

<complexType name="VerticalDatumPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:VerticalDatum"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:VerticalDatumPropertyTypeは,鉛直原子(vertical datum)への関連役割のためのプロパティ型とする。

原子を参照するか又は原子の定義を含むかのいずれかとする。 

12.5.4.8 TemporalDatum及びorigin 

<element name="TemporalDatum" type="gml:TemporalDatumType" 
substitutionGroup="gml:AbstractDatum"/> 

<complexType name="TemporalDatumType"> 

<complexContent> 

<extension base="gml:TemporalDatumBaseType"> 

<sequence> 

<element ref="gml:origin"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<complexType name="TemporalDatumBaseType" abstract="true"> 

<complexContent> 

<restriction base="gml:AbstractDatumType"> 

<sequence> 

<element ref="gml:metaDataProperty" minOccurs="0" maxOccurs="unbounded"/> 

<element ref="gml:description" minOccurs="0"/> 
<element ref="gml:descriptionReference" minOccurs="0"/> 
<element ref="gml:identifier"/> 
<element ref="gml:name" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:remarks" minOccurs="0"/> 
<element ref="gml:domainOfValidity" minOccurs="0"/> 
<element ref="gml:scope" maxOccurs="unbounded"/> 

</sequence> 
<attribute ref="gml:id" use="required"/> 

</restriction> 

</complexContent> 

</complexType> 

gml:TemporalDatumは,時間参照系(temporal CS)の原点を定義する。この型は,“anchorDefinition”及

び“realizationEpoch”要素を省略し,dateTime型の“origin”要素を追加する。 

TemporalDatumBaseTypeは,時間座標参照系(temporal CRS)の原点を部分的に定義する。この型は,

123 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

AbstractDatumTypeを制限し,“anchorDefinition”及び“realizationEphoch”要素を除く。 

<element name="origin" type="dateTime"/> 

gml:originは,時間原子(tempral datum)の原点となる日付及び時刻である。 

metaDataProperty要素は非推奨であり,gml:desctription要素は部分的に非推奨である。 

12.5.4.9 TemporalDatumPropertyType 

<complexType name="TemporalDatumPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TemporalDatum"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:TemporalDatumPropertyTypeは,時間原子(tempral datum)への関連役割のためのプロパティ型とす

る。時間原子を参照するか又は時間原子の定義を含むかのいずれかとする。 

12.6 座標演算 

12.6.1 概要 

空間又は時間の座標演算スキーマの構成要素は,次に示すように論理的に五つの部分に分けて,XML

符号化のための要素及び型を定義する。 

− 複数の抽象座標演算 

− 複数の座標演算の具象型。この座標演算は,変換及び換算を含む。 

− 抽象及び具象のパラメタ値,並びにそのグループ 

− 演算手法 

− 抽象及び具象の演算パラメタ,並びにそのグループ 

これらのスキーマの構成要素は,ISO 19111:2007の箇条11に対応したUMLモデルの座標演算パッケー

ジの符号化を行う。 

注記 座標演算(coordinate operation)スキーマは,GMLスキーマ文書であるcoordinateOperations.xsd

を含む。このスキーマ文書は,次の(URN構文を用いた)位置独立名によって識別される。 

urn:x-ogc:specification:gml:schema-xsd:coordinateOperations:3.2.1 

12.6.2 抽象座標演算 

12.6.2.1 AbstractCoordinateOperation 

<element name="AbstractCoordinateOperation" type="gml:AbstractCoordinateOperationType" abstract="true" 

substitutionGroup="gml:Definition"/> 

<complexType name="AbstractCoordinateOperationType" abstract="true"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:domainOfValidity" minOccurs="0"/> 

<element ref="gml:scope" maxOccurs="unbounded" /> 

<element ref="gml:operationVersion" minOccurs="0"/> 

<element ref="gml:coordinateOperationAccuracy" minOccurs="0" maxOccurs="unbounded"/> 

<element ref="gml:sourceCRS" minOccurs="0"/> 

124 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:targetCRS" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:AbstractCoordinateOperationは,座標の数学的な演算とする。この演算は,座標を他の座標参照系に

変換又は換算する。全てではないが,多くの座標演算(CRS A から CRS Bへ)では,逆演算(CRS B か

ら CRS Aへ)も一意に定義する。ある演算では,逆演算のためのアルゴリズムは,元の演算手法のアル

ゴリズムと同じであるが,幾つかの演算パラメタ値の符号は,逆にならなければならない。他の演算では,

元の演算と逆演算とでは異なるアルゴリズムを使うが,同じ演算パラメタを使用する。全く異なるパラメ

タ値が(何がしか)必要ならば,別の座標演算を定義しなければならない。 

任意選択のgml:coordinateOperationAccuracyプロパティ要素は,点の位置正確度に及ぼす座標操作の影響

についての推定値を示す。 

12.6.2.2 operationVersion 

<element name="operationVersion" type="string"/> 

gml:operationVersionは,座標変換の版とする(すなわち,パラメタ群の確率論的な性質の変化に伴うイ

ンスタンス化。)。gml:operationVersionは,変換についての記述には必須とするが,換算については示さな

いほうがよい。 

12.6.2.3 coordinateOperationAccuracy 

<element name="coordinateOperationAccuracy"> 

<complexType> 

<sequence minOccurs="0"> 

<element ref="gmd:AbstractDQ̲PositionalAccuracy"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

</element> 

gml:coordinateOperationAccuracyは,ISO/TS 19139の符号化として,DQ̲PositionalAccuracyオブジェクト

に対する関連役割とし,位置正確度の定義を参照するか又は内包する。オブジェクトがもつ値は,座標操

作による点の位置正確度に及ぼす影響についての推定値とする。すなわち,演算元の座標には誤差がない

と仮定した,演算先の座標の位置誤差の推定値とする。 

12.6.2.4 sourceCRS 

<element name="sourceCRS" type="gml:CRSPropertyType"/> 

gml:sourceCRSは,この座標演算の演算元の座標参照系(source CRS)に対する関連役割とする。 

12.6.2.5 targetCRS 

<element name="targetCRS" type="gml:CRSPropertyType"/> 

gml:targetCRSは,演算先の座標参照系(target CRS)に対する関連役割とする。 

12.6.2.6 CoordinateOperationPropertyType 

<complexType name="CoordinateOperationPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractCoordinateOperation"/> 

</sequence> 

125 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:CoordinateOperationPropertyTypeは,座標演算(coordinate operation)に対する関連役割のためのプロ

パティ型とし,座標演算の定義を参照するか又は内包する。 

12.6.2.7 AbstractSingleOperation 

<element name="AbstractSingleOperation" type="gml:AbstractCoordinateOperationType" abstract="true" 
substitutionGroup="gml:AbstractCoordinateOperation"/> 

gml:AbstractSingleOperationは,単一の(連結していない)座標演算とする。 

12.6.2.8 SingleOperationPropertyType 

<complexType name="SingleOperationPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractSingleOperation"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:SingleOperationPropertyTypeは,単一の演算に対する関連役割のためのプロパティ型とし,単一の演

算の定義を参照するか又は内包する。 

12.6.2.9 AbstractGeneralConversion 

<element name="AbstractGeneralConversion" type="gml:AbstractGeneralConversionType" abstract="true" 
substitutionGroup="gml:AbstractOperation"/> 

<complexType name="AbstractGeneralConversionType" abstract="true"> 

<complexContent> 

<restriction base="gml:AbstractCoordinateOperationType"> 

<sequence> 

<element ref="gml:metaDataProperty" minOccurs="0" maxOccurs="unbounded"/> 

<element ref="gml:description" minOccurs="0"/> 
<element ref="gml:descriptionReference" minOccurs="0"/> 
<element ref="gml:identifier"/> 
<element ref="gml:name" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:remarks" minOccurs="0"/> 
<element ref="gml:domainOfValidity" minOccurs="0"/> 
<element ref="gml:scope" maxOccurs="unbounded"/> 
<element ref="gml:coordinateOperationAccuracy" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 
<attribute ref="gml:id" use="required"/> 

</restriction> 

</complexContent> 

</complexType> 

gml:AbstractGeneralConversionは,原子の変更を一切伴わない,座標の抽象演算とする。最もよく知られ

た座標換算の例は,地図投影法である。座標換算の内容を決めるパラメタは,経験的に導出したというよ

りは,定義したものである。換算の中には,パラメタをもたないものがあることに注意しなければならな

い。gml:operationVersion要素,gml:sourceCRS要素及びgml:targetCRS要素は,座標換算では省略する。 

126 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

この抽象複合型は,多くのConversionインスタンスによって,よく知られた演算手法用に拡張すること

を見込んでいるもので,GML応用スキーマの中で演算手法を特定した要素名及び内容を定義する。この換

算では,通常は,手法と関連するパラメタ値を使う演算手法を使用する。しかしながら,演算手法及びパ

ラメタ値は,下位の具象型によって直接に関連させることとし,抽象型によっては関連させない。この抽

象型から派生した全ての具象型には,抽象型を拡張して,“OperationMethod”を参照する“usesMethod”要

素がなければならない。同様に,この抽象型から派生した全ての具象型には,この抽象型を拡張し,それ

ぞれ“uses...Value”と表記した零個以上の要素をもたせて,それぞれの要素で

“AbstractGeneralParameterValue”要素を置換できる要素の型を使うようにする。 

metaDataProperty要素は,非推奨とする。また,gml:description要素は,部分的に非推奨となった。 

12.6.2.10 GeneralConversionPropertyType 

<complexType name="GeneralConversionPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractGeneralConversion"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:GeneralConversionPropertyTypeは,一般的な換算に対する関連役割のためのプロパティ型とし,換算

の定義を参照するか又は内包する。 

12.6.2.11 AbstractGeneralTransformation 

<element name="AbstractGeneralTransformation" type="gml:AbstractGeneralTransformationType" 
abstract="true" 
substitutionGroup="gml:AbstractOperation"/> 

<complexType name="AbstractGeneralTransformationType" abstract="true"> 

<complexContent> 

<restriction base="gml:AbstractCoordinateOperationType"> 

<sequence> 

<element ref="gml:metaDataProperty" minOccurs="0" maxOccurs="unbounded"/> 

<element ref="gml:description" minOccurs="0"/> 
<element ref="gml:descriptionReference" minOccurs="0"/> 
<element ref="gml:identifier"/> 
<element ref="gml:name" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:remarks" minOccurs="0"/> 
<element ref="gml:domainOfValidity" minOccurs="0"/> 
<element ref="gml:scope" maxOccurs="unbounded"/> 
<element ref="gml:operationVersion"/> 
<element ref="gml:coordinateOperationAccuracy" minOccurs="0" 
maxOccurs="unbounded"/> 
<element ref="gml:sourceCRS"/> 
<element ref="gml:targetCRS"/> 

</sequence> 
<attribute ref="gml:id" use="required"/> 

</restriction> 

</complexContent> 

</complexType> 

127 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:AbstractGeneralTransformationは,通常は原子の変更を伴う座標の抽象演算とする。座標変換

(transformation)のパラメタは,両方の座標参照系に属する点列の座標をもったデータから,経験的に導

出する。この計算処理では,通常,変換に対する誤差(又は正確度)の推定を可能とするために,解を求

める式の数は過剰になる。また,パラメタが確率論的な性質をもつことによって,結果として,同じ座標

変換で複数の(異なる)版をもたらす可能性がある。gml:operationVersionプロパティ要素,gml:sourceCRS

プロパティ要素及びgml:targetCRSプロパティ要素は,座標変換に必須な要素とする。 

この抽象複合型は,多数のTransformationインスタンスによって,よく知られた演算手法用に拡張する

ことを見込んでいるものであり,GML応用スキーマの中で演算手法を特定する値の要素名及び内容を定義

する。この変換は,手法と関連するパラメタ値とともに演算手法を使用する。しかしながら,演算手法及

びパラメタ値は,下位の具象型によって直接に関連させることとし,抽象型による関連はない。この抽象

型から派生した全ての具象型には,この抽象型を拡張して,“OperationMethod”を参照する“usesMethod”

要素がなければならない。同様に,この抽象型から派生した全ての具象型は,この抽象型を拡張しなけれ

ばならず,それぞれ“uses...Value”と表記した零個以上の要素をもたせて,それぞれの要素で

“AbstractGeneralParameterValue”要素を置換できる要素の型を使うようにする。 

metaDataProperty要素は,非推奨とする。また,gml:description要素は,部分的に非推奨となっている。 

12.6.2.12 GeneralTransformationPropertyType 

<complexType name="GeneralTransformationPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractGeneralTransformation"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:GeneralTransformationPropertyTypeは,一般的な変換に対する関連役割のためのプロパティ型とし,

変換の定義を参照するか又は内包する。 

12.6.3 具象座標演算 

12.6.3.1 ConcatenatedOperation 

<element name="ConcatenatedOperation" type="gml:ConcatenatedOperationType" 
substitutionGroup="gml:AbstractCoordinateOperation"/> 
<complexType name="ConcatenatedOperationType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateOperationType"> 

<sequence> 

<element ref="gml:coordOperation" minOccurs="2" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

gml:ConcatenatedOperationは,順序付けした一連の二つ以上の座標演算(coordinate operation)の列とす

る。この一連の演算は,一定の要件に従う。この要件とは,n+1番目のステップの演算の演算元の座標参

照系は,n番目のステップの演算から出力される座標参照系と同じものでなければならないというもので

ある。1番目の演算ステップである演算元の座標参照系及び最後の演算ステップの演算先の座標参照系は,

連結演算に関連付ける演算元及び演算先の座標参照系に等しい。逆演算が元のアルゴリズムの演算に対応

128 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

して一意に定まるときは,元のアルゴリズムの演算ばかりでなく,逆演算を上述の一つ以上の演算ステッ

プに使用することができる。 

gml:coordOperationプロパティ要素は,連結演算で使う二つ以上の演算への順序付けした一連の関連の列

である。gml:AggregationAttributeGroupは,gml:coordOperation関連が順序付けしてあることを明示するた

めに用いるとよい。 

12.6.3.2 coordOperation 

<element name="coordOperation" type="gml:CoordinateOperationPropertyType"/> 

gml:coordOperationは,座標演算への関連役割とする。 

12.6.3.3 ConcatenatedOperationPropertyType 

<complexType name="ConcatenatedOperationPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:ConcatenatedOperation"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:ConcatenatedOperationPropertyTypeは,連結演算への関連役割のためのプロパティ型とする。このプ

ロパティ型は,連結演算の定義を参照するか又は内包する。 

12.6.3.4 PassThroughOperation 

<element name="PassThroughOperation" type="gml:PassThroughOperationType" 
substitutionGroup="gml:AbstractSingleOperation"/> 
<complexType name="PassThroughOperationType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateOperationType"> 

<sequence> 

<element ref="gml:modifiedCoordinate" maxOccurs="unbounded"/> 
<element ref="gml:coordOperation"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

gml:PassThroughOperationは,座標の一部(となる座標成分の組)が特定の座標演算の対象になることを

指定する。 

gml:modifiedCoordinateプロパティ要素は,順序付けした一連の正の整数の並びとし,この特定の通過演

算(pass-through operation)の対象となる座標成分が座標のどこに位置するかを定義する。

gml:AggregationAttributeGroupは,gml:modifiedCoordinate要素が順序付けしてあることを明示するために用

いるとよい。 

12.6.3.5 modifiedCoordinate 

<element name="modifiedCoordinate" type="positiveInteger"/> 

gml:modifiedCoordinateは,座標の中の成分の位置を定義する正の整数とする。 

12.6.3.6 PassThroughOperationPropertyType 

<complexType name="PassThroughOperationPropertyType"> 

<sequence minOccurs="0"> 

129 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:PassThroughOperation"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:PassThroughOperationPropertyTypeは,この特定の通過演算(pass-through operation)への関連役割の

ためのプロパティ型とし,この通過演算の定義を参照するか又は内包する。 

12.6.3.7 Conversion 

<element name="Conversion" type="gml:ConversionType" 
substitutionGroup="gml:AbstractGeneralConversion"/> 

<complexType name="ConversionType"> 

<complexContent> 

<extension base="gml:AbstractGeneralConversionType"> 

<sequence> 

<element ref="gml:method"/> 
<element ref="gml:parameterValue" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:Conversionは,原子の変更を一切含まない座標の具象演算とする。よく知られた座標換算(coordinate 

conversion)は,地図投影である。座標換算の内容を決めるパラメタは,定義であり経験的に導出したもの

ではない。換算の中には,パラメタをもたないものがあることに注意しなければならない。 

この具象複合型は,演算手法を特定した要素の名称及び内容を定義するGML応用スキーマを用いずに

使用できる。一つのConversionインスタンスだけをもつ手法に専ら用いる。 

12.6.3.8 method 

<element name="method" type="gml:OperationMethodPropertyType"/> 

gml:methodは,座標演算で用いる演算手法への関連役割とする。 

12.6.3.9 parameterValue 

<element name="parameterValue" type="gml:AbstractGeneralParameterValuePropertyType"/> 

gml:parameterValueは,座標演算で使用するパラメタ値又はパラメタ値のグループへの合成関連とする。 

12.6.3.10 ConversionPropertyType 

<complexType name="ConversionPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Conversion"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:ConversionPropertyTypeは,一般的な具象換算への関連役割のためのプロパティ型とし,換算の定義

を参照するか又は内包する。 

12.6.3.11 Transformation 

<element name="Transformation" type="gml:TransformationType" 
substitutionGroup="gml:AbstractGeneralTransformation"/> 

<complexType name="TransformationType"> 

130 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexContent> 

<extension base="gml:AbstractGeneralTransformationType"> 

<sequence> 

<element ref="gml:method"/> 
<element ref="gml:parameterValue" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:Transformationは,gml:AbstractGeneralTransformation (12.6.2.11参照)から派生した具象オブジェク

ト要素とする。 

この具象オブジェクトは,演算手法を特定した要素の名称及び内容を定義するGML応用スキーマを用

いずに,全ての演算手法に使用することができる。一つのTransformationインスタンスだけをもつ手法に

専ら用いる。 

gml:parameterValue要素は,換算演算で使用するパラメタ値の集合への合成関連についての順序付けのな

いリストである。 

12.6.3.12 TransformationPropertyType 

<complexType name="TransformationPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Transformation"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:TransformationPropertyTypeは,変換(transformation)への関連役割のためのプロパティ型とし,変

換の定義を参照するか又は内包する。 

12.6.4 パラメタ値及びパラメタ値のグループ 

12.6.4.1 AbstractGeneralParameterValue 

<element name="AbstractGeneralParameterValue" type="gml:AbstractGeneralParameterValueType" 
abstract="true" substitutionGroup="gml:AbstractObject"/> 

<complexType name="AbstractGeneralParameterValueType" abstract="true"> 

<sequence/> 

</complexType> 

gml:AbstractGeneralParameterValueは,抽象パラメタ値又は抽象パラメタ値のグループである。 

この抽象複合型は,多くのインスタンスによってよく知られた演算手法用に拡張及び制限することを見

込んでいるものであり,GML応用スキーマの中で演算手法を特定した要素の名称及び内容を定義する。特

定のパラメタ値の要素は,下位の具象型に直にもたせるが,この抽象型にはもたせない。この抽象型から

派生した全ての具象型は,この抽象型を拡張して,ParameterValueTypeで許される要素型の一つとなる適

切な型を用いた“...Value”要素を一つ含まなければならない。さらに,この抽象型から派生した全ての具

象型は,この抽象型を拡張して,“operationParameter”プロパティ要素を含まなければならない。このプロ

パティ要素は,“OperationParameter”オブジェクト要素を代替できる一つの要素を参照する。 

12.6.4.2 AbstractGeneralParameterValuePropertyType 

<complexType name="AbstractGeneralParameterValuePropertyType"> 

<sequence> 

131 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:AbstractGeneralParameterValue" /> 

</sequence> 

</complexType> 

gml:AbstractGeneralParameterValuePropertyTypeは,パラメタ値又はパラメタ値のグループへの要素内の関

連役割のためのプロパティ型であり,常に値をもつ。 

12.6.4.3 ParameterValue 

<element name="ParameterValue" type="gml:ParameterValueType" 
substitutionGroup="gml:AbstractGeneralParameterValue"/> 

<complexType name="ParameterValueType"> 

<complexContent> 

<extension base="gml:AbstractGeneralParameterValueType"> 

<sequence> 

<choice> 

<element ref="gml:value"/> 

<element ref="gml:dmsAngleValue"/> 

<element ref="gml:stringValue"/> 
<element ref="gml:integerValue"/> 
<element ref="gml:booleanValue"/> 
<element ref="gml:valueList"/> 
<element ref="gml:integerValueList"/> 
<element ref="gml:valueFile"/> 

</choice> 
<element ref="gml:operationParameter"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:ParameterValueは,パラメタ値,順序付けした一連の値又はパラメタ値のファイルへの参照とする。

この具象複合型は,演算手法を特定した要素名及び内容を定義するGML応用スキーマを用いずに,演算

手法に使用できる。一つのインスタンスだけをもつ手法に専ら用いる。この(抽象)複合型を,よく知ら

れた演算手法のために,特に多くのインスタンスをもつ手法のために,使用し,拡張し又は制限してもよ

い。 

dmsAngleValue要素は,非推奨とする。 

12.6.4.4 value 

<element name="value" type="gml:MeasureType"/> 

gml:valueは,演算パラメタの数値であり,これに関連する計測単位をもつ。 

12.6.4.5 stringValue 

<element name="stringValue" type="string"/> 

gml:stringValueは,演算パラメタの文字列の値とする。文字列の値には,関連する計測単位はない。 

12.6.4.6 integerValue 

<element name="integerValue" type="positiveInteger"/> 

gml:integerValueは,演算パラメタの正の整数値とし,通常は計数に使用する。整数値には,関連する計

測単位はない。 

132 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

12.6.4.7 booleanValue 

<element name="booleanValue" type="boolean"/> 

gml:integerValueは,演算パラメタのブール値とする。ブール値には,関連する計測単位はない。 

12.6.4.8 valueList 

<element name="valueList" type="gml:MeasureListType"/> 

gml:valueListは,演算パラメタリストである順序付けした一連の二つ以上の数値とし,値それぞれに関

連する同じ計測単位をもつ。この型の要素は,スペースで区切った一連の倍精度浮動小数点数の値をもつ。 

12.6.4.9 integerValueList 

<element name="integerValueList" type="gml:integerList"/> 

gml:integerValueListは,演算パラメタリストである順序付けした二つ以上の整数値の列とし,通常は計

数に用いる。これらの整数値には,関連する計測単位はない。この型の要素は,スペースで区切った整数

値の列をもつ。 

12.6.4.10 valueFile 

<element name="valueFile" type="anyURI"/> 

gml:valueFileは,数値ごとに関連する計測単位が付いた,一つ以上のパラメタをもつファイルへの参照

又はファイルの一部への参照とする。ファイルの一部を参照するには,ファイルの中にXML符号化文書

のように,複数の識別できる部分がなければならない。さらに,参照先のファイル又はファイルの一部は,

XML文書で許されているように,同じ又は異なるファイルの他の部分を参照してもよい。 

12.6.4.11 operationParameter 

<element name="operationParameter" type="gml:OperationParameterPropertyType"/> 

gml:operationParameterは,これ自体が演算パラメタ値であり,その演算パラメタへの関連役割とする。 

12.6.4.12  ParameterValueGroup 

<element name="ParameterValueGroup" type="gml:ParameterValueGroupType" 
substitutionGroup="gml:AbstractGeneralParameterValue"/> 

<complexType name="ParameterValueGroupType"> 

<complexContent> 

<extension base="gml:AbstractGeneralParameterValueType"> 

<sequence> 

<element ref="gml:parameterValue" minOccurs="2" maxOccurs="unbounded"/> 
<element ref="gml:group"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:ParameterValueGroupは,相互に関係のあるパラメタ値からなるグループとする。同じ型のグループ

を,換算,変換又は上位のParameterValueGroupの中で,1回以上繰り返すことができる。ただし,これら

のグループのインスタンスは,グループの区別がうまくできるように,一つ以上のparameterValuesについ

て異なる値をもたなければならない。この具象複合型は,演算手法を特定した要素名及び内容を定義する

GML応用スキーマを用いずに,演算手法に使用できる。この(抽象)複合型は,よく知られた演算手法の

ために,使用し,拡張し又は制限してもよい。一つのインスタンスだけをもつ手法に専ら用いる。 

gml:parameterValue要素は,このグループに内包しているパラメタ値及びパラメタ値のグループに対する

133 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

合成役割についての,順序付けのない集合とする。 

12.6.4.13 group 

<element name="group" type="gml:OperationParameterGroupPropertyType"/> 

gml:groupは,この要素がパラメタ値を提供している演算パラメタグループに対する関連役割とする。 

12.6.5 演算手法 

12.6.5.1 OperationMethod 

<element name="OperationMethod" type="gml:OperationMethodType" substitutionGroup="gml:Definition"/> 

<complexType name="OperationMethodType"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<choice> 

<element ref="gml:formulaCitation"/> 
<element ref="gml:formula"/> 

</choice> 
<element ref="gml:sourceDimensions" minOccurs="0"/> 
<element ref="gml:targetDimensions" minOccurs="0"/> 
<element ref="gml:parameter" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:OperationMethodは,座標演算の実行に用いる手法(アルゴリズム又は手続)とする。幾つかの座標

換算ではパラメタを使わないが,演算手法のほとんどは,複数の演算パラメタを用いる。 

各座標変換では,ここに示す手法を使って,値をこれらの複数のパラメタに割り当てる。gml:parameter

要素は,この演算手法で使用するパラメタ及びパラメタグループに対する関連についての,順序付けのな

いリストとする。 

12.6.5.2 formula及びformulaCitation 

<element name="formula" type="gml:CodeType"/> 

gml:formulaは,演算手法で使用する式又は手続とする。 

codespace属性の使用は,非推奨とする。プロパティの値は,文字列でなければならない。 

<element name="formulaCitation"> 

<complexType> 

<sequence minOccurs="0"> 

<element ref="gmd:CI̲Citation"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

</element> 

gml:formulaCitationは,座標演算手法で用いる式又は手続を載せた発行物についての参照情報とする。 

12.6.5.3 sourceDimensions 

<element name="sourceDimensions" type="positiveInteger"/> 

gml:sourceDimensionsは,この演算手法の演算元のCRSの次元の数とする。 

134 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

12.6.5.4 targetDimensions 

<element name="targetDimensions" type="positiveInteger"/> 

gml: targetDimensionsは,この演算手法の座標変換先のCRSの次元の数とする。 

12.6.5.5 parameter 

<element name="parameter" type="gml:AbstractGeneralOperationParameterPropertyType"/> 

gml:parameterは,演算パラメタ又はパラメタグループに対する関連とする。 

12.6.5.6 OperationMethodPropertyType 

<complexType name="OperationMethodPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:OperationMethod"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:OperationMethodPropertyTypeは,具象一般演算手法に対する関連役割のためのプロパティ型とし,

その手法の定義を参照するか又は定義を内包する。 

12.6.6 演算パラメタ及びグループ 

12.6.6.1 AbstractGeneralOperationParameter 

<element name="AbstractGeneralOperationParameter" type="gml:AbstractGeneralOperationParameterType" 
abstract="true" substitutionGroup="gml:Definition"/> 

<complexType name="AbstractGeneralOperationParameterType" abstract="true"> 

<complexContent> 

<extension base="gml:IdentifiedObjectType"> 

<sequence> 

<element ref="gml:minimumOccurs" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:GeneralOperationParameterは,演算手法が用いるパラメタ又はパラメタグループの抽象定義とする。 

12.6.6.2 minimumOccurs 

<element name="minimumOccurs" type="nonNegativeInteger"/> 

gml:minimumOccursは,このパラメタグループの値又はパラメタ値が存在する回数の最小値とする。こ

の値が省略される場合,最小値は1とする。 

12.6.6.3 AbstractGeneralOperationParameterPropertyType 

<complexType name="AbstractGeneralOperationParameterPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractGeneralOperationParameter"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:AbstractGeneralOperationParameterPropertyTypeは,演算パラメタ又はグループに対する関連役割のた

めのプロパティ型とし,パラメタ又はグループの定義を参照するか又は定義を内包する。 

12.6.6.4 OperationParameter 

135 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="OperationParameter" type="gml:OperationParameterType" 
substitutionGroup="gml:AbstractGeneralOperationParameter"/> 

<complexType name="OperationParameterType"> 

<complexContent> 

<extension base="gml:AbstractGeneralOperationParameterType"> 

<sequence/> 

</extension> 

</complexContent> 

</complexType> 

gml:OperationParameterは,演算手法で用いるパラメタの定義とする。パラメタ値のほとんどは数値であ

るが,他の型のパラメタ値を用いることもできる。この複合型は,演算方法を特定した要素名を定義する

ことなしに,演算手法全てのために使用し,拡張することを見込んでいる。 

12.6.6.5 OperationParameterPropertyType 

<complexType name="OperationParameterPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:OperationParameter"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:OperationParameterPropertyTypeは,演算パラメタに対する関連役割のためのプロパティ型とし,そ

のパラメタの定義を参照するか又は定義を内包する。 

12.6.6.6 OperationParameterGroup 

<element name="OperationParameterGroup" type="gml:OperationParameterGroupType" 
substitutionGroup="gml:AbstractGeneralOperationParameter"/> 

<complexType name="OperationParameterGroupType"> 

<complexContent> 

<extension base="gml:AbstractGeneralOperationParameterType"> 

<sequence> 

<element ref="gml:maximumOccurs" minOccurs="0"/> 
<element ref="gml:parameter" minOccurs="2" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:OperationParameterGroupは,演算手法で用いるパラメタのグループの定義とする。 

この複合型は,演算方法を特定した要素名を定義することなしに,適用可能な演算手法全てのために,

使用し,拡張することを見込んでいる。 

gml:parameter要素は,この演算グループのメンバである演算パラメタの集合に対する関連についての,

順序付けのないリストとする。 

12.6.6.7 maximumOccurs 

<element name="maximumOccurs" type="positiveInteger"/> 

gml:maximumOccursは,このパラメタグループの値が存在してもよい回数の最大値とする。このパラメ

タが省略される場合,最大数は1とする。 

136 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

12.6.6.8 OperationParameterPropertyType 

<complexType name="OperationParameterGroupPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:OperationParameterGroup"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:OperationParameterPropertyTypeは,演算パラメタグループへの関連役割のためのプロパティ型とし,

パラメタグループの定義を参照するか又は定義を内包する。 

13 GMLスキーマ−位相 

13.1 一般概念 

13.1.1 概要 

位相とは,連続的な変形の下でも不変なオブジェクトの性質を記述する数学の分野とする。例えば,円

は,それを広げることによってだ(楕)円に変形するため,だ(楕)円と位相的には等しい。地理モデル

では,位相の主要な使い道は,計算幾何の高速化である。位相の構成は,単純な組合せアルゴリズム又は

代数アルゴリズムを使う,オブジェクト間の空間関係の特徴付けを可能にする。適切な幾何によって実現

した位相は,地物間で共有する幾何を表現するために簡潔で組合せ的なメカニズムも可能にする。 

注記1 GMLの位相モデルは,JIS X 7107:2005に適合する。基となるGML位相モデルの要素及び型

の概念は,より詳細にこの文書中で規定する。 

箇条13では,GMLで規定した位相スキーマ構成要素を示す。 

注記2 位相スキーマ文書に対応するtopology.xsd(附属書C参照)は,次の(URN構文を使った)

位置独立名によって識別する。 

urn:x-ogc:specification:gml:schema-xsd:topology:3.2.1 

基本的な位相オブジェクトにはインスタンス化可能な四つのクラスがあり,一つのクラスにつき,それ

ぞれ三次までの次元がある。さらに,位相複体が使用できる。 

隣接した次元の位相プリミティブ間の(位相境界及び双対境界)関係には,強い対称性がある。位相プ

リミティブは,一つ低い次元の有向プリミティブによって囲まれている。それぞれの位相プリミティブの

双対境界は,一つ高い次元の有向位相プリミティブから形成される。 

13.1.2 JIS X 7107との関係 

箇条13で規定するGMLスキーマの空間位相構成部品は,JIS X 7107空間スキーマ(位相)に適合する

部分的な実装を与える。この関係の詳細は,D.2.3で示す。 

GMLで実装しているJIS X 7107 位相型は,JIS X 7107で規定している。そして,幾つかの追加制限を,

これらの型に対してJIS X 7107で規定しており,GMLスキーマの空間位相構成部品においても,それら

の制限が存在する。 

さらに,GMLは,D.3.10で規定しているように,補足的空間位相スキーマ構成部品を規定する。 

13.2 抽象位相 

<complexType name="AbstractTopologyType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGMLType"/> 

</complexContent> 

137 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

<element name="AbstractTopology" type="gml:AbstractTopologyType" abstract="true" 
substitutionGroup="gml:AbstractGML"/> 

この抽象型は,プリミティブ及び複合体を含む全ての位相要素の根底又は基本型を与える。 

gml:AbstractTopologyは,JIS X 7107のTP̲Object を実装する(D.2.4.2及びJIS X 7107:2005の7.2.2参照)。 

13.3 位相プリミティブ 

13.3.1 抽象位相プリミティブ 

13.3.1.1 AbstractTopoPrimitiveType及びAbstractTopoPrimitive 

<complexType name="AbstractTopoPrimitiveType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractTopologyType"> 

<sequence/> 

</extension> 

</complexContent> 

</complexType> 

<element name="AbstractTopoPrimitive" type="gml:AbstractTopoPrimitiveType" abstract="true" 
substitutionGroup="gml:AbstractTopology"/> 

gml:AbstractTopoPrimitiveは,JIS X 7107のTP̲Primitiveを実装する(D.2.4.3及びJIS X 7107:2005の7.3.10

参照)。 

この抽象型は,全ての位相プリミティブ(topological primitive)の基本型としての役割を担う。位相プリ

ミティブは,位相複体中の最小の不可分な要素とする。 

それぞれの位相プリミティブは,次元の差が2以上の(下位型で実装されているgml:isolated)他の位相

プリミティブへの参照を含むことができる。 

例 フェイスは,孤立ノードを含むことができ,立体は,孤立ノード及びエッジを含むことができる

が,ノードは,コンテナとしてフェイスをもつことができ,そして,ノード及びエッジは,コン

テナ(下位型で実装されているgml:container)として立体をもつことができる。 

13.3.2 位相プリミティブ(零次元) 

13.3.2.1 NodeType及びNode 

<complexType name="NodeType"> 

<complexContent> 

<extension base="gml:AbstractTopoPrimitiveType"> 

<sequence> 

<element name="container" type="gml:FaceOrTopoSolidPropertyType" minOccurs="0"/> 
<element ref="gml:directedEdge" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:pointProperty" minOccurs="0"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="Node" type="gml:NodeType" substitutionGroup="gml:AbstractTopoPrimitive"/> 

138 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:Nodeは,零次元プリミティブを代表し,JIS X 7107のTP̲Nodeを実装する(D.2.4.3及びJIS X 

7107:2005の7.3.12参照)。 

gml:containerプロパティ要素は,JIS X 7107の“Isolated In”関連の同じ名前の役割を実装する(JIS X 

7107:2005の7.3.10.4及びこの規格のD.2.4.3参照)。 

<complexType name="FaceOrTopoSolidPropertyType"> 

<choice minOccurs="0"> 

<element ref="gml:Face"/> 
<element ref="gml:TopoSolid"/> 

</choice> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

ノード(node)の任意の双対境界(gml:directedEdge)は,このノードに出入りする有向エッジ(directed 

edge)の列とする。このノードから出るエッジは,負の向きを伴ってノード双対境界に現れる。 

平面位相の場合,gml:directedEdgesの列は,欠損のない位相表現を保障するために時計回りでなければ

ならない。 

その場合,aggregationType属性は,値“sequence”をもたなければならない。 

ノードは,任意に零次元幾何プリミティブ(gml:pointProperty)によって幾何実現することができる。 

13.3.2.2 DirectedNodePropertyType及びdirectedNode 

<element name="directedNode" type="gml:DirectedNodePropertyType"/> 

<complexType name="DirectedNodePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Node"/> 

</sequence> 
<attribute name="orientation" type="gml:SignType" default="+"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:directedNodeプロパティ要素は,位相エッジの境界を示し,後述するgml:TopoPoint表現を通して位

相点地物に使用する。gml:SignType型の方向(orientation)属性は,含まれたノードが,始点ノード(“-”)

又は終点ノード(“+”)として使われているという意味を表す。 

13.3.3 位相プリミティブ(一次元) 

13.3.3.1 EdgeType及びEdge 

<complexType name="EdgeType"> 

<complexContent> 

<extension base="gml:AbstractTopoPrimitiveType"> 

<sequence> 

<element name="container" type="gml:TopoSolidPropertyType" minOccurs="0"/> 
<element ref="gml:directedNode" minOccurs="2" maxOccurs="2"/> 
<element ref="gml:directedFace" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:curveProperty" minOccurs="0"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

139 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</extension> 

</complexContent> 

</complexType> 

<element name="Edge" type="gml:EdgeType" substitutionGroup="gml:AbstractTopoPrimitive"/> 

gml:Edgeは,一次元プリミティブを表現し,JIS X 7107のTP̲Edgeを実装する(D.2.4.3及びJIS X 

7107:2005の7.3.14参照)。 

gml:containerプロパティ要素は,JIS X 7107の“Isolated In”関連における同じ名前の役割を実装してい

る(JIS X 7107:2005の7.3.10.4及びこの規格のD.2.4.3参照)。 

エッジの位相境界(gml:directed node)は,負の有向始点ノード(directed start Node)及び正の有向終点

ノード(directed end Node)からなる。 

エッジの任意選択の双対境界(gml:directedFace)は,出現順にこのエッジに出入りする有向フェイス

(directed face)の環状列とする。二次元の場合,エッジの左側のフェイスの向きは“+”で,エッジの右

側のフェイスの向きは“-”になる。 

その場合,aggregationType属性は,値“sequence”をもたなければならない。 

エッジは,一次元幾何プリミティブ(gml:curveProperty)によって任意選択で幾何実現することができる。 

13.3.3.2 DirectedEdgePropertyType及びdirectedEdge 

<element name="directedEdge" type="gml:DirectedEdgePropertyType"/> 

<complexType name="DirectedEdgePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Edge"/> 

</sequence> 
<attribute name="orientation" type="gml:SignType" default="+"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:directedEdgeプロパティ要素は,位相フェイスの境界及び位相ノードの双対境界を示し,後述する

gml:TopoCurve表示を通して位相線地物に使用する。gml:SignType型の方向(orientation)属性は,含まれ

ているエッジが,進行方向又は反対方向で使われているという意味を表す。 

13.3.4 位相プリミティブ(二次元) 

13.3.4.1 FaceType及びFace 

<complexType name="FaceType"> 

<complexContent> 

<extension base="gml:AbstractTopoPrimitiveType"> 

<sequence> 

<element name="isolated" type="gml:NodePropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 

<element ref="gml:directedEdge" maxOccurs="unbounded"/> 
<element ref="gml:directedTopoSolid" minOccurs="0" maxOccurs="2"/> 
<element ref="gml:surfaceProperty" minOccurs="0"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 
<attribute name="universal" type="boolean" use="optional" default="false"/> 

140 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</extension> 

</complexContent> 

</complexType> 

<element name="Face" type="gml:FaceType" substitutionGroup="gml:AbstractTopoPrimitive"/> 

gml:Faceは,二次元位相プリミティブを表し,JIS X 7107のTP̲Faceを実装する(D.2.4.3及びJIS X 

7107:2005の7.3.16参照)。 

gml:isolatedプロパティ要素は,JIS X 7107の“Isolated In”関連と同じ名前の役割を実装する(JIS X 

7107:2005の7.3.10.4及びこの規格のD.2.4.3参照)。 

フェイスの位相境界(gml:directedEdge)は,有向エッジの列からなる。その場合,aggregationType属性

は,値“sequence”をもたなければならない。 

注記1 ぶら下がりエッジを含め,フェイスに関連する全てのエッジは,境界に現れる。ぶら下がり

エッジは,両側に同じフェイスをもつ。結果的に,一つのぶら下がりエッジは,その境界に

二つの異なったノードをもつ。ぶら下がりエッジは,零か,一つ,又は二つの異なったノー

ドをフェイスの境界にある他のエッジと共有することができる。異なった向きをもった二つ

のdirectedEdge要素は,フェイスの境界にあるそれぞれのぶら下がりエッジを参照する。フ

ェイスの境界にあるぶら下がりのないエッジは,一つ以上の位相輪を構成する。それぞれの

輪は,輪体の中でつながった複数のdirectedEdgeからなり,その左側にフェイスがある。 

フェイス(gml:directedTopoSolid)の任意の双対境界は,このフェイスによって区切られた一対の有向立

体とする。正の有向立体は,いかなる幾何実現でも,フェイスから負の向きをもつ法線の向きにある一つ

の立体に対応している。 

フェイスは,二次元幾何プリミティブ(gml:surfaceProperty)によって任意に実現することができる。 

位相表現が非有界な多様体として存在する場合は(例 ユークリッド面),gml:Faceは,欠損のない位相

表現を保証するために,それが全域フェイスであるかそうではないかを示さなければならない。ブール型

の任意の大域属性は,これを示すために使う。 

注記2 全域フェイスは,通常,どんな地物の一部でもなく,非有界なデータ集合の一部分を表現す

るために使う。その内側境界(外部境界はもたない。)は,通常,データ集合によって表現さ

れた地図の外部境界と考えられる。 

13.3.4.2 DirectedFacePropertyType及びdirectedFace 

<element name="directedFace" type="gml:DirectedFacePropertyType"/> 

<complexType name="DirectedFacePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Face"/> 

</sequence> 
<attribute name="orientation" type="gml:SignType" default="+"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:directedFaceプロパティ要素は,位相エッジの双対境界に含まれ,位相立方体(topological solid)の

境界を記述し,後述するgml:TopoSurface表現を通して曲面地物に使用する。gml:SignType型の方向

(orientation)属性は,含まれたフェイスが,例えば,どんな幾何実現に対しても法線方向にある曲面に関

141 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

して,内向きか外向きかで使われるという意味で表現する。 

13.3.5 位相プリミティブ(三次元) 

13.3.5.1 TopoSolidType及びTopoSolid 

<complexType name="TopoSolidType"> 

<complexContent> 

<extension base="gml:AbstractTopoPrimitiveType"> 

<sequence> 

<element name="isolated" type="gml:NodeOrEdgePropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 

<element ref="gml:directedFace" maxOccurs="unbounded"/> 
<element ref="gml:solidProperty" minOccurs="0"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 
<attribute name="universal" type="boolean" use="optional" default="false"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="TopoSolid" type="gml:TopoSolidType" substitutionGroup="gml:AbstractTopoPrimitive"/> 

gml:TopoSolidは,三次元位相プリミティブを表し,JIS X 7107のTP̲Solidを実装する(D.2.4.3及びJIS 

X 7107:2005の7.3.18参照)。 

gml:isolatedプロパティ要素は,JIS X 7107の“Isolated In”関連と同じ名前の役割を実装している(JIS X 

7107:2005の7.3.10.4及びこの規格のD.2.4.3参照)。 

<complexType name="NodeOrEdgePropertyType"> 

<choice minOccurs="0"> 

<element ref="gml:Node"/> 
<element ref="gml:Edge"/> 

</choice> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

一つの立体の位相境界(gml:directedFace)は,有向フェイス(directed face)の集合からなる。 

注記1 ぶら下がりフェイスを含む立体に関連する全てのフェイスは,境界に現れる。ぶら下がりフ

ェイスは,両側に同じ立体をもつ。反対の向きをもつ二つのdirectedFace要素は,位相立体

の境界にあるそれぞれのぶら下がりフェイスを参照する。 

立体は,三次元幾何プリミティブ(gml:solidProperty)によって任意に実現することができる。 

gml:TopoSolidは,欠損のない位相表現を保証するため,それが全域位相立体であるかどうかを示さなけ

ればならない。これを示すために,ブール型の任意の大域属性を使い,既定値はfalseとする。 

注記2 全域位相立体は,通常,どの地物の一部でもなく,データ集合の非有界な部分を代表するた

めに使う。その内部境界(外部境界はない。)は,通常,データ集合の外部境界と考えられて

いる。 

13.3.5.2 DirectedTopoSolidPropertyType及びdirectedTopoSolid 

<element name="directedTopoSolid" type="gml:DirectedTopoSolidPropertyType"/> 

 
 

142 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="DirectedTopoSolidPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TopoSolid"/> 

</sequence> 
<attribute name="orientation" type="gml:SignType" default="+"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:directedSolidプロパティ要素は,位相フェイスの双対境界を示し,gml:TopoVolume表現を通して立

体に使用する。gml:SignType型の方向(orientation)属性は,含まれた立体がフェイス双対境界に現れると

いう意味を表現している。gml:TopoVolumeでは,方向属性は何の意味ももたない。 

13.4 位相の集まり 

13.4.1 位相の集まり(零次元) 

13.4.1.1 TopoPointType及びTopoPoint 

<complexType name="TopoPointType"> 

<complexContent> 

<extension base="gml:AbstractTopologyType"> 

<sequence> 

<element ref="gml:directedNode"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

<element name="TopoPoint" type="gml:TopoPointType"/> 

gml:TopoPointの使用目的は,点地物の中で,共有のノード定義を通して他の地物へのこの地物の構造上

の関係及び可能な幾何の関係を表現する。 

注記 gml:directedNodeに割り当てられた向きは,この場合は,何の意味ももたない。それは,他次元

の対応する要素を伴った対称性のために保存されている。 

13.4.1.2 TopoPointPropertyType及びtopoPointProperty 

<complexType name="TopoPointPropertyType"> 

<sequence> 

<element ref="gml:TopoPoint"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

<element name="topoPointProperty" type="gml:TopoPointPropertyType"/> 

gml:topoPointPropertyプロパティ要素は,参照する位相ノードとの関係を表現するために,地物において

使用することができる。 

13.4.2 位相の集まり(一次元) 

13.4.2.1 TopoCurveType及びTopoCurve 

<complexType name="TopoCurveType"> 

<complexContent> 

<extension base="gml:AbstractTopologyType"> 

<sequence> 

143 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:directedEdge" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="TopoCurve" type="gml:TopoCurveType"/> 

gml:TopoCurveは,実現したものが幾何曲線プリミティブと同型である場合は,有向エッジの列として

単一の位相を表現する。gml:TopoCurveは,線地物の中で現れ,共有するエッジ定義を通して他の地物と

この地物との,構造上及び幾何的な関係を表現することをその使用目的とする。 

その場合,aggregationType属性は,値“sequence”としなければならない。 

13.4.2.2 TopoCurvePropertyType及びtopoCurveProperty 

<complexType name="TopoCurvePropertyType"> 

<sequence> 

<element ref="gml:TopoCurve"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

<element name="topoCurveProperty" type="gml:TopoCurvePropertyType"/> 

プロパティ要素gml:topoCurvePropertyは,参照する位相エッジとの関係を表現する地物の中で使用する

ことができる。 

13.4.3 位相の集まり(二次元) 

13.4.3.1 TopoSurfaceType及びTopoSurface 

<complexType name="TopoSurfaceType"> 

<complexContent> 

<extension base="gml:AbstractTopologyType"> 

<sequence> 

<element ref="gml:directedFace" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 
 

</complexType> 

<element name="TopoSurface" type="gml:TopoSurfaceType"/> 

gml:TopoSurfaceは,幾何実現したものが幾何曲面プリミティブと同型の場合は,有向フェイスの集合で

ある単一の位相を表現している。gml:TopoSurfaceは,曲面地物の中で現れ,共有するフェイス定義を通し

て他の地物とこの地物との,構造上及び幾何的な関係を表現することをその使用目的とする。 

13.4.3.2 TopoSurfacePropertyType及びtopoSurfaceProperty 

<complexType name="TopoSurfacePropertyType"> 

<sequence> 

<element ref="gml:TopoSurface"/> 

</sequence> 

144 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

<element name="topoSurfaceProperty" type="gml:TopoSurfacePropertyType"/> 

gml:topoSurfacePropertyプロパティ要素は,参照した位相フェイスとの関係を表現するために,地物の中

で使うことができる。 

13.4.4 位相の集まり(三次元) 

13.4.4.1 TopoVolumeType及びTopoVolume 

<complexType name="TopoVolumeType"> 

<complexContent> 

<extension base="gml:AbstractTopologyType"> 

<sequence> 

<element ref="gml:directedTopoSolid" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="TopoVolume" type="gml:TopoVolumeType"/> 

gml:TopoVolumeは,実現したものが幾何立体プリミティブと同型の場合は,有向位相立体(directed 

topological solid)の集合である単一の位相を表現する。gml:TopoVolumeは,立体地物の中で現れ,共有す

るソリッド定義を通して他の地物とこの地物との,構造上及び幾何的な関係を表現することをその使用目

的とする。 

注記 gml:directedSolidに割り当てられた向きは,三次元では何の意味ももたない。それは,既に示し

た他次元の対応する要素を伴った対称性のために保存される。 

13.4.4.2 TopoVolumePropertyType及びtopoVolumeProperty 

<complexType name="TopoVolumePropertyType"> 

<sequence> 

<element ref="gml:TopoVolume"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

<element name="topoVolumeProperty" type="gml:TopoVolumePropertyType"/> 

gml:topoVolumeProperty要素は,参照した立体との関係を表現するために,地物に使うことができる。 

13.5 位相複体 

13.5.1 TopoComplexType及びTopoComplex 

<complexType name="TopoComplexType"> 

<complexContent> 

<extension base="gml:AbstractTopologyType"> 

<sequence> 

<element ref="gml:maximalComplex"/> 
<element ref="gml:superComplex" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:subComplex" minOccurs="0" maxOccurs="unbounded"/> 

145 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:topoPrimitiveMember" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:topoPrimitiveMembers" minOccurs="0"/> 

</sequence> 
<attribute name="isMaximal" type="boolean" default="false"/> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

<element name="TopoComplex" type="gml:TopoComplexType" 
substitutionGroup="gml:AbstractTopology"/> 

gml:TopoComplexは,位相プリミティブの集まりであり,JIS X 7107のTP̲Complexを実装する(D.2.4.4

及びJIS X 7107:2005の7.4.2参照)。 

それぞれの複体(complex)は,その最大複体(gml:maximalComplex)及び任意選択で部分複体又は上位

複体(gml:subComplex又はgml:superComplex)への参照を保持する。 

位相複体は,そのプリミティブ及び部分複体メンバを含む。 

注記 最大の複体は,上位複体をもたない複体である。一つの位相集合につき唯一,かつ,最大の複

体がある。 

13.5.2 最大複体,部分複体及び上位複体 

<element name="subComplex" type="gml:TopoComplexPropertyType"/> 
<element name="superComplex" type="gml:TopoComplexPropertyType"/> 
<element name="maximalComplex" type="gml:TopoComplexPropertyType"/> 

プロパティ要素gml:subComplex,gml:superComplex及びgml:maximalComplexは,上記のgml:TopoComplex

で示すように,位相複体の間の関係のための符号化法を与える。 

13.5.3 topoPrimitiveMember 

<element name="topoPrimitiveMember" type="gml:TopoPrimitivePropertyType"/> 

<complexType name="TopoPrimitivePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractTopoPrimitive" /> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:topoPrimitiveMemberプロパティ要素は,位相複体及び単一の位相プリミティブの間の関係を符号化

する。 

13.5.4 topoPrimitiveMembers 

<element name="topoPrimitiveMembers" type="gml:TopoPrimitiveArrayAssociationType"/> 

<complexType name="TopoPrimitiveArrayAssociationType"> 

<sequence minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:AbstractTopoPrimitive" /> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

146 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:topoPrimitiveMembersプロパティ要素は,位相複体及び任意の数の位相プリミティブの間の関係を符

号化する。 

注記 このプロパティ値は,複数の位相プリミティブになることがあるので,位相プリミティブを表

す要素群は,常に要素内で符号化する。 

13.5.5 TopoComplexPropertyType及びtopoComplexProperty 

<complexType name="TopoComplexPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TopoComplex" /> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

<element name="topoComplexProperty" type="gml:TopoComplexPropertyType"/> 

プロパティ要素gml:topoComplexPropertyは,GMLオブジェクト及び位相複体の間の関係を符号化する。 

例 これは,地物の集まりのメンバが参照する位相オブジェクトを含む位相複体を含むか又は参照す

る地物の集まりを許す。 

14 GMLスキーマ−時間情報及び動的地物 

14.1 一般概念 

14.1.1 概要 

GML時間スキーマは,時間の幾何及び位相,時間参照系,並びに地理データの時間特性を示す構成部品

を含む。この表現の基となるモデルは,JIS X 7108:2004が規定する概念スキーマのプロファイルである。

この基となる時空間モデルは,地物の水準と属性の水準との両方で時刻の記録を可能とするように規定す

る。移動する物体を追跡するための基本的な機能も含んでいる。 

時間は,間隔及び順序の二種類の尺度で計測する。間隔の尺度は,期間を計測する基礎を与え,順序の

尺度は,時間における相対的な位置だけの情報を指定する。 

例 層位学的順序又は地質学的時間尺度は,順序尺度の例である。 

次の二つの規格が時間オブジェクトの記述に関係する。JIS X 0301は,瞬間及び期間に対する特定の構

造及び区切り記号をもつ文字列を用いた符号化を規定する。ISO/IEC 11404は,言語と独立なデータ型の

一般的な議論の中で,時間間隔の詳細な規則を示す。 

時間スキーマは,二つの密接に関連する事項を対象とし,その第一は,瞬間及び期間,時間位相,並び

に参照系を表現するための基本的なスキーマ構成部品の規定であり,その第二は,個別のスキーマ構成部

品において移動地物に対して用いる,構成部品の定義である。時間幾何型のインスタンスは,幾何地物の

時間プロパティの値として用いる。 

注記 主要な時間スキーマ文書は,(URN構文を用いた)次の位置独立名で識別する。 

urn:x-ogc:specification:gml:schema-xsd:temporal:3.2.1 

時間位相スキーマ文書は,(URN構文を用いた)次の位置独立名で識別する。 

urn:x-ogc:specification:gml:schema-xsd:temporalTopology:3.2.1 

時間参照系のためのスキーマ文書は,(URN構文を用いた)次の位置独立名で識別する。 

urn:x-ogc:specification:gml:schema-xsd:temporalReferenceSystems:3.2.1 

地物がもつ時間変化するプロパティを表現するための動的地物スキーマ文書は,(URN構文

147 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

を用いた)次の位置独立名で識別する。 

urn:x-ogc:specification:gml:schema-xsd:dynamicFeature:3.2.1 

全てのスキーマ文書の一覧を附属書Cに示す。 

14.1.2 JIS X 7108との関係 

この箇条14で規定するGMLスキーマの時間幾何及び時間位相の構成部品は,JIS X 7108の時間スキー

マに適合し,その部分的な実装を規定する。この関係の詳細は,D.2.5で規定する。 

GMLで実装するJIS X 7108の幾何及び位相型は,JIS X 7108で規定するが,JIS X 7108はこれらの型に

幾つかの追加の制約を規定しており,これは,GMLスキーマの時間幾何及び時間位相の構成部品も同様に

制約する。 

さらに,GMLはD.3.11に示す補足的な時間スキーマ構成部品を規定する。 

14.2 時間スキーマ 

14.2.1 抽象時間オブジェクト 

14.2.1.1 AbstractTimeObject 

gml:AbstractTimeObject要素は,JIS X 7108のTM̲Object型(D.2.5.2及びJIS X 7108:2004の5.2.2参照)

を実装し,全ての時間プリミティブ及び時間複体のための代替グループの代表として扱う。これは,次の

ように宣言する。 

<element name="AbstractTimeObject" type="gml:AbstractTimeObjectType" abstract="true" 
 substitutionGroup="gml:AbstractGML"/> 

gml:AbstractTimeObject要素は,gml:AbstractGML要素が有効な任意の場所で用いることができる。その

内容モデルは,次のように定義する。 

<complexType name="AbstractTimeObjectType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGMLType"/> 

</complexContent> 

</complexType> 

注記 gml:AbstractTimeObject要素の内容モデルは,AbstractGMLType型からの,変更を伴わない拡張

とする。これから派生した型は,使用可能な標準GMLオブジェクトプロパティとして

abstractMetadataProperty,description,descriptionReference及びnameをもつ。 

14.2.1.2 AbstractTimePrimitive 

gml:AbstractTimePrimitive要素は,JIS X 7108のTM̲Primitive型(D.2.5.2及びJIS X 7108:2004の5.2.3

参照)を実装し,時間幾何プリミティブ及び時間位相プリミティブのための代替グループの代表として扱

う。これは,次のように宣言する。 

<element name="AbstractTimePrimitive" type="gml:AbstractTimePrimitiveType" abstract="true" 
 substitutionGroup="gml:AbstractTimeObject"/> 

gml:AbstractTimePrimitive要素は,gml:AbstractTimeObject要素が有効な任意の場所で用いることができる。

その内容モデルは,次のように定義する。 

<complexType name="AbstractTimePrimitiveType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractTimeObjectType"> 

<sequence> 

<element name="relatedTime" type="gml:RelatedTimeType" minOccurs="0" 

maxOccurs="unbounded"/> 

148 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

これは,この時間プリミティブ(time primitive)と他の時間プリミティブとの間の関係を示すプロパテ

ィを付加して,一般的な時間オブジェクトのモデルを拡張する。gml:RelatedTimeType型の定義は,14.2.1.4

で規定する。 

14.2.1.3 TimePrimitivePropertyType及びvalidTime 

gml:TimePrimitivePropertyType型は,gml:AbstractTimePrimitive要素を代表とする代替グループに属する

任意の要素と他のオブジェクトとの間の関連に対する標準内容モデルを与える。 

<complexType name="TimePrimitivePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractTimePrimitive"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:validTime要素は,便宜的なプロパティ要素であり,次のように宣言する。 

<element name="validTime" type="gml:TimePrimitivePropertyType"/> 

14.2.1.4 RelatedTimeType 

gml:RelatedTimeType型は,gml:AbstractTimePrimitive要素を代表とする代替グループに属す任意の要素の

相対的な位置を示すための内容モデルを指定する。これは,総称型であるgml:TimePrimitivePropertyType

型を拡張し,13種類の時間関係の集合から選択した値(JIS X 7108:2004の5.2.3.5参照)を保持するXML

属性であるrelativePosition属性を追加したものである。 

<complexType name="RelatedTimeType"> 

<complexContent> 

<extension base="gml:TimePrimitivePropertyType"> 

<attribute name="relativePosition"> 

<simpleType> 

<restriction base="string"> 

<enumeration value="Before"/> 
<enumeration value="After"/> 
<enumeration value="Begins"/> 
<enumeration value="Ends"/> 
<enumeration value="During"/> 
<enumeration value="Equals"/> 
<enumeration value="Contains"/> 
<enumeration value="Overlaps"/> 
<enumeration value="Meets"/> 
<enumeration value="OverlappedBy"/> 
<enumeration value="MetBy"/> 
<enumeration value="BegunBy"/> 
<enumeration value="EndedBy"/> 

</restriction> 

</simpleType> 

149 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</attribute> 

</extension> 

</complexContent> 

</complexType> 

14.2.1.5 AbstractTimeComplex 

gml:AbstractTimeComplex要素は,時間プリミティブの集まりであり,JIS X 7108のTM̲Complex型

(D.2.5.2及びJIS X 7108:2004の5.2.2参照)を実装し,時間複体(time complex)のための代替グループ

の代表となる。これは,次のように宣言する。 

<element name="AbstractTimeComplex" type="gml:AbstractTimeComplexType" abstract="true" 
substitutionGroup="gml:AbstractTimeObject"/> 

gml:AbstractTimeComplex要素は,gml:AbstractTimeObject要素が有効な任意の場所で用いることができる。

その内容モデルを次のように定義する。 

<complexType name="AbstractTimeComplexType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractTimeObjectType"/> 

</complexContent> 

</complexType> 

注記1 この規格は,時間位相複体だけを規定する。時間幾何複体は,規定しない。 

注記2 この規格は,時間線形グラフと時間非線形グラフとを区別しない。 

14.2.2 時間幾何 

14.2.2.1 一般 

時間幾何は,時間の瞬間,期間,位置及び長さを示す。 

14.2.2.2 AbstractTimeGeometricPrimitive 

gml:AbstractTimeGeometricPrimitive要素は,JIS X 7108のTM̲GeometricPrimitive型(D.2.5.2及びJIS X 

7108:2004の5.2.3参照)を実装し,時間幾何プリミティブ(time geometric primitive)のための代替グルー

プの代表となる。要素は,次のように宣言する。 

<element name="AbstractTimeGeometricPrimitive" type="gml:AbstractTimeGeometricPrimitiveType" 
abstract="true" substitutionGroup="gml:AbstractTimePrimitive"/> 

gml:AbstractTimeGeometricPrimitive要素をgml:AbstractTimePrimitive要素が有効な任意の場所で用いるこ

とができる。その内容モデルは,次のように定義する。 

<complexType name="AbstractTimeGeometricPrimitiveType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractTimePrimitiveType"> 

<attribute name="frame" type="anyURI" default="#ISO-8601"/> 

</extension> 

</complexContent> 

</complexType> 

時間幾何要素は,座標参照系の規定を識別するURI参照を指定するframe属性を通じて,時間参照系に

関連付けなければならない。JIS X 7108に従って,グレゴリオ暦でのUTC(Universal Time Coordinated:協

定世界時)を規定の座標参照系とするが,他の参照系を用いることもできる。 

時間次元における幾何プリミティブは,瞬間及び期間の二つとする。以下(14.2.2.3〜14.2.2.8)の規定に

おいて,これらを使用できるように,GML構成部品を定義する。 

150 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

14.2.2.3 TimeInstant 

gml:TimeInstant要素は,JIS X 7108のTM̲Instant型(D.2.5.3及びJIS X 7108:2004の5.2.3.2参照)を実

装し,時間において識別可能な位置を表現する零次元幾何プリミティブとして扱う。要素は,次のように

宣言する。 

<element name="TimeInstant" type="gml:TimeInstantType" 
substitutionGroup="gml:AbstractTimeGeometricPrimitive"/> 

gml:TimeInstant要素をgml:AbstractTimeGeometricPrimitive要素が有効な任意の場所で用いることができ

る。その内容モデルは,次のように定義する。 

<complexType name="TimeInstantType" final="#all"> 

<complexContent> 

<extension base="gml:AbstractTimeGeometricPrimitiveType"> 

<sequence> 

<element ref="gml:timePosition"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

例 インスタンス文書において,gml:TimeInstant要素は,次のようにgml:timePosition要素を保持する。 
<gml:TimeInstant gml:id="t11"> 

<gml:description>千恵子の誕生日</gml:description> 
<gml:timePosition>1985-01-16</gml:timePosition> 

</gml:TimeInstant> 

14.2.2.4 TimeInstantPropertyType 

gml:TimeInstantPropertyType型は,gml:TimePrimitivePropertyType型の特化型とし,gml:TimeInstant要素と

オブジェクトとの関連を指定する。 

<complexType name="TimeInstantPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeInstant"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

14.2.2.5 TimePeriod 

gml:TimePeriod要素は,JIS X 7108のTM̲Period型(D.2.5.3及びJIS X 7108:2004の5.2.3.3参照)を実

装し,識別可能な時間範囲を表現する一次元の幾何プリミティブとして扱う。これは,次のように宣言す

る。 

<element name="TimePeriod" type="gml:TimePeriodType" 
substitutionGroup="gml:AbstractTimeGeometricPrimitive"/> 

gml:TimePeriod要素をgml:AbstractTimeGeometricPrimitive要素が有効な任意の場所で用いることができ

る。その内容モデルは,次のように定義する。 

<complexType name="TimePeriodType"> 

<complexContent> 

<extension base="gml:AbstractTimeGeometricPrimitiveType"> 

<sequence> 

<choice> 

151 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="beginPosition" type="gml:TimePositionType"/> 
<element name="begin" type="gml:TimeInstantPropertyType"/> 

</choice> 
<choice> 

<element name="endPosition" type="gml:TimePositionType"/> 
<element name="end" type="gml:TimeInstantPropertyType"/> 

</choice> 
<group ref="gml:timeLength" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:TimePeriod要素の時間位置は,その開始及び終了における瞬間(time instant)の時間位置によって記

述する。期間の長さは,二つの境界時間位置の間の時間距離に等しい。 

開始及び終了のいずれもXML Schema単純内容型のgml:TimePositionType型(14.2.2.7参照)を用いた直

接位置で示すことも,又はgml:TimeInstantPropertyType型(14.2.2.4参照)を用いた識別可能な瞬間への参

照で示すこともできる。 

例1 gml:TimePeriod要素内で,次のように,gml:TimeInstant要素をbegin及びendの値として直接記

述することができる。 

例2 
<gml:TimePeriod gml:id="p22"> 

<gml:begin> 

<gml:TimeInstant gml:id="t11"> 

<gml:timePosition>2001-05-23</gml:timePosition> 

</gml:TimeInstant> 

</gml:begin> 
<gml:end> 

<gml:TimeInstant gml:id="t12"> 

<gml:timePosition>2001-06-23</gml:timePosition> 

</gml:TimeInstant> 

</gml:end> 

</gml:TimePeriod> 

別の場所に示される瞬間を参照する共通のGMLプロパティモデルを用いるために,gml:TimePeriod要素

を制限することができるが,直接位置として示すよう制限することもできる。 

例3 次は,これらの二つの方法が混在する場合を示す例であり,さらに,任意選択のgml:duration

プロパティを含む。 

<gml:TimePeriod gml:id="p22"> 

<gml:begin xlink:href="#t11"/> 
<gml:endPosition>2002-05-23</gml:endPosition> 
<gml:duration>P1Y</gml:duration> 

</gml:TimePeriod> 

14.2.2.6 TimePeriodPropertyType 

gml:TimePeriodPropertyType型は,gml:TimePrimitivePropertyType型を特化しgml:TimePeriod要素とオブ

ジェクトとの関連を指定する。 

<complexType name="TimePeriodPropertyType"> 

152 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<sequence minOccurs="0"> 

<element ref="gml:TimePeriod"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

14.2.2.7 TimePositionType及びtimePosition 

時間位置を識別する方法は,それぞれの時間参照系によって異なる。gml:TimePositionTypeは,JIS X 7108

に規定する下位型に対応する時間位置の記述を可能にする。それは,JIS X 7108のTM̲Position型(D.2.5.5

及びJIS X 7108:2004の5.4.2参照)を実装する。 

暦及び時計に基づく値は,XML Schema Part 2:2001が規定するとおり,JIS X 0301に基づく語彙形式を

用いる。GPS時間又はUNIX時間などの座標系を伴う十進数値を用いることもできる。順序参照系におけ

る年代(地質年代のような)への参照を指定するためのURIを用いることもできる。 

JIS X 7100シリーズ(ISO 19100シリーズ)の規格においてデータ型としてモデル化された構成部品の

多くに共通して,対応するGML構成部品は単純内容をもつ。しかし,gml:TimePositionType型の内容モデ

ルは,複数の段階で定義する(JIS X 7108:2004のTM̲Position型への対応の詳細はD.2.5.5で規定する。)。 

<complexType name="TimePositionType" final="#all"> 

<simpleContent> 

<extension base="gml:TimePositionUnion"> 

<attribute name="frame" type="anyURI" default="#ISO-8601"/> 
<attribute name="calendarEraName" type="string" /> 
<attribute name="indeterminatePosition" type="gml:TimeIndeterminateValueType"/> 

</extension> 

</simpleContent> 

</complexType> 

gml:TimePositionType型は,三つのXML属性を含む。 

時間の値は,参照系の記述を識別するURI参照を指定するframe属性を通じて,時間参照系と関連付け

なければならない。JIS X 7108に従って,UTCを伴うグレゴリオ暦を既定の参照系とするが,他の参照系

を用いることもできる。時間参照系を記述する構成要素は14.4で規定するが,URIで識別できる何らかの

資源を参照できる参照のとき,その方法で記述する参照系である必要はない。 

和暦のような複数の年代を含む暦を用いる時間の値に対しては,(任意選択の)calendarEraName属性が

暦年代の名前を指定する。 

厳密でない時間位置を,任意選択のindeterminatePosition属性で表現することができる。これは,次のよ

うに定義する列挙値の一つをとる。 

<simpleType name="TimeIndeterminateValueType"> 

<restriction base="string"> 

<enumeration value="after"/> 
<enumeration value="before"/> 
<enumeration value="now"/> 
<enumeration value="unknown"/> 

</restriction> 

</simpleType> 

これらの値は,次のように解釈する。 

− “unknown”は,時間位置に特定の値を指定しないことを示す。 

153 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− “now”は,値がアクセスされた時点現在の時間位置で,指定値を置き換えなければならないことを

示す。 

− “before”は,実際の時間位置は不明だが,指定値よりも前であることが分かっていることを示す。 

− “after”は,実際の時間位置は不明だが,指定値よりも後であることが分かっていることを示す。 

indeterminatePositionの値は,次のいずれの形態でも用いることができる。 

− 単独で用いる。 

− 時間位置の特定の値を修飾する(例えば,2002-12以前,1019624400以降)。 

単純型であるgml:TimePositionUnion型は,JIS X 7108が規定する時間位置の下位型を実装するXML 

Schema単純型の共用型とする。 

<simpleType name="TimePositionUnion"> 

<union memberTypes="gml:CalDate time dateTime anyURI decimal"/> 

</simpleType> 

順序年代は,URIを通じて参照できる。十進数値を尺度基準からの距離を示すために用いることができ

る(例えば,UNIX時間,GPS暦)。time型は,日ごとに繰り返される位置に対して用いる(JIS X 7108:2004

の5.4.4.2参照)。 

最後に,JIS X 0301に従った,年,月,日,時,分及び秒の体系に従う時間の表現を可能にする暦及び

時計の形式は,次のように組み合わせる。 

<simpleType name="CalDate"> 

<union memberTypes="date gYearMonth gYear"/> 

</simpleType> 

注記1 XML Schema単純型であるdateTime型は,秒の小数部分を除き右側切捨てを許さないため,

date型,gYear型及びgYearMonth型が必要となる。 

注記2 JIS X 7108に従い,年月日に基づくグレゴリオ暦以外の暦を用いる場合であっても,同じ語

彙表現を用いることが望ましい。XML Schema Part 2に従って,年の値が4桁より小さい場合

には,先頭からの0の文字を追加することが望ましい。 

gml:timePosition要素は,次のように宣言する。 

<element name="timePosition" type="gml:TimePositionType"/> 

この要素は,gml:TimeInstant要素(14.2.2.3参照)のプロパティとして直接使用し,応用スキーマでも用

いることができる。 

例 次の例は,gml:timePosition要素又はこの型の他の要素がどのようにデータインスタンスに記載で

きるかを示す。 

<gml:timePosition>2002-11-25T13:20:20Z</gml:timePosition> 

<gml:timePosition indeterminatePosition="after">1994</gml:timePosition> 

<gml:timePosition indeterminatePosition="now">1994-07-10</gml:timePosition> 

<gml:timePosition frame=”http://my.big.org/TRS/GPS”>25876321.01</gml:timePosition> 

<gml:timePosition frame="http://my.big.org/TRS/archaeology"> http://my.history.org/eras/bronzeAge 
</gml:timePosition> 

154 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:timePosition frame="http://my.big.org/TRS/calendars/japanese" 
calendarEraName="Meiji">0025-03</gml:timePosition> 

14.2.2.8 timeLength,duration,timeInterval及びTimeUnitType 

期間の長さは,gml:timeLengthグループを用いて記述し,スキーマでは次のように宣言する。 

<group name="timeLength"> 

<choice> 

<element ref="gml:duration"/> 
<element ref="gml:timeInterval"/> 

</choice> 

</group> 

その内容モデルは,二つのプロパティ要素からの選択である。 

<element name="duration" type="duration"/> 

gml:duration要素は,JIS X 0301の時間の長さに対する構文に適合し,XML Schemaのduration型として

実装する。もう一つの選択肢は,浮動小数点数の値による時間の長さに基づくISO/IEC 11404に適合した

gml:timeInterval要素とする。 

<element name="timeInterval" type="gml:TimeIntervalLengthType"/> 

<complexType name="TimeIntervalLengthType" final="#all"> 

<simpleContent> 

<extension base="decimal"> 

<attribute name="unit" type="gml:TimeUnitType" use="required"/> 
<attribute name="radix" type="positiveInteger"/> 
<attribute name="factor" type="integer"/> 

</extension> 

</simpleContent> 

</complexType> 

ISO/IEC 11404構文は,基底(radix)及び乗数(factor)として適切な値を伴ったpositiveInteger型を用

いるよう規定している。時間間隔の解像度は,指定された時間単位でradixの(-factor)乗となる。 

例1 unit="second",radix="10",factor="3"は,解像度がミリ秒であることを示す。 

unitの値は,ISO 80000-3による時間の間隔のための単位から選択するか又はそれ以外の適切な単位とす

る。GMLでの符号化は,gml:TimeUnitTypeで示す。 

<simpleType name="TimeUnitType"> 

<union> 

<simpleType> 

<restriction base="string"> 

<enumeration value="year"/> 
<enumeration value="month"/> 
<enumeration value="day"/> 
<enumeration value="hour"/> 
<enumeration value="minute"/> 
<enumeration value="second"/> 

</restriction> 

</simpleType> 
<simpleType> 

<restriction base="string"> 

<pattern value="other:¥w{2,}"/> 

155 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</restriction> 

</simpleType> 

</union> 

</simpleType> 

この共用型の二つ目の構成部品は,列挙値として規定する六つの標準単位以外の時間単位を示すための

方法を規定する。 

例2 5日と14時間30分という期間の長さを表現するために,次のうちのいずれのインスタンスで

も用いることができる。 

<duration>P5DT14H30M</duration> 
<timeInterval unit="hour" radix="10" factor="0">134.5</timeInterval> 
<timeInterval unit="other:week" radix="10" factor="0"> 0.800595</timeInterval> 

14.3 時間位相スキーマ 

14.3.1 一般 

時間位相は,時間複体,時間ノード及び時間エッジ並びにそれらの連結性によって記述される。時間位

相は,時間位置の情報を直接指定しない。それは,系譜又は履歴(例えば,種の進化を表す系図,生態系

のサイクル,土地若しくは建物の系譜,又は行政界の分離及び統合の歴史)を記述する場合に用いられる。

次の細分箇条(14.3.2)で,時間位相をJIS X 7108に適合した地物の時間特性として規定する。 

14.3.2 時間位相オブジェクト 

14.3.2.1 概要 

時間位相オブジェクトは,地物の時間特性として地物又は地物プロパティの順序を記述する時間要素と

する。プリミティブ及び複体の二つの時間位相オブジェクトがある。 

時間は一次元位相空間であるため,時間位相プリミティブは,瞬間に対応する時間ノード及び期間に対

応する時間エッジとする。時間ノードは,一つ以上の状態の開始又は終了として,特定の瞬間に発生した

イベントの抽象概念である。状態は,ある期間に持続する条件,すなわち,地物又はデータ集合の特性で

ある。この規格では,“持続的な地物”とは,その生存期間を通じて一貫した識別子を保持する地物を意味

する。時間エッジは,状態の抽象概念であり,その開始及び終了を表す時間ノードと関連する。しかし,

時間位相プリミティブは,“いつ”及び“どのくらいの期間”を直接には示さない。時間ノードは,状態に

関連付けられないイベントを記述する場合には,時間エッジの開始又は終了となる必要はない。そのよう

なノードは,孤立ノードと呼ぶ。 

位相複体は,位相プリミティブの集まりで,境界操作の下で閉じている。時間位相複体は,時間エッジ

及び時間ノードで構成する連結した非巡回の有向グラフでなければならない。最小の時間位相複体は,一

つの時間エッジ及びその両端の二つの時間ノードである。 

例 建物のライフサイクルは,計画,設計,建築,供用,廃止及び破壊の各段階の列として記述でき

る。各段階は,時間エッジとして表現できる。時間ノードとして記述した各段階の境界は,段階

を終了して次の段階を開始する意思決定のイベントを表現する。このように,建物のライフサイ

クルは,時間ノードで連結した時間エッジの列で構成される時間位相複体で記述される。 

14.3.2.2 AbstractTimeTopologyPrimitive 

時間位相プリミティブ(time topology primitive)は,地物又は地物プロパティの間の順序情報を示す。地

物の時間連結は,そのプロパティの値として時間位相プリミティブをもつかどうかで調べる。通常,瞬間

的な地物は,時間ノードに関連し,静的な地物は,時間エッジに関連する。両方の形態をもつ地物は,時

間ノード及び時間エッジの上位型である時間位相プリミティブに関連する。 

156 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:TimeTopologyPrimitive要素は,JIS X 7108のTM̲TopologicalPrimitive型(D.2.5.6及びJIS X 7108:2004

の5.2.4.2参照)を実装し,時間位相プリミティブの代替グループとして扱う。そのスキーマでは,次のよ

うに定義する。 

<element name="AbstractTimeTopologyPrimitive" type="gml:AbstractTimeTopologyPrimitiveType" 
abstract="true" substitutionGroup="gml:AbstractTimePrimitive"/> 

gml:AbstractTimeTopologyPrimitive要素は,gml:AbstractTimePrimitive要素が有効な任意の場所で用いるこ

とができる。その内容モデルは,次のように定義する。 

<complexType name="AbstractTimeTopologyPrimitiveType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractTimePrimitiveType"> 

<sequence> 

<element name="complex" type="gml:ReferenceType" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

位相プリミティブは,常に一つ以上の他の位相プリミティブと連結し,そのため,常に位相複体の一部

となる。GMLインスタンスでは,このことがしばしば複体を記述する要素の下位型の要素で記述するプリ

ミティブで示すことがある。しかし,時間位相プリミティブを他の文脈で記述することを可能にするため

に,親となる時間位相複体への参照を保持する,任意選択のgml:complexプロパティが規定されている。 

14.3.2.3 TimeTopologyPrimitivePropertyType 

gml:TimeTopologyPrimitivePropertyType型は,gml:AbstractTimeTopologyPrimitive要素と他のオブジェクト

との関連を示す。 

<complexType name="TimeTopologyPrimitivePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractTimeTopologyPrimitive"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

14.3.2.4 TimeTopologyComplex 

時間位相複体は,時間位相プリミティブ,すなわち,時間ノード及び時間エッジからなる連結した非巡

回の有向グラフとする。時間エッジは,その境界の二つのノードなしには存在できないため,静的地物は,

明示的な宣言にかかわらず,その時間プロパティの値として時間位相複体からの時間エッジをもつ。 

時間位相複体は,線形又は非線形グラフを表現する。時間線形グラフは,時間エッジの列からなり,地

物インスタンス又は地物要素値の“置換”だけによって記述する系譜を指定する。非線形グラフの開始又

は終了となる時間ノードは,一つ以上の時間エッジに連結する。開始及び終了以外の時間ノードは,二つ

以上の時間エッジに連結しなければならない。一つは,そのノードから開始し,もう一つは,そのノード

で終了する。 

gml:TimeTopologyComplexは,JIS X 7108のTM̲TopologicalComplex型(D.2.5.6及びJIS X 7108:2004の

5.2.4.5参照)を実装し,次のように宣言する。 

<element name="TimeTopologyComplex" type="gml:TimeTopologyComplexType" 
substitutionGroup="gml:AbstractTimeComplex"/> 

157 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:TimeTopologyComplex要素は,gml:AbstractTimeComplex要素が有効な任意の場所で用いることがで

きる。その内容モデルは,次のように定義する。 

<complexType name="TimeTopologyComplexType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractTimeComplexType"> 

<sequence> 

<element name="primitive" type="gml:TimeTopologyPrimitivePropertyType" 

maxOccurs="unbounded"/> 
</sequence> 

</extension> 

</complexContent> 

</complexType> 

時間位相複体は,連結する時間位相プリミティブの集合とする。その一部となるプリミティブは,参照

及び値のいずれでも,gml:primitive プロパティを用いて示される。 

14.3.2.5 TimeTopologyComplexPropertyType 

gml:TimeTopologyComplexPropertyType型は,gml:TimeTopologyComplex要素とオブジェクトとの関連を

規定する。 

<complexType name="TimeTopologyComplexPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeTopologyComplex"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

14.3.2.6 TimeNode 

時間ノード(time node)は,時間中の識別可能なノードを表現する零次元位相プリミティブとする(そ

れは,空間における点に相当する。)。ノードは,任意の数の時間エッジの終了又は開始として扱うことが

できる。時間ノードは,その位置を瞬間(time instant)の値による幾何要素として実現することができる。 

gml:TimeNode要素は,JIS X 7108のTM̲Node型(D.2.5.6及びJIS X 7108:2004の5.2.4.3参照)を実装

し,次のように宣言する。 

<element name="TimeNode" type="gml:TimeNodeType" 
substitutionGroup="gml:AbstractTimeTopologyPrimitive"/> 

gml:TimeNode要素は,gml:AbstractTimeTopologyPrimitive要素が有効な任意の場所で用いることができる。

その内容モデルは,次のように定義する。 

<complexType name="TimeNodeType"> 

<complexContent> 

<extension base="gml:AbstractTimeTopologyPrimitiveType"> 

<sequence> 

<element name="previousEdge" type="gml:TimeEdgePropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 

<element name="nextEdge" type="gml:TimeEdgePropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 

<element name="position" type="gml:TimeInstantPropertyType" minOccurs="0"/> 

</sequence> 

</extension> 

158 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexContent> 

</complexType> 

14.3.2.7 TimeNodePropertyType 

gml:TimeNodePropertyType型は,gml:TimeNode要素とオブジェクトとの関係について規定する。 

<complexType name="TimeNodePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeNode"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

14.3.2.8 TimeEdge 

時間エッジ(time edge)は,一次元位相プリミティブとし,ノードで開始及び終了する開区間である。

エッジは,期間(time period)の値によって幾何要素として実現できる。 

gml:TimeEdge要素は,JIS X 7108のTM̲Edge型(D.2.5.6及びJIS X 7108:2004の5.2.4.4参照)を実装

し,次のように宣言する。 

<element name="TimeEdge" type="gml:TimeEdgeType" 
substitutionGroup="gml:AbstractTimeTopologyPrimitive"/> 

gml:TimeEdge要素は,gml:AbstractTimeTopologyPrimitive要素が有効な任意の場所で用いることができる。

その内容モデルは,次のように定義する。 

<complexType name="TimeEdgeType"> 

<complexContent> 

<extension base="gml:AbstractTimeTopologyPrimitiveType"> 

<sequence> 

<element name="start" type="gml:TimeNodePropertyType"/> 
<element name="end" type="gml:TimeNodePropertyType"/> 
<element name="extent" type="gml:TimePeriodPropertyType" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

14.3.2.9 TimeEdgePropertyType 

gml:TimeEdgePropertyType型は,gml:TimeEdge要素とオブジェクトとの関連を示す。 

<complexType name="TimeEdgePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeEdge"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

14.4 時間参照系 

14.4.1 概要 

時間領域の値は,時間参照系に従って測定する値とする。参照系の共通な型は,暦,順序時間参照系及

び時間座標系(ある時期からの経過時間)を含む。地理情報で使用する主な時間参照系には,グレゴリオ

暦,及び24時間の地方時間又は協定世界時(UTC)があるが,特殊なシステムでは,代替的な参照系を使

159 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

用してもよい。ユリウス日数は,紀元前4713年1月1日のグリニッジ標準時正午という,どの暦よりも早

い原点をもつ時間座標系であり,異なる暦の日付の変換に有用である。 

GMLでは,時間参照系を記述するために,gml:TimeReferenceSystem要素,gml:TimeCoordinateSystem要

素,gml:TimeCalendar要素,gml:TimeCalendarEra要素,gml:TimeClock要素,gml:TimeOrdinalReferenceSystem

要素,及びgml:TimeOrdinalEra要素の七つの具体的な要素を使用する。 

14.4.2 基本時間参照系としてのTimeReferenceSystem 

参照系は,空間的及び時間的に適用可能な範囲の特性とする。時間参照系(time reference system)の基

本的なGML要素は,gml:TimeReferenceSystem要素とする。この内容モデルは,gml:DefinitionType 要素

(15.2.1参照)にgml:domainOfValidity属性という一つのプロパティを追加して拡張する。これは,次のよ

うに実装する。 

<element name="TimeReferenceSystem" type="gml:TimeReferenceSystemType" 
substitutionGroup="gml:Definition" /> 

gml:TimeReferenceSytem要素は,gml:Definition要素が妥当となる任意の場所で使用することができる。

その内容モデルは,次のように定義する。 

<complexType name="TimeReferenceSystemType"> 

<complexContent> 

<extension base="gml:DefinitionType"> 

<sequence> 

<element name="domainOfValidity" type="string"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

例 この要素は,インスタンスの文書内で次のように記載されることがある。 
<gml:TimeReferenceSystem gml:id="JulianCalendar"> 

<gml:description xlink:href="http://aa.usno.navy.mil/data/docs/JulianDate.html"/> 

<gml:name>ユリウス暦</gml:name> 

<gml:domainOfValidity>西ヨーロッパ</gml:domainOfValidity> 

</gml:TimeReferenceSystem> 

14.4.3 TimeCoordinateSystem 

時間参照系は,一つの時間間隔の項で定義する,連続的な間隔尺度に基づく。 

gml:TimeCoordinateSystem要素は,JIS X 7108におけるTM̲CoordinateSystem(D.2.5.9及びJIS X 7108:2004

の5.3.3参照)を,この細分箇条(14.4.3)の中で後述する例外を除いて実装し,次のように宣言する。 

<element name="TimeCoordinateSystem" type="gml:TimeCoordinateSystemType" 
substitutionGroup="gml:TimeReferenceSystem"/> 

gml:TimeCoordinateSystem要素は,gml:TimeReferenceSystem要素が有効となる任意の場所で使用するこ

とができる。その内容モデルは,次のように定義する。 

<complexType name="TimeCoordinateSystemType"> 

<complexContent> 

<extension base="gml:TimeReferenceSystemType"> 

<sequence> 

<choice> 

<element name="originPosition" type="gml:TimePositionType"/> 
<element name="origin" type="gml:TimeInstantPropertyType"/> 

160 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</choice> 
<element name="interval" type="gml:TimeIntervalLengthType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

JIS X 7108におけるTM̲CoordinateSystemとの違いは,次のとおりである。 

− 原点は,直接的な時間位置(14.2.2.7参照)を示すgml:originPositionプロパティ又は

gml:TimeInstantPropertyType(14.2.2.4参照)型をとるgml:originプロパティのいずれかで示す。これは,

より柔軟な表現を認め,他で指定された値の参照を使用可能とするためである。 

− 間隔は,14.2.2.8で定義するgml:TimeIntervalLengthType要素を使用する。 

例 座標系は,データインスタンスにおいて次のように記載されることがある。 
<gml:TimeCoordinateSystem gml:id="Laser36"> 

<gml:description>レーザー実験中に用いる時間尺度</gml:description> 
<gml:name>レーザー時間尺度 36</gml:name> 
<gml:domainOfValidity>レーザー研究所</gml:domainOfValidity> 
<gml:origin> 

<gml:TimeInstant> 

<gml:timePosition>2002-11-28T12:50:00+08:00</gml:timePosition> 

</gml:TimeInstant> 

</gml:origin> 
<gml:interval unit="second" radix="10" factor="12">1.0</gml:interval> 

</gml:TimeCoordinateSystem> 

<gml:TimeCoordinateSystem gml:id="geologyMa"> 

<gml:name>地質学的な時間座標系</gml:name> 
<gml:domainOfValidity>地球</gml:domainOfValidity> 
<gml:origin> 

<gml:TimeInstant> 

<gml:description xlink:href="http://www.c14dating.com/agecalc.html"> 

放射性炭素年代測定で用いられる標準的な原点。より正確度の低い他の放射性年代決定技術の
ための"現在" と等しい。</gml:description> 

<gml:timePosition>1950</gml:timePosition> 

</gml:TimeInstant> 

</gml:origin> 
<gml:interval unit="year" radix="10" factor="-6">1.0</gml:interval> 

</gml:TimeCoordinateSystem> 

14.4.4 暦及び時計 

14.4.4.1 概要 

暦(calendar)及び時計(clock)は,いずれも間隔尺度に基づく。暦は,1日を単位とする分解能で時間

位置を定義するための基準を与える,不連続な時間参照系とする。時計は,1日における時間的位置を決

めるための基準を与える。時計は,特定の日の中での時間的位置の完全な記述を与えるために,暦ととも

に使う。 

暦は様々であり,複雑な内部構造をもつ。このスキーマは,単純な外部暦インタフェースを定義する。

どの暦も,年,月及び日のような要素の集合から,暦日を構成する規則の集まりを与える。どの暦におい

161 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

ても,年は暦年代を定義する事象を参照する日に関連して番号付けする。一つの暦は,一つ以上の暦年代

を参照できる。 

14.4.4.2 TimeCalendar及びTimeCalendarEra 

暦(time calendar)は,離散的な時間参照系であり,一日の分解能で時間位置を定義するための基礎とな

る。gml:TimeCalendar要素は,JIS X 7108におけるTM̲Calendar(D.2.5.8及びJIS X 7108:2004の5.3.2.3

参照)を実装し,次のように宣言する。 

<element name="TimeCalendar" type="gml:TimeCalendarType" 

substitutionGroup="gml:TimeReferenceSystem"/> 

gml:TimeCalendarは,gml:TimeReferenceSystemが有効な,任意の位置で使用することができる。その内

容モデルは,次のように定義する。 

<complexType name="TimeCalendarType"> 

<complexContent> 

<extension base="gml:TimeReferenceSystemType"> 

<sequence> 

<element name="referenceFrame" type="gml:TimeCalendarEraPropertyType"  

maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:TimeCalendar要素は,gml:TimeReferenceSystem要素を継承し,一つのプロパティを追加する。

gml:referenceFrame属性は,ここで使用するgml:TimeCalendarEra要素へのリンクを与える。gml:TimeCalendar

要素は,一つ以上の暦年代(calendar era)を参照してもよい。 

referenceFrame要素は,標準GMLプロパティモデルの後に続き,要素内に記述したgml:TimeCalendarEra

要素,又は別の場所で明示的に示すgml:TimeCalendarEra要素へのリンクのいずれかを使用し,その関連を

具体化する。 

gml:TimeCalendarEra要素は,JIS X 7108のTM̲CalendarEra(D.2.5.8及びJIS X 7108:2004の5.3.2.1参照)

を実装し,次のように宣言する。 

<element name="TimeCalendarEra" type="gml:TimeCalendarEraType" /> 

その内容モデルは,次のように定義する。 

<complexType name="TimeCalendarEraType"> 

<complexContent> 

<extension base="gml:DefinitionType"> 

<sequence> 

<element name="referenceEvent" type="gml:StringOrRefType"/> 
<element name="referenceDate" type="gml:CalDate"/> 
<element name="julianReference" type="decimal"/> 
<element name="epochOfUse" type="gml:TimePeriodPropertyType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

 
 

162 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:TimeCalendarEra要素は,gml:DefinitionType要素(15.2.1参照)から基本的なプロパティを継承し,

次の追加プロパティをもつ。 

− gml:referenceEvent属性は,暦年代の基準尺度の位置を決める神話的事象又は歴史的な事象の名前又は

説明とする。これは,テキストを使うことによって与えられる。referenceEventが遠隔の値を参照する

方法は非推奨であり,文字列型を使用することが望ましい。 

− gml:referenceDate属性は,referenceEventの与えられた暦における日を記述する。多くの暦では,この

日は尺度の原点(すなわち,最初の日)であるが,常にそうであるとは限らない。 

− gml:julianReference属性は,参照している日に対応するユリウス日(Julian date)を記述する。ユリウ

ス日数は整数であり,ユリウス日は,より細かい分解能を使用することができる小数値を含む。暦の

日からユリウス日への変換,及びユリウス日から暦の日への変換によって,ある暦から別の暦への変

換のための比較的簡単な基準が与えられる。 

− gml:epochOfUse属性は,暦の期限が日付を付けるための基準として使われる期間とする。 

14.4.4.3 TimeCalendarPropertyType及びTimeCalendarEraPropertyType 

gml:TimeCalendarPropertyType要素は,オブジェクトとgml:TimeCalendar要素との関連を与える。 

<complexType name="TimeCalendarPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeCalendar"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:TimeCalendarEraPropertyType要素は,オブジェクトとgml:TimeCalendarEra要素との関連を与える。 

<complexType name="TimeCalendarEraPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeCalendarEra"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

14.4.4.4 TimeClock 

時計は,一日の中における時間位置決定のための基準を与える。時計は,特定の日における完全な時間

位置を記述するために暦とともに使う。gml:TimeClock要素は,JIS X 7108のTM̲Clock(D.2.5.8及びJIS 

X 7108:2004の5.3.2.4参照)を実装し,次のように宣言する。 

<element name="TimeClock" type="gml:TimeClockType" substitutionGroup="gml:TimeReferenceSystem"/> 

gml:TimeClockは,gml:TimeReferenceSystemが有効な任意の場所で使用することができる。この内容モ

デルは,次のように定義する。 

<complexType name="TimeClockType" final="#all"> 

<complexContent> 

<extension base="gml:TimeReferenceSystemType"> 

<sequence> 

<element name="referenceEvent" type="gml:StringOrRefType"/> 
<element name="referenceTime" type="time"/> 
<element name="utcReference" type="time"/> 
<element name="dateBasis" type="gml:TimeCalendarPropertyType"  

163 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:TimeClock要素は,gml:TimeReferenceSystemType要素を継承するプロパティに次のプロパティを加

える。 

− gml:referenceEvent属性は,正午又は日の出のような,時計の基準尺度の位置を決める事象の名前,又

は説明とする。referenceEventが遠隔の値を参照する方法は,非推奨であるため,文字列型を使用する。 

− gml:referenceTime属性は,与えられた時計における時刻として表現し,参照する事象と関連付けられ

た時間を記述する。参照する時刻は通常,時間尺度の原点とする。 

− gml:utcReference属性は,参照する時刻に対応する24時間の地方時間又は協定世界時(UTC)を記述

する。 

− gml:dateBasis属性は,この時計を使用する暦を含むか又は参照する。 

14.4.4.5 TimeClockPropertyType 

gml:TimeClockPropertyType要素は,オブジェクトとgml:TimeClock要素との関連付けを与える。 

<complexType name="TimeClockPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeClock"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

14.4.5 順序時間参照系 

14.4.5.1 概要 

地質学及び考古学のような,幾つかの地理情報の応用分野では,時間における相対位置が,完全な時間

又は期間よりも正確に知られている。時間における事象の順序は正しく確立することができるが,事象の

間隔の大きさは,正確に決定することができないような場合には,順序時間参照系が適している。順序時

間参照系は,名前をもつ隣接する年代の列から構成され,それらの年代は,より詳細な尺度の年代の列か

ら構成される。これらは全体として,様々な分解能をもつ年代の階層構造を与える。 

順序時間参照系で,その要素となる各年代がより細分化することがないものについては,線形グラフで

あるという制約をもつ時間位相集合とすることが実際的である。また,順序時間参照系で,要素となる各

年代が細分化されるものについては,一つの要素年代だけの枝と,“group”の“members”と呼ばれる順序

時間年代の列からなる枝との対だけが並行を許される,という制約をもつ時間的位相集合とすることが実

際的である。 

与えられた年代の開始位置及び終了位置は,相対的時間尺度に合わせてもよい。 

14.4.5.2 TimeOrdinalReferenceSystem及びTimeOrdinalEra 

gml:TimeOrdinalReferenceSystem要素は,一般的な時間参照系モデルに一つ以上のgml:componentプロパ

ティを追加することで,JIS X 7108のTM̲OrdinalReferenceSystem(D.2.5.10及びJIS X 7108:2004の5.3.4

参照)を実装する。これは,次のように宣言する。 

<element name="TimeOrdinalReferenceSystem" type="gml:TimeOrdinalReferenceSystemType" 
substitutionGroup="gml:TimeReferenceSystem"/> 

background image

164 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:TimeOrdinalReferenceSystem要素は,gml:TimeReferenceSystem要素が妥当などの場所で使用してもよ

い。その内容モデルは,次のように宣言する。 

<complexType name="TimeOrdinalReferenceSystemType"> 

<complexContent> 

<extension base="gml:TimeReferenceSystemType"> 

<sequence> 

<element name="component" type="gml:TimeOrdinalEraPropertyType" 

maxOccurs="unbounded"/> 
</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:TimeOrdinalEra要素は,JIS X 7108のTM̲OrdinalEra(D.2.5.10及びJIS X 7108:2004の5.3.4参照)

を実装する。この内容モデルは,gml:TimeEdge(14.3.2.8参照)のパターンに従い,gml:DefinitionType要

素(15.2.1参照)から標準的なプロパティを継承し,gml:startプロパティ,gml:endプロパティ及びgml:extent

プロパティ,並びにgml:TimeOrdinalEra要素を示すgml:memberプロパティの集合及び親の年代を示す

gml:groupプロパティを追加する。これは,次のように宣言する。 

<element name="TimeOrdinalEra" type="gml:TimeOrdinalEraType"/> 

<complexType name="TimeOrdinalEraType"> 

<complexContent> 

<extension base="gml:DefinitionType"> 

<sequence> 

<element name="relatedTime" type="gml:RelatedTimeType" minOccurs="0" 

maxOccurs="unbounded"/> 

<element name="start" minOccurs="0" type="gml:TimeNodePropertyType"/> 
<element name="end" minOccurs="0" type="gml:TimeNodePropertyType"/> 
<element name="extent" type="gml:TimePeriodPropertyType" minOccurs="0"/> 
<element name="member" type="gml:TimeOrdinalEraPropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 

<element name="group" type="gml:ReferenceType" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:TimeOrdinalEra要素の再帰的な包含は,与えられたレベルの順序年代がより短い互いに隣接する順

序年代を含む,任意の深さの階層的な順序参照系を可能にする。 

例 地質学の年代尺度の一部を順序参照系として表現したものを,表7の例で示す。 

表7−地質学の年代尺度を順序参照系として表現した例 

新生代(Cenozoic) 

第四紀(Quaternary) 

完新世(沖積世)(Holocene) 

更新世(洪積世)(Pleistocene) 

第三紀(Tertiary) 

新第三紀(Neogene) 

鮮新世(Pliocene) 

中新世(Miocene) 

古第三紀(Paleogene) 漸新世(Oligocene) 

始新世(Eocene) 

暁新世(Paleocene) 

165 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:TimeOrdinalReferenceSystem gml:id="GeologicalTimeScale"> 

<gml:description xlink:href="ftp://ftp.iugs.org/pub/iugs/iugs̲intstratchart.pdf"/> 
<gml:name>地質学的時間尺度</gml:name> 
<gml:domainOfValidity>地球</gml:domainOfValidity> 
<!-- より古い年代は省略 --> 
<gml:component> 

<gml:TimeOrdinalEra gml:id="Cenozoic"> 

<gml:name>新生代</gml:name> 
<gml:start xlink:href="#basePaleocene"/> 
<gml:end xlink:href="#now"/> 
<gml:member> 

<gml:TimeOrdinalEra gml:id="Tertiary"> 

<gml:name>第三紀</gml:name> 
<gml:start xlink:href="#basePaleogene"/> 
<gml:end xlink:href="#baseQuaternary"/> 
<gml:member> 

<gml:TimeOrdinalEra gml:id="Paleogene"> 

<gml:name>古第三紀</gml:name> 
<gml:start> 

<gml:TimeInstant gml:id="basePaleogene"> 

<gml:timePosition frame="#geologyMa">65.0</gml:timePosition> 

</gml:TimeInstant> 

</gml:start> 
<gml:end xlink:href="#baseNeogene"/> 
<gml:member> 

<gml:TimeOrdinalEra gml:id="Paleocene"> 

<gml:name>暁新世</gml:name> 
<gml:start xlink:href="#basePaleogene"/> 
<gml:end xlink:href="#baseEocene"/> 

</gml:TimeOrdinalEra> 

</gml:member> 
<gml:member> 

<gml:TimeOrdinalEra gml:id="Eocene"> 

<gml:name>始新世</gml:name> 
<gml:start > 

<gml:TimeInstant gml:id="baseEocene"> 

<gml:timePosition  
frame="#geologyMa">57.8</gml:timePosition> 

</gml:TimeInstant> 

</gml:start > 
<gml:end xlink:href="#baseOligocene"/> 

</gml:TimeOrdinalEra> 

</gml:member> 
<gml:member> 

<gml:TimeOrdinalEra gml:id="Oligocene"> 

<gml:name>漸新世</gml:name> 

<gml:start > 

<gml:TimeInstant gml:id="baseOligocene"> 

166 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:timePosition  

frame="#geologyMa">33.7</gml:timePosition> 

</gml:TimeInstant> 

</gml:start > 
<gml:end xlink:href="#baseNeogene"/> 

</gml:TimeOrdinalEra> 

</gml:member> 

</gml:TimeOrdinalEra> 

</gml:member> 
<!-- 新第三紀の細分と第四紀は省略 --> 

</gml:TimeOrdinalEra> 

</gml:member> 

</gml:TimeOrdinalEra> 

</gml:component> 

</gml:TimeOrdinalReferenceSystem> 

注記 色々なstart要素及びend要素で参照を使用できるということは,年代間の境界位置を一度記録

しておいて,非線形グラフのように再使用を必要とする場合,何度もそれを再使用することを

可能にすることである。 

14.4.5.3 TimeOrdinalEraPropertyType 

gml:TimeOrdinalEraPropertyType要素は,オブジェクトとgml:TimeOrdinalEra要素との関連を与える。 

<complexType name="TimeOrdinalEraPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TimeOrdinalEra"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

14.5 動的地物の表現  

14.5.1 概要 

地物の,時間によって変化するプロパティを表現するため,幾つかの型及び関係を定義する。 

時空のモデリングの包括的な取扱いにおいて,Langran(参考文献[15]参照)は,三つの主要な時間実体

である,状態,事象,及び証拠を識別した。そのスキーマは,各々の要素を包含する次の細分箇条で特徴

付ける。その概念モデルをD.3.11に示す。 

14.5.2 dataSource 

GMLでは,情報源は時間データのソースを示す,単純なgml:dataSource要素又はgml:dataSourceReference

要素のプロパティで表現する。 

<element name="dataSource" type=" gml:StringOrRefType"/> 
<element name="dataSourceReference" type="gml:ReferenceType"/> 

gml:dataSource要素の遠隔リンク属性は,現在の型とともに非推奨とする。その代わりに,遠隔データ

ソースを参照するために,gml:dataSourceReference要素の遠隔リンク属性を使用する。gml:dataSourceの型

には,文字列型を使用する。 

例 人間の観察者又は現場に置かれたセンサ。 

14.5.3 動的プロパティ 

便宜的なgml:dynamicPropertiesグループを次のように定義する。 

167 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<group name="dynamicProperties"> 

<sequence> 

<element ref="gml:validTime" minOccurs="0"/> 
<element ref="gml:history" minOccurs="0"/> 
<element ref="gml:dataSource" minOccurs="0"/> 
<element ref="gml:dataSourceReference" minOccurs="0"/> 

</sequence> 

</group> 

これは,応用スキーマの開発者が標準的な方法で内容モデルに動的プロパティ(dynamic property)を含

むことを許す。gml:validTimeプロパティは,14.2.1.3で明記されている。他のプロパティは14.5の別の場

所に示す。 

14.5.4 DynamicFeature 

状態は,地物のタイムスタンプを付けたインスタンスで表現する。gml:DynamicFeature要素は,D.3.11

に示すように動的地物(dynamic feature)を実装し,次のように宣言する。 

<element name="DynamicFeature" type="gml:DynamicFeatureType" 
substitutionGroup="gml:AbstractFeature"/> 

その内容モデルは,gml:dynamicPropertiesモデルグループとともに,標準的なgml:AbstractFeatureTypeを

拡張する。 

<complexType name="DynamicFeatureType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<group ref="gml:dynamicProperties"/> 

</extension> 

</complexContent> 

</complexType> 

各々のタイムスタンプされたインスタンスは,地物の“スナップショット”を表現する。動的地物クラ

スは,通常は固有の応用に合わせて拡張される。動的地物は,タイムスタンプ又は履歴をもつ。 

注記 履歴は,gml:AbstractTimeSliceの集合からなり,そのような時間断面は,幾つかの時間的に変

化するプロパティを含んでもよい。例えば,時間的に多様な一つのプロパティをもつ地物を記

述するために,そのような機構を用いてもよい。 

14.5.5 DynamicFeatureCollection 

gml:DynamicFeatureCollection要素は,D.3.11に示すように動的地物の集まり(dynamic feature collection)

を実装し,次のように宣言する。 

<element name="DynamicFeatureCollection" type="gml:DynamicFeatureCollectionType" 
substitutionGroup="gml:DynamicFeature"/> 

その内容モデルは,gml:dynamicMembersプロパティとともに,gml:DynamicFeatureTypeを拡張する。 

<complexType name="DynamicFeatureCollectionType"> 

<complexContent> 

<extension base="gml:DynamicFeatureType"> 

<sequence> 

<element ref="gml:dynamicMembers"/> 

</sequence> 

</extension> 

</complexContent> 

168 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

<element name="dynamicMembers" type="gml:DynamicFeatureMemberType"/> 

<complexType name="DynamicFeatureMemberType"> 

<complexContent> 

<extension base="gml:AbstractFeatureMemberType"> 

<sequence> 

<element ref="gml:DynamicFeature" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

gml:DynamicFeatureCollection要素は,次のいずれかのプロパティをもつ地物コレクションの一つとする。 

− gml:validTimeプロパティ(すなわち,地物の集まりのスナップショット) 

− 地物の集まりの時間変化するプロパティの値を各々含む一つ以上のgml:AbstractTimeSlices要素を更

に含むgml:historyプロパティ。 

gml:DynamicFeatureCollection要素は,次の一つであってもよいことに留意する。 

1. 地物の集まりは,静的な地物メンバ(時間変化しないメンバ)で構成するが,全体として時間変化す

る集まりのオブジェクトのプロパティをもつ(例えば,historyで示す。)。 

例1 列車:列車は地物の集まりである。列車の位置及び速度は時間変化し,列車の履歴として捉

えることができる。列車のfeatureMembersは,機関車を含めた個々の車両である。車両のプ

ロパティは静的であり,例えば,列車内の車両の位置(この例では,列車のいかなる再編も

無視する。),貨物,車両の種類及びその型(例えば,穀物車両,石油車両等)である。 

2. 地物の集まりは,動的な地物メンバ(メンバはgml:DynamicFeatures要素)で構成するが,全体として

時間変化する集合のプロパティももつ。 

例2 ヨットレースの帆船の集まり。帆船は,レースから見えなくなったり,また現れるかもしれ

ない。レース(全日本外洋ヨット選手権大会のようなレースを考える。)において,参加して

いる船を囲む領域は,時間とともに変化するであろう。 

注記 動的地物メンバを伴う地物の集まりをもつことができるが,集まり全体としてのプロパティは,

静的である。これはまた,組織委員会並びに開始地点の位置及びゴールのラインのようなプロ

パティしかもたない帆船レースに適用されるかもしれない。 

14.5.6 AbstractTimeSlice 

ある事象を記述するために(すなわち,ある瞬間又はある時間間隔を超えて起こる活動),GMLは,

gml:AbstractTimeSlice要素を提供し,それは,次のように宣言する。 

<element name="AbstractTimeSlice" type="gml:AbstractTimeSliceType" abstract="true" 
substitutionGroup="gml:AbstractGML"/> 

<complexType name="AbstractTimeSliceType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGMLType"> 

<sequence> 

background image

169 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:validTime"/> 
<element ref="gml:dataSource" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

時間断面(time slice)は,動的地物の時間変化するプロパティを格納する。それは,特定の地物のタイ

ムスタンプ付きの射影を表現するための拡張とする。gml:dataSourceプロパティは,時間データがどのよ

うに取得されたかを記述する。 

gml:AbstractTimeSliceインスタンスは,何らかの変化があった事象を反映する,動的(又は不安定な)

プロパティの更新を格納するGMLオブジェクトとする。それゆえ,それは,何らかの処理のために実際

に変化した地物プロパティだけを含む。 

例1 ビルの所有者が変わり,名前が変更されることを想定する。もしビルの他のプロパティが変更

なければ,事象は,更新された名前だけを含むであろう。 

gml:AbstractTimeSliceは,動的地物のインスタンスがオブジェクトレベルのタイムスタンプであるのと

対照的に,基本的に属性レベルのタイムスタンプという仕掛けを与える。 

時間断面はそれゆえ,スナップショットがより状態的又は構造指向であるのに対して,事象又はプロセ

ス指向として見られる。 

例2 地物の集まりは,スナップショットの列によって表現される“ライフサイクル”をもってもよ

い(図3参照)。 

図3−地物の集まりのライフサイクル 

瞬間t1において,地物A,地物B,及び地物Cは,集まりの全メンバである。一方,瞬間t2において,

地物A及び地物Cだけがメンバである。地物Bの履歴を詳細に検討すれば,これが短命という本性をも

っていることが分かる(例えば,季節によってビルが解体されたり再建築される。)。 

14.5.7 history 

一般的な事象の列は,オブジェクトのgml:history要素を構成する。このプロパティ要素は,次のように

宣言する。 

<element name="history" type="gml:HistoryPropertyType"/> 

<complexType name="HistoryPropertyType"> 

<sequence> 

<element ref="gml:AbstractTimeSlice" maxOccurs="unbounded"/> 

地物A 

地物B 

地物B 

地物C 

時間 

t1 

t2 

170 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:history要素は,興味の対象となる,時間変化するプロパティを表す抽象要素である

gml:AbstractTimeSlice要素によって代表される代替グループの中での要素の集まりを含む。動的地物の履

歴(history)プロパティは,地物インスタンスと地物の変遷を格納する時間断面の列とが関連する。 

注記 gml:historyプロパティは,識別子は時間モデルの生存期間を超えて不変であるが,地物の時間

変化のプロパティを捉えるという意図をもつ。このように,地物の詳細な変遷は,例えば,空

間における動作又は形状の変化を記述することができる。gml:historyプロパティは,14.3で明

示した時間位相オブジェクトに関連づけてもよい。異なる時間断面の妥当な時間位相を明示的

に表現しなければならない場合,動的地物のgml:historyにおける全てのgml:AbstractTimeSlice

要素は,時間位相モデルにおけるgml:TimeEdgeに一致してよい。時間位相では,地物の系譜又

は動的地物を含む時間地物の集まりを付加するための骨格を与える時間位相複体を構成する。 

例 gml:MovingObjectStatus(I.7.2参照)は,gml:AbstractTimeSlice要素が,ある時間内に移動するオ

ブジェクトの状態を捉えるためにどのように拡張できるかを示す一つの例である。この型は,ISO 

19141(移動地物のためのスキーマ)と整合するまで非推奨とする。 

地物が移動オブジェクト,例えば車両又は船を表現する場合,gml:historyプロパティは,

gml:MovingObjectStatus要素の列を含む。動的地物,例えばCyclone(サイクロン)は,gml:history

プロパティをもってもよく,例えば,次のような素片で示される。 

<app:Cyclone gml:id="c1"> 

<gml:history> 

<gml:MovingObjectStatus> 

<gml:validTime> 

<gml:TimeInstant> 

<gml:timePosition>2005-11-28T13:00:00Z</gml:timePosition> 

</gml:TimeInstant> 

</gml:validTime> 
<gml:location> 

<gml:Point gml:id="p1" srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"> 

<gml:pos>-35 140</gml:pos> 

</gml:Point> 

</gml:location> 
<gml:speed uom="#kph">12</gml:speed> 
<gml:bearing> 

<gml:CompassPoint>SE</gmlCompassPoint> 

</gml:bearing> 

</gml:MovingObjectStatus> 
<gml:MovingObjectStatus> 

<gml:validTime> 

<gml:TimeInstant> 

<gml:timePosition>2005-11-28T14:00:00Z</gml:timePosition> 

</gml:TimeInstant> 

</gml:validTime> 
<gml:location> 

<gml:Point> 

171 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:pos>-34.9 140.1</gml:pos gml:id="p1" 

srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"> 
</gml:Point> 

</gml:location> 
<gml:speed uom="#kph">23</gml:speed> 
<gml:bearing> 

<gml:CompassPoint>ESE</gml:CompassPoint> 

</gml:bearing> 

</gml:MovingObjectStatus> 

</gml:history> 

</app:Cyclone> 

15 GML スキーマ−定義及び辞書 

15.1 概要 

多くの応用システムでは,用語の定義が必要である。ここで,用語は,インスタンス文書内で,あるプ

ロパティの値として使われるか,又はプロパティを標準的な情報の値と何らかの方法で結び付ける参照情

報として使われる。 

多くの場合,外部の権威ある機関が提供する定義を使うのがよい。そのような定義は,オンライン及び

オフラインの様々な方法での配布用に,既にまとめられていることがある。GML文書から定義を参照する

ために必要なことは,個々の定義のそれぞれに対してURIが使用できることである。この条件が満たされ

ている場合,直接参照することが通常は望ましい。 

一方,参照ではなく,定義そのものをXMLで記述して,インスタンス文書内又は別の文書の形で保持

することが望ましいとき,又は必要なときがある。この場合,定義は,外部情報源からの写しであっても

よいし,文脈に特化した新しい定義であってもよい。この状況への対応として,GMLでは幾つかの単純な

構成部品を,次に示す形のいずれかによって規定する。 

− 汎用のgml:Definitionの形。これは,より特化した定義の基本として使える。 

− 汎用のgml:Dictionary の形。これは,定義の集合,又は定義への参照の集合として使える。 

これらの構成部品はそのまま使用してもよいが,GMLの中で特化した定義要素,特に,座標演算(箇条

12),座標参照系(箇条12),原子(箇条12),時間参照系(箇条14),及び計測単位(箇条16)の基本と

して使用することができる。 

注意してほしいのは,GML定義部品(gml:Definition)及びGML辞書構成部品(gml:Dictionary)が,識

別子付の定義の単純な入れ子の階層構造を実装することである。識別子は,より複雑な用語間の関係の記

述に用いることが可能な手段(handle)を提供する。しかし,GMLの辞書構成部品は,複雑な分類,オン

トロジ又は類語辞書を直接与えることは意図していない。より洗練された要求を満足する専門的なXML

ツールが入手可能である。 

注記 辞書スキーマ文書を,次の(URN構文を用いた)位置独立名で識別する。 

urn:x-ogc:specification:gml:schema-xsd:dictionary:3.2.1 

15.2 辞書スキーマ 

15.2.1 Definition,DefinitionType及びremarks 

基本的な gml:Definition 要素は,辞書(dictionary)への追加又は参照が可能な定義を示す。これは,次

のように宣言する。 

172 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="Definition" type="gml:DefinitionType" substitutionGroup="gml:AbstractGML"/> 
 
<complexType name="DefinitionBaseType"> 

<complexContent> 

<restriction base="gml:AbstractGMLType"> 

<sequence> 

<element ref="gml:metaDataProperty" minOccurs="0" maxOccurs="unbounded"/> 

<element ref="gml:description" minOccurs="0"/> 
<element ref="gml:descriptionReference" minOccurs="0"/> 
<element ref="gml:identifier"/> 
<element ref="gml:name" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 
<attribute ref="gml:id" use="required"/> 

</restriction> 

</complexContent> 

</complexType> 
 
<complexType name="DefinitionType"> 

<complexContent> 

<extension base="gml:DefinitionBaseType"> 

<sequence> 

<element ref="gml:remarks" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 
 
<element name="remarks" type="string"/> 

一般的な定義(definition)のための内容モデルは,gml:AbstractGMLTypeからの派生とする。 

gml:descriptionプロパティ要素は,定義を単純なテキスト列で表現するときに,使用しなければならな

い。また,gml:descriptionReferenceプロパティ要素は,別の場所にある記述へのリンクをもつことを許す。 

gml:identifier要素は,この定義を識別する単一の識別子を示さなければならない。識別子は,この定義

を用いる辞書内で一意でなければならない。 

gml:name要素は,定義に対応する零個以上の用語及び同義語を示さなければならない。 

gml:remarks要素は,定義の概念部分ではないが,その定義の理解に役立つ補足的な文章情報を保持する

ために使用しなければならない。 

15.2.2 Dictionary及びDictionaryType 

定義(definition)の集合は,辞書(dictionary)又は集まり(collection)にまとめることができ,スキー

マ内で次のように宣言する。 

<element name="Dictionary" type="gml:DictionaryType" substitutionGroup="gml:Definition"/> 
 
<complexType name="DictionaryType"> 

<complexContent> 

<extension base="gml:DefinitionType"> 

<choice minOccurs="0" maxOccurs="unbounded"> 

<element ref="gml:dictionaryEntry"/> 

173 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:indirectEntry"/> 

</choice> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

gml:Dictionaryは,定義の非抽象的な集まりとする。 

gml:Dictionaryの内容モデルは,gml:Definitionオブジェクトを含むか又は参照するgml:dictionaryEntry及

び gml:indirectEntry(非推奨)プロパティのリストを加えたものとする。データベース処理(gml:id属性)

は,この集まりを参照可能とするために必要となる。基本的なgml:identifier,gml:description,

gml:descriptionReference及びgml:name プロパティが,この辞書に関するより多くの情報を参照又は含むた

めに使用可能である。 

gml:description及びgml:descriptionReferenceプロパティ要素は,この辞書の記述に用いることができる。

派生したgml:name要素は,この辞書の名称に使うことができる。 

15.2.3 dictionaryEntry及びDictionaryEntryType 

これらの要素は,辞書(dictionary)のメンバの定義(definition)を含むか又は参照する。gml:dictionaryEntry

要素は,次のように宣言する。 

<element name="dictionaryEntry" type="gml:DictionaryEntryType"/> 
 
<complexType name="DictionaryEntryType"> 

<complexContent> 

<extension base="gml:AbstractMemberType"> 

<sequence minOccurs="0"> 

<element ref="gml:Definition"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

この内容モデルは,標準的なGMLプロパティのパターンに従い,gml:dictionaryEntryは単一の

gml:Definitionを含むか又は参照できる。gml:Dictionaryは,gml:Definitionを代替できるため,見出しの内

容を下位レベルの辞書とすることができる。 

定義内容が参照によって得られる場合,その定義は,文脈内でのハンドル(gml:id)を伴っていないと

いうことに注意が必要である。したがって,この文脈特有の定義として外部からの参照をさせることは許

されない。この使用方法では,通常,参照する定義は同じXML文書内の辞書に存在する。 

15.2.4 定義及び辞書の使用 

辞書及び定義は,GMLオブジェクトである。したがって,別々のGMLデータのインスタンス文書にお

くことができる。 

応用スキーマでは,集まりのメンバのプロパティ内で使用する定義を記録するため,gml:Dictionary又は

gml:Definitionsを地物の集まりに付けるとよい。 

例 次の例は,二つの辞書インスタンスを示す。 
<gml:Dictionary gml:id="rockTypes"> 

<gml:description>gmlBaseのコンポーネントを使った簡単な岩石辞書</gml:description> 

174 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:identifier codeSpace="http://www.abc.org/terms">岩石の型</gml:identifier> 
<gml:dictionaryEntry> 

<gml:Definition gml:id=" granite"> 

<gml:description>主に石英,2種類の長石,及び雲も(母)からなる火成岩</gml:description> 

<gml:identifier codeSpace="http://www.abc.org/terms">花こう(崗)岩</gml:identifier> 

</gml:Definition> 
</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="sst"> 

<gml:description>通常,けい(珪)酸を含む粒子からなる砕せつ(屑)岩</gml:description> 
<gml:identifier codeSpace="http://www.abc.org/terms">砂岩</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 

<gml:dictionaryEntry xlink:href="http://my.big.org/definitions/geology/limestone"/> 
</gml:Dictionary> 

<gml:Dictionary gml:id="AbridgedGMLdictionary"> 

<gml:description>縮小版GML辞書</gml:description> 
<gml:identifier codeSpace="http://www.opengis.net/gml/3.2">GML辞書</gml:identifier> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="term4.1"> 

<gml:description>一つ以上の応用システムで必要なデータのための概念スキーマ

</gml:description> 

<gml:identifier codeSpace="http://www.isotc211.org/19101">応用スキーマ</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="term4.2"> 

<gml:description>JIS X 7136で指定される規則に従ってXML Schemaで記述する応用スキーマ

</gml:description> 

<gml:identifier codeSpace="http://www.opengis.net/gml/3.2">GML 応用スキーマ</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="term4.3"> 

<gml:description>そのインスタンス間での接続を指定する,二つ以上の分類間での意味関係

</gml:description> 

<gml:identifer codeSpace="http://www.uml.org/1.3">関連</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="term4.4"> 

<gml:description>要素に含まれる名称と値の組</gml:description> 
<gml:identifer codeSpace="http://www.w3.org/XML/1998/namespace">属性</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<!-- … --> 

</gml:Dictionary> 

175 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

16 GMLスキーマ−単位,計測値,及び値 

16.1 一般 

GMLスキーマ構成部品の中には,参照尺度又は計測単位を用いた,量の値と関係があるか又はそれを必

要とするものがある。8.2において,gml:MeasureType型,gml:MeasureListType型及び

gml:MeasureOrNilReasonListType型を,GMLプロパティ及びオブジェクトが計測単位をもつことができる

ように,次のパターンに従って定義する。 

<abc:length uom="m">100</abc:length> 

uom属性は,“unit of measure”(計測単位)を意味し,gml:UomIdentifier(8.2.3.6参照)を保持する。こ

の箇条16では,三つの主題に関係するスキーマ構成部品を示す。 

− 計測単位を定義する構成部品の集合 

− 型付きの計測値の集合 

− 計測値の集成及びリストのための構造 

16.2 単位スキーマ 

16.2.1 概要 

GMLスキーマ構成部品の中には,参照尺度又は計測単位に関係する又は必要となるものがある。地物型

のプロパティの値,観測の結果,被覆の範囲パラメタ,及び座標参照系の定義で用いる計測値として現れ

る量には,単位が必要な場合がある。 

注記 スキーマ文書units.xsd は,計測単位の定義を利用可能にする構成部品を定義する。単位スキー

マ文書は,附属書Cに記載する。これは,次の(URN構文を用いた)位置独立名によって識

別する。 

urn:x-ogc:specification:gml:schema-xsd:units:3.2.1 

基本的な単位の定義は,15.2.1で定義した一般的なgml:Definition要素の拡張とする。さらに,単位の定

義に特化した三つの要素が,これから派生する。 

このモデルは国際単位系(SI)(JIS Z 8203:2000参照)に基づいており,基本単位と組立単位とを区別

している。 

− 基本単位は,個々の単位系を定義する,互いに直交する基本量の集合のために選択された単位とし,

他の基本単位の組合せから派生させることはできない。 

− 組立単位は,単位系の他の量のために選択された単位とし,基本単位の代数的組合せによって定義で

きる。 

幾つかの応用分野では,慣用的な単位を使用するが,倍率又はスケーリング及びオフセットを定義した

式を使い,選択された単位に換算してもよい。個々の単位系における全ての物理量の型のために選択され

た単位の集合は,その基本単位及び組立単位の組合せで構成する。 

16.2.2 単位の定義の使用 

単位の定義は,辞書モデルの部分として宣言するgml:Definition要素を代替可能とする。単位の定義及び

単位の定義への参照だけを含む辞書は,単位辞書である。 

16.2.3 unitOfMeasure及びUnitOfMeasureType 

gml:unitOfMeasure要素は,計測単位を参照するプロパティ要素とする。スキーマでは,次のように宣言

する。 

<element name="unitOfMeasure" type="gml:UnitOfMeasureType "/> 
 

176 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="UnitOfMeasureType"> 

<sequence/> 
<attribute name="uom" type="gml:UomIdentifier" use="required"/> 

</complexType> 

これは,計測単位の定義を参照する空白の要素とする(8.2.3.6参照)。 

例 この要素は,次のようなデータインスタンスとなる。 
<unitOfMeasure uom="m"/> 
<unitOfMeasure uom="http://my.standards.org/units/length/metre"/> 

16.2.4 UnitDefinition及びUnitDefinitionType 

gml:UnitDefinitionは,計測単位の一般的な定義とする。この一般的な要素は,他の単位又は単位系との

関係をもたない単位にだけ使用する。スキーマでは,次のように宣言する。 

<element name="UnitDefinition" type="gml:UnitDefinitionType" substitutionGroup="gml:Definition"/> 

<complexType name="UnitDefinitionType"> 

<complexContent> 

<extension base="gml:DefinitionType"> 

<sequence> 

<element ref="gml:quantityType" minOccurs="0"/> 
<element ref="gml:quantityTypeReference" minOccurs="0"/> 
<element ref="gml:catalogSymbol" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:UnitDefinitionの内容モデルは,gml:Definition(15.2.1参照)に更に三つのプロパティ,gml:quantityType,

gml:quantityTypeReference 及びgml:catalogSymbol を追加する。 

gml:catalogSymbolプロパティは,任意選択とし,その単位に使用する単位記号を与える。この要素は,

通常,他の単位又は単位系との関係が知られていない場合に使用する。 

16.2.5 quantityType及びquantityTypeReference 

gml:quantityType及びgml:quantityTypeReferenceプロパティは,その単位に適用する現象を示す。これは,

次のように宣言する。 

<element name="quantityType" type="gml:StringOrRefType"/> 
<element name="quantityTypeReference" type="gml:ReferenceType"/> 

この要素は,計測又は観測した物理量の型又は現象の,略式の記述を含む。 

例 “長さ”,“角度”,“時間”,“圧力”及び“温度”。 

その物理量が観測又は計測の結果である場合,この用語は,可観測型又は測定量として理解する。 

gml:quantityTypeで遠隔の値を参照する使用法は,非推奨である。代わりにgml:quantityTypeReferenceを

使用しなければならない。gml:quantityTypeで遠隔の値を参照する使用法は非推奨であるため,文字列型を

使用する。 

16.2.6 catalogSymbol 

catalogSymbolは,その計測単位で使用すべき文字記号とする。これは,次のように宣言する。 

<element name="catalogSymbol" type="gml:CodeType"/> 

177 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:CodeTypeのcodeSpaceプロパティは,カタログ中の記号の値のための名前空間を指定する。外部カ

タログを参照することもある。gml:CodeTypeの中の文字列値は,カタログの名前空間内で一意となる記号

の値を含む。多くの場合,この記号はカタログ内にそのまま現れるが,決められた単位の式を使った記号

の組合せであってもよい。 

例 記号“cm”は,記号“m”に接頭辞“c”を組み合わせたものとみなすことができる。この場合は,

カタログの名前空間内で“c”及び“m”が一意となる記号の値として含まれる。 

16.2.7 BaseUnit,BaseUnitType及びunitsSystem 

基本単位(base unit)は,ある単位系(units system)内で他の基本単位の組合せとして派生することが

できない計測単位とする。例えば,国際単位系(SI)では,基本単位は,メートル,キログラム,秒,ア

ンペア,ケルビン,モル及びカンデラの七つで,それぞれ長さ,質量,時間,電流,熱力学温度,物質量

及び光度の物理量型である。 

基本単位は,gml:BaseUnit要素を使って次のように宣言する。 

<element name="BaseUnit" type="gml:BaseUnitType" substitutionGroup="gml:UnitDefinition"/> 

<complexType name="BaseUnitType"> 

<complexContent> 

<extension base="gml:UnitDefinitionType"> 

<sequence> 

<element name="unitsSystem" type="gml:ReferenceType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:BaseUnitは,汎用のgml:UnitDefinitionの拡張とし,その基本単位が属する単位系の参照を示す

gml:unitsSystemプロパティをもつ。 

16.2.8 DerivedUnit及びDerivedUnitType 

組立単位は,他の単位の組合せで定義する。組立単位は,周波数にはヘルツ(s−1),力にはニュートン

(kg・m/s2)というように,基本単位以外の量に使用する。単位系の基本的な量以外の量には,通常,基

本単位だけで構成した組立単位の使用を推奨する。組立単位が選択された単位でない場合,

gml:ConventionalUnit要素(16.2.10参照)を使用しなければならない。gml:DerivedUnit要素は,次のよう

に宣言する。 

<element name="DerivedUnit" type="gml:DerivedUnitType" substitutionGroup="gml:UnitDefinition"/> 

<complexType name="DerivedUnitType"> 

<complexContent> 

<extension base="gml:UnitDefinitionType"> 

<sequence> 

<element ref="gml:derivationUnitTerm" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:DerivedUnitは,gml:UnitDefinitionの拡張で,gml:derivationUnitTermsプロパティをもつ。 

178 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

16.2.9 derivationUnitTerm及びDerivationUnitTermType 

gml:derivationUnitTerm要素の集合は,計測のための組立単位を示す。各単位項は整数指数をもつ。各要

素は,指数による参照単位の累乗及び積によって結合される。gml:derivationUnitTerm要素は,次のように

宣言する。 

<element name="derivationUnitTerm" type="gml:DerivationUnitTermType"/> 

<complexType name="DerivationUnitTermType"> 

<complexContent> 

<extension base="gml:UnitOfMeasureType"> 

<attribute name="exponent" type="integer"/> 

</extension> 

</complexContent> 

</complexType> 

この単位項は,他の計測単位(uom)の一つを参照し,合成した単位を定めるときに,その単位に適用

する整数指数を与える。指数は,正又は負を取ることができるが,零であってならない。 

16.2.10 ConventionalUnit及びConventionalUnitType 

基本単位でも,基本単位を直接組み合わせた単位でもない慣用的な単位が,多くの応用分野で使用され

ている。例えば,エネルギーのための電子ボルト,長さのためのフィート,海里などがある。ほとんどの

場合,基本単位,又は基本単位の直接の組合せによる派生となる,選択された単位への,既知の(通常線

形の)換算がある。gml:ConventionalUnit要素は,次のように宣言する。 

<element name="ConventionalUnit" type="gml:ConventionalUnitType" 
substitutionGroup="gml:UnitDefinition"/> 

<complexType name="ConventionalUnitType"> 

<complexContent> 

<extension base="gml:UnitDefinitionType"> 

<sequence> 

<choice> 

<element ref="gml:conversionToPreferredUnit"/> 
<element ref="gml:roughConversionToPreferredUnit"/> 

</choice> 
<element ref="gml:derivationUnitTerm" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:ConventionalUnitは,gml:UnitDefinitionの拡張であり,その物理量の選択された単位への換算を記述

するプロパティをもつ。その換算が正確な場合,gml:conversionToPreferredUnit要素を使わなければならな

い。換算が正確ではない場合は,gml:roughConversionToPreferredUnit要素を使用可能とする。両者は,同

一の内容モデルをもつ。上の細分箇条(16.2.9)で定義したgml:derivationUnitTermプロパティは,どのよ

うにこの単位が他の(より基本的な)単位から派生したかを,任意選択で記録することを使用者に許すた

めにある。 

16.2.11 conversionToPreferredUnit,roughConversionToPreferredUnit,ConversionToPreferredUnitType及

びFormulaType 

179 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:conversionToPreferredUnit 及び gml:roughConversionToPreferredUnit 要素は,慣用的な単位からこの

物理量型の選択された単位への換算に使用するパラメタを表す。選択された単位は,単一の物理量型の全

ての値のために選択した基本単位又は組立単位とする。これらの換算は,スキーマ文書内で次のように宣

言する。 

<element name="conversionToPreferredUnit" type="gml:ConversionToPreferredUnitType"/> 

<element name="roughConversionToPreferredUnit" type="gml:ConversionToPreferredUnitType"/> 

<complexType name="ConversionToPreferredUnitType"> 

<complexContent> 

<extension base="gml:UnitOfMeasureType"> 

<choice> 

<element name="factor" type="double"/> 
<element name="formula" type="gml:FormulaType"/> 

</choice> 

</extension> 

</complexContent> 

</complexType> 

gml:UnitOfMeasureTypeから継承したuom属性は,この換算を適用する選択された単位を参照する。こ

の物理量型にとっての選択された単位への換算は,算術換算(スケーリング及び/又はオフセット)で指

定する。この内容モデルは gml:UnitOfMeasureType の拡張であり,この換算を適用する物理量型にとって

の選択された単位を示す必須属性であるuomをもつ。換算は,慣用的な計測単位での値を,対応する選択

された計測単位での値に換算する要素 gml:factor (倍率を定義)又はgml:formula(式を定義)の二者択一

とする。次に式のモデルを示す。 

<complexType name="FormulaType"> 

<sequence> 

<element name="a" type="double" minOccurs="0"/> 
<element name="b" type="double"/> 
<element name="c" type="double"/> 
<element name="d" type="double" minOccurs="0"/> 

</sequence> 

</complexType> 

この式は,慣用的な計測単位での値を,対応する選択された計測単位での値に換算する単純な式のパラ

メタを定義する。式の要素は,XML Schemaのdouble型の値をもつ要素a,b,c及びdを含む。これらの

値は,式y =(a + bx) / (c + dx)で使う。xは,この単位での値,yは,対応する基本単位での値とする。要

素a及びdは任意選択であり,値が与えられない場合は零とみなす。a及びdが共に与えられない場合,

式は分子及び分母からなる分数と等しい。 

16.2.12 単位辞書の例(参考) 

この辞書には,国際単位系(SI)が定義する全ての基本単位及び組立単位に対応する定義と,それに加

え一部の慣用の単位とをその構成部品の使用例として含む。 

<gml:Dictionary gml:id="unitsDictionary"> 

<gml:description>計測単位辞書</gml:description> 
<gml:identifier codeSpace="http://www.opengeospatial.org/initiatives/?iid=79">OWS-1.2  

Units</gml:identifier> 

180 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:dictionaryEntry> 

<gml:Dictionary gml:id="SIBaseUnits"> 

<gml:description>国際単位系(SI)の基本単位。</gml:description> 
<gml:identifier codeSpace="http://www.opengeospatial.org/initiatives/?iid=79">OWS-1.2 SI Base 

Units</gml:identifier> 

<gml:dictionaryEntry> 

<gml:BaseUnit gml:id="m"> 

<gml:description>メートルは,1秒の299 792 458分の1の時間に光が真空中を伝わる距離で

ある。</gml:description> 

<gml:identifier 

codeSpace="http://www.bipm.fr/en/3̲SI/base̲units.html">metre</gml:identifier> 

<gml:name xml:lang="ja-JP ">メートル</gml:name> 
<gml:quantityType>長さ</gml:quantityType> 
<gml:catalogSymbol 

codeSpace="http://www.bipm.fr/en/3̲SI/base̲units.html">m</gml:catalogSymbol> 

<gml:unitsSystem xlink:href="http://www.bipm.fr/en/3̲SI"/> 

</gml:BaseUnit> 

</gml:dictionaryEntry> 
<!-- … --> 

</gml:Dictionary> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Dictionary gml:id="SIDerivedUnits"> 

<gml:description>国際単位系(SI)の組立単位。全て国際単位系(SI)の基本単位の積として

表現される。例外として,セルシウス度は,国際単位系(SI)の基本単位(ケルビン)への換算
式がオフセットである。</gml:description> 

<gml:identifier codeSpace="http://www.opengeospatial.org/initiatives/?iid=79">OWS-1.2 SI Derived 

Units</gml:identifier> 

<gml:dictionaryEntry> 

<gml:DerivedUnit gml:id="rad"> 

<gml:identifier codeSpace="http://www.bipm.fr/en/3̲SI">radian</gml:identifier> 
<gml:quantityType>平面角</gml:quantityType> 
<gml:catalogSymbol codeSpace="http://www.bipm.fr/en/3̲SI">rad</gml:catalogSymbol> 
<gml:derivationUnitTerm uom="#m" exponent="1"/> 
<gml:derivationUnitTerm uom="#m" exponent="-1"/> 

</gml:DerivedUnit> 

</gml:dictionaryEntry> 
<!-- … --> 

</gml:Dictionary> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Dictionary gml:id="ConventionalUnitsDictionary"> 

<gml:description>慣用の単位の集まり。特定の集団で広く使用されている重要な計測単位であ

る。これらのほとんどは,次のいずれかである。 

1. より基本的な単位[国際単位系(SI)の基本単位であってもそうでなくてもよい。]からのよく知

られている派生 

2. 選択された単位[国際単位系(SI)の基本単位及び組立単位であってもそうでなくてもよい。]へ

の,スケーリング,オフセット,又はその両方によるよく知られている換算</gml:description> 

181 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:identifier codeSpace="http://www.opengeospatial.org/initiatives/?iid=79">OWS-1.2 

Conventional units.</gml:identifier> 

<gml:dictionaryEntry> 

<gml:DerivedUnit gml:id="m3"> 

<gml:identifier codeSpace="http://www.opengeospatial.org/initiatives/?iid=79">cubic 

metre</gml:identifier> 

<gml:quantityType>体積</gml:quantityType> 
<gml:derivationUnitTerm uom="#m" exponent="3"/> 

</gml:DerivedUnit> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:ConventionalUnit gml:id="l"> 

<gml:identifier 

codeSpace="http://www.opengeospatial.org/initiatives/?iid=79">yard</gml:identifier> 

<gml:quantityType>長さ</gml:quantityType> 
<gml:conversionToPreferredUnit uom="#yd"> 

<gml:factor>0.9144</gml:factor> 

</gml:conversionToPreferredUnit> 

</gml:ConventionalUnit> 

</gml:dictionaryEntry> 
<!-- … --> 

</gml:Dictionary> 

</gml:dictionaryEntry> 

</gml:Dictionary> 

16.3 計測値スキーマ 

16.3.1 概要 

gml:MeasureTypeは,basicTypesスキーマの中で定義する。ここで定義する計測値型は,ISO/TS 19103

で示す便宜的な計測値型の集合と対応する。そのXMLでの実装は,十進表記及び浮動小数点表記を利用

可能とするXMLスキーマの単純型“double”を基本とし,値の計測単位を参照するXML属性“uom”を

含む。特定の書式で値を格納するという必要はなく,この型の要素を受け取る応用システムは,そのデー

タを便宜的に他の任意の型に強制することを選択できることに注意する。 

注記 特定の計測値型のスキーマ文書を,次の(URN構文を用いた)位置独立名によって識別する。 

urn:x-ogc:specification:gml:schema-xsd:measures:3.2.1 

16.3.2 measure 

これは,単位を伴う物理量の値である。これは,次のように宣言する。 

<element name="measure" type="gml:MeasureType"/> 

gml:MeasureType の定義は,8.2.3.6を参照。 

16.3.3 スカラ計測値型 

特定の計測値型の集合は,gml:MeasureTypeの空の拡張,つまり,別名として定義する。ひな形は,次

のように定義する。 

<complexType name="LengthType"> 

<simpleContent> 

<extension base="gml:MeasureType"/> 

</simpleContent> 

</complexType> 

182 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

この内容モデルは,長さ(又は距離)の量とその単位の記述とを可能にする。uom属性が参照する測定

単位は,メートル又はフィートのような,長さとして適切なものでなければならない。 

このパターンに従って定義する,その他の計測値型には,gml:ScaleType,gml:GridLengthType,

gml:AreaType,gml:VolumeType,gml:SpeedType,gml:TimeType 及び gml:AngleType がある。 

例 これらの内容モデルを用いる要素は,次のようなデータのインスタンスとなる。 
<my:length uom="m">1.76</my:length> 
<my:scale uom="#percent">20.</my:scale> 
<my:gridLength uom="#pixelSpacing">480</my:gridLength> 
<my:gridLength uom="#imageHeight">0.00208333333333</my:gridLength> 
<my:area uom="#ha">1.76</my:area> 
<my:volume uom="l">0.45</my:volume> 
<my:speed uom="#kmph">73.0</my:speed> 
<gml:angle uom="#gradians">95.</gml:angle> 
<my:time uom="#minutes">30.</my:time> 

注記 例の中の最後の要素は,箇条14で定義されたgml:timeLength代替グループ中の要素として,同

じ機能要件に対応することに留意する。 

16.3.4 angle 

gml:angleプロパティは,単一の数値としての角度の値を,その単位とともに記録することに用いる。こ

れは,次のように宣言する。 

<element name="angle" type="gml:AngleType"/> 

16.4 値オブジェクトスキーマ 

16.4.1 一般 

この細分箇条(16.4)で宣言する要素は,他のGMLスキーマの構成部品に基づく。具体的には,

gml:AbstractTimeObject及び gml:AbstractGeometry,並びに次の型,gml:MeasureType,gml:MeasureListType,

gml:CodeType

gml:CodeOrNilReasonListType

gml:BooleanOrNilReasonListType

び 

gml:IntegerOrNilReasonListである。 

特にここで対象となる要素は,代替グループの代表及び一つの名前付きの選択グループとする。これら

は,値オブジェクトスキーマの主要な根拠である。それは,観測のように,配列,幾何及び時間オブジェ

クトのような複雑な内容をもつことができるものを発生させるために代替値の型があることが望ましい場

合及び前もって実際の値を規定しないことが便利である場合に,内容モデルの定義において変数として働

くことができるからである。 

グループのメンバには,量,カテゴリ区分,ブーリアン,カウント,時間及び空間的な値並びにそれら

の集合を含む。 

注記1 一般的な値のための構成部品を示すスキーマ文書valueObjects.xsdは,附属書Cに示す。こ

れは,次の位置独立名によって識別(URN構文規則を使用)する。 

urn:x-ogc:specification:gml:schema-xsd:valueObjects:3.2.1 

注記2 このスキーマで宣言する要素は,値の直接的な表現に使用する。その内容モデルは一般的に

gml:AbstractGMLTypeから派生したものでなく,識別子をもたない。 

16.4.2 値要素の階層構造 

値オブジェクトは,階層構造で定義する。その概念モデルは,D.3.15で示す。 

次の関係を定義する。 

183 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− 具象要素gml:Quantity,gml:Category,gml:Count及びgml:Booleanは,抽象要素gml:AbstractScalarValue

に代替できる。 

− 具象要素 gml:QuantityList,gml:CategoryList,gml:CountList及びgml:BooleanList は,抽象要素 

gml:AbstractScalarValueListに代替できる。 

− 具象要素 gml:ValueArrayは,具象要素gml:CompositeValueに代替できる。 

− 抽象要素gml:AbstractScalarValue及びgml:AbstractScalarValueList,並びに具象要素gml:CompositeValue,

gml:ValueExtent,gml:CategoryExtent,gml:CountExtent及びgml:QuantityExtentは,抽象要素

gml:AbstractValueに代替できる。 

− 抽象要素gml:AbstractValue,gml:AbstractTimeObject及びgml:AbstractGeometry,並びに具象要素gml:Null

(非推奨)は,gml:Valueという名前付きの選択グループに全て含み,gml:CompositeValue及び

gml:ValueExtentの合成のために使用する。 

− 値を必要とするスキーマは,インスタンス又は名前付きのグループgml:Valueの中で,

gml:AbstractScalarValue,gml:AbstractScalarValueList,gml:CompositeValue若しくはgml:ValueExtentのい

ずれかが発生することを許すために,又はgml:AbstractTimeObject,gml:AbstractGeometry及びgml:Null

(非推奨)を許すためにも,内容モデルの中で抽象要素gml:AbstractValueを使用することができる。 

16.4.3 Boolean及びBooleanList 

二値論理の値又は値の一覧の記録には,XML Schemaのブール型を使用する。その要素は,次のスキー

マ宣言を使用する。 

<element name="Boolean" substitutionGroup="gml:AbstractScalarValue" nillable="true"> 

<complexType> 

<simpleContent> 

<extension base="boolean"> 

<attribute name="nilReason" type="gml:NilReasonType"/> 

</extension> 

</simpleContent> 

</complexType> 

</element> 
<element name="BooleanList" type="gml:booleanOrNilReasonList" 
substitutionGroup="gml:AbstractScalarValueList"/> 

gml:booleanOrNilReasonListは,8.2.4.1に示す。 

例 次に,インスタンスの例を示す。 
<gml:Boolean>1</gml:Boolean> 
<gml:Boolean>false</gml:Boolean> 
<gml:Boolean xsi:nil="true" nilReason="missing"/> 
<gml:BooleanList>1 missing 0 1 1 http://my.big.org/explanationss/theDogAteIt 0 1 
</gml:BooleanList> 

注記 これらの例では,{1,0,true,false}といった様々なブール値,nilReason値の“missing”のよ

うな事例,また,URIをリストの内に埋め込むことができることなどについて説明している。 

16.4.4 Category及びCategoryList 

分類(category)を表す用語を記録する。これらの要素は,次のスキーマ宣言を使用する。 

<element name="Category" substitutionGroup="gml:AbstractScalarValue" nillable="true"> 

<complexType> 

<simpleContent> 

184 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<extension base="gml:CodeType"> 

<attribute name="nilReason" type="gml:NilReasonType"/> 

</extension> 

</simpleContent> 

</complexType> 

</element> 
<element name="CategoryList" type="gml:CodeOrNilReasonListType 
substitutionGroup="gml:AbstractScalarValueList"/> 

gml:Categoryは,任意選択のXML属性codeSpaceをもち,その値は,用語辞書,符号リスト又は用語の

典拠のURIとする。 

例 次に,インスタンスの例を示す。 
<gml:Category>良好</gml:Category> 
<gml:Category xsi:nil="true" nilReason="missing"/> 
<gml:Category codeSpace="http://my.big.org/dictionaries/rocktypes">せん(閃)長岩</gml:Category> 
<gml:CategoryList codeSpace="http://my.big.org/dictionaries/rocktypes">せん(閃)長岩 花こう(崗)岩 
missing 凝灰岩</gml:CategoryList> 
<gml:CategoryList codeSpace="http://my.big.org/species">イヌ ネコ ウサギ ネズミ</gml:CategoryList> 

16.4.5 Count及びCountList 

発生の割合を示す整数を記録する。これらの要素は,次のスキーマ宣言を使用する。 

<element name="Count" substitutionGroup="gml:AbstractScalarValue" nillable="true"> 

<complexType> 

<simpleContent> 

<extension base="integer"> 

<attribute name="nilReason" type="gml:NilReasonType"/> 

</extension> 

</simpleContent> 

</complexType> 

</element> 
<element name="CountList" type="gml:integerOrNilReasonList" 
substitutionGroup="gml:AbstractScalarValueList"/> 

例 次に,インスタンスの例を示す。 
<gml:Count>513</gml:Count> 
<gml:Count xsi:nil="true" nilReason="missing"/> 
<gml:CountList>34 56 2 inapplicable 153</gml:CountList> 

16.4.6 Quantity及び QuantityList 

尺度付きの数値を記録する。要素の内容は,十進数,又は科学的な表記によって認められたXML Schema

の倍精度実数型を使用する量とする。これらの要素は,次のスキーマ宣言を使用する。 

<element name="Quantity" substitutionGroup="gml:AbstractScalarValue" nillable="true"> 

<complexType> 

<simpleContent> 

<extension base="gml:MeasureType"> 

<attribute name="nilReason" type="gml:NilReasonType"/> 

</extension> 

</simpleContent> 

</complexType> 

</element> 

185 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="QuantityList" type="gml:MeasureOrNilReasonListType" 
substitutionGroup="gml:AbstractScalarValueList"/> 

XML属性uom(計測単位)は必須とする。その値には,次の二つがある。 

− 比率尺度又は数値に対し乗算を行うときの単位のいずれかの定義を識別するURI 

− 値が発生する間隔又は位置の尺度 

例 次に,インスタンスの例を示す。 
<gml:Quantity uom= “m”>4.32e-4</gml:Quantity> 
<gml:Quantity xsi:nil= “true” nilReason= “withheld” /> 
<gml:QuantityList uom= “#C”>21. 37. withheld 25.</gml:QuantityList> 

16.4.7 AbstractValue,AbstractScalarValue及びAbstractScalarValueList 

gml:AbstractValue

は抽象要素とし,gml:AbstractScalarValue,gml:AbstractScalarValueList,

gml:CompositeValue及びgml:ValueExtent を含む代替グループの代表,並びに(推移的に)これらの代替グ

ループの要素の役割を果たす。 

gml:AbstractScalarValueは抽象要素とし,gml:Boolean,gml:Category,gml:Count及びgml:Quantityを含む

代替グループの代表,並びに(推移的に)代替グループの要素の役割を果たす。 

gml:AbstractScalarValueListは抽象要素とし,gml:BooleanList,gml:CategoryList,gml:CountList及び

gml:QuantityListを含む代替グループの代表,並びに(推移的に)代替グループの要素の役割を果たす。 

これらの要素は,次のスキーマ宣言を使用する。 

<element name="AbstractValue" type="anyType" abstract="true" substitutionGroup="gml:AbstractObject"/> 

<element name="AbstractScalarValue" type="anyType" abstract="true" 
substitutionGroup="gml:AbstractValue"/> 

<element name="AbstractScalarValueList" type="anyType" abstract="true" 
substitutionGroup="gml:AbstractValue"/> 

これらの要素は,変数として応用スキーマで使用することができ,XMLインスタンス文書の中で任意の

数の代替グループのどのメンバが発生してもよい。 

16.4.8 Value 

これは,空間及び時間オブジェクト及び上(16.4.7)に示した計測値とともに,この細分箇条(16.4.8)

で定義する一般的な値を統合する,便宜的な選択グループとし,これらのうちの任意のものを,集成値の

中で使用してもよい。この要素は,次のスキーマ宣言を使用する。 

<group name="Value"> 

<choice> 

<element ref="gml:AbstractValue"/> 
<element ref="gml:AbstractGeometry"/> 
<element ref="gml:AbstractTimeObject"/> 

<element ref="gml:Null"/> 

</choice> 

</group> 

16.4.9 valueProperty,valueComponent及びvalueComponents 

Value又はValuesを参照又は内包するGMLプロパティを継承する要素。これらの要素は,次のスキーマ

宣言を使用する。 

186 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="valueProperty" type="gml:ValuePropertyType"/> 
<element name="valueComponent" type="gml:ValuePropertyType"/> 

<complexType name="ValuePropertyType"> 

<sequence minOccurs="0"> 

<group ref="gml:Value"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

<element name="valueComponents" type="gml:ValueArrayPropertyType"/> 

<complexType name="ValueArrayPropertyType"> 

<sequence maxOccurs="unbounded"> 

<group ref="gml:Value" /> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

gml:ValuePropertyType及びgml:ValueArrayPropertyTypeの両者は,それらの内容として,gml:Valueと名

づけられたグループをもつことに留意する。これは,選択グループgml:Value又は選択グループのメンバ

の代替グループ中の任意の要素は,値プロパティの内容として発生することを許すことを意味する。 

gml:valueProperty要素は,一般的な用途で使える便利な要素である。gml:valueComponent及び

gml:valueComponents要素は,特に合成値の中で使用される。 

16.4.10 CompositeValue 

gml:CompositeValueは,他の値から作る集成値である。零個若しくは任意の数のgml:valueComponent要

素,又は零個若しくは一つのgml:valueComponents要素を含む。それは,強結合の集成(ベクタ及びテン

ソル)又は任意の値の集まりに使用することができる。この要素は,次のスキーマ宣言を使用する。 

<element name="CompositeValue" type="gml:CompositeValueType" 
substitutionGroup="gml:AbstractValue"/> 

<complexType name="CompositeValueType"> 

<complexContent> 

<extension base="gml:AbstractGMLType"> 

<sequence> 

<element ref="gml:valueComponent" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:valueComponents" minOccurs="0"/> 

</sequence> 
<attributeGroup ref="gml:AggregationAttributeGroup"/> 

</extension> 

</complexContent> 

</complexType> 

例 次の例の中に,gml:CompositeValueのインスタンスが現れる。 
<gml:CompositeValue> 

<gml:valueComponent> 

<gml:QuantityList uom="#C">21. 37. withheld 25.</gml:QuantityList> 

187 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</gml:valueComponent> 
<gml:valueComponent> 

<gml:Category>良好</gml:Category> 

</gml:valueComponent> 
<gml:valueComponent> 

<gml:Count xsi:nil="true" nilReason="missing"/> 

</gml:valueComponent> 
<gml:valueComponents> 

<gml:Point srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"><gml:pos>71. -32.</gml:pos></gml:Point> 
<gml:Point srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"><gml:pos>70. -35.</gml:pos></gml:Point> 
<gml:Point srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"><gml:pos>74. -37.</gml:pos></gml:Point> 

</gml:valueComponents> 

</gml:CompositeValue> 
<gml:CompositeValue> 

<gml:valueComponents> 

<gml:Point srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"><gml:pos>-67.563 

-13.834</gml:pos></gml:Point> 

<gml:Quantity uom="#km">632.</gml:Quantity> 
<gml:TimeInstant><gml:timePosition>1994-06-09T00:33:16.4</gml:timePosition></gml:TimeInstant> 
<gml:Quantity uom="#mom">-1.00</gml:Quantity> 
<gml:Quantity uom="#mom">0.92</gml:Quantity> 
<gml:Quantity uom="#mom">0.09</gml:Quantity> 
<gml:Quantity uom="#mom">-1.69</gml:Quantity 
<gml:Quantity uom="#mom">-0.09</gml:Quantity> 
<gml:Quantity uom="#mom">-0.37</gml:Quantity> 

</gml:valueComponents> 

</gml:CompositeValue> 

16.4.11 ValueArray 

値の配列(value array)は,同種のプリミティブの配列及び集成値で使用される。 

要素の値は,スカラ,合成,配列又はリストになり得る。この要素は,次のスキーマ宣言を使用する。 

<element name="ValueArray" type="gml:ValueArrayType" substitutionGroup="gml:CompositeValue"/> 

<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:gml=http://www.opengis.net/gml/3.2 
xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en"> 

<sch:title>Schematron constraints for GML / ISO 19136</sch:title> 
<sch:ns prefix="sch" uri="http://purl.oclc.org/dsdl/schematron"/> 
<sch:ns prefix="gml" uri="http://www.opengis.net/gml/3.2"/> 
<sch:pattern> 

<sch:rule context="gml:ValueArray"> 

<sch:assert test="not(@codeSpace and @uom)"> ValueArrayは,符号空間への参照及び単位への

参照の両方を保持することはできない</sch:assert> 

</sch:rule> 

</sch:pattern> 
<sch:pattern> 

<sch:rule context="gml:ValueArray"> 

<sch:assert test="count(gml:valueComponent/*) = count(gml:valueComponent/*[name() = 

name(../../gml:valueComponent[1]/*[1])])">全ての部品は,同じ型をとらなければならない

188 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sch:assert> 

<sch:assert test="count(gml:valueComponents/*) = count(gml:valueComponents/*[name() = 

name(../*[1])])"> 全ての部品は,同じ型をとらなければならない</sch:assert> 

</sch:rule> 

</sch:pattern> 

</sch:schema> 

<complexType name="ValueArrayType"> 

<complexContent> 

<extension base="gml:CompositeValueType"> 

<attributeGroup ref="gml:referenceSystem"/> 

</extension> 

</complexContent> 

</complexType> 

<attributeGroup name="referenceSystem"> 

<attribute name="codeSpace" type="anyURI" /> 
<attribute name="uom" type="gml:UomIdentifier" /> 

</attributeGroup> 

ValueArrayはCompositeValueと同じ内容モデルをもつが,メンバの値は同種のものでなければならない。

要素の宣言は,制限を精密に表すためにSchematron制約を含む。メンバが同種である限り,

gml:referenceSystem(uom及びcodeSpace)はgml:ValueArray自身の中で示されるが,必要であれば,全て

のメンバがこれを継承してもよい。 

例1 gml:ValueArray 要素は,次のインスタンスの中で現れる。最初の例の中では,点の集合は,そ

れぞれ,gml:valueComponentプロパティの値である。値の中の一つは,標準のxlink:href構文規

則による参照で与えられる。 

<gml:ValueArray> 

<gml:valueComponent> 

<gml:Point srsName="urn:x-ogc:def:crs:EPSG:6.6:63266405"> 

<gml:pos>-32. 71.</gml:pos> 

</gml:Point> 

</gml:valueComponent> 
<gml:valueComponent> 

<gml:Point srsName="urn:x-ogc:def:crs:EPSG:6.6:63266405"> 

<gml:pos>-35. 70.</gml:pos> 

</gml:Point> 

</gml:valueComponent> 
<gml:valueComponent xlink:href="http://my.big.org/locations/points/point456"/> 

</gml:ValueArray> 

例2 2番目の例は,gml:valueComponentsプロパティの中に含まれる量の集合である。値の中の一つ

はnil値をもち,そこは値の欠損である。 

<gml:ValueArray> 

<gml:valueComponents> 

<gml:Quantity uom="#C">21.</gml:Quantity> 
<gml:Quantity uom="#C">37.</gml:Quantity> 
<gml:Quantity xsi:nil="true" nilReason="missing"/> 

189 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</gml:valueComponents> 

</gml:ValueArray> 

例3 gml:AbstractScalarValueListは,より効果的な符号化を行うことができるので,スカラ値のため

の配列に使うことに留意する。上の例(例2)にある情報は,次のように表すことができる。 

<gml:QuantityList uom="#C">21. 37. missing</gml:QuantityList> 

しかしながら,構成部品の値がスカラ値でないときは,明確な書式が必要となる。 

16.4.12 Typed ValueExtents:CategoryExtent,CountExtent及びQuantityExtent 

これら三つの要素は,カテゴリ,計数値及び数量のための型付の値の範囲を与える。その内容モデルは,

次に示すように,厳密に二つの項目を含む,相互に関連するスカラリスト型を制限することによって定義

する。 

<element name="CategoryExtent" type="gml:CategoryExtentType" substitutionGroup="gml:AbstractValue"/> 
 
<complexType name="CategoryExtentType"> 

<simpleContent> 

<restriction base="gml:CodeOrNilReasonListType"> 

<length value="2"/> 

</restriction> 

</simpleContent> 

</complexType> 
 
<element name="CountExtent" type="gml:CountExtentType" substitutionGroup="gml:AbstractValue"/> 
 
<simpleType name="CountExtentType"> 

<restriction base="gml:integerOrNilReasonList"> 

<length value="2"/> 

</restriction> 

</simpleType> 
 
<element name="QuantityExtent" type="gml:QuantityExtentType" substitutionGroup="gml:AbstractValue"/> 
 
<complexType name="QuantityExtentType"> 

<simpleContent> 

<restriction base="gml:MeasureOrNilReasonListType"> 

<length value="2"/> 

</restriction> 

</simpleContent> 

</complexType> 

gml:QuantityExtent 要素又はこの型を使用する別の要素は,二つの値及び尺度をもつことになる。 

例1 <gml:QuantityExtent uom="#mm">0. 9.5</gml:QuantityExtent> 

codeSpaceが一組の順序付けられた用語を定義する場合は,gml:CategoryExtentType要素がよい。 

例2 <my:AgeRange codeSpace="http://iugg.org/geologicalPeriods">カンブリア紀 デボン紀

</my:AgeRange> 

どの値の範囲も境界の一つにNilReason値を使用することによって,一つの端しかもたない区間を示す

ことができる。 

例3 <gml:CountExtent>53 inapplicable</gml:CountExtent>。これは53で始まる整数を示す。 

190 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

16.4.13 BooleanPropertyType,CategoryPropertyType,CountPropertyType及びQuantityPropertyType 

便宜的な型の集合(gml:BooleanPropertyType,gml:CategoryPropertyType,gml:CountPropertyType及び

gml:QuantityPropertyType)の内容は,一定の数のgml:AbstractScalarValue代替グループとする。これらの定

義は,gml:BooleanPropertyTypeの定義で例示したものと同じパターンに従う。 

<complexType name="BooleanPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:Boolean"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

17 GML スキーマ−方向 

17.1 方向スキーマ 

方向スキーマ構成部品は,GML応用スキーマ開発者に対して,方向を示すための標準プロパティ要素,

及び関連するオブジェクトを提供する。ここで,このオブジェクトは,地物の測定方位,方向,機首方位,

方向角又はその他の方向関連特性を示すために使うことができる。 

注記 対応するスキーマ文書は,次の位置独立名で(URN構文規則を使用)識別する。 

urn:x-ogc:specification:gml:schema-xsd:direction:3.2.1 

17.2 direction及び DirectionPropertyType 

gml:directionプロパティは,GML応用スキーマで定義する地物に対応する方向(direction)を表す既定

義のプロパティとする。これは次のように宣言する。 

<element name="direction" type="gml:DirectionPropertyType"/> 
 
<complexType name="DirectionPropertyType"> 

<sequence minOccurs="0"> 

<choice> 

<element name="DirectionVector" type="gml:DirectionVectorType"/> 
<element name="DirectionDescription" type="gml:DirectionDescriptionType"/> 

<element name="CompassPoint" type="gml:CompassPointEnumeration"/> 
<element name="DirectionKeyword" type="gml:CodeType"/> 
<element name="DirectionString" type="gml:StringOrRefType"/> 

</choice> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

代替的な方向を示す仕様としてのベクトル型又は記述型を,次に続く細分箇条(17.3及び17.4)に規定

する。 

17.3 DirectionVectorType 

方向ベクトル(direction vector)は,次のようにベクトルの構成部品を示すことによって規定する。 

<complexType name="DirectionVectorType"> 

<choice> 

<element ref="gml:vector"/> 

<sequence> 

191 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="horizontalAngle" type="gml:AngleType"/> 
<element name="verticalAngle" type="gml:AngleType"/> 

</sequence> 

</choice> 

</complexType> 

gml:vector 要素は,10.1.4.5で示す。 

例 この形式は,次のようにデータインスタンスの中に現れる。 
<gml:direction> 

<gml:DirectionVector> 

<gml:vector srsName="#wgs84">0.0 45.0</gml:vector> 

</gml:DirectionVector> 

</gml:direction> 

角度による代替表現は非推奨になっており,gml:vectorが代わりに使用される。 

17.4 DirectionDescriptionType 

方向の記述は,磁針点(compass point)符号,キーワード,テキスト記述又は記述への参照によって指

定する。gml:DirectionDescriptionType要素は,次のように宣言する。 

<complexType name="DirectionDescriptionType"> 

<choice> 

<element name="compassPoint" type="gml:CompassPointEnumeration"/> 
<element name="keyword" type="gml:CodeType"/> 
<element name="description" type="string"/> 
<element name="reference" type="gml:ReferenceType"/> 

</choice> 

</complexType> 

gml:compassPoint は,単純な列挙文字列の型で示し,次のように宣言する。 

<simpleType name="CompassPointEnumeration"> 

<restriction base="string"> 

<enumeration value="N"/> 
<enumeration value="NNE"/> 
<enumeration value="NE"/> 
<enumeration value="ENE"/> 
<enumeration value="E"/> 
<enumeration value="ESE"/> 
<enumeration value="SE"/> 
<enumeration value="SSE"/> 
<enumeration value="S"/> 
<enumeration value="SSW"/> 
<enumeration value="SW"/> 
<enumeration value="WSW"/> 
<enumeration value="W"/> 
<enumeration value="WNW"/> 
<enumeration value="NW"/> 
<enumeration value="NNW"/> 

</restriction> 

</simpleType> 

これらの方向は,おおむね22.5°の精度で与えられる。これは,GML応用言語の定義の中でその詳細を

192 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

示すことができるが,基準座標系での指定では,一般的には不要である。 

例1 この形式は,次のようにデータインスタンス中に現れる。 
<gml:direction> 

<gml:DirectionDescription> 

<gml:compassPoint>WNW</gml:compassPoint> 

</gml:DirectionDescription> 

</gml:direction> 

これに加えて,方向についてテキストベースの記述を含む要素を指定する。 

方向を,一覧からの用語を使用して指定する場合は,gml:keywordを使用することが望ましく,その一

覧は,codeSpace属性の値を用いて示される。 

例2 この形式は,次のようにデータインスタンス中に現れる。 
<gml:direction> 

<gml:DirectionDescription> 

<gml:keyword codeSpace="http://my.big.org/terms/direction">陸上</gml:keyword> 

</gml:DirectionDescription> 

</gml:direction> 

方向を文で記述する場合,gml:direction又はgml:referenceを使用することが望ましく,その値は,要素

内に含めるか又は参照になることを許す。 

例3 この形式は,次のようにデータインスタンス中に現れる。 
<gml:direction> 

<gml:DirectionDescription> 

<gml:direction>灯台の方向</gml:direction> 

</gml:DirectionDescription> 

</gml:direction> 

<gml:direction> 

<gml:DirectionDescription> 

<gml:reference xlink:href="http://my.big.org/logbook/20021127/paragraph6"/> 

</gml:DirectionDescription> 

</gml:direction> 

18 GMLスキーマ−観測地物 

18.1 観測地物 

GML観測地物は,カメラ,観測者,又は機器の形式を伴う観測行為をモデル化する。観測地物は,観測

結果を示す値とともに,情報の獲得に関連する“メタデータ”を示す。これは,旅行者による写真撮影(写

真ではなく,写真撮影の行為)など,広い範囲の様々な場合を対象とする。 

注記 このスキーマは,基本的に“単純な”観測に役立つことを意図している。特に,科学,技術及

び工学的な観測及び計測については,それらのためのGML応用スキーマの開発を必要とする。

例えば,OGCから出されている観測及び計測仕様を参考。 

18.2 観測地物スキーマ 

18.2.1 概要 

この細分箇条(18.2)では,二種類の観測地物,gml:Observation及びgml:DirectedObservationを示す。 

注記 観測地物(observation)は,スキーマ文書であるobservation.xsdで示す。このスキーマは,次に

示す(URN構文を使用して)位置独立名によって識別する。 

193 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

urn:x-ogc:specification:gml:schema-xsd:observation:3.2.1 

18.2.2 Observation 

gml:Observation要素は,スキーマにおいて次のように宣言する。 

<element name="Observation" type="gml:ObservationType" substitutionGroup="gml:AbstractFeature"/> 

<complexType name="ObservationType">  

<complexContent>  

<extension base="gml:AbstractFeatureType">  

<sequence>  

<element ref="gml:validTime"/>  
<element ref="gml:using" minOccurs="0"/>  
<element ref="gml:target" minOccurs="0"/>  
<element ref="gml:resultOf"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType>  

その内容モデルは,gml:AbstractFeatureTypeの直接的な拡張であり,自動的にgml:identifier,gml:description,

gml:descriptionReference,gml:name,及びgml:boundedBy プロパティをもつ。 

gml:validTime要素は,14.2.1.3に示す。この文脈の中で,観測の時間を記述する。ここで,時間とは,

瞬間又は期間のこととする。 

例 単純な観測の例を次に示す。 
<gml:Observation>  

<gml:validTime>  

<gml:TimeInstant>  

<gml:timePosition>2002-11-12T09:12:00</gml:timePosition>  

</gml:TimeInstant>  

</gml:validTime>  
<gml:using xlink:href="http://www.my.org/sensors/温度計4"/>  
<gml:target xlink:href="http://www.environment.org/観測所/l456"/>  
<gml:resultOf>  

<gml:Quantity uom="#C">18.4</gml:Quantity>  

</gml:resultOf>  

</gml:Observation>  

<gml:Observation>  

<gml:validTime>  

<gml:TimeInstant>  

<gml:timePosition>2002-11-12T09:12:00</gml:timePosition>  

</gml:TimeInstant>  

</gml:validTime>  
<gml:using xlink:href="http://www.my.org/cameras/leica2"/>  
<gml:subject xlink:href="http://www.tourist.org/sights/mountain3"/>  
<gml:resultOf xlink:href="http://www.my.org/photos/landscape1.jpg"/>  

</gml:Observation>. 

<gml:Observation>  

194 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:validTime>  

<gml:TimeInstant>  

<gml:timePosition>2002-10-25T11:37:25</gml:timePosition>  

</gml:TimeInstant>  

</gml:validTime>  
<gml:subject xlink:href="http://www.people.org/kids/千恵子"/>  
<gml:resultOf xlink:href="娘の顔写真.jpg"/>  

</gml:Observation>  

18.2.3 using 

gml:usingプロパティは,観測に使用する(カメラのような)手段の記述を含むか又は参照する。これは,

次のように宣言する。 

<element name="using" type="gml:ProcedurePropertyType"/>  

  

<complexType name="ProcedurePropertyType">  

<sequence minOccurs="0">  

<element ref="gml:AbstractFeature"/>  

</sequence>  
<attributeGroup ref="gml:OwnershipAttributeGroup"/>  
<attributeGroup ref="gml:AssociationAttributeGroup"/>  

</complexType>  

18.2.4 target 

gml:targetプロパティは,観測対象の見本,観測地域又は観測所を含むか又は参照する。このプロパティ

要素は,次のように宣言する。 

<element name="target" type="gml:TargetPropertyType"/>  

<element name="subject" type="gml:TargetPropertyType" substitutionGroup="gml:target"/>  

<complexType name="TargetPropertyType">  

<choice minOccurs="0">  

<element ref="gml:AbstractFeature"/>  
<element ref="gml:AbstractGeometry"/>  

</choice>  
<attributeGroup ref="gml:OwnershipAttributeGroup"/>  
<attributeGroup ref="gml:AssociationAttributeGroup"/>  

</complexType>  

このプロパティは特に,写真撮影のような遠隔観測のために有用であり,一般的な場所プロパティは,

カメラの設置箇所又は視野を覆う場所といった漠然とした記述に適用してもよい。 

gml:subjectは,gml:targetと同義になる便利な要素である。これは,写真撮影に共通的に使用される用語

(被写体のこと)である。 

注記 gml:Observationは,既定義の場所プロパティを含まない。スキーマ開発者が観測地点(センサ

の設置場所)のための固定的な場所を示したいときは,例えば,値としての点をもつ場所プロ

パティを使用してよい。対象が,観測地点から既知の方向であるが未知の距離にあるとき(リ

モートセンシング)は,gml:DirectedObservationを使うことが望ましい。ここで,相対的な方向

及び距離が既知のときは,gml:DirectedObservationAtDistanceを使うことが望ましい。 

195 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

例 観測点の場所を伴う,観測地物の型を定義する応用スキーマは,次のように規定できる。 
<element name="ObservationWithSensorLocation" type="app:ObservationWithSensorLocationType" 
substitutionGroup="gml:Observation"/> 

<complexType name="ObservationWithSensorLocationType ">  

<complexContent>  

<extension base="gml:ObservationType">  

<sequence>  

<element name="positionOfSensor" type="gml:PointPropertyType"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType>  

18.2.5 resultOf 

gml:resultOfプロパティは,観測結果を示す。その値は,要素内に示すか,又は別の箇所への参照にして

よい。これは,スキーマでは次のように宣言する。 

<element name="resultOf" type="gml:ResultType"/>  

<complexType name="ResultType">  

<sequence minOccurs="0">  

<any namespace="##any"/>  

</sequence>  
<attributeGroup ref="gml:OwnershipAttributeGroup"/>  
<attributeGroup ref="gml:AssociationAttributeGroup"/>  

</complexType>  

例 温度及び気圧の計測を行った観測記録をgml:DataBlockで記述する観測結果プロパティ 
<gml:DataBlock>  

<gml:rangeParameters>  

<gml:CompositeValue>  

<gml:valueComponents>  

<Temperature uom="urn:x-si:v1999:uom:degreesC">template</Temperature>  
<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure>  

</gml:valueComponents>  

</gml:CompositeValue>  

</gml:rangeParameters>  
<gml:tupleList>3,101.2</gml:tupleList>  

</gml:DataBlock> 

18.2.6 DirectedObservation 

gml:DirectedObservationは,付加的なgml:directionプロパティが追加される以外は観測地物と同じとする。

gml:directionは,観測値を得る方向とする。これは,観測者による目視観測又は地上カメラで得られる観

測といった特別の観測に応用する。 

<element name="DirectedObservation" type="gml:DirectedObservationType" 
substitutionGroup="gml:Observation"/> 

  

<complexType name="DirectedObservationType">  

<complexContent>  

196 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<extension base="gml:ObservationType">  

<sequence>  

<element ref="gml:direction"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType>  

<gml:DirectedObservation>  

<gml:validTime>  

<gml:TimeInstant>  

<gml:timePosition>2002-11-12T09:12:00</gml:timePosition>  

</gml:TimeInstant>  

</gml:validTime>  
<gml:using xlink:href="http://www.my.org/cameras/leica2"/>  
<gml:target xlink:href="http://www.tourist.org/sights/mountain3"/>  
<gml:resultOf xlink:href="http://www.my.org/photos/landscape1.jpg"/>  
<gml:direction>  

<gml:DirectionVector>  

<gml:vector srsName="urn:x-ogc:def:crs:EPSG:6.3:4326">0.0 45.0</gml:vector>  

</gml:DirectionVector>  

</gml:direction>  

</gml:DirectedObservation>  

18.2.7 DirectedObservationAtDistance 

gml:DirectedObservationAtDistanceは,付加的な距離プロパティを追加している。これは,観測者から観

測対象までの距離である。これは,観測者による目視観測又は地上カメラで得られる観測といった特別の

観測に応用する。 

<element name="DirectedObservationAtDistance" type="gml:DirectedObservationAtDistanceType" 
substitutionGroup="gml:DirectedObservation "/>  

<complexType name="DirectedObservationAtDistanceType">  

<complexContent>  

<extension base="gml:DirectedObservationType">  

<sequence>  

<element name="distance" type="gml:MeasureType"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType>  

例 
<gml:DirectedObservationAtDistance>  

<gml:validTime>  

<gml:TimeInstant>  

<gml:timePosition>2002-11-12T09:12:00</gml:timePosition>  

</gml:TimeInstant>  

</gml:validTime>  
<gml:using xlink:href="http://www.my.org/cameras/leica2"/>  

197 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:subject xlink:href="http://www.tourist.org/sights/mountain3"/>  
<gml:resultOf xlink:href="http://www.my.org/photos/llandscape1.jpg"/>  
<gml:direction>  

<gml:DirectionVector>  

<gml:vector srsName="urn:x-ogc:def:crs:EPSG:6.3:4326">0.0 45.0</gml:vector>  

</gml:DirectionVector>  

</gml:direction>  
<gml:distance uom="m">16500.</gml:distance>  

</gml:DirectedObservationAtDistance>  

19 GMLスキーマ−被覆 

19.1 被覆のモデル及び表現 

19.1.1 概要 

箇条19は,被覆のGML符号化方式を定義する。箇条19は,ISO 19123の中で示す概念モデルに従う。 

ISO 19123は,次の定義を示している。 

被覆は,時空間定義域から属性値への写像を可能とする。ここで,属性値は,時空間定義域の全ての地

理的な位置に対して共通の型をもつ。時空間定義域は,座標空間中の直接位置の集まりからなる。被覆の

例としては,ラスタ,不規則三角網,点被覆,及びポリゴン被覆がある。被覆は,リモートセンシング,

気象,水深図,標高図,土壌図,植生図などの地図作製のような,数々の応用分野の中で普及しつつある。 

被覆を記述する情報は,従来,次の二つの方法のいずれかである。 

a) 離散的な場所と値の対との集合 

b) 時空間定義域(複数の幾何要素及びグリッド点からなる。)及び値域からとられる値の集合とともに,

定義域中の位置と値域集合とからとられる値を対応づける方法又は規則(暗黙のものも許す。)による

記述 

最初の方法は,部品を離散的に区切る定義域にだけ適用する。この表現は,同一種の地物の集まり(つ

まり,全ての地物が同じプロパティをもつ。)としてGML中で実現し,その中で,地物から得られる場所

の集合が定義域を構成し,プロパティ値の集合が値域を構成する。定義域から値域への写像は,それぞれ

の地物のプロパティが,その地物の場所に割り当てられているということを示すに過ぎない。しかし,定

義域が多数の場所の集合で構成される被覆にとって,この明示的な表現は,大きすぎるかもしれない。 

二番目の方式は,幾つかの方法を使い,より柔軟な方法である。 

− 定義域及び値域が同一の集合のときは,定義域若しくは値域のいずれか,又は両者の表現を効率化す

ることができる。 

− 値域中の値は,離散的な明確な値というよりは解析的な形式で表現できるとともに,離散的な値とし

て事象に関連させることもできる。 

− 属性値が定義域中で連続的に変化するとき,定義域全体を覆う関数形式を,任意の場所で値域の値を

提供するために,示すことが求められる。この関数の典型は,内挿法であり,プロセスモデルを使用

することもある。 

最初の表現法は,主に単一の場所に関係する集合又は複数のプロパティを共に管理するため,データ収

集において,又は一度に少数の地物だけを操作するための,格納データの更新において使用する。第二の

方式は,より解析向きで,時空間パターン及び特定のプロパティの異常が興味の対象となる。 

定義域全体を覆う関数写像を使用するのは第二の方法であり,GML被覆の符号化の対象となる。 

198 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

19.1.2 被覆の形式記述 

被覆は,時空間定義域から属性値が存在する集合を示す値域集合への写像からなる。値域集合は,離散

的なリストを含む任意の集合,整数又は浮動小数点の値域,及び複数次元のベクトル空間になり得る。被

覆の概念モデルを図4に示す。 

図4−被覆の概念モデル 

被覆は,被覆関数f:A→Bのグラフとしてみることができ,それは,次に示す順序対の集合である。 

{(x,f(x)) | ここでxはAの要素} 

この見方は,被覆のGML符号化に最適である。離散被覆の場合,定義域Aは,分割されて部分集合(通

常は共通部分をもたない。)の集まり(A=∪Ai)になり,関数fは,それぞれのAiに対して一定である。

空間定義域については,Aiは幾何要素であり,被覆は,(幾何,値)対の集まりとみなせる。ここで,値

は,値域集合の要素である。空間定義域Aが位相空間であるときは,被覆は,(位相,値)対の集まりと

みなせ,この対における位相要素は,位相的なn-鎖(GMLの用語では,gml:TopoPoint,gml:TopoCurve,

GML:TopoSurface又はgml:TopoSolid)である。 

19.1.3 GMLにおける被覆 

被覆は,GML地物として実装する。したがって,“温度分布地物”,“リモートセンシング画像地物”,又

は“土壌分布地物”というような言い方ができる。 

他のGMLオブジェクトと同様に,被覆オブジェクトも地物のプロパティの値となってよい。 

例 温度分布は,都市地物(abc:City)のプロパティであるので,オタワ市の記述は,GMLでは次に

示すような表現ができる[ここでは,abc:TemperatureCoverage(温度被覆)は被覆地物であり,

これは都市地物のプロパティである。]。 

<abc:City gml:id="Ottawa">  

<abc:population>500000</abc:population>  
<abc:temperatureDistribution>  

<abc:TemperatureCoverage> ... </abc:TemperatureCoverage>  

</abc:temperatureDistribution>  

</abc:City>  

注記 GMLにおける被覆は,二つのスキーマ文書coverage.xsd及びgrids.xsdで使用可能になる。

coverage.xsdは,基本的なGML被覆モデルを示す。grids.xsdは,グリッド被覆の記述に使用す

るグリッド幾何構造を定める。ただし,このグリッド幾何構造は,他の応用に使うことも可能

である。 

スキーマ文書であるgrids.xsdは,次の位置独立名(URN構文を使って)で識別する。 

urn:x-ogc:specification:gml:schema-xsd:grids:3.2.1  

スキーマ文書であるcoverage.xsdは,次の位置独立名(URN構文を使って)で識別する。 

定義域

(空間,時間)

値域

(属性値集合)

f

定義域

(空間,時間)

値域

(属性値集合)

f

G

G

199 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

urn:x-ogc:specification:gml:schema-xsd:coverage:3.2.1 

全てのスキーマ文書は,附属書Cで示す。 

19.1.4 ISO 19123との関係 

この箇条19で示すGMLスキーマの被覆部品は,ISO 19123被覆スキーマに適合し,その一部の実装を

与える。両者の関係については,D.2.11でその詳細を論じる。 

GMLで実装するISO 19123被覆型は,ISO 19123の仕様で規定する。この型に対するISO 19123で定め

る付加的な制約は,GMLスキーマの被覆の構成部品の制約でもある。 

19.2 グリッドスキーマ 

19.2.1 概要 

幾何要素を暗黙的に記載する方法がある。この方法では,幾何要素の項目は,明示的に符号化表現しな

い。その代わりに,コンパクトな記法でパラメタの集合を表現し,これらのパラメタに付随する規則によ

ってオブジェクトの集合を生成できるようにする。この細分箇条(19.2)は,グリッド被覆及びその他の

応用で使用するグリッド幾何要素を示す。 

GMLでは,二つのグリッド構造を定義する。それは,gml:Grid及びgml:RectifiedGridである。 

19.2.2 Grid 

gml:Gridは,ISO 19123のCV̲Gridを実装し(D.2.11及びISO 19123:2005の8.3参照),次のように定義

する。 

<element name="Grid" type="gml:GridType" substitutionGroup="gml:AbstractImplicitGeometry"/> 

<element name="AbstractImplicitGeometry" type="gml:AbstractGeometryType" abstract="true" 
substitutionGroup="gml:AbstractGeometry"/>  

  

<complexType name="GridType">  

<complexContent>  

<extension base="gml:AbstractGeometryType">  

<sequence>  

<element name="limits" type="gml:GridLimitsType"/>  
<choice>  

<element name="axisLabels" type="gml:NCNameList"/>  

<element name="axisName" type="string" maxOccurs="unbounded"/>  

</choice>  

</sequence>  
<attribute name="dimension" type="positiveInteger" use="required"/>  

</extension>  

</complexContent>  

</complexType>  

gml:Gridは,二つ以上の曲線の集まりからなるネットワークとし,曲線の集まりのメンバは,別の集ま

りのメンバと規則的に交差する。これらのデータは,偏位修正前のグリッドを示す。曲線の集まりにおい

ては,ある集まりのメンバは,別の集まりのメンバと規則的に交差する。グリッド中の関心領域は,

gml:limitsによって,長方形の領域で対角する隅のグリッド座標で与える。gml:axisLabelsは,グリッドの

軸のラベルの一覧を示す(gml:axisNameは,非推奨になった。)。gml:dimensionは,グリッドの次元を示す。 

GMLでは,gml:limits要素は,一つのgml:GridEnvelopを含み,次のように定義する。 

200 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="GridLimitsType">  

<sequence>  

<element name="GridEnvelope" type="gml:GridEnvelopeType"/>  

</sequence>  

</complexType>  

<complexType name="GridEnvelopeType">  

<sequence>  

<element name="low" type="gml:integerList"/> 
<element name="high" type="gml:integerList"/>  

</sequence>  

</complexType>  

gml:low及びgml:high要素は,それぞれがgml:integerListであり,“長方形”の関心領域の対角にある隅

の座標の組とする。座標の値は,各座標軸に沿って測った原点からのオフセット値とする。 

例 次の例は,単純なグリッドを示す。 
<gml:Grid dimension="2">  

<gml:limits>  

<gml:GridEnvelope>  

<gml:low>0 0</gml:low>  
<gml:high>3 3</gml:high>  

</gml:GridEnvelope>  

</gml:limits>  
<gml:axisLabels>x y</gml:axisLabels>  

</gml:Grid>  

この例では,グリッドは,(0,0),(0,1),(1,0),(1,1)を経て(3,3)までのグリッド点をもつ。 

グリッド点を標本空間(例 画像イメージの画素)を代表するために用いるときは,そのグリッド点は,

標本空間の中心を示す(ISO 19123:2005の8.2.2を参照)。 

19.2.3 RectifiedGrid 

偏位修正グリッド(rectified grid)は,グリッド座標及び外部座標参照系の座標の間のアフィン変換が存

在するグリッドとする。これは,グリッドの“原点”の位置を定めること及びグリッド点の置き場所を決

めるベクトルの位置を定めることを(ある幾何空間上で)行うことによって定義する。 

Gml:RectifiedGridは,ISO 19123のCV̲RectifiedGrid(D.2.11及びISO 19123:2005の8.9参照)を実装し,

次のように定義する。 

<element name="RectifiedGrid" type="gml:RectifiedGridType" substitutionGroup="gml:Grid"/>  

  

<complexType name="RectifiedGridType">  

<complexContent>  

<extension base="gml:GridType">  

<sequence>  

<element name="origin" type="gml:PointPropertyType"/>  
<element name="offsetVector" type="gml:VectorType" maxOccurs="unbounded"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType> 

background image

201 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

グリッドの限界(グリッド点の指標で示す。)及び軸の名称プロパティは,gml:GridTypeから継承し,

gml:RectifiedGridは,gml:originプロパティ(gml:Point又はその参照)及びgml:offsetVectorプロパティ(デ

ータ型として10.1.4.5で定義しているgml:VectorTypeを使用することを定めている。)を付加する。 

注記 gml:origin及びgml:offsetVectorプロパティの一覧は,グリッドを地理空間中に位置づけるとと

もに,各軸に沿ったセルのオフセットを示す。これらのプロパティの制約については,ISO 

19123:2005の8.9.6に示された一覧を参照する。 

例1 図5は,偏位修正グリッドの幾何を示す。 

○: 原点 
p1,p2: オフセットベクトル 

図5−RectifiedGridの幾何 

例2 gml:RectifiedGridの実例を次に示す。 
<gml:RectifiedGrid dimension="2">  

<gml:limits>  

<gml:GridEnvelope>  

<gml:low>1 1</gml:low>  
<gml:high>4 4</gml:high>  

</gml:GridEnvelope>  

</gml:limits>  
<gml:axisLabels>u v</gml:axisLabels>  
<gml:origin>  

<gml:Point gml:id="palindrome" srsName="urn:x-ogc:def:crs:EPSG:6.6:4326">  

<gml:pos>3 1.1</gml:pos>  

</gml:Point>  

</gml:origin>  
<gml:offsetVector srsName="urn:x-ogc:def:crs:EPSG:6.6:4329">-0.2 1.25</gml:offsetVector>  
<gml:offsetVector srsName="urn:x-ogc:def:crs:EPSG:6.6:4329">1.3 0.2</gml:offsetVector>  

</gml:RectifiedGrid>  

この例では,偏位修正グリッドの開始位置は,図6に示すように,原点に対して整数オフセッ

トが1 1(lowプロパティの値)となる位置としている。 

background image

202 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

○: 原点 
p1,p2: オフセットベクトル 

図6−零でないオフセットをもつRectifiedGrid 

19.3 被覆スキーマ 

19.3.1 AbstractCoverageType及びAbstractCoverage 

被覆(coverage)の基本型は,gml:AbstractCoverageTypeであり,スキーマでは次のように定義する。 

<complexType name="AbstractCoverageType" abstract="true">  

<complexContent>  

<extension base="gml:AbstractFeatureType">  

<sequence>  

<element ref="gml:domainSet"/>  
<element ref="gml:rangeSet"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType>  

この内容モデルで,被覆の基本的な要素を示す。被覆の基本的な要素には,gml:domainSet及び

gml:rangeSetプロパティがある。gml:domainSetプロパティは,被覆の定義域を記述し,gml:rangeSetは,

被覆の値域を記述する。 

抽象要素gml:AbstractCoverageは,ISO 19123のCV̲Coverage(D.2.11及びISO 19123:2005の5.3参照)

を実装し,次のように宣言する。 

<element name="AbstractCoverage" type="gml:AbstractCoverageType" abstract="true" 
substitutionGroup="gml:AbstractFeature"/> 

この要素は,gml:AbstractCoverageTypeから派生する任意の被覆を含む代替グループの代表として役立つ。

これは,任意の被覆を妥当とすることが要求される場合,この要素は内容モデルの定義において,変数と

して働くことができる。 

19.3.2 DiscreteCoverageType及びAbstractDiscreteCoverage 

離散被覆(discrete coverage)は,定義域集合,値域集合及び任意選択の被覆関数からなる。定義域集合

を構成するのは,有限個の,空間又は時間の幾何オブジェクトである。値域集合は,有限の数の属性値か

らなる。ただし,属性値の各値は,定義域中の対応する単一の時空間オブジェクト内の全ての直接位置に

関連をもつ。言い換えれば,値域の値は,定義域中の時空間オブジェクトそれぞれに対して一定の値をと

る。この被覆関数は,被覆定義域からそれに対する値域中の要素に写像する。この定義は,ISO 19123に

適合する。離散被覆のための基本型はDiscreteCoverageTypeであり,スキーマでは,次のように定義する。 

203 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="DiscreteCoverageType">  

<complexContent>  

<extension base="gml:AbstractCoverageType">  

<sequence>  

<element ref="gml:coverageFunction" minOccurs="0"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType>  

coverageFunction要素は,図4の写像fを示す。 

抽象要素gml:AbstractDiscreteCoverageは,ISO 19123 のCV̲DiscreteCoverage(D.2.11及びISO 19123:2005

の5.7を参照)を実装する。宣言の仕方を次に示す。 

<element name="AbstractDiscreteCoverage" type="gml:DiscreteCoverageType" abstract="true"  
substitutionGroup="gml:AbstractCoverage"/>  

この要素は,任意の離散被覆をまとめる代替グループの代表要素として働く。 

19.3.3 AbstractContinuousCoverageType及びAbstractContinuousCoverage 

ISO 19123で定義する連続被覆(continuous coverage)は,同じ地物属性に対して,その時空間定義域中

にある一つの時空間オブジェクトの直接位置ごとに,異なる値を返す被覆である。連続被覆の基本型は

AbstractContinuousCoverageTypeとし,スキーマでは,次のように定義する。 

<complexType name="AbstractContinuousCoverageType" abstract="true">  

<complexContent>  

<extension base="gml:AbstractCoverageType">  

<sequence>  

<element ref="gml:coverageFunction" minOccurs="0"/>  

</sequence>  

</extension>  

</complexContent>  

</complexType>  

coverageFunction要素は,図4の写像fを示す。 

抽象要素gml:AbstractContinuousCoverageは,次のように宣言する。 

<element name="AbstractContinuousCoverage" type="gml:AbstractContinuousCoverageType" abstract="true"   
substitutionGroup="gml:AbstractFeature"/>  

この要素は,gml:AbstractContinuousCoverageTypeから派生する任意の連続被覆を含む代替グループの代

表として役立つ。 

19.3.4 domainSet及びDomainSetType 

gml:domainSetプロパティ要素は,被覆を定義する対象となる時空間領域を示す。その内容モデルは

gml:DomainSetTypeで与え,次のように定義する。 

<element name="domainSet" type="gml:DomainSetType"/>  

<complexType name="DomainSetType">  

<sequence minOccurs="0">  

<choice>  

<element ref="gml:AbstractGeometry"/>  
<element ref="gml:AbstractTimeObject"/>  

</choice>  

204 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence>  
<attributeGroup ref="gml:OwnershipAttributeGroup"/>  
<attributeGroup ref="gml:AssociationAttributeGroup"/>  

</complexType>  

したがって,定義域(domain set)の値は,gml:AbstractGeometry又はgml:AbstractTimeObjectのいずれか

を選択することになる。インスタンスの中では,これらの抽象要素は,通常,空間的な被覆及び時系列を

表現するために,幾何複体又は時間複体によって代替される。 

注記 時空間定義域は,定義域が,時間を含む複合座標参照系を使用して記述されるときに使用可能

となる,そうでない場合は,JIS X 7100シリーズ(ISO 19100シリーズ)の規格に従ってGML

は,複合的な時空間定義域を使用可能とはしない。 

gml:AssociationAttributeGroupは,domainSetが通常のGMLプロパティモデルに従うということを意味し,

要素内で定義域を示す代わりに,定義域を指し示すxlink:href属性を使用することができる。所有権の意味

規則は,gml:OwnershipAttributeGroupを使って示すことができる。 

19.3.5 rangeSet及びRangeSetType 

gml:rangeSetプロパティ要素は,被覆の値(属性値と呼ぶことがある。)を包含する。その内容モデルは,

gml:RangeSetTypeによって次のように定義する。 

<element name="rangeSet" type="gml:RangeSetType"/> 

<complexType name="RangeSetType"> 

<choice> 

<element ref="gml:ValueArray" maxOccurs="unbounded"/> 
<element ref="gml:AbstractScalarValueList" maxOccurs="unbounded"/> 
<element ref="gml:DataBlock"/> 
<element ref="gml:File"/> 

</choice> 

</complexType> 

この内容モデルは,値域の構造記述を可能とする。値域集合を記述する意味的な情報は,明示的な値の

一部として,又はgml:DataBlock及びgml:Fileを用いた表現に伴う定型書式の値として,統一的な方法を用

いて埋め込まれる。 

値域の各要素(又は“バンド”)の値は,gml:ValueArray要素又は代替グループgml:AbstractScalarValueList

(例えば,gml:CategoryList,gml:QuantityList−16.4参照)の具象メンバの中で符号化してもよい。これら

の要素を用いることは,値の型が同種でなければならないという要件を満たしている。 

19.3.6 DataBlock 

gml:DataBlockは,CSV(Comma Separated Values)表現と同様にテキストで符号化された値のブロック

として値域を記述する。内容モデルは,次のとおりとする。 

<element name="DataBlock" type="gml:DataBlockType" substitutionGroup="gml:AbstractObject"/> 

<complexType name="DataBlockType"> 

<sequence> 

<element ref="gml:rangeParameters"/> 
<choice> 

<element ref="gml:tupleList"/> 
<element ref="gml:doubleOrNilReasonTupleList"/> 

</choice> 

205 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</complexType> 

値域集合のパラメタ化の記述は,gml:rangeParametersプロパティで行う。 

19.3.7 rangeParameters 

gml:rangeParametersプロパティは,次のように宣言する。 

<element name="rangeParameters" type="gml:AssociationRoleType"/> 

gml:rangeParametersは,値域パラメタを記述するための枠組みを与える。これは,適切なレコードスキ

ーマ(ISO/TS 19103参照)を用いた局所的な記述としてもよく,又は何らかの規格に適合する外部の値域

の記述にリンク付けてもよい。要素内の特定の値域パラメタは,16.4で記述するように,値オブジェクト

スキーマに基づくGML応用スキーマを作成する中で定義してもよい。 

19.3.8 tupleList 

gml:tupleListプロパティは,次のように宣言する。 

<element name="tupleList" type="gml:CoordinatesType"/> 

gml:CoordinatesTypeは,8.2.3.7で示す。これは,座標のリストからなり,各座標は,ts又は分離記号(ス

ペース文字)によって分離し,座標の各座標成分は,cs又は座標成分分離記号(コンマ)によって分離す

る。 

gml:tupleListの符号化は,効率的な“バンド並び形式”とする。 

例 気温及び気圧の観測結果の組の集合をgml:DataBlockで記録した例を,次に示す。 
<gml:DataBlock> 

<gml:rangeParameters> 

<gml:CompositeValue> 

<gml:valueComponents> 

<Temperature uom="urn:x-si:v1999:uom:degreesC">template</Temperature> 
<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure> 

</gml:valueComponents> 

</gml:CompositeValue> 

</gml:rangeParameters> 
<gml:tupleList>3,101.2 5,101.3 7,101.4 11,101.5 13,101.6 17,101.7 19,101.7 23,101.8 29,101.9 31,102.0 

37,102.1 41,102.2 43,102.3 47,102.4 53,102.5 59,102.6</gml:tupleList> 
</gml:DataBlock> 

ここで,気温及び気圧は,局所的な応用スキーマで定義した要素であり,データ型は

gml:MeasureOrNilReasonListTypeとしている。 

19.3.9 doubleOrNilReasonTupleList 

gml:doubleOrNilReasonTupleListプロパティは,次のように宣言する。 

<element name="doubleOrNilReasonTupleList" type="gml:doubleOrNilReasonList"/> 

gml:doubleOrNilReasonListは,8.2.4.1で示す。その構成は,各値をスペースで仕切った

gml:doubleOrNilReason値のリストとする。gml:doubleOrNilReasonの値は,リストの各組の次元が値域パラ

メタの数に等しくなるようにグループ化される。 

例 上記のgml:DataBlockの例で与えられた気温及び気圧の観測結果を記録するための

gml:doubleOrNilReasonTupleListの使用の例は,次のとおりである。 

<gml:DataBlock> 

<gml:rangeParameters> 

<gml:CompositeValue> 

206 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:valueComponents> 

<Temperature uom="urn:x-si:v1999:uom:degreesC">template</Temperature> 
<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure> 

</gml:valueComponents> 

</gml:CompositeValue> 

</gml:rangeParameters> 
<gml:doubleOrNilReasonTupleList>3,101.2 5,101.3 7,101.4 11,101.5 13,101.6 17,101.7 19,101.7 23,101.8 

29,101.9 31,102.0 37,102.1 41,102.2 43,102.3 47,102.4 53,102.5 59,102.6</gml:doubleOrNilReasonTupleList> 
</gml:DataBlock> 

19.3.10 File及びFileType 

効率性を考慮し,GMLは,バイナリファイルのように,任意の外部の符号化法によって値域集合を符号

化する方法を与える。この符号化は,“公知”であることもあるが,必須ではない。この方法は,gml:File

要素を用い,次のように宣言する。 

<element name="File" type="gml:FileType" substitutionGroup="gml:AbstractObject"/> 

<complexType name="FileType"> 

<sequence> 

<element ref="gml:rangeParameters"/> 
<choice> 

<element name="fileName" type="anyURI"/> 

<element name="fileReference" type="anyURI"/> 

</choice> 
<element name="fileStructure" type="gml:CodeType"/> 
<element name="mimeType" type="anyURI" minOccurs="0"/> 
<element name="compression" type="anyURI" minOccurs="0"/> 

</sequence> 

</complexType> 

この規格が示す被覆の符号化では,被覆の値(値域集合における属性値)は,gml:FileTypeで記述した

XMLの構造体が参照する外部のファイルで伝送する。外部のファイルは,anyURIであるgml:fileReference

プロパティによって参照される(gml:fileNameプロパティは非推奨とする。)。これは,外部のファイルが,

参照しているGMLインスタンスから遠隔に位置してもよいことを意味する。 

例 これは,例えば,http参照及びSOAPによるデータ添付のいずれも対応できる。 

gml:compressionプロパティは,anyURIを通じて得られる圧縮のアルゴリズムの定義を示す。これは,

検索を可能とする,かつ,計算処理を可能とするアルゴリズムを記述する定義,又は圧縮方法を曖昧さな

く特定できる名称への単純な参照でもよい。 

gml:mimeTypeプロパティは,ファイルのMIMEタイプの定義を示す。 

gml:fileStructureプロパティは,符号リストで定義する。例えば,符号リストの値として,“レコード並

び(Record Interleaved)形式”がある。 

なお,全ての値は,一つのファイルの中に収まらなければならない。値をマルチファイルに入れる構造

は,GMLでは使用不可とする。 

値域集合の意味規則は,前述のgml:rangeParametersプロパティを用いて記述する。 

参照されるファイルの構造は,図7に示すとおりでなければならない。 

background image

207 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

図7−ファイルのレコード構造又は被覆ファイル 

圧縮のアルゴリズムを適用する場合,上に示した構造は,圧縮前又は解凍後のファイル構造だけに適用

することに注意する。 

レコード中のフィールドは,文書の記述順序に従って,gml:CompositeValueのgml:valueComponentsと一

致させる。 

例 バイナリファイルの符号化は,次のようになる。 
<gml:File> 

<gml:rangeParameters> 

<gml:CompositeValue> 

<gml:valueComponents> 

<Temperature uom="urn:x-si:v1999:uom:degreesC">template</Temperature> 
<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure> 

</gml:valueComponents> 

</gml:CompositeValue> 

</gml:rangeParameters> 
<gml:fileName>http://www.somedata.org/temp̲pressure.dat</gml:fileName> 
<gml:fileStructure>Record Interleaved</gml:fileStructure> 

</gml:File> 

19.3.11 coverageFunction及びCoverageFunctionType 

この細分箇条(19.3.11)は,gml:coverageFunctionプロパティを示す。gml:coverageFunctionプロパティは,

被覆の定義域から値域への写像“f”(図4参照)とする。被覆関数のための内容モデルは,次のとおり与

える。 

<element name="coverageFunction" type="gml:CoverageFunctionType" 
substitutionGroup="gml:AbstractObject"/> 

<complexType name="CoverageFunctionType"> 

<choice> 

<element ref="gml:MappingRule"/> 

<element ref="gml:CoverageMappingRule"/> 
<element ref="gml:GridFunction"/> 

</choice> 

</complexType> 

CoverageFunctionの値は,gml:MappingRule(非推奨),gml:CoverageMappingRule及びgml:GridFunction

のうちの一つであることに注意する。 

A1 

A2 

A3 

レコード1 

レコード2 

レコード3 

レコードn 

・・・ 

ここで,各レコードの値は次のとおり 

background image

208 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:coverageFunctionプロパティを省略してグリッド被覆(補正グリッド被覆を含む。)を定義する場合,

gml:startPointは,gml:Grid幾何におけるgml:lowプロパティの値とみなし,gml:sequenceRuleは,線形とみ

なし,gml:axisOrderプロパティは,“+1 +2”とみなす。 

例 既定値の使い方の好例を,単純な例として次に示す。 
<AverageTempPressure xmlns="http://www.opengis.net/app" xmlns:gml=http://www.opengis.net/gml/3.2 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance 
xsi:schemaLocation="http://www.opengis.net/app ./CoverageExamples.xsd"> 

<gml:domainSet> 

<gml:Grid dimension="2"> 

<gml:limits> 

<gml:GridEnvelope> 

<gml:low>0 0</gml:low> 
<gml:high>4 4</gml:high> 

</gml:GridEnvelope> 

</gml:limits> 
<gml:axisLabels>x y</gml:axisLabels> 

</gml:Grid> 

</gml:domainSet> 
<gml:rangeSet> 

<gml:DataBlock> 

<gml:rangeParameters> 

<gml:CompositeValue> 

<gml:valueComponents> 

<Temperature uom="urn:x-si:v1999:uom:degreesC">template</Temperature> 
<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure> 

</gml:valueComponents> 

</gml:CompositeValue> 

</gml:rangeParameters> 
<gml:tupleList>3,101.2 5,101.3 7,101.4 11,101.5 13,101.6 17,101.7 19,101.7 23,101.8 29,101.9 

31,102.0 37,102.1 41,102.2 43,102.3 47,102.4 53,102.5 59,102.6</gml:tupleList> 
</gml:DataBlock> 

</gml:rangeSet> 

</AverageTempPressure> 

被覆関数(coverage function)が特定されないので,関数は,位置(0 0)で始まり,“+1 +2”の

順序で線形に走査する関数であるとみなす。DataBlockを見れば,表8に示す写像をもつことが分

かる。 

表8−データブロックの例 

グリッドの位置 

データの値 グリッドの位置 

データの値 

0 0 

3,101.2 

0 2 

29,101.9 

1 0 

5,101.3 

1 2 

31,102.0 

2 0 

7,101.4 

2 2 

37,102.1 

3 0 

11,101.5 

3 2 

41,102.2 

0 1 

13,101.6 

0 3 

43,102.3 

1 1 

17,101.7 

1 3 

47,102.4 

2 1 

19,101.7 

2 3 

53,102.5 

3 1 

23,101.8 

3 3 

59,102.6 

209 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

19.3.12 CoverageMappingRule 

gml:CoverageMappingRuleは,次のように被覆関数の形式又は非形式記述を示す。 

<element name="CoverageMappingRule" type="gml:MappingRuleType" 
substitutionGroup="gml:AbstractObject"/> 

<complexType name="MappingRuleType" final="#all"> 

<choice> 

<element name="ruleDefinition" type="string"/> 
<element name="ruleReference" type="gml:ReferenceType"/> 

</choice> 

</complexType> 

例 MathMLを,形式記述のために使用することができる。非形式記述は,いかなる自由記述でもよ

い。 

写像の規則(mapping rule)は,要素内の文字列(gml:ruleDefinition)として定義する,又はxlink:hrefを

通す遠隔参照(gml:ruleReference)を介して定義してもよい。 

規則の名前が特定されていない場合は,既定値は,出現順に,定義域のメンバに対して“線形(Linear)” 

とする。 

19.3.13 GridFunction及びGridFunctionType 

gml:GridFunctionは,グリッド幾何要素のために明確な写像規則を示す。つまり,定義域は,グリッド型

の幾何要素でなければならない。gml:GridFunctionは,グリッド点(離散点グリッド被覆)又はグリッドセ

ル(離散曲面グリッド被覆)の,値域集合中の値への写像を記述する。内容モデルは,次のとおりとする。 

<element name="GridFunction" type="gml:GridFunctionType" substitutionGroup="gml:AbstractObject"/> 

<complexType name="GridFunctionType"> 

<sequence> 

<element name="sequenceRule" type="gml:SequenceRuleType" minOccurs="0"/> 
<element name="startPoint" type="gml:integerList" minOccurs="0"/> 

</sequence> 

</complexType> 

gml:startPointは,見出し位置となるグリッドの点で,値域集合の一番目の点へ写像される(これはまた,

一番目のグリッドポストの見出し位置でもある。)。gml:startPointプロパティを省略する場合,gml:startPoint

は,gml:Grid幾何におけるgml:lowの値と等しいとみなす。写像で後続する点は,gml:sequenceRuleの値に

よって決定する。 

19.3.14 sequenceRule,SequenceRuleType及びSequenceRuleEnumeration 

sequenceRuleは,次の内容モデルで記述する。 

<complexType name="SequenceRuleType"> 

<simpleContent> 

<extension base="gml:SequenceRuleEnumeration"> 

<attribute name="order" type="gml:IncrementOrder"/> 

<attribute name="axisOrder" type="gml:AxisDirectionList"/> 

</extension> 

</simpleContent> 

</complexType> 

gml:SequenceRuleTypeは,gml:SequenceRuleEnumerationから派生し,axisOrder属性を追加する。

210 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:SequenceRuleEnumerationは,次のように定義する列挙型とする。 

<simpleType name="SequenceRuleEnumeration"> 

<restriction base="string"> 

<enumeration value="Linear"/> 
<enumeration value="Boustrophedonic"/> 
<enumeration value="Cantor-diagonal"/> 
<enumeration value="Spiral"/> 
<enumeration value="Morton"/> 
<enumeration value="Hilbert"/> 

</restriction> 

</simpleType> 

これらの規則の名前は,ISO 19123で定義されている。 

規則の名前が特定されていないとき,既定値は“線形(Linear)”とする。 

axisOrder属性は,次の内容モデルをもつ。 

<simpleType name="AxisDirectionList"> 

<list itemType="gml:AxisDirection"/> 

</simpleType> 
 
<simpleType name="AxisDirection"> 

<restriction base="string"> 

<pattern value="[¥+¥-][1-9][0-9]*"/> 

</restriction> 

</simpleType> 

gml:AxisDirectionの値は,グリッドの軸線の増加方向を示す。 

例1 “+3”とは,グリッドの点が,三番目の軸において最低値から最高値まで並ぶことを意味する。 

gml:AxisDirectionListにおける複数の値で,グリッドの全ての軸に用いる増加方向を示す。各軸は,一度

だけ記述する。 

例2 “+1 -2 +3”とは,グリッドの点が,一番目の軸において最低値から最高値まで並び,二番目の

軸においては最高値から,三番目の軸においては最低値から並ぶ。また,一番目の軸,続いて

二番目の軸,最後に三番目の軸の順に値を示す。 

19.3.15 GML固有の被覆型 

GMLは,ISO 19123で定義する全ての離散被覆型に対応する。 

対応する型は,gml:AbstractDiscreteCoverageから代替可能な型であり,次のとおりである。 

− gml:MultiPointCoverage (CV̲DiscretePointCoverage) 

− gml:MultiCurveCoverage (CV̲DiscreteCurveCoverage) 

− gml:MultiSurfaceCoverage (CV̲DiscreteSurfaceCoverage) 

− gml:MultiSolidCoverage (CV̲DiscreteSolidCoverage) 

− gml:GridCoverage (CV̲DiscreteGridPointCoverage) 

− gml:RectifiedGridCoverage (CV̲DiscreteGridPointCoverage) 

注記 具象の連続被覆型については,将来,この規格に組み入れる可能性がある。 

使用者は,独自の被覆型を,gml:DiscreteCoverageType,gml:AbstractContinuousCoverageTypeを使用若し

くは派生して作成する,又は前述したGML固有の被覆の具象型を使用若しくは派生して作成してもよい。 

定義域の幾何型で離散被覆の型を示し,値域集合は,離散被覆の型ごとに同じ符号化法を使う。 

211 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

19.3.16 MultiPointCoverage 

gml:MultiPointCoverageでは,定義域の集合はgml:MultiPointである。ここで,gml:MultiPointは,任意の

離散点の集まりである。つまり,gml:domainSetの値は,gml:MultiPointでなければならない。 

<element name="MultiPointCoverage" type="gml:DiscreteCoverageType" 
substitutionGroup="gml:AbstractDiscreteCoverage"/> 

gml:MultiPointCoverageでは,定義域から値域へ直接写像する。 

− gml:DataBlock で符号化する場合,gml:MultiPoint の点は,出現順に,データブロックの組に写像する。 

− gml:CompositeValueで符号化する場合,gml:MultiPointの点は,出現順に,合成値のメンバに写像する。 

− gml:Fileで符号化する場合,gml:MultiPointの点は,ファイルのレコードに順に写像する。 

例 値の符号化を用いたgml:MultiPointCoverage 
<AverageTempPressure xmlns=http://www.opengis.net/app xmlns:gml=http://www.opengis.net/gml/3.2 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:schemaLocation="http://www.opengis.net/app 
CoverageExamples.xsd"> 

<gml:boundedBy> 

<gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"> 

<gml:lowerCorner>1 1</gml:lowerCorner> 
<gml:upperCorner>4 4</gml:upperCorner> 

</gml:Envelope> 

</gml:boundedBy> 
<gml:domainSet> 

<gml:MultiPoint srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"> 

<gml:pointMember> 

<gml:Point> 

<gml:pos>1 1</gml:pos> 

</gml:Point> 

</gml:pointMember> 
<gml:pointMember> 

<gml:Point> 

<gml:pos>2 2</gml:pos> 

</gml:Point> 

</gml:pointMember> 
<gml:pointMember> 

<gml:Point> 

<gml:pos>3 3</gml:pos> 

</gml:Point> 

</gml:pointMember> 
<gml:pointMember> 

<gml:Point> 

<gml:pos>4 4</gml:pos> 

</gml:Point> 

</gml:pointMember> 

</gml:MultiPoint> 

</gml:domainSet> 
<gml:rangeSet> 

<gml:ValueArray> 

<gml:valueComponents> 

212 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<Temperature uom="urn:x-si:v1999:uom:degreesC">3</Temperature> 
<Temperature uom="urn:x-si:v1999:uom:degreesC">5</Temperature> 
<Temperature uom="urn:x-si:v1999:uom:degreesC">7</Temperature> 
<Temperature uom="urn:x-si:v1999:uom:degreesC">11</Temperature> 

</gml:valueComponents> 

</gml:ValueArray> 

</gml:rangeSet> 

</AverageTempPressure> 

19.3.17 MultiCurveCoverage 

gml:MultiCurveCoverageは,gml:MultiCurveに含まれる曲線の集まりで定義域を構成する。したがって,

被覆関数は,その集まりの中の曲線それぞれから値域集合中の値への写像となる。 

<element name="MultiCurveCoverage" type="gml:DiscreteCoverageType " 
substitutionGroup="gml:AbstractDiscreteCoverage"/> 

gml:domainSetの値は,gml:MultiCurveでなければならない。 

gml:MultiCurveCoverageでは,定義域から値域への写像は直接行われる。 

− gml:DataBlock で符号化する場合,gml:MultiCurve の曲線は,出現順に,データブロックの組に写像

する。 

− gml:CompositeValueで符号化する場合,gml:MultiCurve の曲線は,出現順に,複合値のメンバに写像

する。 

− gml:Fileで符号化する場合,gml:MultiCurve の曲線は,ファイルのレコードに順に写像する。 

例 値の符号化によるgml:MultiCurveCoverage 
<AverageTempPressure xmlns=http://www.opengis.net/app xmlns:gml="http://www.opengis.net/gml/3.2" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.opengis.net/app CoverageExamples.xsd"> 

<gml:boundedBy> 

<gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"> 

<gml:lowerCorner>1.1 1.1</gml:lowerCorner> 
<gml:upperCorner>5.5 5.5</gml:upperCorner> 

</gml:Envelope> 

</gml:boundedBy> 
<gml:domainSet> 

<gml:MultiCurve srsName="urn:x-ogc:def:crs:EPSG:6.6:4326"> 

<gml:curveMember> 

<gml:LineString> 

<gml:posList dimension="2">1.1 1.1 2.2 2.2</gml:posList> 

</gml:LineString> 

</gml:curveMember> 
<gml:curveMember> 

<gml:LineString> 

<gml:posList dimension="2">2.2 2.2 3.3 3.3</gml:posList> 

</gml:LineString> 

</gml:curveMember> 
<gml:curveMember> 

<gml:LineString> 

<gml:posList dimension="2">3.3 3.3 4.4 4.4</gml:posList> 

</gml:LineString> 

213 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</gml:curveMember> 
<gml:curveMember> 

<gml:LineString> 

<gml:posList dimension="2">4.4 4.4 5.5 5.5</gml:posList> 

</gml:LineString> 

</gml:curveMember> 

</gml:MultiCurve> 

</gml:domainSet> 
<gml:rangeSet> 

<gml:DataBlock> 

<gml:rangeParameters> 

<gml:CompositeValue> 

<gml:valueComponents> 

<Temperature uom="urn:x-si:v1999:uom:degreesC">template</Temperature> 
<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure> 

</gml:valueComponents> 

</gml:CompositeValue> 

</gml:rangeParameters> 
<gml:doubleOrNilReasonTupleList>3,101.2 5,101.3 7,101.4 11,101.5 

</gml:doubleOrNilReasonTupleList> 
</gml:DataBlock> 

</gml:rangeSet> 

</AverageTempPressure> 

19.3.18 MultiSurfaceCoverage 

gml:MultiSurfaceCoverageは,gml:MultiSurfaceに含まれる曲面の集まりで定義域を構成する。したがっ

て,被覆関数は,その集まりの中の曲面それぞれから値域集合中の値への写像となる。 

<element name="MultiSurfaceCoverage" type="gml:DiscreteCoverageType" 
substitutionGroup="gml:AbstractDiscreteCoverage"/> 

gml:domainSetの値は,gml:MultiSurfaceでなければならない。 

gml:MultiSurfaceCoverageでは,定義域から値域へ直接写像する。 

− gml:DataBlock で符号化する場合,gml:MultiSurfaceの曲面は,出現順に,データブロックの組に写像

する。 

− gml:CompositeValueで符号化する場合,gml:MultiSurfaceの曲面は,出現順に,複合値のメンバに写像

する。 

− gml:Fileで符号化する場合,gml:MultiSurfaceの曲面は,ファイルのレコードに順に写像する。 

例 値の符号化を用いたgml:MultiSurfaceCoverage 
<SoilData xmlns="http://www.opengis.net/app" xmlns:gml="http://www.opengis.net/gml/3.2" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/app 
./CoverageExamples.xsd"> 

<gml:boundedBy> 

<gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.6:4329"> 

<gml:lowerCorner>1 1 1</gml:lowerCorner> 
<gml:upperCorner>10 10 2</gml:upperCorner> 

</gml:Envelope> 

</gml:boundedBy> 
<gml:domainSet> 

214 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:MultiSurface srsName="urn:x-ogc:def:crs:EPSG:6.6:4329"> 

<gml:surfaceMember> 

<gml:Polygon gml:id="p1"> 

<gml:exterior> 

<gml:LinearRing> 

<gml:posList dimension="3">1 1 1 1 5 1 5 5 1 5 1 1 1 1 1</gml:posList> 

</gml:LinearRing> 

</gml:exterior> 

</gml:Polygon> 

</gml:surfaceMember> 
<gml:surfaceMember> 

<gml:Polygon gml:id="p6"> 

<gml:exterior> 

<gml:LinearRing> 

<gml:posList dimension="3">10 1 2 5 1 1 5 5 1 10 5 2 10 1 2</gml:posList> 

</gml:LinearRing> 

</gml:exterior> 

</gml:Polygon> 

</gml:surfaceMember> 
<gml:surfaceMember> 

<gml:Polygon gml:id="p11"> 

<gml:exterior> 

<gml:LinearRing> 

<gml:posList dimension="3">5 5 1 1 5 1 1 10 1 5 10 1 5 5 1</gml:posList> 

</gml:LinearRing> 

</gml:exterior> 

</gml:Polygon> 

</gml:surfaceMember> 
<gml:surfaceMember> 

<gml:Polygon gml:id="p16"> 

<gml:exterior> 

<gml:LinearRing> 

<gml:posList dimension="3">10 5 2 5 5 1 5 10 1 10 10 2 10 5 2</gml:posList> 

</gml:LinearRing> 

</gml:exterior> 

</gml:Polygon> 

</gml:surfaceMember> 

</gml:MultiSurface> 

</gml:domainSet> 

<gml:rangeSet> 

<gml:File> 

<gml:rangeParameters> 

<gml:CompositeValue> 

<gml:valueComponent> 

<SoilType codeSpace="http://my.big.org/classifications/soils">template</SoilType> 

</gml:valueComponent> 
<gml:valueComponent> 

<SoilMoisture uom="http://my.big.org/units/percent">template</SoilMoisture> 

background image

215 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</gml:valueComponent> 

</gml:CompositeValue> 

</gml:rangeParameters> 
<gml:fileReference>soil.dat</gml:fileReference> 
<gml:fileStructure>Record Interleaved</gml:fileStructure> 

</gml:File> 

</gml:rangeSet> 

19.3.19 MultiSolidCoverage 

gml:MultiSolidCoverageは,gml:MultiSolidに含まれる立体の集まりで定義域を構成する。したがって,

被覆関数は,その集まりの中の立体それぞれから値域集合中の値への写像となる。 

<element name="MultiSolidCoverage" type="gml:DiscreteCoverageType" 
substitutionGroup="gml:AbstractDiscreteCoverage"/> 

gml:domainSetの値は,gml:MultiSolidでなければならない。 

gml:MultiSolidCoverageでは,定義域から値域への写像は直接行われる。 

− gml:DataBlock で符号化する場合,gml:MultiSolidの立体は,出現順に,データブロックの組に写像す

る。 

− gml:CompositeValueで符号化する場合,gml:MultiSolidの立体は,出現順に,複合値のメンバに写像す

る。 

− gml:Fileで符号化する場合,gml:MultiSolidの立体は,ファイルのレコードに順に写像する。 

19.3.20 GridCoverage 

gml:GridCoverageは,離散点被覆である。この離散点被覆を含む定義域の集合は,図8に示す点によっ

て構成される幾何グリッドである。 

図8−グリッド被覆の定義域は複数の点のグリッドである 

<element name="GridCoverage" type="gml:DiscreteCoverageType" 
substitutionGroup="gml:AbstractDiscreteCoverage"/> 

これは,gml:domainSetの値がgml:Gridでなければならないことを除き,gml:MultiPointCoverageと同じ

であることに注意する。 

gml:Gridは,19.2.2で定義している。単純グリッド被覆は,幾何的には参照されず,それゆえ,幾何的

な位置をグリッドの点に割り当てることはできない。そのような幾何的な位置決めについては,19.3.21に

示すgml:RectifiedGridCoverageで示す。 

注記 標本空間の表現にグリッド点を用いる場合,グリッド点は,標本空間の中心を表す(19.2.2参

照)。 

例 値を符号化するファイルを用いたgml:GridCoverage 
<AverageTempPressure> 

<gml:domainSet> 

216 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:Grid dimension="2"> 

<gml:limits> 

<gml:GridEnvelope> 

<gml:low>0 0</gml:low> 
<gml:high>4 4</gml:high> 

</gml:GridEnvelope> 

</gml:limits> 

<gml:axisLabels>x y</gml:axisLabels> 

</gml:Grid> 
</gml:domainSet> 
<gml:rangeSet> 

<gml:File> 

<gml:rangeParameters> 

<gml:CompositeValue> 

<gml:valueComponents> 

<Temperature uom="urn:x-si:v1999:uom:degreesC">template</Temperature> 
<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure> 

</gml:valueComponents> 

</gml:CompositeValue> 

</gml:rangeParameters> 
<gml:fileReference>http://www.somedata.org/temp̲pressure.dat</gml:fileReference> 
<gml:fileStructure>Record Interleaved</gml:fileStructure> 

</gml:File> 

</gml:rangeSet> 

</AverageTempPressure> 

19.3.21 RectifiedGridCoverage 

gml:RectifiedGridCoverageは,偏位修正グリッド(rectified grid coverage)を基本とした離散点被覆(discrete 

point coverage)である。これは,グリッドの点が幾何的に参照されることを除き,19.3.20のグリッド被覆

と同じである。偏位修正グリッド被覆は,19.2.3で定義するようなgml:RectifiedGrid幾何となる定義域を

もつ。 

<element name="RectifiedGridCoverage" type="gml:DiscreteCoverageType" 
substitutionGroup="gml:AbstractDiscreteCoverage"/> 

gml:domainSetの値は,gml:RectifiedGridでなければならない。 

gml:RectifiedGridは,19.2.3で定義する。 

例 gml:RectifiedGridCoverage(データブロックを用いる。) 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.opengis.net/app/CoverageExamples.xsd"> 

<gml:boundedBy> 

<gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.6:4329"> 

<gml:lowerCorner>1.2 3.3 2.1</gml:lowerCorner> 
<gml:upperCorner>13.6 12.1 15.3</gml:upperCorner> 

</gml:Envelope> 

</gml:boundedBy> 
<gml:domainSet> 

<gml:RectifiedGrid dimension="2"> 

<gml:limits> 

217 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:GridEnvelope> 

<gml:low>1 1</gml:low> 
<gml:high>4 4</gml:high> 

</gml:GridEnvelope> 

</gml:limits> 
<gml:axisLabels>u v</gml:axisLabels> 
<gml:origin> 

<gml:Point gml:id="palindrome" srsName="urn:x-ogc:def:crs:EPSG:6.6:4329"> 

<gml:pos>1.2 3.3 2.1</gml:pos> 

</gml:Point> 

</gml:origin> 
<gml:offsetVector srsName="urn:x-ogc:def:crs:EPSG:6.6:4329">1.1 2.2 3.3</gml:offsetVector> 
<gml:offsetVector srsName="urn:x-ogc:def:crs:EPSG:6.6:4329">2.0 1.0 0.0</gml:offsetVector> 

</gml:RectifiedGrid> 

</gml:domainSet> 
<gml:rangeSet> 

<gml:DataBlock> 

<gml:rangeParameters> 

<Pressure uom="urn:x-si:v1999:uom:kPa">template</Pressure> 

</gml:rangeParameters> 
<gml:doubleOrNilReasonTupleList>101.2 101.3 101.4 101.5 101.6 101.7 101.7 101.8 101.9 102.0 

102.1 102.2 102.3 102.4 102.5 102.6</gml:doubleOrNilReasonTupleList> 
</gml:DataBlock> 

</gml:rangeSet> 

</AveragePressure> 

20 プロファイル 

20.1 GMLのプロファイル及び応用スキーマ 

GMLは,表現力豊かな多岐にわたる規格である。一般には,GMLスキーマ全体を駆使する必要はなく,

応用スキーマ関係の特定の要求に対応する構成部品の部分集合を使う。 

ここでは,ISO/IEC TR 10000-1:1998及び ISO 19106:2004によるプロファイルの定義を用いる。 

プロファイル:一つ以上の基本規格及び/又は[複数のプロファイル],並びに適用可能とする場合,そ

れらの基本規格の任意選択及びパラメタ,基本規格に適合する部分集合,選ばれた複数のクラス[(型,属

性及び要素)]の識別子,又は特定の機能を実現するために必要な[複数のプロファイル]。 

これは,OSI(開放型システム間相互接続)アーキテクチャモデルのための定義であり,ここでは,こ

の定義をXML Schemaに適用するため,“クラス”を“型,属性及び要素”と解釈する。 これを実装する

には幾つかの方法があるが,GMLプロファイルでは,“複製及び削除”のやり方を用いる。プロファイル

を作成するには,開発者は,GMLから適切なスキーマファイルを複製し,応用スキーマに必要のない大域

型要素及び任意の局所的な小片を単純に削除すればよい。 

20.2 プロファイルの定義 

GMLプロファイルは,GMLの特定の部分集合を許すことによって,相互運用性をより一層高め,曖昧

さを抑えるために定義することができる。そして,応用スキーマは,完全なGMLと比較してGMLプロフ

ァイルが提供する相互運用性又は性能優位性を得るために,GMLプロファイルに適合することができる。

このようなプロファイルは,他の仕様に含まれる応用スキーマのために定義してもよい。 

background image

218 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

機能の低下を許容する場合,又は処理要求によってGMLの論理的な部分集合を使わざるを得ない場合

がある。例えば,XLink属性をいかなる形式でも扱う必要のない応用システムは,これらを除いた特定の

プロファイルに従ってもよい。この場合の制約は,リンクを使わないという制約となる。他の場合として,

内部のタグを許す入れ子のレベル(すなわち,木構造の深さ)の制約の定義を含んでもよいし,同種のプ

ロパティをもつ地物を地物の集まりのメンバとして許すという制約の定義を含んでもよい。多くの場合,

このような制約の実効性の確保は,新たなスキーマによって行うが,ほかに,情報コミュニティ内におけ

る手続上の合意によって制約の実効性を確保する場合もある。 

20.3 応用スキーマとの関係 

プロファイルが,応用スキーマの基となることができる。 

例 位置情報サービスプロファイルは,幾何要素の型をLBS応用システムで使うものに制限できる。

そして,LBS応用スキーマは,携帯機器の位置の誤差評価を記述するために用いるLIF(Location 

Interoperability Forum)の“CIRCLE”,“ELLIPSE”及び“ARC”要素に適合するために,“PointCircle”,

“PointEllipse”及び“PointArc”要素をこれに追加できる。 

つまり,応用スキーマの構築は二段階の手順からなる。プロファイルは,完全なGMLに整合する型及

び要素を作り出すための制限として働くが,場合によっては,幾つかの任意選択の小片が削除される可能

性がある。したがって,応用スキーマは,これらの型を共通的な基本型として使用し,拡張又は包含によ

って新たな型及び要素の中で使用する。 

20.4 プロファイルにおける要素及び型のための規則 

GMLプロファイルにおいて,プロファイルされた大域要素は,次の規則を守らなければならない。 

− GMLにおける親要素と同じ名前(及び名前空間)を共有しなければならない。 

− GMLにおける親要素がもつ全ての必須の小片(副要素及び属性)を含まなければならない。 

− GMLの親要素にない小片を含んではならない。 

− GMLの親要素と同じ属性の既定値をもたなければならない。 

− 両方のスキーマの中に共通にある名前付きの要素のために,並列的に代替グループ階層をもたなけれ

ばならない。 

GMLプロファイルにおける大域型は,次に示す規則を守らなければならない。 

− GMLで親となる型と同じ名前(及び名前空間)を共有しなければならない。 

− GMLで親となる型がもつ全ての必須の小片(副要素及び属性)を含まなければならない。 

− GMLで親となる型にない小片を含んではならない。 

− GMLで親となる型と同じ属性の既定値をもたなければならない。 

− 両方のスキーマで名づけられた型のための同等の派生木構造をもたなければならない。 

プロファイルのインスタンス文書は,完全なGMLスキーマに対しても妥当でなければならない。 

上述した“複製及び削除”のメタファを用いて,開発者は,次のことができる。 

− 大域要素及び大域型を削除する。 

− 任意の型又は要素から任意選択の副要素を削除する。 

− 任意の型又は要素の中の任意選択の副要素又は属性を必須にすることができる(既定値が存在する場

GML 

GMLプロファイル 

応用スキーマ 

選択及び制限 

拡張及び包含 

219 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

合,それは消去しなければならない。それをしないと,スキーマの妥当性検証で誤りが報告される。

既定値は,任意選択の小片に対してだけ有効だからである。)。 

− 任意の小片の多重度を制限する。 

上述したことは,プロファイルに対して設計し,完全なGMLスキーマに対して試験した文書の妥当性

に影響しない。 

なお,開発者は,次のことをしてはならない。 

− 任意の型又は要素から必須の副要素を削除してはならない。 

− 必須の小片を任意選択にしてはならない。 

− 任意の小片の多重度の制限を緩めてはならない。 

− 既定値又は固定値を加えたり変えたりしてはならない。 

最後の項目は,他の項目に比べて少し微妙なところがある。プロファイルでの文書妥当性は,完全なGML

スキーマの下でも妥当であるが,文書の解釈が変わる可能性がある。例えば,プロファイルでは規定の座

標参照系をUTMに指定しており,完全なスキーマでは,WGS 84(緯度,経度)を規定の座標参照系に指

定していた場合,プロファイルから完全なスキーマに移したときにファイルの解釈が変化する。 

注記 WGS 84とは,World Geodetic System 1984の略であり,三次元座標系を伴う,NTMA TR8360.2,

Third Edition Amendment 1,3 January 2000に規定された測地原子である。 

20.5 応用スキーマからGMLプロファイルを参照するための規則 

GML応用スキーマは,<import>要素のschemaLocation属性の中で完全なGMLスキーマを参照しなけれ

ばならない。 

一つ以上のGMLプロファイルに適合するGML応用スキーマ文書は,根底スキーマ文書の<schema>要

素の中で,値がプロファイルスキーマの位置となるappinfo注釈要素<gml:gmlProfileSchema>を,全てのプ

ロファイルごとに示さなければならない。応用スキーマが複数のプロファイルに適合してよいことに注意

する。 

例 
<schema ...> 

<annotation> 

<appInfo> 

<gml:gmlProfileSchema>http://schemas.opengis.net/gml/3.2.1/profiles/gmlSimpleFeatureProfile/1.1.0/

gmlsf.xsd</gml:gmlProfileSchema> 

<gml:gmlProfileSchema>http://schemas.opengis.net/gml/3.2.1/profiles/gmlPointProfile/1.1.0/gmlPoint

Profile.xsd</gml:gmlProfileSchema> 
</appInfo> 

</annotation> 
... 

</schema> 

<gml:gmlProfileSchema>要素の定義を次に示す。 

<element name="gmlProfileSchema" type="anyURI"/> 

20.6 GMLプロファイルを使用する応用スキーマのための推奨事項 

応用スキーマの中のプロファイルを,後々他のGML要素をプロファイルとして含むように拡張する可

能性があるときは,次の事項を推奨する。 

− GMLプロファイルの中には存在しないが,GMLプロファイルを使う応用スキーマの中に存在する大

域要素は,GMLスキーマのいかなる要素とも同じ名前をもたないほうがよい。 

220 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− GMLプロファイルの中には存在しないが,GMLプロファイルを使う応用スキーマの中には存在する

大域型は,GMLスキーマのいかなる型とも同じ名前をもたないほうがよい。 

応用スキーマの型及び要素に汎用性を認めた場合に,応用スキーマ固有の名前空間から該当する型又は

要素をGMLの名前空間へ移行するときに,前述の規約が役立つ。 

次に示す推奨事項は,作業上の便宜を与えるものとして,応用スキーマにおけるプロファイルの役割を

理解しようとする者への助けになる。 

− プロファイルされた要素及び型は,小さなプロファイルのための単一ファイル,又はGMLと同様な

ファイル構成に含まれることが望ましい。GMLと並立するための正確な命名規約は,応用スキーマの

作者に委ねられる。 

− 適切なGMLスキーマ文書への参照を,ファイル冒頭付近のコメントの中で宣言しなければならない。 

注記 必要なGML構成部品を,例えば“gmlForApplicationDomain.xsd”と呼ぶ“スタブ”スキーマ文

書にまとめる方法は便利である。この文章は,細部から組み立てられた構成部品の複製で構成

してもよく,標準のGML流通文書を含むスキーマ文書の部分集合を単に<include>してもよい。

gml.xsd文書は,後者のやり方に従った包括的な上位集合とする。 

20.7 GMLプロファイルのための規則の要約 

プロファイルの規則を要約すると,次のとおりとなる。 

− GMLのプロファイルは,GMLの部分集合の論理的な制限とする。 

− プロファイルは,必須のGML要素又は属性の名前,定義又はデータ型を変更してはならない。 

− プロファイルの定義に関連したスキーマは,核となる“GML”名前空間

http://schemas.opengis.net/gml/3.2.1/を使用しなければならない。 

− 応用スキーマは,プロファイルから型を拡張し,それを使用してよいが,自分自身の名前空間の中で

それを行い,http://schemas.opengis.net/gml/3.2.1/を用いてはならない。 

これらの規則の機能試験は,次のとおりとする。 

GMLプロファイルを使用する応用スキーマのインスタンス文書は,GMLプロファイルを完全なGML

スキーマに置き換えた同じ応用スキーマに対しても妥当となる。さらに,その文書の解釈は,二つのスキ

ーマのいずれを使っているにもかかわらず同じになる。 

21 GML応用スキーマのための規則 

21.1 GMLオブジェクトのインスタンス 

21.1.1 GML文書 

XML文書は,その根底として一つのXML要素を含む。GML文書は,次のうちの一つを根底要素とし

てもってもよい。 

− gml:AbstractFeature又はその代替グループに直接又は間接に入る任意の要素 

注記1 これは,地物としての地物の集まり及び被覆を含む。 

− gml:Dictionary又はその代替グループに直接又は間接に入る任意の要素 

注記2 座標参照系及び測定単位辞書を含む。 

− gml:TopoComplex又はその代替グループに直接又は間接に入る任意の要素 

W3C XML Schemaに基づくXML文書のための標準的な方法は,文書内で使用するXML名前空間を文

書の属性として宣言することであり,それによって,各名前空間に対して,情報源となる構成部品を提供 

するスキーマ文書の所在を示すことができる。 

221 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GML文書にとって,文書内で主要な構成部品を記述するための構成部品の情報源は,GML応用スキー

マとする。文書型及び関連するGML応用スキーマについては,この箇条21で示す。 

これは,単一のGML応用スキーマによってGML文書の全ての要素及び属性が定義されることを意味し

ないことに注意する。GML文書が参照するスキーマ構成部品を,幾つものGML応用スキーマ又はその他

のXML Schemaに含んでもよい。 

21.1.2 他のXML文書に含まれるGMLオブジェクト要素 

GMLオブジェクト要素は,GML文書ではないXML文書にも出現することができる。XML文書は,GML

スキーマ又はXMLプロファイル,及び任意のGML応用スキーマを直接又は間接にインポートするXML

スキーマ文書に対して妥当でなければならない。 

例 GMLオブジェクト要素は,ウェブサービスの要求及び応答の中で使用される。 

21.2 GML応用スキーマ 

21.2.1 一般 

GML応用スキーマは,XML Schemaであり,この箇条21で示す規則に適合する。これは,地理オブジ

ェクトの定義に使用する,複数の地理オブジェクトの型,辞書及び定義,地理オブジェクト又はメタデー

タの構成部品を示す。GML応用スキーマは,次のように語彙に含まれる用語を定義及び記述することで,

特定の論議領域の語彙を定義する(JIS X 7109参照)。  

応用スキーマは,それが定義する語彙の構成部品を正確に表している名前及び内容モデルをもつ具象の

大域GML要素(グループを含む)及び属性(属性グループを含む)を直接参照してもよい。 

例1 これには,gml:name又はgml:descriptionのようなプロパティ要素,gml:Observation,gml:Dictionary

又はgml:Pointのようなオブジェクト要素及びgml:idのような属性を含む。 

応用スキーマは,定義する語彙において内容モデルの意味的な役割を識別するために異なる名前を付け

る必要がある場合に,自身の名前空間の中でGML型を用いて新しい要素及び属性を宣言してもよい。応

用スキーマの中で宣言した要素は,異なる名前空間に置くことになる。そして,その要素をインスタンス

文書の中で使用してもよい。 

例2 gml:EnvelopeTypeは,xmml:Interval要素の内容モデルとして修正なしに使うことができる。 

例3 gml:LengthType は,ex:height要素の内容モデルとして修正なしに使うことができる。 

例4 gml:PointPropertyTypeは,xs:representativePointプロパティ要素の内容モデルとして直接使うこ

とができる。 

応用スキーマで定義する語彙において専門分野特有のプロパティを追加した構成部品を含む必要がある

場合に,自分の名前空間の中でGML型の拡張を使って新しい型を派生させることができる。 

注記 応用システムに特有の地物の定義には,通常,地物型の内容モデルは,gml:AbstractFeatureType 

の拡張による派生となることが必要である。 

例5 GMLスキーマに定義されないが,ある応用スキーマに必要な新しい幾何型として,例えば,だ

(楕)円がある。 

応用スキーマは,自身が定義する語彙がプロパティ型及び多重度を制限した,より特化したGML型を

含むことが必要な場合に,GML型の制限によって,自身の名前空間の中で新しい型を派生させることがで

きる。 

例6 応用スキーマで,地物型に複数の名前を使用することを禁じたいとする。これは,gml:nameの

最大出現回数を“1”に設定することでgml:AbstractFeatureTypeを制限し,応用分野固有の根底

地物型を派生して実現することができる。 

222 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

応用スキーマでは,抽象又は具象のGML要素を代表要素とする代替グループに属する,新しい要素を

宣言することができる。そして,応用スキーマで宣言した要素は,インスタンス文書内で代替グループの

代表要素の替わりに出現することができ,また,その要素は,代替グループの代表要素を参照する内容モ

デルに適合することができる。代替グループのメンバとして妥当となるために,要素の型は,代替グルー

プの代表要素の型から有効に派生させなければならない。全てのGMLスキーマの中の抽象要素は,代替

グループの代表としてだけ使用できる。 

例7 gml:AbstractGML,gml:AbstractFeature,gml:AbstractGeometry及びgml:AbstractCoverageは,全

て応用スキーマの要素のための代替グループの代表要素として機能することができる。 

応用スキーマでは,自身の名前空間において,内容モデルに語彙特有の名前を与えるために定義した型

を用いて,新しい要素,属性及び型を宣言することができる。 

例8 応用システム特有のデータ型及び列挙型。 

全ての応用スキーマは,この箇条21で示す一般的な規則を用いて,箇条7〜箇条19に挙げた一つ以上

のGMLスキーマ構成部品からなる。 

GMLでは,新しい計測単位,新しい幾何プロパティ及び新しい幾何のように,多くの他の要素を派生さ

せてもよい。これらの要素は,別のスキーマにまとめてもよいが,この箇条21におけるスキーマ分類の下

位とみなされる。いかなるGML応用スキーマも,少なくとも21.3〜21.11で示すスキーマ型の一つでなけ

ればならず,21.2に加えて個々の細分箇条で示す規則に適合しなければならない。したがって,21.2,21.3,

21.8及び21.9の規則を満たせば,地物,被覆及び値を定義するGML応用スキーマを作成することを許す。 

21.2.2 対象名前空間 

応用スキーマでは,対象名前空間を宣言しなければならない。対象名前空間は,応用スキーマで定義し

た語彙に含むオブジェクト及びプロパティのための言葉が存在する名前空間とする。これが,GMLの名前

空間(http://schemas.opengis.net/gml/3.2.1/)であってはならない。応用スキーマの作者が属する機関が管理

するURLを使って名前空間を識別するのが一般的である。対象名前空間は,XML Schemaのschema要素

のtargetNameSpace属性を用いて宣言する。 

応用スキーマは,複数のスキーマ文書の一部となってもよく,これらのスキーマ文書は,全て同じ対象

名前空間を宣言する。 

注記 そのようなモジュール化した応用スキーマ中の最上位のスキーマ文書は,附属書Jに示すXML

応用処理の限界を避けるため,直接又は間接的に他の文書を含むことを推奨する。 

21.2.3 GMLスキーマのインポート 

GML応用スキーマは,完全なGMLスキーマをインポートしなければならない。20.5で示したように

GML応用スキーマの語彙を定義するために,直接又は間接的に使用する全てのGML構成部品を含むよう

なGMLプロファイルを指定してもよい。 

必要なGMLスキーマ部品のインポートは,必要とされるGMLスキーマ文書を含むGMLの名前空間中

の別のスキーマを経由して,間接的に行ってもよい。 

例1 附属書Cに示すgml.xsdのインポートは,これらのスキーマ全てのインポート要求を満たす。 

<import namespace="http://schemas.opengis.net/gml/3.2.1/" schemaLocation="../gml.xsd"/> 

この<import>要素では,インポートしたGML文書内で記述される構成部品をGMLの名前空間

http://schemas.opengis.net/gml/3.2.1/に関連させている。この名前空間の識別子は,XML Schemaの妥当性を

保証するために,インポートされるスキーマで定めている対象名前空間と一致しなければならない。 

インポートしたGMLスキーマへのパス(schemaLocation)は示さなければならず,それは,文書の局所

223 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

コピーでもよいし,又は遠隔リポジトリにあるスキーマ文書の複製へのURI参照でもよい。 

例2 このようなリポジトリの例として,ISOのウェブサイト

http://www.iso.org/ittf/ISO̲19136̲Schemas,又はOGCのウェブサイトhttp://schemas.opengis.net/

がある。 

注記 W3CのXML Schema仕様によると,schemaLocation属性は,物理的な位置の手掛かりでしかな

く,XMLパーサが無視することもある。 

21.2.4 オブジェクト型の派生 

GML応用スキーマで宣言しているオブジェクト型は,基本のGML型にfinal属性を付して制限したXML 

Schemaの派生制約に反することも,他のいかなるXML Schemaの規則に反することもあってはならない。 

意味の一貫性を保つとともに,より特化した型を定義するため,GML応用スキーマで定義するオブジェ

クト型の内容モデルは,その内容モデルの上位型として機能する最も特化したGMLオブジェクト型から

直接派生しなければならない。 

21.2.5 オブジェクトを表現する要素 

GML応用スキーマは,GML文書の根底要素として機能する全てのオブジェクト型のための大域要素を

宣言しなければならない。 

21.2.6 プロパティ型の派生 

GML応用スキーマが定義する単一のGMLオブジェクトを要素内又は参照によって含むプロパティ型は,

gml:AssociationRoleType から派生してもよいし,この型のパターンに従ってもよい。 

GML応用スキーマが,単一のGMLオブジェクトを要素内に含むために定義するプロパティ型は,

gml:InlinePropertyType から派生してもよいし,この型のパターンに従ってもよい。 

GML応用スキーマが,単一のGMLオブジェクトを参照するために定義するプロパティ型は,

gml:ReferenceType から派生してもよいし,この型のパターンに従ってもよい。 

GML応用スキーマが,GMLオブジェクトの同種の集まりを含むために定義するプロパティ型は,

gml:InlinePropertyType のパターンに従わなければならないが,<sequence>要素の中のminOccurs及び

maxOccurの値を変更してもよい。 

注記 プロパティの型を制限することによる派生は,普及しているXMLパーサで問題を起こしてい

るため,そのような派生のインスタンスは,全てGMLスキーマから取り除いている。応用ス

キーマにおいても同様に,制限による派生をプロパティ型では避けることを推奨する。 

21.2.7 プロパティを表現する要素 

GMLオブジェクトのプロパティを表す要素は,応用スキーマの中で大域要素として宣言してもよいし,

オブジェクトの内容モデル(型定義)の中で局所的に宣言してもよい。 

注記 応用スキーマの中で局所的な名前で定義される複合型の内容となる要素を,別の名前空間で制

限によって派生させることはできない。このような複合型は,それ自身の名前空間中でそのま

ま使用するための要素となることが適しており,final="ristriction" として宣言してもよい。大

域要素を参照して定義した複合型の内容の中の要素は,他の名前空間で,制限によって派生さ

せることができ,多重度の制限を許したり,及び/又は代替グループのメンバによって置き換

えたりしてもよい。このような複合型は,制限による派生ができるよう設計したものであり,

複数の名前空間を横断する代替グループの要素に適した“ライブラリ型” である。 

プロパティ値が他から入手可能と考えられるときは,プロパティ要素の型は,プロパティの値である

GMLオブジェクトを参照できるものでなければならない(21.2.6参照)。 

224 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

プロパティ値を要素内で表現することが考えられる場合,プロパティ要素の型は,XML Schemaの適切

な単純型の単純内容をもつか,又はプロパティの要素内の値となるGMLオブジェクトを含むかのいずれ

かによらなければならない(21.2.6参照)。 

プロパティ値を他から入手,又は要素内で表現することを考える場合,プロパティ要素の型は,両方の

方法に対応しなければならない。この場合,プロパティ要素の型は,gml:AssociationAttributeGroupをもた

なければならず,その全てのメンバは任意選択とする。また,子要素は,minOccurs= "0" でなければな

らず,それゆえ,インスタンス文書中においてXLinkを使う場合に空となることを許す(7.2.3参照)。XLink

の属性及び内容の両方共,つまり,いずれも使用不可とする場合,この制約は,規定の指示文としてGML

応用スキーマの要素宣言で<annotation>要素に記述する。この指示文は文章で表現してもよいし,又は

Schematronのような形式的な表記法を使って表現してもよい。 

21.3 地物及び地物の集まりを定義するスキーマ 

21.3.1 一般 

地物及び地物の集まりは,GMLが扱う地理空間情報の基本的な見え方であり,特に,実世界の地理モデ

リング又は地理ウェブサービスのためのメッセージ型の定義に有用である。地物は,実世界のオブジェク

ト又は概念のモデルになる(箇条9参照)。 

地物応用スキーマは,特定の応用分野又は社会のための地物及び地物の集まりを定義する。これらの

GML応用スキーマは,次の細分箇条(21.3.2〜21.3.4)で示す追加の規則に従わなければならない。 

21.3.2 GMLスキーマ構成部品のインポート 

応用スキーマは,21.2.3に示すGMLスキーマをインポートしなければならない。応用スキーマが参照す

る全てのGMLプロファイルは,少なくともgml:AbstractFeature及びこの要素が使用する全てのスキーマ構

成部品を含まなければならない。 

21.3.3 地物を表現する要素 

全ての地物及び地物の集まりは,応用スキーマ内で大域要素として宣言しなければならない。つまり,

これらは,XML Schemaの<schema>要素の直下の子要素でなければならない。 

GML地物のインスタンスを作成する要素の名前は,JIS X 7109に示すとおり,その地物型でなければな

らない。 

地物を表す要素は,直接又は間接にgml:AbstractFeature の代替グループに含まれる。 

地物コレクション型を表す要素は,直接又は間接にgml:AbstractFeatureの代替グループに属し,内容モ

デルは,gml:AbstractFeatureMemberType から拡張によって派生したプロパティ要素をもたなければならな

い。 

GML応用スキーマでは,実世界の現象の抽象であるオブジェクトは,地物としてモデル化する。そのほ

かのオブジェクトは全て,地物ではないGMLオブジェクトとしてモデル化する。つまり,地物以外のオ

ブジェクトを表す要素は,直接又は間接にgml:AbstractGMLの代替グループに含めなければならず,直接

又は間接にgml:AbstractFeature の代替グループに含んではならない。 

21.3.4 応用スキーマで定義した地物 

応用スキーマで定義した地物は,箇条9で示したGML地物に関連する規則及び箇条7に示した規則に

適合しなければならない。 

注記1 地物要素の名前は,地物の意味型となる。 

注記2 地物要素の子は,常に地物を記述するプロパティ要素であり,このようなプロパティは,常

に子要素として符号化する。プロパティは,XML属性として符号化してはならない。 

225 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

21.4 空間幾何要素を定義するスキーマ 

21.4.1 GML幾何スキーマ構成部品のインポート 

応用スキーマは,21.2.3に示したようにGMLスキーマをインポートしなければならない。応用スキーマ

が参照する全てのGMLプロファイルは,少なくともgml:AbstractGeometry及びこの要素が使用する全ての

構成部品を含まなければならない。 

注記 一般的には,gml:AbstractGeometryに要求された構成部品以外に,追加的な幾何スキーマ構成部

品が必要となる。実際には,特にgml:Point及びgml:PointPropertyTypeのような具象の要素及び

型が一般的なプロファイルの部品となる。 

21.4.2 使用者定義の幾何型及び幾何プロパティ型 

21.4.2.1 使用者定義の幾何型 

応用スキーマの作成者は,GMLに必要な構造がない場合,自身で幾何型を作成することができる。その

ために,作成者は,これらの具象幾何型及び幾何コレクション型のオブジェクト要素が,関連するGML

オブジェクト要素であるgml:AbstractGeometryの(直接又は間接に)代替グループ内にあることを保証し

なければならない。 

例 次の応用スキーマ中の要素及び複合型の定義は,gml:Pointを拡張し,方向を追加する(例えば,

描画におけるシンボルの向きに用いる。)。 

<element name="PointWithBearing" type="ex:PointWithBearingType" substitutionGroup="gml:Point"> 

<complexType name="PointWithBearingType"> 

<complexContent> 

<extension base="gml:PointType"> 

<sequence> 

<element name="bearing" type="gml:AngleType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

どのような使用者定義の幾何下位型でも,基底となるGML幾何型の要素及び属性を制限なしに継承し

なければならない。しかし,これらの基底型を,例えば,既存のシステム及びデータ集合との相互運用性

をより高めるといった,応用システムの要求を満たすように拡張してもよい。 

箇条7,箇条10,10.5.10及び箇条11に示した全ての規則に従わなければならない。 

21.4.2.2 使用者定義の幾何プロパティ型 

さらに,応用スキーマの設計者は,箇条10,10.5.10若しくは箇条11で定義する幾何型をカプセル化す

る,又は21.4.2.1に従って定義する独自の幾何プロパティ型を作成することができる。作成者は,これら

のプロパティが,標準プロパティのためのgml:GeometryPropertyType及び配列プロパティのための

gml:GeometryArrayPropertyTypeが使用するパターンに従うことを保証しなければならない。対象の型は,

正規の幾何オブジェクト要素でなければならない。 

幾何プロパティ型は,gml:GeometryPropertyType の制限であってよいが,これは必須ではない。にもか

かわらず,全ての幾何プロパティは,この型のパターンに従わなければならない。応用スキーマは,要素

内又は参照での意味規則の選択を可能とし,また,要素内(XLink属性は使用禁止)又は参照(地物中に

幾何属性を含めることは禁止)のいずれかの使用を制限することができる。 

幾何配列プロパティ型は,gml:GeometryArrayPropertyTypeの制限であってよいが,これは必須ではない。

226 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

にもかかわらず,全ての幾何プロパティは,この型のパターンに従わなければならない。配列中の全ての

幾何要素は,それを含むオブジェクトの要素内に含まれ,要素内の意味規則だけが配列プロパティに対応

する。 

例 次に示す応用スキーマ内での複合型定義は,使用者定義の幾何型及びその幾何型の配列プロパテ

ィ型のための“標準”プロパティ型を定義する。 

<complexType name="MyGeometryPropertyType"> 

<sequence> 

<element ref="foo:PointWithBearingType" minOccurs="0"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup" /> 
<attributeGroup ref="gml:OwnershipAttributeGroup" /> 

</complexType> 

<complexType name="MyGeometryArrayPropertyType"> 

<sequence> 

<element ref="foo:PointWithBearingType" minOccurs="0" maxOccurs="unbounded" /> 

</sequence> 

</complexType> 

21.5 空間位相を定義するスキーマ 

21.5.1 GML位相スキーマ構成部品のインポート 

応用スキーマは,21.2.3 に示すようにGMLスキーマをインポートしなければならない。応用スキーマ

で参照するGMLプロファイルには,少なくともgml:AbstractTopology要素及びこの要素で使用する全ての

スキーマ構成部品を必ず含んでいなければならない。 

注記 一般に,gml:AbstractTopologyで規定するものとは別に,位相スキーマ構成部品の追加が必要に

なる。実際には,特にgml:Edge及びgml:DirectedEdgePropertyTypeのような具象要素及び具象

型が,一般にはプロファイルの一部になる。 

例 附属書Cのスキーマ文書を使ったGMLスキーマのインポートの例を次に示す。 

<import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../gml.xsd"/>  

21.5.2 使用者定義の位相型及び位相プロパティ型 

21.5.2.1 使用者定義の位相型 

応用スキーマの作成者は,必要とする構成がGMLにない場合に,独自の位相型を作成してもよい。こ

れを行うために,作成者は,その具象的な位相型のオブジェクト要素が,(直接又は間接に)一致するGML

オブジェクト要素の代替グループ中にあることを保証しなければならない。 

いかなる使用者定義の位相の下位型も,基となるGML位相型の要素及び属性を,制限なしに継承する。

しかし,既存のシステム及びデータセットとの細部にわたる相互運用性をもつような場合は,これらの基

本型を応用スキーマの要求に適合するように拡張してもよい。 

箇条7及び箇条13に規定した全ての規則には,従わなければならない。 

21.5.2.2 使用者定義の位相プロパティ型 

さらに,応用スキーマの作成者は,箇条13に従って定義する位相型をカプセル化する,独自の(有向)

位相プロパティの型を作成してもよい。作成者は確実に,これらのプロパティが21.2.6に規定する規則に

従うようにしなければならない。加えて,対象とする型は,正規の位相構成でなければならない。 

位相プロパティ型は,既存の位相プロパティ型の制限であってもよい。 

227 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

位相プロパティ型は,要素内で示すか又は参照するか,いずれの方法でもよい。つまり,方法を制限し

て要素内(XLink属性の使用を禁止する方法)にするか,又は参照(地物の幾何の格納を禁止する方法)

にするかのいずれにしてもよい。 

21.6 時間を定義するスキーマ 

21.6.1 GML時間構成部品のインポート 

応用スキーマは,21.2.3に示すようにGMLスキーマをインポートしなければならない。応用スキーマで

参照するGMLプロファイルには,少なくともgml:AbstractTimeObject要素及びこの要素で使用する全ての

スキーマ構成部品を必ず含んでいなければならない。 

注記 一般に,gml: AbstractTimeObjectで規定するものとは別に,時間スキーマ構成部品の追加が必要

になる。実際には,特に具象要素及び具象型のgml:TimeInstant及びgml: TimeInstantPropertyType

のようなものが,一般にプロファイルの一部になる。 

21.6.2 使用者定義の時間型及び時間プロパティ型 

21.6.2.1 使用者定義の時間型 

応用スキーマの作成者は,必要とする構成がGMLにない場合には,独自の時間型を作成してもよい。

そのために作成者は,これらの具象時間型のオブジェクト要素を,対応するGMLオブジェクト要素gml: 

AbstractTimeObjectの(直接又は間接のいずれかの)代替グループに確実に含むようにしなければならない。 

使用者定義する下位の時間型はいずれも,制限抜きで基本となるGML時間型の要素及び属性を継承し

なければならないが,既存のシステム及びデータ集合との相互運用性をより厳密にするために示すことと

して,これらの基本型を拡張して応用スキーマにふさわしいものとしてもよい。 

箇条7及び箇条14に明記された全ての規則に従わなければならない。 

21.6.2.2 使用者定義の時間型及び時間プロパティ型 

さらに,応用スキーマの作成者は,独自の時間プロパティ型を作成してもよい。この型は,箇条13に従

って定義する時間型を格納しておかなければならない。作成者は,これらのプロパティが21.2.6に規定す

る規則に確実に従うようにしなければならない。加えて,対象とする型は,正規の時間構成でなければな

らない。 

時間プロパティ型は,既存の時間プロパティ型の制限であってもよい。 

時間プロパティ型は,要素内で示すか又は参照するか,いずれの方法でもよい。つまり,方法を要素内

の方法(XLink属性の使用を禁止する。)又は参照する方法(地物の幾何の格納を禁止する。)のいずれに

してもよい。 

21.7 座標参照系を定義するスキーマ 

21.7.1 一般 

CRSスキーマで定義する具象XML要素の多くは,応用スキーマなしに使用してもよい。ただし,要素

内容の拡張又は制限を必要としない場合である。要素内容の拡張を定義する場合は,必ず応用スキーマを

使用しなければならない。要素内容の制限を定義するために,多くの場合では,応用スキーマを使用する

ことが望ましい。すなわち,特定の応用システム又は次に示す一連の応用システムに向けて,必要に応じ

て要素を拡張及び/又は制限できるように,応用スキーマを定義することが望ましい。 

− 要素を既存の要素に追加する。その目的は,応用システムで使う項目に関するデータを追加記録する

ことである。 

− その時点の内容の要素の多重度に制限を加える。その目的は,応用システムにとって不要な柔軟性を

なくし,混乱が起こるのを未然に防ぐことである。 

228 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− 異なる要素名を使う。その目的は,特定の応用システムで要素名をより簡単に理解できるようにする

ことである。とりわけ,何度もインスタンス化する要素について使う。 

− 選択した要素及び属性に対して規格の内容及び内容のパターンを指定する。その目的は,必要に応じ

て相互運用性を高めることである。 

− 規格のXML及び他の文書を参照すること又は他の方法による使用を指定する。その目的は,必要に

応じて相互運用性を高めることである。 

応用スキーマは,このようにXML文書の内容の拡張,制限又はこれら双方を行うために使用してよい。

内容の拡張は,応用システムにとって必要なデータを追加記録するために使用することが多い。内容の制

限は,応用システムが特に大きな融通性を必要としない場合に,相互運用性を増して曖昧さを減じるため

に用いることが多い。既存の具象要素の拡張では,その具象要素を拡張して定義することができる。既存

の具象要素の制限は,多くの場合,その具象要素の派生元の抽象要素から,それとは多少異なるものの,子

要素にふさわしい拡張部分を加えることによって行うことができる。 

応用スキーマには,応用スキーマで使用する複数のXML要素及び型とともに,XML文書で使用する最

上位の要素を一つ示してもよい。その最上位の要素は,識別子をもつオブジェクトであってもよいが,こ

れは必須ではない。このような応用スキーマは,箇条12で示しているXML Schema構成部品をインポー

トして,作成するものである。 

応用スキーマは,必要であれば,具象要素の追加を,他の抽象要素を使用又は拡張して行ってもよい。

しかしながら,この具象要素が既存の要素に類似している場合には,他の抽象要素を使用又は拡張する追

加的な具象要素は定義すべきではなく,既存の具象要素を拡張するか又は使用したほうがよい。多くの場

合において,抽象要素を使用している既存の具象要素は,網羅的であるとみなせる。既存の具象要素が,

EngineeringCRS,DerivedCRS,EngineeringDatum,UserDefinedCS,OperationParameter

及び

OperationParameterGroupといった一般的な要素の場合に,これは特にあてはまる。 

Conversion,Transformation,ParameterValue,及びParameterValueGroupの各要素を既知の座標演算手法

に用いることは,この演算手法において必要とする要素のインスタンスが一つだけという特別な場合には

行ってもよいが,一つの演算手法に対して要素のインスタンスを多く必要とする場合には,これらの要素

を既知の座標演算手法のために用いないほうがよい。その代わりに,演算手法を特定した要素名及び名前

を定義する応用スキーマを演算手法ごとに対応させて用意することが望ましい。相互運用性の確保のため

には,しかるべき地理空間情報コミュニィティにおいて,このような応用スキーマを個々に標準化すると

よい。 

注記 応用スキーマのこの使用法は,地物応用スキーマで用いるパターンに従う。 

21.7.2 GML座標参照系スキーマ構成部品のインポート 

応用スキーマは,21.2.3に示したようにGMLスキーマをインポートしなければならない。応用スキーマ

で参照するGMLプロファイルには,少なくともgml: AbstractCoordinateReferenceSystem要素及びこの要素

で使用する全てのスキーマ構成部品を必ず含んでいなければならない。 

注記 一般に,座標参照系スキーマ構成部品の追加が,gml: AbstractCoordinateReferenceSystemで必要

とするものとは別に,必要である。実際には,特別の具象要素及び型が,一般的にプロファイ

ルの一部となる。 

21.8 被覆を定義するスキーマ 

21.8.1 序文 

次に続く細分箇条(21.8.2〜21.8.5)では,被覆についてのGML応用スキーマ作成のための規則を定義

229 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

する。被覆については,箇条19に示す。被覆は地物である。このため先に示した21.3の規則は,被覆も

適用対象とすることに注意しなければならない。 

21.8.2 GML 被覆スキーマ構成部品のインポート  

応用スキーマは,21.2.3に示したようにGMLスキーマをインポートしなければならない。応用スキーマ

で参照するGMLプロファイルには,少なくともgml: AbstractCoverage要素及びこの要素で使用する全ての

スキーマ構成部品を必ず含んでいなければならない。 

注記 一般に,被覆スキーマ構成部品の追加が,gml: AbstractCoverageで必要とするものとは別に,必

要である。実際には,特に gml:RectifiedGridCoverageのような具象要素及び型が,一般的にプ

ロファイルの一部となる。 

21.8.3 使用者定義の被覆型 

GML応用スキーマにおける全ての被覆は,スキーマ内の大域要素として宣言しなければならない。すな

わち,被覆は,XML Schemaの<schema>要素の子要素とする。 

応用スキーマの作成者は,必要とする構成がGMLにない場合に,独自の被覆型を作成してもよい。こ

れを行うために作成者は,これらの具象被覆型のオブジェクト要素を,対応するGMLオブジェクト要素

gml:AbstractDiscreteCoverage又はgml:AbstractContinuousCoverageのいずれかの代替グループに(直接又は

間接のいずれかで)含むことを保証しなければならない。 

注記1 これらの要素は,間接的にgml:AbstractFeatureの代替グループに所属している。このことで

地物モデルの条件を満たしている。 

注記2 この規格では,具象被覆型のgml:MultiPointCoverage,gml:MultiCurveCoverage,

gml:MultiSurfaceCoverage

gml:MultiSolidCoverage

gml:GridCoverage 

gml:RectifiedGridCoverageを規定している。応用被覆は,これらのうちのどれから派生させて

もよい。 

いかなる使用者定義の下位の被覆型も,制限なしに,基となるGML被覆型の要素及び属性を継承しな

ければならない。しかしながら,既存のシステム及びデータセットとの細部にわたる相互運用性をもつよ

うな場合に,これらの基本型を応用スキーマの要件に適合するように拡張してもよい。 

箇条7,箇条9及び箇条19に示した全ての規則に従わなければならない。 

21.8.4 範囲パラメタはAbstractValueに対して必ず代替可能であること 

被覆応用システムスキーマは,全ての範囲パラメタについて,定義するか又は定義をインポートしなけ

ればならない。このような範囲パラメタは,いずれもが,16.4で定義しているgml:AbstractValueに対して

代替可能でなければならない。これによって,範囲パラメタが広い範囲の型を担うことができることに注

意しなければならない。16.4に示したスキーマ構成部品が,gml:AbstractScalarValue及び

gml:AbstractValueListを含むgml:AbstractValueに対して代替可能な幾つかの抽象下位型を含むことにも,更

に注意しなければならない。具象スカラ及び値リスト型並びに代替グループの代表要素も

(gml:AbstractScalarValue又はgml:AbstractValueListに対して代替可能となるように)設定し,次に挙げる

ものを含む。 

− gml:Category(この内容モデルは,gml:CodeTypeで指定する。) 

− gml:CategoryList(この内容モデルは,gml:CodeOrNilReasonListTypeで指定する。) 

− gml:Quantity(この内容モデルは,gml: MeasureTypeで指定する。) 

− gml:QuantityList(この内容モデルは,gml:MeasureOrNilReasonListTypeで指定する。) 

− gml:Count(この内容モデルは,gml:CountTypeで指定する。) 

background image

230 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− gml:Boolean(この内容モデルは,gml:BooleanTypeで指定する。) 

被覆応用スキーマ内の範囲パラメタの定義については,16.4を参照。 

例 GML被覆の作成で用いる値型の一般的な例を19.3に示している。次の表9には,要約したもの

を示す。 

表9−被覆スキーマで用いる範囲パラメタ 

被覆 

範囲パラメタ  

GMLでの定義 

気温分布(天候) 
 

気温 

期待事項: 
・gml:MeasureOrNilReasonListTypeから派生させる。 
・16.3.2に定義のあるgml:measureに対して代替可能とする。 

土壌の分布(農学) 

土壌の種類 

期待事項: 
・gml:CategoryTypeから派生させる。 
・gml:Categoryに対して代替可能とする。 
土壌型の列挙に対する弱参照 

マルチスペクトル光学画像
(リモートセンシング)  

各スペクトルバ
ンドの反射率 

期待事項: 
・gml:QuantityListTypeから派生させる。 
・gml:QuantityListに対して代替可能とする。 

西ナイルウイルス患者の分
布。(疫学) 

CaseCount 

期待事項: 
・gml:integerOrNilReasonListから派生させる。 
・gml:CountListに対して代替可能とする。 

21.8.5 被覆文書 

被覆文書は,これに対応する被覆スキーマによって定義する。この文書の根底要素は,このスキーマが

定義する被覆とする,又はメンバが被覆である9.9に示す地物の集まりでもよい。 

21.9 観測地物を定義するスキーマ 

21.9.1 一般 

次に続く細分箇条(21.9.2〜21.9.6)では,観測地物の応用スキーマの作成方法を示す。観測地物につい

ては,箇条18に示す。観測地物の応用スキーマでは,次の規則に従って,一つ以上の観測地物型を定義す

る。 

21.9.2 GML観測地物スキーマ構成部品のインポート  

応用スキーマは,21.2.3に示したようにGMLスキーマをインポートしなければならない。応用スキーマ

で参照するGMLプロファイルには,少なくともgml:Observation要素及びこの要素で使用する全てのスキ

ーマ構成部品を必ず含んでいなければならない。 

21.9.3 使用者定義の観測地物型 

GML応用スキーマで定義する全ての観測地物型は,スキーマ内の大域要素として宣言しなければならな

い。すなわち,これらの観測地物型は,XML Schemaの <schema>の子要素でなければならない。このよう

な大域要素に対する内容モデルは,直接又は間接の拡張によってgml:ObservationTypeから派生させなけれ

ばならない。 

応用スキーマの作成者は,必要とする構成がGMLにない場合に,独自の観測地物型を作成してもよい。

これを行うために,これらの観測地物型のオブジェクト要素を対応するGMLオブジェクト要素

gml:Observationの代替グループに(直接又は間接のいずれかで)含むのを,作成者は確実にしなければな

らない。 

注記1 これらの要素は,間接的にgml:AbstractFeatureの代替グループに所属している。このことで

231 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

地物モデルの条件を満たしている。 

注記2 この規格では,具象単純観測地物型のgml:Observation,gml:DirectedObservation 及び

gml:DirectedObservationAtDistanceを規定している。応用観測地物型は,これらの型のいずれ

かからでも派生させてもよい。 

箇条7,箇条9及び箇条18に示した全ての規則に従わなければならない。 

21.9.4 観測地物の集まり  

GML応用スキーマにおける観測地物の集まりは,全て,スキーマ内の大域要素として宣言しなければな

らない。すなわち,観測地物の集まりは,XML Schemaの<schema>要素の子要素でなければならない。観

測地物の集まりは,9.9に記述のある地物地物の集まりで,そのメンバを観測地物としたものでなければな

らない。 

21.9.5 観測地物は地物である 

応用スキーマで定義する観測地物は,箇条9及び箇条7に示したGML地物に関する規則に適合しなけ

ればならない。21.3.4も参照。 

21.9.6 観測地物コレクション文書 

GML文書の規則(21.1参照)に従い,観測地物コレクション文書は,多数のGML応用スキーマで定義

している観測地物を参照してもよい。それらの応用スキーマでは,観測地物だけ,観測地物の集まり又は

同じ観測地物の任意の組合せを定義することができる。 

21.10 辞書及び定義を示すスキーマ 

21.10.1 序文 

次に続く細分箇条(21.10.2〜21.10.4)では,定義のための応用スキーマの作成方法を示す。定義及び辞

書については,箇条15に示す。計測単位のために特化した一連の定義を,特化した定義の構成部品の派生

のさせ方を例示する目的で,GMLに組み込んでいる。 

定義のための応用スキーマは,一つ以上の型を,次の規則に従って定義する。 

21.10.2 GML 辞書スキーマ構成部品のインポート 

応用スキーマは,21.2.3に示したようにGMLスキーマをインポートしなければならない。応用スキーマ

で参照するGMLプロファイルには,少なくともgml:Definition要素及びこの要素で使用する全てのスキー

マ構成部品を必ず含んでいなければならない。 

21.10.3 使用者定義型  

応用スキーマの全ての定義は,スキーマ内の大域要素として宣言しなければならない。すなわち,これ

らの定義は,XML Schema <schema> 要素の直下の子要素でなければならない。このような大域要素に対す

る内容モデルは,gml:DefinitionTypeから直接又は間接に派生させなければならない。 

応用スキーマの作成者は,必要とする構成がGMLにない場合に,独自の定義型を作成してもよい。こ

れを行うために,これらの定義型のオブジェクト要素を対応するGMLオブジェクト要素gml:Definitionの

代替グループに(直接又は間接のいずれかで)含むことを,作成者は確実に行わなければならない。 

箇条7及び箇条15に示した全ての規則に従わなければならない。 

background image

232 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

21.10.4 使用者定義の辞書型 

応用スキーマの辞書は,スキーマ内の大域要素として宣言しなければならない。すなわち,この辞書は,

XML Schema <schema>の子要素でなければならない。このような大域要素に対する内容モデルは,

gml:DictionaryTypeから直接又は間接に派生させなければならない。 

応用スキーマの作成者は,必要とする構成がGMLにない場合に,独自の辞書型を作成してもよい。こ

れを行うために,これらの辞書型のオブジェクト要素を対応するGMLオブジェクト要素gml:Dictionaryの

代替グループに(直接又は間接のいずれかで)含むことを,作成者は確実に行わなければならない。 

箇条7及び箇条15に示した全ての規則に従わなければならない。 

21.11 値を定義するスキーマ 

21.11.1 一般 

GMLでは,使用者定義の値型を許す。このような値型は,地物のプロパティ型及びGMLオブジェクト

のその他の型を示すために用いてもよい。使用者定義の値の基本基底型は,7.2.2.1で定義している。値の

表現に対する代替形式は,16.4に示している。これは主に,観測地物についてのgml:resultOfパラメタの

値を与えるために使用する。 

21.11.2 GML値オブジェクトスキーマ構成部品のインポート  

応用スキーマは,21.2.3に示したようにGMLスキーマをインポートしなければならない。応用スキーマ

で参照するGMLプロファイルには,少なくともgml:Value要素及びこの要素で使用する全てのスキーマ構

成部品を必ず含まなければならない。 

21.11.3 値型の新規作成 

新規の値型は,表10に示すどの基底から派生させて(通常は制限によって)作成してもよい。 

表10−新規の値型の構築 

内容モデル 

記述 

gml:MeasureType  

計測単位付きの数量(uom) 

gml:CategoryType  

分類 

gml:CountType  

発生回数,出現回数など 

幾つかの規格とする型は,16.3で示したスキーマ構成部品にある。 

21.12 GMLスキーマのGMLプロファイル 

一般的に,GML応用スキーマでは,GMLスキーマの,スキーマ構成部品を限定した部分集合だけを必

要とする。箇条20を参考にして,GML応用スキーマで必要とするGMLプロファイル(箇条20参照)を

特定して文章化することを推奨する。21.3〜21.11では,GML応用スキーマの型に依存してどのスキーマ

構成要素が必要となるか,幾つかの指針を示している。 

注記1 附属書Gには,GML応用スキーマで明示的に使うスキーマ構成部品のリストに基づいて

GMLプロファイルを自動作成する方法を示している。 

まず,最初に考慮するべき点を,指針として次に示す。 

a) 地物をモデル化する応用スキーマには,gml:AbstractFeature及びこの要素が必要とする全てのスキーマ

構成部品が必ずなければならない(箇条9参照)。 

b) 地物の集まりもモデル化する応用スキーマには,gml:AbstractFeatureMemberType及び

gml:AggregationAttributeGroup並びにこれらの型が要求する全てのスキーマ構成部品も必ずなければ

233 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

ならない(箇条7参照)。 

c) 計測単位を使用するプロパティを地物がもつ場合,gml:MeasureType,及び計測の種類に応じた下位型

の全て(gml:LengthTypeなど),並びにこれらの型が要求する全てのスキーマ構成部品が必要となる(箇

条8参照)。応用スキーマで計測単位辞書にある計測単位を定義しない場合,gml:BaseUnit,

gml:DerivedUnit,及び/又はgml:ConventionalUnit[及びこれらの型で必要とする全てのスキーマ構成

部品(箇条16参照)]は必須ではない。 

d) 応用スキーマで零次元の空間幾何を用いる場合,gml:Point(及びこの型が要求する全てのスキーマ構

成部品)が必要となる(箇条10参照)。 

e) 応用スキーマで線形内挿した単純な一次元の空間幾何だけを用いる場合,gml:LineStringだけ(及びこ

の型が要求する全てのスキーマ構成部品)が必要である(箇条10参照)。 

f) 

応用スキーマで追加の内挿型を用いる場合,gml:Curve及び応用スキーマによる任意の数(少なくと

も一つ)の曲線分が必要となる。他と同様に,応用スキーマには,これらの要素が必要とする全ての

スキーマ構成部品をもたせる(10.5.10参照)。 

g) 応用スキーマで境界線を線形補間する単純な二次元空間幾何だけを用い,他の幾何とは境界を共有し

ない場合,gml:Polygon及びgml:LinearRing(及びこれらの型で必要とする全てのスキーマ構成部品)

だけを応用スキーマにもつ(箇条10参照)。 

h) 応用スキーマで追加の補間型又は曲面分を用いる場合,gml:Surface及び応用スキーマによる任意の数

(少なくとも一つ)の曲面分が必要となる。曲面が境界線に沿って幾何プリミティブを共有する場合,

gml:Ringも必要となる。他と同様に,応用スキーマには,これらの要素で必要とする全てのスキーマ

構成部品をもたせる(10.5.10参照)。 

i) 

応用スキーマで三次元の空間幾何を用いる場合,gml:Solid(及びこの型が要求する全てのスキーマ構

成部品)を必要とする(10.5.10参照)。 

j) 

空間プロパティにある幾何プリミティブの集まりである幾何オブジェクトを地物で用いる場合だけ,

箇条11に示す幾何集成スキーマ構成部品を用いる。 

k) 空間プロパティにある幾何複体を地物で用いる場合だけ,箇条11に示す幾何複体及びスキーマ構成部

品を用いる。 

l) 

位相プロパティを地物がもつ場合だけ,箇条13に示す位相スキーマ構成部品を用いる。 

m) 応用システムで座標参照系辞書項目(及びこれらの支援構成部品)の構成又は処理を必要とする場合

だけ,箇条12に示す座標参照系スキーマ構成部品を用いる。 

例1 本初子午線,測地原子などは,補助的な構成部品である。 

n) 時間に依存する地物のプロパティ又は動的な地物に関する応用スキーマの場合だけ,箇条14に示す時

間スキーマを用いる。 

o) 応用システムで被覆の構成又は処理を必要とする場合だけ,箇条19に示す被覆スキーマ構成部品を用

いる。 

例2 リモートセンシング画像,空中写真,土壌分布及び数値標高モデルは,典型的な被覆である。 

p) 写真撮影,計測などの観測のモデル化に関する応用スキーマの場合,箇条18に示す観測スキーマ構成

部品だけを用いる。後者の例では,値のオブジェクト及び計測スキーマ構成部品もほとんどの場合,

必要となる。 

q) 応用スキーマで磁針方角のような方向の構成を必要とする場合だけ,箇条17に示す方向スキーマ構成

部品を用いる。gml:DirectedObservationでは方向スキーマを用いる。 

234 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

r) gml:AbstractMetadataPropertyTypeを拡張によって派生させた内容モデルをもっているプロパティ要素

(7.2.6参照)は,応用スキーマ又はオブジェクト特有のメタデータの応用スキーマの設定に用いる。 

注記2 多くの応用システムでは,附属書Cのfeature.xsdをインポートするだけでよい。このことで,

単純幾何スキーマ及びgmlBase.xsdをつな(繋)げてインポートするからである。スキーマ

の依存性及びモジュール性についての詳細は,附属書Jを参照。 

235 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書A 

(規定) 

GML応用スキーマ,GMLプロファイル及び 

GML文書のための抽象試験項目群 

A.1 GML応用スキーマ抽象試験項目群 

A.1.1 必須適合要件の試験項目 

A.1.1.1 XML名前空間の使用 

a) 試験目的 GML応用スキーマ内でのXML名前空間の正しい使用を検証する。 

b) 試験方法 応用スキーマにおける全てのスキーマ構成部品は,XML名前空間と関連しており,この名

前空間はhttp://schemas.opengis.net/gml/3.2.1/ではないことを検査する。 

c) 参照 21.2.2 

d) 試験種類 基本 

A.1.1.2 一般規則 

a) 試験目的 そのGML応用スキーマがGML応用スキーマを作成するための一般規則に従っていること

を検証する。 

b) 試験方法 応用スキーマを調べ,21.2.1で記述した一般規則を満たしているかを検査する。 

c) 参照 21.2.1 

d) 試験種類 機能 

A.1.1.3 GMLスキーマ構成部品のインポート 

a) 試験目的 GML応用スキーマが,全てのGMLスキーマをインポートし,GMLプロファイルを正し

く参照していることを検証する。 

b) 試験方法 応用スキーマでインポート命令を調べる(全てのGMLスキーマは,直接又は間接にイン

ポートしなければならない。)。さらに,一つ以上のGMLプロファイルを参照している場合は,

gml:gmlProfileSchema要素の中で指定するXML Schema構成部品が,A.2.1の抽象試験項目群の必須適

合要件を満たしているか検査する。 

c) 参照 20.5及び21.2.3 

d) 試験種類 機能 

A.1.1.4 有効XML Schema 

a) 試験目的 XML Schema仕様に対して,GML応用スキーマXML文書の有効性を検証する。 

b) 試験方法 XML Schema仕様に対して,GML応用スキーマのXML文書の正当性を確認する。そのと

き,確認のために適したソフトウェアツールを使うことができる,又はXML Schema仕様から全ての

関連した定義を検査するという手動の方法でもよい。 

c) 参照 21.2,W3C XML Schema Part 1,及びW3C XML Schema Part 2参照(箇条3参照) 

d) 試験種類 機能 

A.1.1.5 GMLモデル及び構文規則の使用 

a) 試験目的 GML応用スキーマが,オブジェクト及びプロパティの符号化のための規則に従っているこ

とを検証する。 

b) 試験方法 応用スキーマを検査する。 

236 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

c) 参照 7.1及び箇条21 

d) 試験種類 機能 

A.1.1.6 オブジェクト要素の代替グループ及び型派生 

a) 試験目的 GML応用スキーマにある全てのオブジェクトが,正しい代替グループにあることを検証す

る。 

b) 試験方法 応用スキーマ中の識別子をもった全てのオブジェクト要素が,(直接又は間接に)

gml:AbstractGMLの代替グループにあるということを検査する。次に,A.1.1.6 c)で示した基本型から

派生のための規則を検査する。 

c) 参照 6.2,7.2.2,21.2.4及び21.2.5 

d) 試験種類 機能 

A.1.1.7 プロパティ要素はオブジェクト要素ではない 

a) 試験目的 GML応用スキーマにある全てのプロパティ要素は,オブジェクトではないことを検証する。 

b) 試験方法 応用スキーマにおいて,全てのオブジェクト要素内の全ての子要素は,直接又は間接にも

gml:AbstractObjectの代替グループ中にはないということを検査する。 

c) 参照 7.2.2及び21.2.5 

d) 試験種類 機能 

A.1.1.8 プロパティ要素の内容モデル 

a) 試験目的 GML応用スキーマにある全てのプロパティ要素が,有効な内容モデルをもっていることを

検証する。 

b) 試験方法 応用スキーマにある全てのオブジェクト要素の全ての子要素を検査する。 

c) 参照 7.2.3,21.2.6及び21.2.7 

d) 試験種類 機能 

A.1.1.9 メタデータ及びデータ品質プロパティ 

a) 試験目的 値がオブジェクトのメタデータになるプロパティ全てが,メタデータプロパティとして識

別することができることを検証する。 

b) 試験方法 GML応用スキーマの中で,メタデータをもつ全てのプロパティ要素の内容モデルは全て,

gml:AbstractMetadataPropertyTypeからの拡張によって派生することを検査する。 

c) 参照 7.2.6 

d) 試験種類 機能 

A.1.1.10 空間幾何プロパティ 

a) 試験目的 値が空間幾何オブジェクトになる全てのプロパティが,空間幾何オブジェクトのプロパテ

ィになっていることを検証する。 

b) 試験方法 幾何オブジェクト又は幾何オブジェクトの集まりをもつ全てのプロパティは,9.5に従って

宣言しているGML応用スキーマであることを検査する。 

c) 参照 9.5 

d) 試験種類 機能 

A.1.1.11 空間位相プロパティ 

a) 試験目的 値が空間位相オブジェクトになる全てのプロパティが,空間位相オブジェクトのプロパテ

ィになっていることを検証する。 

b) 試験方法 位相オブジェクト又は位相オブジェクトの集まりをもつ全てのプロパティは,9.6に従って

237 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

宣言しているGML応用スキーマであることを検査する。 

c) 参照 9.6 

d) 試験種類 機能 

A.1.1.12 時間プロパティ 

a) 試験目的 値が時間オブジェクトになる全てのプロパティが,時間オブジェクトのプロパティになっ

ていることを検証する。 

b) 試験方法 時間オブジェクト又は時間オブジェクトの集まりをもつ全てのプロパティは,9.7に従って

宣言しているGML応用スキーマであることを検査する。 

c) 参照 9.7 

d) 試験種類 機能 

A.1.1.13 位置プロパティ 

a) 試験目的 値が位置記述又は参照になる全てのプロパティが,位置記述又は参照になるプロパティに

なっていることを検証する。 

b) 試験方法 地理識別子による空間参照をもつ全てのプロパティが,プロパティ要素gml:locationName

又はgml:locationReferenceを適切に使用するGML応用スキーマであることを検査する。 

c) 参照 9.4.2 

d) 試験種類 機能 

A.1.1.14 GMLオブジェクトの集まり 

a) 試験目的 GMLオブジェクトの集まりになる全てのオブジェクトが,GMLオブジェクトの集まりに

なっていることを検証する。 

b) 試験方法 GMLオブジェクトの集まりになるオブジェクトが,gml:AbstractMemberTypeを拡張する内

容モデルを含む,一つ以上のプロパティ要素をもつGML応用スキーマであることを検査する。

gml:aggregationType属性が,そのオブジェクト要素の子ノードであることが適切かどうかも検査する。 

c) 参照 7.2.5 

d) 試験種類 機能 

A.1.1.15 地物要素の代替グループ 

a) 試験目的 GML応用スキーマにある全ての地物が,正しい代替グループにあることを検証する。 

b) 試験方法 応用スキーマにおいて地物を表す,全てのオブジェクト要素が(直接又は間接に)

gml:AbstractFeatureの代替グループにあることを検査する。 

c) 参照 9.3 

d) 試験種類 機能 

A.1.1.16 GML地物の集まり 

a) 試験目的 GML地物の集まりである全ての地物が,GML地物の集まりになっていることを検証する。 

b) 試験方法 GML応用スキーマにおいて,GML地物の集まりである地物が,

gml:AbstractFeatureMemberTypeを拡張する内容モデルをもった一つ以上のプロパティ要素をもってい

ることを検査する。gml:aggregationType属性が,そのオブジェクト要素の子ノードであることが適切

かどうかも検査する。 

c) 参照 9.9 

d) 試験種類 機能 

A.1.2 UMLによるJIS X 7109応用スキーマから変換するGML応用スキーマの試験 

238 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

A.1.2.1 有効なJIS X 7109 応用スキーマ 

a) 試験目的 GML応用スキーマがUMLで書かれたJIS X 7109応用スキーマの写像となっている場合,

UML応用スキーマがJIS X 7109の要件を満たすことを検証する。 

b) 試験方法 そのUML応用スキーマのJIS X 7109との適合性を検査し,そのUML応用スキーマをE.2.1

に従って作成しているか検査する。 

c) 参照 JIS X 7109:2009の箇条2,附属書A及びこの規格のE.2.1 

d) 試験種類 機能 

A.1.2.2 UMLで書かれたJIS X 7109応用スキーマの写像 

a) 試験目的 UMLで書かれたJIS X 7109応用スキーマがA.1.2に示す要件を満たしている場合,GML

応用スキーマが正しくUML応用スキーマから派生していることを検証する。 

b) 試験方法 両方の応用スキーマの記述を比較し,UMLからXML Schemeへの変換がE.2.4にある変換

規則に従っているか検証する。 

c) 参照 E.2.4 

d) 試験種類 機能 

A.1.3 UMLによるJIS X 7109応用スキーマに変換するGML応用スキーマの試験 

A.1.3.1 有効なGML応用スキーマ 

a) 試験目的 そのGML応用スキーマがUMLで書かれたJIS X 7109応用スキーマの写像となっている

場合,そのGML応用スキーマを正しく作成していることを検証する。 

b) 試験方法 そのGML応用スキーマがF.2.1に従って作成されているか検査する。 

c) 参照 F.2.1 

d) 試験種類 機能 

A.1.3.2 UMLで書かれたJIS X 7109応用スキーマへの写像 

a) 試験目的 GML応用スキーマがA.1.3で示す要件を満たしている場合,UMLで書かれたJIS X 7109

応用スキーマが正しくGML応用スキーマから派生していることを検証する。 

b) 試験方法 両方の応用スキーマの記述を比較し,XML SchemaからUMLへの変換がF.2.3にある変換

規則に従っているか検査する。 

c) 参照 F.2.3 

d) 試験種類 機能 

A.1.4 地物及び地物の集まりを定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが地物を定義している場合,GML応用スキーマを正しく作成している

ことを検証する。 

b) 試験方法 GML応用スキーマが21.3に従って作成されているか検査する。 

c) 参照 21.3  

d) 試験種類 機能 

A.1.5 空間幾何要素を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが空間幾何オブジェクトを定義している場合,GML応用スキーマを正

しく作成していることを検証する。 

b) 試験方法 GML応用スキーマが21.4に従って作成されているか検査する。 

c) 参照 21.4 

d) 試験種類 機能 

239 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

A.1.6 空間位相要素を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが空間位相オブジェクトを定義している場合,GML応用スキーマを正

しく作成していることを検証する。 

b) 試験方法 GML応用スキーマが21.5に従って作成されているか検査する。 

c) 参照 21.5 

d) 試験種類 機能 

A.1.7 時間要素を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが時間オブジェクトを定義している場合,GML応用スキーマを正しく

作成していることを検証する。 

b) 試験方法 GML応用スキーマが21.6に従って作成されているか検査する。 

c) 参照 21.6 

d) 試験種類 機能 

A.1.8 座標参照系を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが座標参照系オブジェクトを定義している場合,GML応用スキーマを

正しく作成していることを検証する。 

b) 試験方法 GML応用スキーマが21.7に従って作成されているか検査する。 

c) 参照 21.7 

d) 試験種類 機能 

A.1.9 被覆を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが被覆地物を定義している場合,GML応用スキーマを正しく作成して

いることを検証する。 

b) 試験方法 GML応用スキーマが21.8に従って作成されているか検査する。 

c) 参照 21.8 

d) 試験種類 機能 

A.1.10 観測を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが観測地物を定義している場合,GML応用スキーマを正しく作成して

いることを検証する。 

b) 試験方法 GML応用スキーマが21.9に従って作成されているか検査する。 

c) 参照 21.9 

d) 試験種類 機能 

A.1.11 辞書及び定義を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが辞書及び定義オブジェクトを示している場合,GML応用スキーマを

正しく作成していることを検証する。 

b) 試験方法 GML応用スキーマが21.10に従って作成されているか検査する。 

c) 参照 21.10 

d) 試験種類 機能 

A.1.12 値を定義するGML応用スキーマ 

a) 試験目的 GML応用スキーマが値オブジェクトを定義している場合,GML応用スキーマを正しく作

成していることを検証する。 

b) 試験方法 GML応用スキーマが21.11に従って作成されているか検査する。 

240 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

c) 参照 21.11 

d) 試験種類 機能 

A.2 GMLプロファイル抽象試験項目群 

A.2.1 有効なGMLプロファイル 

a) 試験目的 プロファイルが,箇条20及び21.12で示した規則及び指針に従うGMLプロファイルであ

ることを検証する。 

b) 試験方法 プロファイルを調べる。 

c) 参照 箇条20及び21.12 

d) 試験種類 機能 

A.2.2 幾何プリミティブ(空間) 

A.2.2.1 幾何プリミティブのデータ型 

A.2.2.1.1 零次元幾何のデータ型 

a) 試験目的 GMLプロファイルは,gml:Point 及びgml:PointPropertyTypeを含んでいることを検証する。

そのGMLプロファイルがgml:MultiPointも含んでいる場合,そのgml:MultiPointが

gml:MultiPointPropertyTypeを含むことを検証する。そのオブジェクト要素の全ての非推奨でないプロ

パティは,少なくとも“1”のmaxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを調べる。 

c) 参照 10.3及び11.3.2 

d) 試験種類 機能 

A.2.2.1.2 一次元幾何のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.1の全ての要件を満たし,gml:Curve,gml:LineStringSegment,

gml:LineString及びgml:CurvePropertyTypeを含んでいることを検証する。そのプロファイルが

gml:MultiCurveも含んでいる場合,それはgml:MultiCurvePropertyTypeを含んでいることを検証する。

オブジェクト要素の全ての非推奨ではないプロパティは,少なくとも“1”のmaxOccurs値をもった

プロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを調べる。 

c) 参照 A.2.2.1.1,10.4.1,10.4.2,10.4.4,10.4.5,10.4.7,10.4.7.4〜10.4.7.21及び11.3.3 

d) 試験種類 機能 

A.2.2.1.3 二次元幾何のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.2の全ての要件を満たし,gml:Surface,gml:PolygonPatch,

gml:Polygon,gml:SurfacePropertyType,gml:LinearRing及びgml:Ringを含んでいることを検証する。そ

のプロファイルがgml:MultiSurfaceも含んでいる場合,それはgml:MultiSurfacePropertyTypeを含んで

いることを検証する。オブジェクト要素の全ての非推奨でないプロパティは,少なくとも“1”の

maxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを調べる。 

c) 参照 A.2.2.1.2,10.5.1,10.5.2,10.5.4〜10.5.9,10.5.10,10.5.11.1,10.5.11.6〜10.5.12.4及び11.3.4 

d) 試験種類 機能 

A.2.2.1.4 三次元幾何データ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.3の全ての要件を満たし,gml:Solid,gml:SolidPropertyType

241 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

及びgml:Shellを含んでいることを検証する。そのプロファイルが,gml:MultiSolid も含んでいる場合,

それはgml:MultiSolidPropertyTypeを含んでいることを検証する。オブジェクト要素の全ての非推奨で

はないプロパティは,少なくとも“1”のmaxOccurs値をもったプロファイルの一部であることを検

証する。 

b) 試験方法 プロファイルを調べる。 

c) 参照 A.2.2.1.3,10.6.1,10.6.2,10.6.4〜10.6.6及び11.3.5 

d) 試験種類 機能 

A.2.3 幾何複体(空間) 

A.2.3.1 幾何複体のデータ型 

A.2.3.1.1 一次元幾何複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.2の全ての要件を満たし,gml:CompositeCurve,

gml:OrientableCurve,gml:GeometricComplex及びgml:GeometricComplexPropertyTypeを含んでいること

を検証する。オブジェクト要素の全ての非推奨でないプロパティは,少なくとも“1”のmaxOccurs

値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.2.1.2,10.4.6,11.2.1.1,11.2.1.2,11.2.2.1及び11.2.2.2 

d) 試験種類 機能 

A.2.3.1.2 二次元幾何複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.3及びA.2.3.1.1の全ての要件を満たし, gml:CompositeSurface 

及びgml:OrientableSurfaceを含んでいることを検証する。オブジェクト要素の全ての非推奨でないプ

ロパティは,少なくとも“1”のmaxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.2.1.3,A.2.3.1.1,10.5.11及び11.2.2.3 

d) 試験種類 機能 

A.2.3.1.3 三次元幾何複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.4及びA.2.3.1.2の全ての要件を満たし,gml:CompositeSolid

を含んでいることを検証する。オブジェクト要素の全ての非推奨でないプロパティは,少なくとも“1”

のmaxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.2.1.4,A.2.3.1.2及び11.2.2.4 

d) 試験種類 機能 

A.2.4 位相複体(空間) 

A.2.4.1 位相複体のデータ型 

A.2.4.1.1 一次元位相複体のデータ型 

a) 試験目的 GMLプロファイルが,gml:TopoComplex,gml:TopoComplexPropertyType,gml:Node, 

gml:directedNode,gml:Edge及びgml:directedEdgeを含んでいることを検証する。オブジェクト要素の

全ての非推奨でないプロパティは,gml:Nodeのgml:pointProperty及びgml:Edgeのgml:curveProperty

を除いて,少なくとも“1”のmaxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 13.2,13.3.1,13.3.2,13.3.3及び13.5 

242 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

d) 試験種類 機能 

A.2.4.1.2 二次元複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.4.1.1の全ての要件を満たし,gml:Face及びgml:directedFaceを

含んでいることを検証する。オブジェクト要素の全ての非推奨でないプロパティは,gml:Faceの

gml:surfacePropertyを除いて,少なくとも“1”のmaxOccurs値をもったプロファイルの一部であるこ

とを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.4.1.1及び13.3.4 

d) 試験種類 機能 

A.2.4.1.3 三次元位相複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.4.1.2の全ての要件を満たし,gml:TopoSolid及び

gml:directedTopoSolidを含んでいることを検証する。オブジェクト要素の全ての非推奨でないプロパテ

ィは,gml:TopoSolidのgml:solidPropertyを除いて,少なくとも“1”のmaxOccurs値をもったプロファ

イルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.4.1.2及び13.3.5 

d) 試験種類 機能 

A.2.5 幾何実現を伴う位相複体(空間) 

A.2.5.1 幾何実現を伴う位相複体のデータ型 

A.2.5.1.1 幾何実現を伴う一次元位相複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.1,A.2.2.1.2及び A.2.4.1.1の全ての要件を満たしているこ

とを検証する。それは,少なくとも“1”のmaxOccurs値をもったgml:Nodeのgml:pointPropertyプロ

パティ及びgml:Edgeのgml:curvePropertyプロパティを含んでいることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.2.1.1,A.2.2.1.2,A.2.4.1.1,13.3.2及び13.3.3 

d) 試験種類 機能 

A.2.5.1.2 幾何実現を伴う二次元位相複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.3及びA.2.4.1.2の全ての要件を満たしていることを検証す

る。それは,少なくとも“1”のmaxOccurs値をもったgml:Faceのgml:surfacePropertyプロパティを含

んでいることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.2.1.3,A.2.4.1.2及び13.3.4 

d) 試験種類 機能 

A.2.5.1.3 幾何実現を伴う三次元位相複体のデータ型 

a) 試験目的 GMLプロファイルが,A.2.2.1.4及びA.2.4.1.3の全ての要件を満たしていることを検証す

る。それは,少なくとも“1”のmaxOccurs値をもったgml:TopoSolidのgml:solidPropertyプロパティ

を含んでいることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.2.1.4,A.2.4.1.3及び13.3.5 

d) 試験種類 機能 

243 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

A.2.6 座標参照系 

a) 試験目的 GMLプロファイルは,必須として,又はISO 19111に従っているという条件下で必須とし

て識別される箇条12で定義する全てのスキーマ構成部品を含んでいることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 箇条12,ISO 19111:2007の表1〜表41,及び投影座標系の場合,ISO 19111:2007の表42〜表

56 

d) 試験種類 機能 

A.2.7 座標演算 

a) 試験目的 GMLプロファイルが,常に必須又はJIS X 7111に適合するという条件下で必須となるも

のとして12.6で定義した全てのスキーマ構成部品を含むことを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 12.6及びISO 19111:2007の表42〜表56 

d) 試験種類 機能 

A.2.8 時間幾何 

A.2.8.1 零次元幾何のためのデータ型 

a) 試験目的 GMLプロファイルが,gml:TimeInstant及びgml:TimeInstantPropertyTypeを含んでいること

を検証する。オブジェクト要素の全ての非推奨でないプロパティは,少なくとも“1”のmaxOccurs

値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 14.2.1.1,14.2.1.2,14.2.1.4,14.2.2.2,14.2.2.3,14.2.2.4及び14.2.2.7 

d) 試験種類 機能 

A.2.8.2 一次元幾何のためのデータ型 

a) 試験目的 GMLプロファイルが,A.2.8.1の要件を満たし,gml:TimePeriod及び

gml:TimePeriodPropertyTypeを含んでいることを検証する。オブジェクト要素の全ての非推奨でないプ

ロパティは,少なくとも“1”のmaxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.8.1,14.2.2.5及び14.2.2.6 

d) 試験種類 機能 

A.2.9 時間位相 

a) 試験目的 GMLプロファイルが,A.2.8.2の要件を満たし,gml:TimeNode,gml:TimeNodePropertyType,

gml:TimeEdge,gml:TimeEdgePropertyType,gml:TimeTopologyComplex及び

gml:TimeTopologyComplexTypeを含んでいることを検証する。オブジェクト要素の非推奨でない全て

のプロパティは,maxOccursの値が1以上の構成部品としてプロファイルに含まれていることを検証

する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 14.3.2 

d) 試験種類 機能 

A.2.10 時間参照系 

a) 試験目的 GMLプロファイルが,gml:TimeReferenceSystem,及び少なくともgml:TimeCoordinateSystem,

gml:TimeCalendar,gml:TimeClock又はgml:TimeOrdinalReferenceSystemから,それらの一つ以上を含

244 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

んでいることを検証する。オブジェクト要素の非推奨でない全てのプロパティは,少なくとも“1”の

maxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 14.4 

d) 試験種類 機能 

A.2.11 動的地物 

a) 試験目的 GMLプロファイルが,A.2.8.2の要件を満たし,gml:DynamicFeature,gml:AbstractTimeSlice

及びgml:historyを含んでいることを検証する。オブジェクト要素の非推奨でない全てのプロパティは,

少なくとも“1”のmaxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.8.2及び14.5 

d) 試験種類 機能 

A.2.12 辞書 

a) 試験目的 GMLプロファイルが,gml:Dictionaryを含んでいることを検証する。オブジェクト要素の

非推奨でない全てのプロパティは,少なくとも“1”のmaxOccurs値をもったプロファイルの一部で

あることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 箇条15 

d) 試験種類 機能 

A.2.13 単位辞書 

a) 試験目的 GMLプロファイルが,gml:UnitDictionary,gml:BaseUnit,gml:DerivedUnit及び

gml:ConventionalUnitを含んでいることを検証する。オブジェクト要素の非推奨でない全てのプロパテ

ィは,少なくとも“1”のmaxOccurs値をもったプロファイルの一部であることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 16.2 

d) 試験種類 機能 

A.2.14 観測地物 

a) 試験目的 GMLプロファイルが,gml:Observation及びgml:DirectedObservationを含んでいることを検

証する。オブジェクト要素の非推奨でない全てのプロパティは,maxOccursの値が1以上の構成部品

としてプロファイルに含まれていることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 17.1及び18.2 

d) 試験種類 機能 

A.2.15 被覆 

A.2.15.1 抽象被覆 

a) 試験目的 GMLプロファイルが,gml:AbstractCoverageを含んでいることを検証する。オブジェクト

要素の非推奨でない全てのプロパティは,maxOccursの値が1以上の構成部品としてプロファイルに

含まれていることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 16.4,19.3.1及び19.3.4〜19.3.21 

245 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

d) 試験種類 機能 

A.2.15.2 離散点被覆 

a) 試験目的 GMLプロファイルが,A.2.15.1の要件を満たし,gml:MultiPointCoverageを含んでいること

を検証する。オブジェクト要素の非推奨でない全てのプロパティは,maxOccursの値が1以上の構成

部品としてプロファイルに含まれていることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.15.1及び19.3.16 

d) 試験種類 機能 

A.2.15.3 離散曲線被覆 

a) 試験目的 GMLプロファイルが,A.2.15.1の要件を満たし,gml:MultiCurveCoverageを含んでいるこ

とを検証する。オブジェクト要素の非推奨でない全てのプロパティは,maxOccursの値が1以上の構

成部品としてプロファイルに含まれていることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.15.1及び19.3.17 

d) 試験種類 機能 

A.2.15.4 離散曲面被覆 

a) 試験目的 GMLプロファイルが,A.2.15.1の要件を満たし,gml:MultiSurfaceCoverageを含んでいるこ

とを検証する。オブジェクト要素の非推奨でない全てのプロパティは,maxOccursの値が1以上の構

成部品としてプロファイルに含まれていることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.15.1及び19.3.18 

d) 試験種類 機能 

A.2.15.5 離散立体被覆 

a) 試験目的 GMLプロファイルが,A.2.15.1の要件を満たし,gml:MultiSolidCoverageを含んでいること

を検証する。オブジェクト要素の非推奨でない全てのプロパティは,maxOccursの値が1以上の構成

部品としてプロファイルに含まれていることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.15.1及び19.3.19 

d) 試験種類 機能 

A.2.15.6 グリッド被覆 

a) 試験目的 GMLプロファイルが,A.2.15.1の要件を満たし,gml:GridCoverage及び

gml:RectifiedGridCoverageを含んでいることを検証する。オブジェクト要素の非推奨でない全てのプロ

パティは,maxOccursの値が1以上の構成部品としてプロファイルに含まれていることを検証する。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.15.1,19.3.20及び19.3.21 

d) 試験種類 機能 

A.2.15.7 連続被覆 

a) 試験目的 GMLプロファイルが,A.2.15.1の要件を満たし,gml:AbstractContinuousCoverageを含んで

いることを検証する。オブジェクト要素の非推奨でない全てのプロパティは,maxOccursの値が1以

上の構成部品としてプロファイルに含まれていることを検証する。 

246 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

b) 試験方法 プロファイルを検査する。 

c) 参照 A.2.15.1及び19.3.3 

d) 試験種類 機能 

A.3 GML文書に対する抽象試験群 

A.3.1 適用可能なGML応用スキーマへの参照の存在 

a) 試験目的 GML文書に適用可能なGML応用スキーマへの参照の存在を検証する。 

b) 試験方法 GML応用スキーマを表すXML SchemaファイルがGML文書の根底要素の

xsi:schemaLocation属性で参照されることを検査する。 

c) 参照 21.1 

d) 試験種類 基本 

A.3.2 参照されるGML応用スキーマの存在 

a) 試験目的 GML文書に適用可能なGML応用スキーマの存在を検証する。 

b) 試験方法 GML文書の参照するGML応用スキーマを表すXML Schemaファイルがアクセス可能であ

ることを検査する。参照されたファイルから直接又は間接にアクセスされる全ての文書もアクセス可

能であることを検査する。 

c) 参照 21.1 

d) 試験種類 基本 

A.3.3 参照されるGML応用スキーマの適合性 

a) 試験目的 GML文書が参照するGML応用スキーマがこの規格に適合することを検証する。 

b) 試験方法 応用スキーマがA.1で規定する全ての適用可能な試験に合格することを検査する。 

c) 参照 A.1 

d) 試験種類 機能 

A.3.4 妥当なXML 

a) 試験目的 この規格に適合するGML応用スキーマのXML Schema構成部品に対するGML文書の妥

当性を検証する。 

b) 試験方法 参照されるGML応用スキーマに対するGML文書の妥当性検査を行う。処理は,適切な妥

当性検証用のソフトウェアツールを用いても,又はXML Schemaの仕様から適用される全ての定義を

手作業で検査してもよい。 

c) 参照 21.1 

d) 試験種類 機能 

A.3.5 GML文書の適合性 

a) 試験目的 GML文書がこの規格の他の全ての制約に従うことを検証する。 

b) 試験方法 A.3.1〜A.3.3の要件を満たすこと,GML文書がA.3.4の要件を満たすこと及びそのGML

文書がこの規格の他の全ての制約に従うことを検査する。 

c) 参照 箇条7〜箇条21,特に7.2.3.4,10.1.3.2,10.1.3.3,10.1.4.2及び16.4.11 

d) 試験種類 機能 

247 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書B 

(規定) 

ソフトウェア実装のための抽象試験項目群 

B.1 

必須の適合性要件に対する試験項目 

B.1.1 GMLプロファイル 

a) 試験目的 GMLプロファイルがソフトウェア実装によって完全に利用可能なものとして文書化され

ていることを検証する。 

b) 試験方法 プロファイルを識別するために,ソフトウェア実装についての文書を検査する。プロファ

イルがA.1.12の抽象試験群の要件を満たすことを検査する。その上で,ソフトウェアの実装が,プロ

ファイル及びプロファイル中の全てのスキーマ構成部品に関連付く意味規則を完全に利用可能とする

ことを検査する。 

c) 参照 A.1.12 

d) 試験種類 機能 

B.1.2 XLinkの局所単純リンクへの対応 

a) 試験目的 ソフトウェア実装がXMLフォーマットにおけるGMLオブジェクト要素の処理能力をもつ

場合,実装が同一のGML文書内の他のオブジェクトへの参照を可能とすることを検証する。 

b) 試験方法 実装が,同一のXML文書内の情報資源を指定する直接記述のXPointerを内容とする

xlink:href属性を用いたプロパティインスタンスを処理できることを検査する。 

c) 参照 8.1 

d) 試験種類 機能 

B.1.3 地物で用いる座標参照系(ソフトウェア実装) 

a) 試験目的 ソフトウェア実装がXMLフォーマット中のGMLオブジェクト要素を処理する能力をもち,

実装のGMLプロファイルが地物を含む場合に,地物に含まれる全ての幾何オブジェクトに対して,

既定の座標参照系を設定する仕組みがあることを検証する。 

b) 試験方法 地物のgml:boundedByプロパティの値であるgml:Envelope要素のsrsName属性が,その地

物要素にその場に符号化されている全ての幾何オブジェクトに対して既定の座標参照系として用いら

れることを検査する。 

c) 参照 9.10 

d) 試験種類 機能 

B.2 

XMLフォーマットにおけるGMLオブジェクト要素を処理する能力に関して選択可能なソフトウェ

ア実装の適合性要件に対する試験項目 

B.2.1 XLinkの遠隔単純リンクのサポート 

a) 試験目的 実装が同一のGML文書内及び外部の他のオブジェクトへの参照をサポートすることを検

証する。 

b) 試験方法 実装がA.1.1.1の要件を満たし,同一のXML文書外の情報資源を指すXPointer を内容と

するxlink:href属性を用いるプロパティインスタンスを処理できることを検査する。  

248 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

c) 参照 8.1 

d) 試験種類 機能 

B.2.2 XLinkの拡張リンクのサポート 

a) 試験目的 実装がXLinkの拡張リンクをサポートすることを検証する。 

b) 試験方法 実装が拡張XLink属性を処理できることを検査する。 

c) 参照 8.1 

d) 試験種類 機能 

B.2.3 nil値をとることができるプロパティのサポート 

a) 試験目的 実装が省略可能なプロパティをサポートすることを検証する。 

b) 試験方法 実装がxsi:nillable属性をもつプロパティ要素宣言を含むGML応用スキーマを処理でき,

実装がこれらの要素のxsi:nil及びgml:nilReasonをもつインスタンスを処理できることを検査する。 

c) 参照 8.2.3.1〜8.2.3.2 

d) 試験種類 機能 

B.2.4 計測単位のサポート 

a) 試験目的 実装が同じ種類の二つの単位の間の変換を可能にすることを検証する。 

b) 試験方法 実装が8.2.3.6で規定したgml:MeasureTypeのuom属性の値を処理でき,計測値を16.2で

規定した単位辞書を用いて同じ種類の他の単位に変換できることを検査する。 

c) 参照 8.2.3.6及び16.2 

d) 試験種類 機能 

B.2.5 プロパティ所有権の意味規則のサポート 

a) 試験目的 実装が“owns”属性をサポートすることを検証する。 

b) 試験方法 実装がGML文書からオブジェクトを削除する機能をもつ場合,実装がオブジェクトが削

除された場合にowns属性が示す,そのオブジェクトが所有する全てのオブジェクトを削除すること

を検査する。 

c) 参照 7.2.3.5 

d) 試験種類 機能 

B.2.6 メタデータプロパティ 

a) 試験目的 オブジェクトに関するメタデータを値とするプロパティがメタデータプロパティとして識

別されることを検証する。 

b) 試験方法 実装が,gml:AbstractMetadataPropertyTypeから派生した内容モデルをもつプロパティ要素

をメタデータプロパティとして識別することを検査する。 

c) 参照 7.2.6 

d) 試験種類 機能 

B.2.7 インスタンスの妥当性確認におけるGMLプロファイルのサポート 

a) 試験目的 実装がインスタンスの妥当性検証において,GMLプロファイルを用いることができること

を検証する。 

b) 試験方法 プロファイルがgml:gmlProfileSchema注釈を用いる応用スキーマから参照される場合に,

実装がインスタンスの妥当性検証にプロファイルを用いることを検査する。 

c) 参照 20.5 

249 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

d) 試験種類 機能 

B.3 

GMLの書き出しに対する試験項目 

B.3.1 直列化 (serialization) 機能の有無 

a) 試験目的 実装の直列化操作が存在することを検証する。 

b) 試験方法 実装がXMLフォーマットでGMLオブジェクトの妥当なインスタンスを出力する直列化操

作を実装していることを点検するために,ソフトウェア実装及びその文書を検査する。 

c) 参照 A.3 

d) 試験種類 基本 

B.3.2 直列化の妥当性 

a) 試験目的 直列化操作の結果がこの規格に適合することを検証する。 

b) 試験方法 直列化操作を用いて典型的なGML文書を書き出し,XMLフォーマットのGML文書が妥

当か検査する。 

c) 参照 A.3 

d) 試験種類 機能 

B.4 

GMLの読込みに対する試験項目 

a) 試験目的 実装がXMLのGMLオブジェクト要素から実装オブジェクトを生成する機能とこれらの実

装オブジェクトをXMLフォーマットのGMLオブジェクトに直列化して戻す機能とをもつ場合,それ

が妥当に実施されることを検証する。 

b) 試験方法 オブジェクト生成及び直列化(B.3参照)の一連の動作が情報の欠落のない結果を作成す

ることを検査する。 

c) 参照 A.3 

d) 試験種類 機能 

B.5 

GML応用スキーマの書き出しに対する試験項目 

B.5.1 直列化機能の有無 

a) 試験目的 GML応用スキーマの直列化操作が存在することを検証する。 

b) 試験方法 実装がXML SchemaフォーマットでGML応用スキーマの妥当なインスタンスを書き出す

直列化操作を実装していることの検査としてソフトウェア実装及びその文書を検査する。 

c) 参照 A.1 

d) 試験種類 機能 

B.5.2 直列化の妥当性 

a) 試験目的 直列化操作の結果がこの規格に適合することを検証する。 

b) 試験方法 直列化操作を用いて典型的なGML応用スキーマを生成し,このGML応用スキーマが実装

のGMLプロファイル及びこの規格に適合することを検査する。 

c) 参照 A.1及びB.1.1 

d) 試験種類 機能 

250 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

B.6 

GML応用スキーマの読込みに対する試験項目 

a) 試験目的 実装がXMLのGML応用スキーマから実装オブジェクトを生成する機能及びこれらの実装

オブジェクトをXMLフォーマットのGML応用スキーマに直列化して戻す機能をもつ場合,それが妥

当に実施されることを検証する。 

b) 試験方法 オブジェクトの生成及び直列化(B.5参照)の一連の動作が情報の欠落のない結果を作成

することを検査する。 

c) 参照 A.1及びB.5 

d) 試験種類 機能 

251 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書C 
(参考) 

GMLスキーマ 

GMLスキーマとともにXML Schema文書は,ISOのウェブサイトにおいて次のURLでオンラインによ

って使用することができる。 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas 

スキーマ構成部品は,附属書J,すなわち,次のスキーマ文書の中で示す構造でモジュール化されてい

る。 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/basicTypes.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/coordinateOperations.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/coordinateReferenceSystems.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/coordinateSystems.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/coverage.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/datums.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/dictionary.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/direction.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/dynamicFeature.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/feature.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/geometryAggregates.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/geometryBasic0d1d.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/geometryBasic2d.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/geometryComplexes.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/geometryPrimitives.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/gml.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/gmlBase.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/grids.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/measures.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/observation.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/referenceSystems.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/temporal.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/temporalReferenceSystems.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/temporalTopology.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/topology.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/units.xsd 

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/valueObjects.xsd 

付加的な文書http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO̲19136̲Schemas/defaultStyle.xsdは,

参考となるスキーマ構成部品を含む。 

XLinkのXML Schema文書は,http://schemas.opengis.net/xlink/1.0.0/xlinks.xsdにある。 

252 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

代替のスキーマリポジトリは,次に示すOpen Geospatial Consortiumのスキーマウェブサイトにある。 

http://schemas.opengis.net/gml/3.2.1/ 

253 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書D 
(規定) 

JIS X 7100シリーズ(ISO 19100シリーズ)の規格の実装プロファイル 

及び拡張 

D.1 全体の概要 

JIS X 7100シリーズ(ISO 19100シリーズ)の規格とGMLとの間の全般的な関係は,箇条6に示す。こ

の附属書では,GML(D.2参照)によって実装する,JIS X 7100シリーズ(ISO 19100シリーズ)の規格

で定義する概念モデルのプロファイル及びこのプロファイル(D.3参照)の拡張の詳細を示す。 

この規格における“プロファイル”は,純粋な部分集合を意味する。 

D.2 GMLで使用するJIS X 7100シリーズ(ISO 19100シリーズ)の規格のプロファイル 

D.2.1 概要 

次に示す細分箇条では,GMLで使用するJIS X 7100シリーズ(ISO 19100シリーズ)の規格のプロファ

イルを示す。そのプロファイルのクラス図の記述の中で,GMLスキーマとの関係及びGMLスキーマへの

写像について示す。 

注記1 一般的に,附属書Eに示す符号化規則は,GMLスキーマの符号化にも使用する。しかし,

ほとんどのGMLスキーマは手作りであり,実装環境(すなわち,XML及びXML Schema)

の具体的な機能が一層役に立つことになる。例えば,多数の既定義の基本型(単純な内容を

もつ単純又は複合型)又は大域要素の使用だけではなく代替可能にするためのプロパティ(例

えば,非推奨のプロパティの名前のための別名の定義)が挙げられる。これらは,直接使用

する,又はこれ以降の細分箇条(D.2.2〜D.2.11)の中で示す。 

次(表D.1)に示す規格からとった要素だけからプロファイルを構成する。他の規格からの要素は,プ

ロファイルの一部ではない。 

GMLでは,いかなるクラスの操作もプロファイルの一部ではない,とする。 

加えて,データ構造をもたないインタフェースクラス(ステレオタイプ<<Interface>>)及びデータ構造

をもたないクラスに対する“実現”関係は,削除する。 

さらに,関連の誘導可能性は,GMLが明示的なオブジェクトプロパティを表現する命令に制限する

[GMLスキーマにおけるほとんどの関連は,単一方向でだけ誘導可能(navigable)である。]。 

注記2 非推奨であるGMLの型,要素及び属性は,この附属書では扱わない。 

注記3 GML応用スキーマに対する,UMLからXML Schemaへの写像の一般的な規則は,附属書E

で定義する。 

注記4 この附属書では,名前空間“xsd:”は,“http://www.w3.org/2001/XMLSchema”にあるXML 

Schemaの名前空間を引用するために使用する。名前空間“gml:”は,

“http://schemas.opengis.net/gml/3.2.1/”にあるGMLの名前空間を引用する。 

表D.1は,JIS X 7100シリーズ(ISO 19100シリーズ)の規格の高水準パッケージと,これらパッケー

ジから型を実装するGMLスキーマの構成部品とを定義する,この規格の細分箇条との間の対応関係を示

す。 

background image

254 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表D.1−JIS X 7100シリーズ(ISO 19100シリーズ)の規格の実装パッケージの概要 

UMLパッケージ 

UMLクラス 

接頭辞 

JIS X 7136 

箇条及び細分箇条 

附属書D 
細分箇条 

ISO/TS 19103:Basic Types:Units of Measure 

− 

8.2.3.6及び16.2 

D.2.2 

JIS X 7107:Geometry:Geometric root 

GM 

10.1.3 

D.2.3.2 

JIS X 7107:Geometry:Geometric primitive 

GM 

10.2,10.3,10.4 

10.5及び10.6 

D.2.3.3 

JIS X 7107:Geometry:Geometric complex 

GM 

11.2 

D.2.3.6 

JIS X 7107:Geometry:Geometric aggregates 

GM 

11.3 

D.2.3.5 

JIS X 7107:Geometry:Coordinate geometry 

GM 

10.1.4 

D.2.3.4 

JIS X 7107:Topology:Topology root 

TP 

13.2 

D.2.4.2 

JIS X 7107:Topology:Topology primitive 

TP 

13.3 

D.2.4.3 

JIS X 7107:Topology:Topology complex 

TP 

13.5 

D.2.4.4 

JIS X 7108:Temporal Objects 

TM 

14.2及び14.3 

D.2.5.2〜D.2.5.6 

JIS X 7108:Temporal Reference System 

TM 

14.4 

D.2.5.7 

ISO 19111:SC̲CoordinateReferenceSystem 

SC 

12.2及び12.3 

D.2.7.3 

ISO 19111:SC̲CoordinateSystem 

CS 

12.4 

D.2.7.4 

ISO 19111:SC̲Datum 

CD 

12.5 

D.2.7.5 

ISO 19111:SC̲CoordinateOperation 

CC 

12.6 

D.2.7.6 

ISO 19123 

CV 

19 

D.2.11 

表D.2は,この規格によって実装する概念UMLクラスと,関連するGMLオブジェクト要素,XML Schema

型及びGMLプロパティ型との間の対応関係を提示する。 

表は,四つの列で構成される。GMLが使用するUML型(第1列)からXML Schemaへの完全な対応関

係を提示するために,三つの他の列で示されるとおり,三つの異なる対応関係が必要である。このことは,

一般地物モデルから,UML及びXML Schemaへの写像の仕方が違うためであり,これは,主にXML Schema

がXML要素とその内容モデルとを分離するためである。 

表は次のように解釈する。 

− 第1列(“UMLクラス”)は,GMLスキーマで実装するJIS X 7100シリーズ(ISO 19100シリーズ)

からとられたクラスを列挙する。 

 この列は空白(“−”)となる場合がある。それは,他の列でGML要素及び型が,JIS X 7100シリ

ーズ(ISO 19100シリーズ)では明記されないが,D.3で導入する概念を実装することを示すものであ

る。 

− 第2列(“GMLオブジェクト要素”)は,型を実装するGMLオブジェクト要素を示す。 

 この情報は特に,附属書Eにおける符号化の規則に関する二つの場面で使用する。 

− 一つは,オブジェクト要素に対するあらかじめ定義されたプロパティ型がGMLスキーマ(第4

列参照)の一部でなく,プロパティ型が応用スキーマで作成されなければならない場合。 

− 一つは,型の下位型が応用スキーマで明記されていて,下位型を表現するオブジェクト要素が,

型のオブジェクト要素の代替グループの一部として定義されている場合。 

− GMLスキーマの中に,対応するオブジェクト要素が存在しない場合は,空白セル(“−”)で示す。 

− 第3列(“GML型”)は,第2列のGMLオブジェクト要素の内容モデルを定義するXML Schema型を

示す。 

 このXML Schema型は,第1列の型の下位型を応用スキーマで作る場合に,特に,附属書Eの符号

background image

255 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

化の規則の中で使う。この場合,XML Schemaの実装は,XML Schemaの派生型を指定する。 

 GMLスキーマの中に,対応するXML Schema型が存在しない場合は,空白セル(“−”)で示す。 

− 第4列(“GMLプロパティ型”)は,型を応用スキーマでプロパティの値として使用する場合に,XML 

Schema型として使用する型を明記する。この場合,この列は,GMLスキーマで型を実装するXML 

Schema型の値を示す。 

例 ある地物型が“GM̲Point”の型のプロパティをもつ場合,XML Schema表現において,対応する

GMLプロパティ要素宣言は,その型としてgml:PointPropertyTypeをもつ。 

 ステレオタイプ<<DataType>>をもつクラスの場合,どのプロパティのXML Schema表現もGMLス

キーマの中で規定するデータ型として用いることはせず,地物プロパティの値として使用することは

意図しない。 

 GMLスキーマが,応用スキーマが要求する場合でも,既定義のプロパティ型を含まない場合は,そ

のプロパティ型を,GMLオブジェクト要素が同じ行の第2列で与えられるGMLプロパティ型(7.2.3

参照)に対する規則に一致して作成する必要がある。 

 値を“(group)”として扱う場合,プロパティは,局所的なプロパティ要素の代わりにセルで指定す

る大域グループへの参照として実装する。 

表D.2−JIS X 7100シリーズ(ISO 19100シリーズ)の規格からの型の実装 

UMLクラス 

GMLオブジェクト要素 

GML型 

GMLプロパティ型 

GM̲Object 

gml:AbstractGeometry 

gml:AbstractGeometryType 

gml:GeometryPropertyType 

GM̲Primitive 

gml:AbstractGeometricPrimiti
ve 

gml:AbstractGeometricPrimitive
Type 

gml:GeometricPrimitiveProperty
Type 

DirectPosition 

− 

− 

gml:DirectPositionType 

GM̲Position 

− 

− 

gml:geometricPositionGroup 
(グループ) 

GM̲PointArray 

− 

− 

gml:geometricPositionListGroup 
(グループ) 

GM̲Point 

gml:Point 

gml:PointType 

gml:PointPropertyType 

GM̲Curve 

gml:Curve 

gml:CurveType 

gml:CurvePropertyType 

GM̲Surface 

gml:Surface 

gml:SurfaceType 

gml:SurfacePropertyType 

GM̲PolyhedralSurface 

gml:PolyhedralSurface 

gml:SurfaceType 

任意のプロパティ型a) 

GM̲TriangulatedSurface gml:TriangulatedSurface 

gml:SurfaceType 

任意のプロパティ型 

GM̲Tin 

gml:Tin 

gml:TinType 

任意のプロパティ型 

GM̲Solid 

gml:Solid 

gml:SolidType 

gml:SolidPropertyType 

GM̲OrientableCurve 

gml:OrientableCurve 

gml:OrientableCurveType 

gml:CurvePropertyType 

GM̲OrientableSurface 

gml:OrientableSurface 

gml:OrientableSurfaceType 

gml:SurfacePropertyType 

GM̲Ring 

gml:Ring 

gml:RingType 

− 

GM̲Shell 

gml:Shell 

gml:ShellType 

− 

− 

gml:LineString 

gml:LineStringType 

− 

− 

gml:Polygon 

gml:PolygonType 

− 

− 

gml:LinearRing 

gml:LinearRingType 

− 

GM̲CompositePoint 

gml:Point 

gml:PointType 

gml:PointPropertyType 

GM̲CompositeCurve 

gml:CompositeCurve 

gml:CompositeCurveType 

任意のプロパティ型 

GM̲CompositeSurface 

gml:CompositeSurface 

gml:CompositeSurfaceType 

任意のプロパティ型 

GM̲CompositeSolid 

gml:CompositeSolid 

gml:CompositeSolidType 

任意のプロパティ型 

background image

256 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表D.2−JIS X 7100シリーズ(ISO 19100シリーズ)の規格からの型の実装(続き) 

UMLクラス 

GMLオブジェクト要素 

GML型 

GMLプロパティ型 

GM̲Complex 

gml:GeometricComplex 

gml:GeometricComplexType 

gml:GeometricComplexProperty
Type 

GM̲Aggregate 

gml:MultiGeometry 

gml:MultiGeometryType 

gml:MultiGeometryPropertyType 

GM̲MultiPoint 

gml:MultiPoint 

gml:MultiPointType 

gml:MultiPointPropertyType 

GM̲MultiCurve 

gml:MultiCurve 

gml:MultiCurveType 

gml:MultiCurvePropertyType 

GM̲MultiSurface 

gml:MultiSurface 

gml:MultiSurfaceType 

gml:MultiSurfacePropertyType 

GM̲MultiSolid 

gml:MultiSolid 

gml:MultiSolidType 

gml:MultiSolidPropertyType 

GM̲MultiPrimitive 

gml:MultiGeometry 

gml:MultiGeometryType 

gml:MultiGeometryPropertyType 

GM̲CurveSegment 

gml:AbstractCurveSegment 

gml:AbstractCurveSegmentType 

− 

GM̲Arc 

gml:Arc 

gml:ArcType 

− 

GM̲ArcByBulge 

gml:ArcByBulge 

gml:ArcByBulgeType 

− 

− 

gml:ArcByCenterPoint 

gml:ArcByCenterPointType 

− 

GM̲ArcString 

gml:ArcString 

gml:ArcStringType 

− 

GM̲ArcStringByBulge 

gml:ArcStringByBulge 

gml:ArcStringByBulgeType 

− 

GM̲Bezier 

gml:Bezier 

gml:BezierType 

− 

GM̲BsplineCurve 

gml:BSpline 

gml:BSplineType 

− 

GM̲Circle 

gml:Circle 

gml:CircleType 

− 

− 

gml:CircleByCenterPoint 

gml:CircleByCenterPointType 

− 

GM̲Clothoid 

gml:Clothoid 

gml:ClothoidType 

− 

GM̲CubicSpline 

gml:CubicSpline 

gml:CubicSplineType 

− 

GM̲GeodesicString 

gml:GeodesicString 

gml:GeodesicStringType 

− 

GM̲LineString 

gml:LineStringSegment 

gml:LineStringSegmentType 

− 

GM̲OffsetCurve 

gml:OffsetCurve 

gml:OffsetCurveType 

− 

GM̲SurfacePatch 

gml:AbstractSurfacePatch 

gml:AbstractSurfacePatchType 

− 

GM̲GriddedSurface 

gml:AbstractGriddedSurface 

gml:AbstractGriddedSurfaceType 

− 

GM̲ParametricCurve 
Surface 

gml:AbstractParametricCurve 
Surface 

gml:AbstractParametricCurveSur
faceType 

− 

GM̲Cone 

gml:Cone 

gml:ConeType 

− 

GM̲Cylinder 

gml:Cylinder 

gml:CylinderType 

− 

GM̲Geodesic 

gml:Geodesic 

gml:GeodesicType 

− 

GM̲Polygon 

gml:PolygonPatch 

gml:PolygonPatchType 

− 

− 

gml:Rectangle 

gml:RectangleType 

− 

GM̲Sphere 

gml:Sphere 

gml:SphereType 

− 

GM̲Triangle 

gml:Triangle 

gml:TriangleType 

− 

TP̲Object 

gml:AbstractTopology 

gml:AbstractTopologyType 

任意のプロパティ型 

TP̲Node 

gml:Node 

gml:NodeType 

gml:DirectedNodePropertyType 

TP̲Edge 

gml:Edge 

gml:EdgeType 

gml:DirectedEdgePropertyType 

TP̲Face 

gml:Face 

gml:FaceType 

gml:DirectedFacePropertyType 

TP̲Solid 

gml:TopoSolid 

gml:TopoSolidType 

gml:DirectedTopoSolidProperty
Type 

background image

257 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表D.2−JIS X 7100シリーズ(ISO 19100シリーズ)の規格からの型の実装(続き) 

UMLクラス 

GMLオブジェクト要素 

GML型 

GMLプロパティ型 

TP̲DirectedNode 

− 

− 

gml:DirectedNodePropertyType 

TP̲DirectedEdge 

− 

− 

gml:DirectedEdgePropertyType 

TP̲DirectedFace 

− 

− 

gml:DirectedFacePropertyType 

TP̲DirectedSolid 

− 

− 

gml:DirectedTopoSolidProperty
Type 

TP̲Complex 

gml:TopoComplex 

gml:TopoComplexType 

gml:TopoComplexPropertyType 

− 

gml:TopoPoint 

gml:TopoPointType 

gml:TopoPointPropertyType 

− 

gml:TopoCurve 

gml:TopoCurveType 

gml:TopoCurvePropertyType 

− 

gml:TopoSurface 

gml:TopoSurfaceType 

gml:TopoSurfacePropertyType 

− 

gml:TopoVolume 

gml:TopoVolumeType 

gml:TopoVolumePropertyType 

TM̲Object 

gml:AbstractTimeObject 

gml:AbstractTimeObjectType 

任意のプロパティ型 

TM̲Complex 

gml:AbstractTimeComplex 

gml:AbstractTimeComplexType 

任意のプロパティ型 

TM̲GeometricPrimitive 

gml:AbstractTimeGeometric 
Primitive 

gml:AbstractTimeGeometricPrim
itiveType 

gml:TimeGeometricPrimitivePr
opertyType 

TM̲Instant 

gml:TimeInstant 

gml:TimeInstantType 

gml:TimeInstantPropertyType 

TM̲Period 

gml:TimePeriod 

gml:TimePeriodType 

gml:TimePeriodPropertyType 

TM̲TopologicalComplex gml:TimeTopologyComplex 

gml:TimeTopologyComplexType 

gml:TimeTopologyComplexPro
pertyType 

TM̲TopologicalPrimitive gml:AbstractTimeTopology 

Primitive 

gml:AbstractTimeTopologyPrimit
iveType 

gml:TimeTopologyPrimitivePro
pertyType 

TM̲Node 

gml:TimeNode 

gml:TimeNodeType 

gml:TimeNodePropertyType 

TM̲Edge 

gml:TimeEdge 

gml:TimeEdgeType 

gml:TimeEdgePropertyType 

TM̲PeriodDuration 

− 

− 

gml:duration(プロパティ要
素),xsd:duration 

TM̲IntervalLength 

− 

− 

gml:timeInterval(グループ), 
gml:TimeIntervalLengthType 

TM̲Duration 

− 

− 

gml:timeLength(グループ) 

TM̲Position 

− 

− 

gml:TimePositionType 

TM̲IndeterminateValue 

− 

− 

@TimeIndeterminateValue 
(TimePositionTypeに関する
属性) 

TM̲Coordinate 

− 

− 

xsd:decimal 

TM̲CalDate 

− 

− 

gml:CalDate 

TM̲ClockTime 

− 

− 

xsd:time 

TM̲DateAndTime 

− 

− 

xsd:dateTime 

TM̲Calendar 

gml:TimeCalendar 

gml:TimeCalendarType 

gml:TimeCalendarPropertyType 

background image

258 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表D.2−JIS X 7100シリーズ(ISO 19100シリーズ)の規格からの型の実装(続き) 

UMLクラス 

GMLオブジェクト要素 

GML型 

GMLプロパティ型 

TM̲CalendarEra 

gml:TimeCalendarEra 

gml:TimeCalendarEraType 

gml:TimeCalendarEraPropertyT
ype 

TM̲Clock 

gml:TimeClock 

gml:TimeClockType 

gml:TimeClockPropertyType 

TM̲CoordinateSystem 

gml:TimeCoordinateSystem 

gml:TimeCoordinateSystemType 

任意のプロパティ型 

TM̲OrdinalReference 
System 

gml:TimeOrdinalReference 
System 

gml:TimeOrdinalReferenceSystem 
Type 

任意のプロパティ型 

TM̲OrdinalEra 

gml:TimeOrdinalEra 

gml:TimeOrdinalEraType 

gml:TimeOrdinalEraPropertyTy
pe 

SC̲CRS 

gml:AbstractCRS 

gml:AbstractCRSType 

gml:CRSPropertyType 

SI̲LocationInstance 

− 

− 

gml:LocationName 

CV̲Coverage 

gml:AbstractCoverage 

gml:AbstractCoverageType 

任意のプロパティ型 

CV̲ContinuousCoverage 

gml:AbstractContinuousCov
erage 

gml:AbstractContinuousCoverage 
Type 

任意のプロパティ型 

CV̲DiscreteCoverage 

gml:AbstractDiscreteCoverage gml:DiscreteCoverageType 

任意のプロパティ型 

CV̲DiscretePoint 
Coverage 

gml:MultiPointCoverage 

gml:MultiPointCoverageType 

任意のプロパティ型 

CV̲DiscreteCurve 
Coverage 

gml:MultiCurveCoverage 

gml:MultiCurveCoverageType 

任意のプロパティ型 

CV̲DiscreteSurface 
Coverage 

gml:MultiSurfaceCoverage 

gml:MultiSurfaceCoverageType 

任意のプロパティ型 

CV̲DiscreteSolid 
Coverage 

gml:MultiSolidCoverage 

gml:MultiSolidCoverageType 

任意のプロパティ型 

CV̲DiscreteGridPoint 
Coverage 

gml:GridCoverage 

gml:GridCoverageType 

任意のプロパティ型 

CharacterString 

− 

− 

xsd:string 

Boolean 

− 

− 

xsd:boolean 

Real,Number 

− 

− 

xsd:double 

Decimal 

− 

− 

xsd:decimal 

Date 

− 

− 

xsd:date 

Time 

− 

− 

xsd:time 

DateTime 

− 

− 

xsd:dateTime 

Integer 

− 

− 

xsd:integer, 
xsd:nonPositiveInteger 
xsd:negativeInteger 
xsd:nonNegativeInteger 
xsd:positiveInteger b) 

Vector 

− 

− 

gml:VectorType 

GenericName, 
LocalName 
又はScopeName 

− 

− 

gml:CodeType 

Length,Distance 

− 

− 

gml:LengthType 

Angle 

− 

− 

gml:AngleType 

Speed 

− 

− 

gml:SpeedType 

Scale 

− 

− 

gml:ScaleType 

Area 

− 

− 

gml:AreaType 

Volume 

− 

− 

gml:VolumeType 

background image

259 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表D.2−JIS X 7100シリーズ(ISO 19100シリーズ)の規格からの型の実装(続き) 

UMLクラス 

GMLオブジェクト要素 

GML型 

GMLプロパティ型 

Measure 

− 

− 

gml:MeasureType 

Sign 

− 

− 

gml:SignType 

UnitOfMeasure 

− 

− 

gml:UnitOfMeasureType 

注a) 不明な型は,GMLプロパティ型のパターンに従う。参照する又は要素内に埋め込むオブジェクト要素は同じ行

の第4列の要素である。 

b) 第2列の複数の値は,附属書Fで記述される逆変換を使用可能とするために与える。 

D.2.2 ISO/TS 19103 概念スキーマ言語 

この細分箇条では,ISO/TS 19103で定義する,GMLで直接使用可能な基本型を示す。多くの場合,XML 

Schemaで定義する単純な型を直接使用する。 

− “CharacterString”は,xsd:stringによって実装する。文字の符号化は,XML文書の処理命令において

定義する(XML文書での既定値はUTF-8である。)。 

− “Date”は,xsd:dateによって実装する。 

− “DateTime”は,xsd:dateTimeによって実装する。 

− “Time”は,xsd:timeによって実装する。 

− “Real”は,xsd:doubleによって実装する。 

− “Decimal”は,通常,xsd:decimalによって実装する。実用上の理由によって,スキーマでは小数値が

xsd:doubleによっても表現する。 

− 一般的な基本型の“Number”は,GMLスキーマでは,通常,xsd:doubleによって実装する。 

− “Integer”は,xsd:integerによって実装する。 

− “Boolean”は,xsd:booleanによって実装する。 

− “Measure”は,単純型であるgml:MeasureTypeによって実装する。この値はxsd:double型であり,そ

のuom指定子は,<gml:UnitDefinition>要素又は既知の単位の文字を示すURIによって実装する(8.2.3.6

参照)。 

− “UnitOfMeasure”は,gml:UnitDefinitionTypeによって実装する。 

− 次の“Measure”の下位型は,それぞれがそれに適した型の単位の定義を示すuom属性とともに,GML

によって実装する。 

− “Length” → gml:LengthType 

− “Scale” → gml:ScaleType 

− “Area” → gml:AreaType 

− “Volume” → gml:VolumeType 

− “Speed” → gml:SpeedType 

− “Time” → gml:TimeType 

− “Angle” → gml:AngleType 

− “Vector”は,gml:VectorTypeによって定義する。 

注記 ISO/TS 19103ではベクトルを,座標系における位置を表す座標と呼ぶ数字との順序集合であ

ると記述している。GMLは,この意味でベクトルを使用し,座標系をベクトルと関連付ける

ようにしている。 

background image

260 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− “GenericName”及び“LocalName”は,URIである名前空間指示子によって示されるgml:CodeType

によって実装する。 

− “ScopedName”は,URIである名前空間指示子によって示されることが必須である

gml:CodeWithAuthorityTypeによって実装する。 

ISO/TS 19103では,全ての“NULL”値は同等であるとしている。この規格は,“nil”値の根拠を記述す

る機構を提供することによって,より明示的な方法を使用する。アプリケーションは,この追加情報を使

用してもしなくてもよい。 

D.2.3 JIS X 7107空間スキーマ(幾何) 

D.2.3.1 概要 

この附属書で定義するGMLプロファイルのUMLモデルは,JIS X 7107で定義する抽象型の概念モデル

を与える。JIS X 7107と同じクラス及び属性の名前を,それと比較しやすいようにGMLプロファイルの

文書化でも使用する。 

注記1 より詳細については,JIS X 7107:2005の2.を参照。 

表D.3で示す追加の変更は,JIS X 7107の幾何パッケージに適用済みである。 

表D.3−JIS X 7107(幾何)のプロファイル記述 

変更 

説明 

GM̲Primitive: 関連“Interior to”を削除 

現在,GMLではこれを利用しないため。 

GM̲Polygon: 属性“spanningSurface”を削除 

現在,GMLではこれを利用しないため。 

GM̲Solid: 操作“boundary()”を属性に変更 

GM̲Solidの境界は“boundary()”操作を通じてだけ取得
できるので,同じ名前の属性を付加している。JIS X 7107
で定義しているとおり,その属性値は“boundary()”操作
の結果と同じである。 

GM̲Complex: 関連“Contains”を削除 

現在,GMLではこれを利用しないため。 

GM̲MultiPrimitiveの下位型の中にある派生属性を削除 

これらの属性は,オブジェクトのデジタル表現から派生
する可能性があるので,冗長な情報は削除する。 

GM̲CompositePointを削除 

GM̲CompositePointはいかなる情報も付加しない。この型
は,JIS X 7107において完全性を確保するためにだけ追
加したが,インスタンス文書中で使用することは期待し
ていない。したがって,これはGMLでは削除する。 

GM̲PolynomialSplineを抽象化 

GMLでは現在インスタンス化せず,その下位型である
GM̲CubicSplineをインスタンス化する。 

GM̲LineSegmentを削除 

GMLでは利用不能である。その代わり,二つの制御点を
もつGM̲LineString型を使用しなければならない。 

GM̲CurveBoundaryを削除 

操作の中でだけ使用するため。 

GM̲ComplexBoundaryを削除 

操作の中でだけ使用するため。 

注記2 GM̲OrientableCurve及びGM̲OrientableSurfaceは(JIS X 7107に適合して),“非抽象型”で

ある。 

D.2.3.2 幾何根底 

図D.1及び図D.2のUMLクラス図は,“幾何根底”パッケージのプロファイルを示す(JIS X 7107:2005

の図5及び図6と比較。)。 

様々なクラスのGMLスキーマへの写像については,クラス階層の詳細を示す次の細分箇条(D.2.3.3〜

D.2.3.6)で説明する。 

background image

261 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GM̲Objectは,“AbstractGeometry”オブジェクト要素で表現し,役割“CRS”はプロパティ“srsName”

で表現する。 

“AbstractGeometry”要素は,任意選択の“description”要素,零個以上の“name”要素,任意選択の“identifier”

要素,及び必須である“gml:id”属性といった追加プロパティで保持してもよい。後者は,コンパクトな

XPointer構文規則に従って“by reference”幾何要素の再使用を可能とするのに特に有用である。 

図D.1−実装されたGM̲Objectの下位型 

<<Type>> 

GM̲Primitive 

<<Type>> 

GM̲Point 

<<Type>> 

GM̲OrientablePrimitive 

(from Geometric primitive) 

<<Type>> 

GM̲Object 

<<Type>> 

GM̲Complex 

<<Type>> 

GM̲Aggregate 

<<Type>> 

GM̲Composite 

<<Type>> 

GM̲MultiPrimitive 

<<Type>> 

GM̲MultiPoint 

<<Type>> 

GM̲OrientableCurve 

(from Geometric primitive) 

<<Type>> 

GM̲CompositeCurve 

<<Type>> 

GM̲CompositeSurface 

<<Type>> 

GM̲OrientableSurface 

(from Geometric primitive) 

<<Type>> 

GM̲MultiCurve 

<<Type>> 

GM̲MultiSurface 

<<Type>> 

GM̲MultiSolid 

<<Type>> 

GM̲Curve 

<<Type>> 

GM̲Surface 

<<Type>> 
GM̲Solid 

<<Type>> 

GM̲CompositeSolid 

background image

262 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

図D.2−幾何プリミティブ 

<<Type>> 

GM̲Object 

<<Abstract>> 

SC̲CRS 

(from Spatial Referencing by Coordinates) 

<<Type>> 

GM̲Complex 

(from Geometric complex) 

<<Type>> 

GM̲Primitive 

(from Geometric primitive) 

<<Type>> 

GM̲OrientablePrimitive 

(from Geometric primitive) 

<<Type>> 

GM̲OrientableCurve 

(from Geometric primitive) 

<<Type>> 

GM̲OrientableSurface 

(from Geometric primitive) 

<<Type>> 
GM̲Point 

(from Geometric primitive) 

<<Type>> 

GM̲Curve 

(from Geometric primitive) 

<<Type>> 

GM̲Surface 

(from Geometric primitive) 

<<Type>> 
GM̲Solid 

(from Geometric primitive) 

0..* 

+object 

0..1 

+CRS 

Coordinate Reference System 

0..* 

1..* 

+complex 

+element 

Complex 

background image

263 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.3.3 幾何プリミティブ 

“Geometry primitive”パッケージの概要をUMLクラス図の図D.3〜図D.9の範囲で図解する(JIS X 

7107:2005の図7〜図9と比較)。 

<<Abstract>

GM̲Boundary

(from Geometry root)

<<Abstract>

GM̲Boundary

(from Geometry root)

<<Abstract>

GM̲PrimitiveBoundary

<<Abstract>

GM̲PrimitiveBoundary

<<Type>

GM̲SurfaceBoundary

<<Type>

GM̲SurfaceBoundary

<<Type>

GM̲SolidBoundary

<<Type>

GM̲SolidBoundary

<<Type>

GM̲Ring

<<Type>

GM̲Shell

<<Type>

GM̲CompositeCurve

(from Geometric complex

<<Type>

GM̲CompositeCurve

(from Geometric complex

1

1

1

1

0..1

0..*

+interior

+exterior

0..1

0..*

+interior

+exterior

図D.3−幾何プリミティブの境界 

JIS X 7107が提供する境界クラス(GM̲Boundary)は,GMLの中では明確には表現しない。JIS X 7107

では通常,“boundary()”演算の戻り値が境界の型となる。GMLでは,全ての曲面(曲面分)又は立体の境

界をプロパティとして明確に表す必要があり,“exterior”及び“interior”プロパティは,GMLに曲面(曲

面分)又は立体のプロパティとして直接定義した。 

“GM̲Ring”は,“Ring”オブジェクト要素によって表される。“Ring”は,GMLの“CompositeCurve”

と代替可能ではないが,構造的には同じ合成曲線である。 

“GM̲Shell”は,“Shell”オブジェクト要素によって表される。“Shell”は,GMLの“CompositeSurface”

と代替可能ではないが,構造的には同じ合成曲面である。 

background image

264 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>

GM̲Object

(from Geometry root)

<<Type>

GM̲Primitive

<<Type>

GM̲Primitive

<<Type>

GM̲Complex

(from Geometric complex

<<Type>

GM̲Point

<<Type>

GM̲Curve

<<Type>

GM̲Surface

<<Type>

GM̲Solid

<<Type>

GM̲OrientablePrimitive

<<Type>

GM̲OrientableCurve

<<Type>

GM̲OrientableSurface

0..*

+complex

1..*

+element

Complex

図D.4−幾何プリミティブ 

“GM̲Primitive”は,“AbstractGeometricPrimitive”オブジェクト要素(両方とも抽象的)によって表す。

“complex”な役割は,GMLでは誘導可能(navigable)ではない。 

<<Type>

GM̲Primitive

<<Type>

GM̲Point

+position : DirectPosition

図D.5−点 

“GM̲Point”は,GMLでは“Point”オブジェクト要素によって表す。“position”属性は,“pos”プロパ

ティによって表す(値の型は“DirectPosition”)。 

background image

265 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲Curve

<<Type>>

GM̲Surface

<<Type>>

GM̲OrientableCurve

<<Type>>

GM̲OrientableSurface

<<Type>>

GM̲OrientablePrimitive

+orientation :Sign

<<Type>>

GM̲Primitive

0,2

+proxy

1

+primitive

Oriented

{(orientation = "+" ) implies (primitive = self)}

{primitive = self}
{orientation = "+"}

{primitive.IsTypeOf(GM̲Curve)}

{primitive.IsTypeOf(GM̲Surface)}

図D.6−曲線及び曲面 

“GM̲Curve”は,GMLでは“Curve”オブジェクト要素によって表す。方向は,“Curve”の明確なプロ

パティではなく,暗黙で“+”に固定する。 

“GM̲OrientableCurve”は,GMLでは“OrientableCurve”オブジェクト要素によって表す。“primitive”

の役割は,“baseCurve”プロパティによって表す。 

“GM̲Surface”は,GMLでは“Surface”オブジェクト要素によって表す。方向は,“Surface”の明確な

プロパティではなく,暗黙で“+”に固定する。 

“GM̲OrientableSurface”は,GMLでは“OrientableSurface”オブジェクト要素によって表す。“primitive”

の役割は,“baseSurface”プロパティによって表す。 

通常,GMLの幾何プリミティブを求める箇所で“CompositeCurve”を使用可能とするには,抽象的な(及

びプロパティをもたない)オブジェクト要素“AbstractCurve”を導入し,“Curve”,“OrientableCurve”又は

“CompositeCurve”のいずれかで置換してよい。同じ構造は,曲面及び立体で共に使用される。結果とし

て,“GM̲OrientablePrimitive”クラスは,GMLへ確実には写像されず,また,この型はインスタンス化可

能でなく,制限を課すこともない。 

注記 この写像は,空間スキーマにおいて複体幾何(geomrtric composite)として定義された合成幾何

(geometric complex)が,幾何プリミティブ(geometric primitive)でもあることを説明するた

めに多重継承を使用した,という事実の結果である。XML Schemaは,多重継承の能力はない

ので,(より正確にいうと複体型の派生である)抽象オブジェクト要素“AbstractCurve”,

background image

266 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

“AbstractSurface”及び“AbstractSolid”がGMLで取り入れられた。それは,実際の幾何プリ

ミティブ(例えば“Curve”)又は合成幾何(例えば“CompositeCurve”)が構造的に異なってい

ても,共通の代替グループにすることができたからである。 

<<Type>>

GM̲Curve

<<Type>>

GM̲OrientableCurve

<<Type>>

GM̲OrientablePrimitive

<<Type>>

GM̲Primitive

<<Abstract>>

GM̲CurveSegment

0..1

+segment

+curve

Segmentation

1..*

{sequence}

図D.7−曲線 

上記のように“GM̲Curve”は,GMLでは“Curve”オブジェクト要素で表す。役割“segment”は,GML

では“segments”配列プロパティとして表す。 

background image

267 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲Surface

<<Type>>

GM̲OrientableSurface

<<Type>>

GM̲OrientablePrimitive

<<Type>>

GM̲Primitive

<<Abstract>>

GM̲SurfacePatch

0..1

+patch

+surface

Segmentation

1..*

図D.8−曲面 

上記のように,“GM̲Surface”は,GMLでは“Surface”オブジェクト要素によって表す。役割“patch”

は,GMLでは“patches”配列プロパティとして表す。 

<<Type>>

GM̲Solid

/+ boundary : GM̲SolidBoundary

<<Type>>

GM̲Primitive

図D.9−立体 

“GM̲Solid”は,GMLでは“Solid”オブジェクト要素によって表す。立体の境界は,上記のように,

立体の“exterior”又は“interior”プロパティによって直接表す。 

D.2.3.4 座標幾何 

“Coordinate Geometry”パッケージのプロファイルをUMLクラス図の図D.10〜図D.19の範囲で図解す

る(JIS X 7107:2005の図14〜図21と比較)。 

background image

268 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Abstract>>

SC̲CRS

(from Spatial Referencing by Coordinates)

<<DataType>>

DirectPosition

+coordinate : Sequence<Number>
/+ dimension : Integer

0..1

+directPosition

0..*

+coordinateReferenceSystem

<<DataType>>

GM̲Envelope

+upperCorner: DirectPosition
+lowerCorner:DirectPosition

<<Union>>

GM̲Position

+direct : DirectPosition
+indirect : GM̲PointRef

<<Type>>

GM̲Point

(from Geometric primitive)

<<DataType>>

GM̲PointRef

0..*

+point

1

<<DataType>>

GM̲PointRef

1..*

<<Union>>

GM̲Position

+column

j : Integer

関連が存在しない場合のCRSは,例えばこの
直接位置がもつGM̲ObjectのCRSなどのように,
このデータ型の名前空間によって決定される。

{coordinateReferenceSystem.dimension= 

coordinate.size= 
dimension}

図D.10−座標幾何 

“DirectPosition”は,GMLでは“coordinate”属性を二つのリストに写像した単純な内容の型として表す。

“coordinateReferenceSystem”の役割は“srsName”属性プロパティによって表し,また,“dimension”は,

同じ名前の任意選択の属性プロパティによって表す(positiveInteger型)。 

“GM̲Position”は,“pos”プロパティ(“DirectPosition”型)又は“pointProperty”プロパティ(“Point”

値)のいずれかに写像する。“GM̲PointArray”は,同様の選択要素として表現するが,最小値及び最大値

の実現数のための適切な設定値を付す。 

単一の“GM̲Position”又は“GM̲PointArray”は,もうひとつの方法として“coordinates”プロパティ

によって表せる(値の型は,文字列として符号化する単純な内容の座標リストの“Coordinates”)。 

“GM̲Envelope”は,GMLでは“Envelope”オブジェクト要素によって表す。“upperCorner”及び

“lowerCorner”の二つの属性は,同じ名前の属性に写像する。“gml:Envelope”の中の追加属性

“SRSReferenceGroup”は,通常,全ての隅が同じ座標参照系の場合は,一度だけ示す必要があるので追加

している。 

background image

269 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲Curve

(from Geometric primitive)

<<Abstract>>

GM̲CurveSegment

(from Geographic primitive)

0..1

+segment

+curve

Segmentation

1..*

{sequence}

+interpolation : GM̲CurveInterpolation=“linear”
+numDerivativesAtStart[0..1] : Integer = 0
+numDerivativesAtEnd[0..1] : Integer = 0
+numDerivativeinterior[0..1] : Integer = 0

<<CodeList>>

GM̲CurveInterpolation

(from Geographic primitive)

+linear
+circularArc3Points
+circularArc2PointsWithBulge
+polynominalSpline
+rationalSpline

<<Type>>

GM̲ArcString

<<Type>>

GM̲Arc

<<Type>>

GM̲ArcStringByBulge

<<Type>>

GM̲SplineCurve

<<Type>>

GM̲LineString

<<Type>>

GM̲PolynomialSpline

<<Type>>

GM̲BSplineCurve

<<Type>>

GM̲Circle

<<Type>>

GM̲CubicSpline

<<Type>>

GM̲Bezier

図D.11−曲線分 

“GM̲CurveSegment”は,GMLでは“AbstractCurveSegment”オブジェクト要素によって表す(両者と

も抽象型)。三つの“numDerivatives…”属性は,同じ定義付けでプロパティに写像する。“Interpolation”

属性は,“AbstractCurveSegment”には定義されていないが,インスタンス化可能な下位型の中で定義する

(及び,適切な初期値とともに設定する。)。 

GMLは現在,JIS X 7107の全ての定義済み曲線分(GM̲CurveSegment)の下位型を利用可能にしている。 

“GM̲CurveSegment”の下位型はほとんど,GMLでは上述の選択要素によって表す“controlPoint”属性

を伴う(GM̲PointArrayの表現に関する論述を参照)。 

符号リスト“GM̲CurveInterpolation”は,列挙と同じ規則でGMLに写像する,すなわち,GMLスキー

マの既定義の値から外れた値を追加することはできない。 

background image

270 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲LineString

+ controlPoint: GM̲PointArray

<<Abstract>>

GM̲CurveSegment

(from Geometric primitive)

図D.12−線ストリング 

“GM̲LineString”は,“LineStringSegment”オブジェクト要素で表す。名称“LineString”は,GMLの別

のオブジェクト要素のために予約されているので,接尾辞“Segment”をGMLの名称に追加した(D.3.5

参照)。 

GMLの以前の版との後方互換性を保持するため,以前の“LineString”の使用が非推奨であっても既存

要素の名称を変更することはできないことから,名称GM̲LineStringの実装に使用できなかった。 

<<Type>>

GM̲ArcString

+numArc: Integer 
+controlPoints: GM̲PointArray

<<Abstract>>

GM̲CurveSegment

(from Geometric primitive)

<<Type>>

GM̲ArcStringByBulge

+ bulge : Sequence<Real> 
+ numArc: Integer
+ normal : Seqence<Vector>

<<Type>>

GM̲Arc

<<Type>>

GM̲Circle

<<Type>>

GM̲ArcByBulge

−controlPoint列の始点と終点とは同一である。

−controlPoint列のすべての
点は同一の円上にある。

−すべての円弧は同一の円上
にある。

{interpolation = "circularArc3Points"}
{controlPoints.count= 2*numArc+ 1}

{interpolation = "circularArc2PointWithBulge"}
{bulge.count= normal.count= numArc}

図D.13−弧及び円 

曲線分型は,GMLでは同じ名前(ただし,接頭語“GM̲”はなし)及びプロパティの組でGMLのオブ

ジェクト要素に写像される。 

background image

271 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲SplineCurve

+degree : Integer
+knot : Sequence<GM̲Knot>
+controlPoints: GM̲PointArray

<<Abstract>>

GM̲CurveSegment

(from Geometric primitive)

<<Type>>

GM̲PolynomialSpline

+vectorAtStart: Sequence<Vector>
+vectorAtEnd: Sequence<Vector>

<<Type>>

GM̲CubicSpline

<<Type>>

GM̲BSplineCurve

+curveForm[0..1] : GM̲SplineCurveForm
+knotSpec[0..1] : GM̲KnotType
+IsPolynomial: Boolean

<<Type>>

GM̲Bezier

<<DataType>>

GM̲Knot

+value : Real
+multiplicity : Integer
+ weight : Real

<<CodeList>>

GM̲SplineCurveForm

+polylineForm
+circularArc
+elipticArc
+parabolicArc
+hyperbolicArc

<<CodeList>>

GM̲KnotType

+uniform
+quasiUniform
+poecewiseBezier

{(interpolation = “polynomialSpline") OR (Interpolation = "rationalSpline")}  

{degree = controlPoint.count-1}
{Interpolation = "rationalSpline"}  

{degree = controlPoint.count-1}
{Interpolation = "cubicSpline"}  

{degree > 0}
{Interpolation = "polynomialSpline"} 
{vectorAtEnd.count= vectorAtStart.count= degree ‒2} 

図D.14−スプライン 

また,これらの曲線分型は,同じ名称でGMLのオブジェクト要素に写像する(ただし,接頭辞“GM̲”

以外。しかしながら,“GM̲BSplineCurve”は,“BSpline”によって表す。つまり,接尾辞“Curve”をもた

ない。また,“knotSpec”属性は,GMLでは“knotType”に改名した。)。GMLの曲線分オブジェクトのプ

ロパティは,OCL (Object Constraint Language)の制約を考慮に入れて指定した。 

符号リスト“GM̲KnotType”は,列挙としてGMLに写像する,すなわち,GMLスキーマの既定義の値

から外れた値を追加することはできない。 

background image

272 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲Curve

(from Geometric primitive)

<<Abstract>>

GM̲CurveSegment

(from Geographic primitive)

0..1

+segment

+curve

Segmentation

1..*

{sequence}

+interpolation : GM̲CurveInterpolation= "linear"
+numDerivativesAtStart[0..1] : Integer = 0
+numDerivativesAtEnd[0..1] : Integer = 0
+numDerivativeinterior[0..1] : Integer = 0

<<CodeList>>

GM̲CurveInterpolation

(from Geographic primitive)

+linear
+geodesic
+circularArc3Points
+circularArc2PointsWithBulge
+elliptical
+clothoid
+conic
+polynominalSpline
+cubicSplinr
+rationalSpline

<<Type>>

GM̲ArcString

<<Type>>

GM̲Arc

<<Type>>

GM̲ArcStringByBulge

<<Type>>

GM̲SplineCurve

<<Type>>

GM̲PolynomialSpline

<<Type>>

GM̲BSplineCurve

<<Type>>

GM̲Circle

<<Type>>

GM̲CubicSpline

<<Type>>

GM̲Bezier

<<Type>>

GM̲Clothoid

<<Type>>

GM̲OffsetCurve

<<Type>>

GM̲Geodesic

<<Type>>

GM̲GeodesicString

<<Type>>

GM̲LineSegment

<<Type>>

GM̲LineString

+baseCurve

1

図D.15−曲線分 

“GM̲OffsetCurve”クラスは,GMLでは“OffsetCurve”オブジェクト要素によって表す。オブジェクト

は,クラスと同じ意味と解釈する。baseCurveプロパティは,offsetBaseに改名した。 

“GM̲AffinePlacement”は,GMLでは“AffinePlacement”オブジェクト要素によって表す。 

“GM̲GeodesicString”は,GMLでは“GeodesicString”オブジェクト要素によって表す。 

“GM̲Geodesic”は,GMLでは“Geodesic”オブジェクト要素によって表す。 

“GM̲Clothoid”は,GMLでは“Clothoid”オブジェクト要素によって表す。 

background image

273 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Abstract>>

GM̲SurfacePatch

(from Geographic primitive)

+ interpolation : GM̲SurfaceInterpolation= "planar"
+ numDerivativesOnBoundary[0..1] : Integer = 0 

<<Type>>

GM̲Polygon

<<Type>>

GM̲Triangle

<<CodeList>>

GM̲SurfaceInterpolation

(from Geographic primitive)

+ none
+ planar
+ spherical
+ elliptical
+ conic
+ tin
+ parametricCurve
+ polynomialSpline
+ rationalSpline
+ triangulatedSpline

図D.16−曲面分(第1図) 

“GM̲SurfacePatch”は,GMLでは“AbstractSurfacePatch”オブジェクト要素で表す(両方とも抽象的)。

“numDerivativesOnBoundary”属性は,現在GMLでは明確に写像しておらず,現在のGMLでは平面の内

挿(imterpolation)だけに対応している。“interpolation”属性は,“AbstractSurfacePatch”で定義していない

が,インスタンス可能なサブタイプで定義している(適当な初期値が入る。)。 

GMLは現在,JIS X 7107の全ての既定義の曲面型及び曲面分のサブセットに対応する。 

符号リスト“GM̲SurfaceInterpolation”は,列挙としてGMLに写像する,すなわち,GMLスキーマの

既定義の値から外れた値を追加することはできない。 

0..1

+patch

+surface

Segmentation

1..*

<<Type>>

GM̲Surface

(from Geometric primitive)

<<Abstract>>

GM̲SurfacePatch

(from Geographic primitive)

+ interpolation : GM̲SurfaceInterpolation= "planar"
+ numDerivativesOnBoundary[0..1] : Integer = 0 

<<Type>>

GM̲Polygon

<<Type>>

GM̲Triangle

+ boundary : GM̲SurfaceBoundary

+ corners[3] : GM̲Position

図D.17−曲面分(第2図) 

background image

274 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

“GM̲Polygon”は,“PolygonPatch”オブジェクト要素によって表す。その“boundary”属性は,

“PolygonPatch”の“exterior”又は“interior”プロパティによって直接表す。 

名称“Polygon”は,GMLの別のオブジェクト要素のため既に予約されているので,接尾辞“Patch”を

GML中の名称に追加した(D.3.6参照)。GMLの以前の版との後方互換性を維持するために,以前の

“Polygon”の使用が非推奨となったにもかかわらず,また,その名称は“GM̲Polygon”の実装のために

有効ではないにもかかわらず,既存の要素の名称を変えることができなかった。 

<<Type>>

GM̲ParametricCurveSurface

+ horizontalCurveType: GM̲CurveInterpolation
+ verticalCurveType: GM̲CurveInterpolation

<<Type>>

GM̲GriddedSurface

+ controlPoint: GM̲PointGrid
/+ rows : Integer
/+ columns : Integer

{interpolation = "parametricCurve"}

<<Type>>
GM̲Cone

<<Type>>

GM̲Cylinder

<<Type>>

GM̲Sphere

{horizontalCurveType= "conic"}
{verticalCurveType= "linear"}

{horizontalCurveType= "conic"}
{verticalCurveType= "linear"}

{horizontalCurveType= "circularArc3Points"}
{verticalCurveType= " circularArc3Points"}

図D.18−グリッド曲面分 

“GM̲PointGrid”は,GMLでは“PointGrid”グループによって表す。 

“GM̲ParametricCurveSurface”は,GMLでは“AbstractParametricCurveSurface”オブジェクト要素によ

って表す(両方とも抽象型)。 

“GM̲GriddedSurface”は,GMLでは“AbstractGriddedSurface”オブジェクト要素によって表す(両方

とも抽象型)。 

“GM̲Cone”は,GMLでは“Cone”オブジェクト要素によって表す。 

“GM̲Cylinder”は,GMLでは“Cylinder”オブジェクト要素によって表す。 

“GM̲Sphere”は,GMLでは“Sphere”オブジェクト要素によって表す。 

background image

275 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

0..1

+patch

+surface

Segmentation

1..*

<<Type>>

GM̲Surface

(from Geometric primitive)

<<Abstract>>

GM̲SurfacePatch

(from Geographic primitive)

+ interpolation : GM̲SurfaceInterpolation= "planar"
+ numDerivativesOnBoundary[0..1] : Integer = 0 

<<Type>>

GM̲Polygon

<<Type>>

GM̲Triangle

+ boundary : GM̲SurfaceBoundary

+ corners[3] : GM̲Position

<<CodeList>>

GM̲SurfaceInterpolation

(from Geographic primitive)

+ none
+ planar
+ spherical
+ elliptical
+ conic
+ tin
+ parametricCurve
+ polynomialSpline
+ rationalSpline
+ triangulatedSpline

<<Type>>

GM̲TriangulatedSurface

<<Type>>

GM̲Tin

+ stopLines: Set<GM̲LineString>
+ breakLines: Set<GM̲LineString>
+ maxLength: Distance
+ controlPoint[3..*] : GM̲Position

0..1

+patch

+surface

1..*

0..1

+patch

+surface

1..*

<<Type>>

GM̲PolyhederalSurface

subset

subset

--補間曲面は,曲線を含まなければならない。
{SpanningSurface.NotEmptyImplies
spanningSurface.contains(boundary)}

図D.19−多面体及び三角曲面 

“GM̲PolyhedralSurface”は,GMLでは“PolyhedralSurface”オブジェクト要素によって表す。 

“GM̲TriangulatedSurface”は,GMLでは“TriangulatedSurface”オブジェクト要素によって表す。 

“GM̲Tin”は,GMLでは“Tin”オブジェクト要素によって表す。 

D.2.3.5 幾何集成 

図D.20に示すUMLクラス図は,“幾何集成”パッケージ(JIS X 7107:2005の図24参照)のプロファイ

ルを示す。 

background image

276 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲Object

(from Geometry root)

0..*

+element

<<Type>>

GM̲Object

(from Geometry root)

<<Type>>

GM̲Aggregate

<<Type>>

GM̲Aggregate

<<Type>>

GM̲MultiPrimitive

<<Type>>

GM̲MultiPrimitive

<<Type>>

GM̲MultiPoint

<<Type>>

GM̲MultiPoint

<<Type>>

GM̲MultiCurve

<<Type>>

GM̲MultiCurve

<<Type>>

GM̲MultiSurface

<<Type>>

GM̲MultiSurface

<<Type>>

GM̲MultiSolid

<<Type>>

GM̲MultiSolid

{element.subTypeOf(GM̲Point)}

{element.subTypeOf(GM̲Solid)}

{element.subTypeOf(GM̲OrientableCurve)}

{element.subTypeOf(GM̲OrientableSurface)}

{element.subTypeOf(GM̲Primitive)}

図D.20−幾何集成 

“GM̲Aggregate”は,“AbstractGeometricAggregate”オブジェクト要素(両者は抽象型)によって表現

する。“element”役割は,GMLではインスタンス化可能な下位型によってインスタンス化する。一般的な

パターンは,二つのプロパティで定義する。そのうちの一つは,通常の関連プロパティであり,もう一つ

は,配列関連プロパティである。プロパティの名前は,“xMember”及び“xMembers”であり,集成要素

の種類に応じて,“x”は“point”,“curve”,“surface”又は“solid”に置き換える。これは,安全のため,

OCL制約言語で表現する。 

“GM̲MultiPoint”は,GMLでは MultiPoint”オブジェクト要素で表現する。 

“GM̲MultiCurve”は,GMLでは“MultiCurve”オブジェクト要素で表現する。 

“GM̲MultiSurface”は,GMLでは“MultiSurface”オブジェクト要素で表現する。 

“GM̲MultiSolid”は,GMLでは“MultiSolid”オブジェクト要素で表現する。 

“GM̲MultiPrimitive”は,GMLでは明示的には示さない。 

D.2.3.6 幾何複体 

図D.21及び図D.22に示すUMLクラス図は,“幾何複体”パッケージ(JIS X 7107:2005の図25〜図30

参照)のプロファイルを示す。 

background image

277 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

--generatorのすべてのプリミティブはこの複体に(プリミティブの集合として)含まれる。
{Set::element->includesAll(generator)}

<<Type>>

GM̲Object

(from Geometry root)

<<Type>>

GM̲Complex

<<Type>>

GM̲Complex

<<Type>>

GM̲Composite

1..*

Complex

<<Type>>

GM̲Primitive

(from Geometric primitive)

0..*

+complex

+element

subset

Composition

1..*

0..*

+composite

+generator

図D.21−幾何合成(第1図) 

“GM̲Complex”は,“GeometricComplex”オブジェクト要素によって表現する。“element”役割は,GML

における同名のプロパティに対応付ける。 

合成幾何型が“GM̲Complex”の下位型であるということは,GMLの中では,“GeometricComplex”を

とる全ての関連プロパティが(“GeometricComplexPropertyType”の中の選択要素によって)合成のうちの

一つを受け入れるということによって表現する。合成幾何の二面性を説明するためにJIS X 7107で使用し

ている多重継承がXML Schemaの派生機構では使用できないことが理由となり,このようなXML Schema

への対応付けが,必要であった。 

background image

278 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

GM̲Complex

<<Type>>

GM̲Primitive

(from Geometric primitive)

Composition

1..*

0..*

+composite

+generator

<<Type>>

GM̲Composite

<<Type>>

GM̲Composite

<<Type>>

GM̲OrientableCurve

(from Geometric primitive)

<<Type>>

GM̲OrientableSurface

(from Geometric primitive)

<<Type>>

GM̲Solid

(from Geometric primitive)

<<Type>>

GM̲CompositeCurve

<<Type>>

GM̲CompositeSurface

<<Type>>

GM̲CompositeSolid

0..*

Composition

Composition

Composition

+composite

0..*

+composite

0..*

+composite

1..*

+generator

1..*

+generator

1..*

+generator

sequence

図D.22−幾何合成(第2図) 

“GM̲Composite”は,GML中のオブジェクト要素によって明示的に表現してはいない。しかし,

“GM̲CompositeCurve”,“GM̲CompositeSurface”及び“GM̲CompositeSolid”は,(“GM̲”接頭辞を除い

て)同名のオブジェクト要素によって表現する。役割“generator”は,GMLでは,“xMember”という名

称をもつ関連プロパティの下位型の中で継承し,合成要素の種類に応じて,“x”は“point”,“curve”,

“surface”又は“solid”に置き換える。 

D.2.3.7 適合性 

JIS X 7107のプロファイルの適合性を決定する規則は,JIS X 7107:2005の2.及び附属書Aに示す。JIS X 

7107の2.が定義している三つの基準に基づき,GMLの幾何は,次の水準を採用する。 

データの複雑さ: 

幾何プリミティブ 

幾何複体 

次元: 

 零次元,一次元,二次元,及び三次元オブジェクト 

 機能の複雑さ: 

 データ型だけ 

結果として,関係するJIS X 7107の適合性箇条は,次のとおりである。 

 A.1.1.1〜A.1.1.4 

 A.2.1.1〜A.2.1.3 

これらの適合性箇条が示す条件には合致している。 

注記 派生属性は,操作として扱い,集成幾何中の派生属性は,GMLインスタンスを操作する応用シ

ステムによって,データから派生すると仮定する。 

GM̲CompositePointは,GMLでは“Point”オブジェクト要素で表現する。“generator”関連役割の値は,

background image

279 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

同じオブジェクト,例えば“Point”オブジェクト自身である。 

D.2.4 JIS X 7107空間スキーマ(位相) 

D.2.4.1 概要 

JIS X 7107の位相パッケージには,表D.4に示す追加変更を施している。 

表D.4−JIS X 7107(位相)のプロファイルの記述 

変更 

説明 

TP̲Complexに関連“isMaximal()”を派生属性とし
て追加 

TP̲Complexの既定義のデータ構造を用いて情報に
アクセスすることができないため。この属性はJIS 
X 7107で示す“isMaximal()”操作の結果を表現する
属性として定義する。 

TP̲Objectはインタフェースクラスからタイプクラ
ス(しかし,全てのプロパティは除く。)に変更し,
TP̲Primitive及びTP̲ComplexからTP̲Objectへの実
現関係は,汎化関係に変更した。 

異なる位相の下位型のための根底としてTP̲Object
を扱うことが,GMLへの対応をより明確にするた
め。 

TP̲Complex及びGM̲Complexの間にある任意選択
の関連“Realization”は削除する。 

実現関係は位相複体に含むプリミティブの実現か
ら派生できるため。 

“maximalComplex”役割は,TP̲Primtiveから削除
する。 

現在GMLではこれを使用しないため。 

TP̲Boundary,TP̲Ring及びTP̲Shellと同様の下位
型は,削除する。 

操作の中だけで使用するため。 

D.2.4.2 位相根底 

図D.23及び図D.24に示すUMLクラス図は,“位相根底”パッケージ(JIS X 7107:2005の図32及び図

33参照)のプロファイルを示す。 

background image

280 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

TP̲Object

(from Topology root)

<<Type>>

TP̲Primitive

<<Type>>

TP̲Complex

Complex

1..*

1..*

+complex

+element

<<Type>>

TP̲Node

<<Type>>

TP̲Edge

<<Type>>

TP̲Face

<<Type>>

TP̲Solid

<<Type>>

TP̲DirectedTopo

<<Type>>

TP̲DirectedNode

<<Type>>

TP̲DirectedEdge

<<Type>>

TP̲DirectedFace

<<Type>>

TP̲DirectedSolid

<<Type>>

TP̲Expression

図D.23−位相プリミティブ 

<<Type>>

TP̲Object

(from Topology root)

<<Type>>

TP̲Primitive

(from Topology primitive)

<<Type>>

TP̲Complex

(from Topoloicalcomplex)

Complex

1..*

1..*

+complex

+element

<<Type>>

GM̲Primitive

(from Geometric primitive)

<<Type>>

GM̲Complex

(from Geometric complex)

Complex

1..*

0..*

+complex

+element

1..*

1..*

+subComplex

+superComplex

/Contains

+topology

+geometry

Realization

0..1

0..*

<<Type>>

GM̲Object

(from Geometry root)

図D.24−幾何と位相との関係 

GMLスキーマ中の様々なクラスへの対応付けは,クラス階層の詳細を示すD.2.4.3及びD.2.4.4の中で説

background image

281 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

明する。 

“TP̲Object”は,“AbstractTopology”オブジェクト要素で表現する。“AbstractTopology”要素は,次に

示す付加的なプロパティを保持することができる。それは,任意選択要素“description”,0個以上の“name”

要素,任意選択の“identifier”要素及び必須の属性“gml:id”である。 

D.2.4.3 位相プリミティブ 

図D.25〜図D.28に示すUMLクラス図は,“位相根底”パッケージ(JIS X 7107:2005の図35〜図45参

照)のプロファイルを示す。 

<<Type>>

TP̲Object

(from Topology root)

<<Type>>

TP̲Primitive

<<Type>>

TP̲Complex

(from Topoloicalcomplex)

Complex

1..*

1..*

+complex

+element

0..1

0..*

+container

+isolated

IsolatedIn

<<Type>>

GM̲Primitive

(from Geometric primitive)

+topology

+geometry

Realization

0..1

0..*

−位相次元は幾何次元に一致する。
−基本的な幾何演算は保たれる。
−孤立した位相プリミティブは次元が2以上小さい。
−プリミティブはそれ自身の正のTP̲DirectedTopoとなる。

図D.25−位相プリミティブ 

“TP̲Primitive”は,“AbstractTopoPrimitive”オブジェクト要素で表現する。 

“geometry”役割は,インスタンス化可能な下位型でインスタンス化する。これは,別の関連先(次元

で制約される。)にある幾何型,つまり,“pointProperty”,“curveProperty”,“surfaceProperty”及び

“solidProperty”の制御を可能にする。 

“isolated”及び“container”役割は,“AbstractTopoPrimitive”の中にあるプロパティで表現する。 

background image

282 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

TP̲Primitive

Center

1

2

+proxy

+topo

<<Type>>

TP̲Node

<<Type>>

TP̲Edge

<<Type>>

TP̲Face

<<Type>>

TP̲Solid

<<Type>>

TP̲DirectedTopo

<<Type>>

TP̲DirectedNode

<<Type>>

TP̲DirectedEdge

<<Type>>

TP̲DirectedFace

<<Type>>

TP̲DirectedSolid

図D.26−位相プリミティブ 

<<Type>>

TP̲Primitive

<<Type>>

TP̲Node

<<Type>>

TP̲Edge

<<Type>>

TP̲Face

<<Type>>

TP̲Solid

<<Type>>

TP̲DirectedTopo

Center

1

2

+proxy

+topo

1

+topo

Center

2

+proxy

1

+topo

Center

2

+proxy

1

+topo

Center

2

+proxy

1

+topo

Center

2

+proxy

{primitive = self}
{orientation = "+"}

{orientation = "+" implies topo= self}

<<Type>>

TP̲DirectedNode

<<Type>>

TP̲DirectedEdge

<<Type>>

TP̲DirectedFace

<<Type>>

TP̲DirectedSolid

図D.27−有向位相プリミティブ 

“TP̲Node”は,GMLでは“Node”オブジェクト要素で表現する。 

“TP̲Edge”は,GMLでは“Edge”オブジェクト要素で表現する。 

“TP̲Face”は,GMLでは“Face”オブジェクト要素で表現する。 

background image

283 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

“TP̲Solid”は,GMLでは “TopoSolid”オブジェクト要素で表現する(“Solid”という名称は,既に

三次元幾何プリミティブのために使用されている。)。 

“TP̲DirectedTopo”は,GMLでは明示的に表現せず,インスタンス化可能な下位型としてだけ現れる。

注目すべき違いは,有向位相型が型としてモデル化されるにもかかわらず,GMLでは“orientation”属性

を伴うプロパティとして表現することである。 

“TP̲DirectedNode”は,GMLでは “directedNode”プロパティ要素で表現する。“topo”役割は,“Node”

オブジェクト要素によって直接表現する。 

“TP̲DirectedEdge”は,GMLでは “directedEdge”プロパティ要素で表現する。“topo”役割は,“Edge”

オブジェクト要素によって直接表現する。 

“TP̲DirectedFace”は,GMLでは “directedFace”プロパティ要素で表現する。“topo”役割は,“Face”

オブジェクト要素によって直接表現する。 

“TP̲DirectedSolid”は,GMLでは “directedTopoSolid”プロパティ要素で表現する。“topo”役割は,

“TopoSolid”オブジェクト要素によって直接表現する。 

<<Type>>

TP̲Node

1

+topo

Center

2

+proxy

<<Type>>

TP̲DirectedNode

<<Type>>

TP̲Edge

1

+topo

Boundary

2

+proxy

<<Type>>

TP̲DirectedEdge

0..*

+primitive

Center

2

+boundary

<<Type>>

TP̲Face

1

+topo

Center

2

+proxy

<<Type>>

TP̲DirectedFace

<<Type>>

TP̲Solid

1

+topo

Boundary

2

+proxy

<<Type>>

TP̲DirectedSolid

0..2

+primitive

Center

1..*

+boundary

Boundary

0..*

+primitive

2

+boundary

<<Type>>

TP̲Node

1

+topo

Center

2

+proxy

<<Type>>

TP̲DirectedNode

<<Type>>

TP̲Edge

1

+topo

2

+proxy

<<Type>>

TP̲DirectedEdge

1

Center

0..*
spoke

+hub

<<Type>>

TP̲Face

1

+topo

Center

2

+proxy

<<Type>>

TP̲DirectedFace

<<Type>>

TP̲Solid

1

+topo

2

+proxy

<<Type>>

TP̲DirectedSolid

+hub
1..*

Center

0..2
spoke

1..*
hub

0..*
+spoke
{CircularSequence}

CoBoundary

CoBoundary

CoBoundary

図D.28−境界及び双対境界関係 

“topo”役割との対応関係は上で示した。 

“spoke”役割は,GMLでは “directedEdge”,“directedFace”及び“directedTopoSolid”プロパティによ

って表現する。 

“boundary”役割は,GMLでは “directedNode”,“directedEdge”及び“directedFace”プロパティによ

って表現する。 

D.2.4.4 位相複体 

図D.29に示すUMLクラス図は,“位相複体”パッケージ(JIS X 7107:2005の図46参照)のプロファイ

ルを示す。 

background image

284 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

TP̲Object

(from Topology root)

<<Type>>

TP̲Complex

<<Type>>

TP̲Primitive

(from Topoloicalprimitive)

Complex

1..*

1..*

+complex

+element

1..*

1..*

+superComplex +subComplex

/Contains

−maximalComplexが示す複体は,この媒体を含む。
{superComplex->contains(maximalComplex)}
−極大複体はそれ自身にのみ包含される。
{(self = maximalComplex) implies (superComplex= {self})}
{isMaximal() implies (self = maximalComplex)}

+maximalComplex1

図D.29−位相複体 

“TP̲Complex”は,“TopoComplex”オブジェクト要素で表現する。 

“element”役割は,二つのプロパティ,つまり,通常の関連プロパティである“topoPrimitiveMember”

及び配列関連プロパティである“topoPrimitiveMembers”に対応する。 

“subComplex”及び“superComplex”役割は,同名の関連プロパティとして表現する。しかしながら,

GMLでは,多重度の最小値は“1”ではなく“0”である。このことによって,このプロパティがGMLイ

ンスタンス(これは派生関連ではないことに留意する。)の中で明示的に表現することを求められないこと

になる。 

“maximalComplex”役割は,GMLでは同名の関連プロパティとして表現する。 

D.2.4.5 適合性 

JIS X 7107のプロファイルの適合性を決定する規則は,JIS X 7107:2005の2.及び附属書Aに示す。JIS X 

7107の2.が定義している三つの基準に基づき,GML位相は,次の水準を採用する。 

データの複雑さ: 

位相複体 

幾何実現を伴う位相複体 

次元: 

 零次元,一次元,二次元,及び三次元オブジェクト 

機能の複雑さ: 

 データ型だけ 

結果として,関係するJIS X 7107の適合性箇条は,次のとおりとする。 

 A.3.1.1〜A.3.1.3 

 A.4.1.1〜A.4.1.3 

これらの適合性箇条が示す条件には合致している。 

TP̲Complex及びGM̲Complex間の関連“Realization”は,このプロファイルで明示的に示すことはして

いない。それは,位相複体の幾何実現は,位相プリミティブの幾何実現から派生できるからである。 

background image

285 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.5 JIS X 7108時間スキーマ 

D.2.5.1 概要 

GML時間スキーマは,JIS X 7108:2004の5.2〜5.4の実装を規定する。 

表D.5に示す変更がJIS X 7108のパッケージに対して行われている。 

表D.5−JIS X 7108のプロファイルの記述 

変更 

説明 

Beginning及びEnding関連は,TM̲Periodから
TM̲Instantへの単方向関連として実装する。 

双方向関連ポインタの維持は,静的なデータ符号化
では不必要と判断したため。 

TM̲PeriodからのBeginning及びEnding関連は,
TM̲InstantとのUML関連又はTM̲Position型の
UML属性の選択として実装する。 

識別子を伴うTM̲Instantが不要のとき,同じ情報を
より小さなサイズで符号化できるため。 

Termination及びInitiation関連は,TM̲Edgeから
TM̲Nodeへの単方向関連として実装する。 

双方向関連ポインタの維持は,静的なデータ符号化
では不必要と判断したため。 

Realization関連は,TM̲Instant及びTM̲Periodから
TM̲Node及びTM̲Edgeへの単方向関連として実装
する。 

双方向関連ポインタの維持は,静的なデータ符号化
では不必要と判断したため。 

Basis関連は,TM̲CalendarからTM̲CalendarEraへ
の単方向関連として実装する。 

双方向関連ポインタの維持は,静的なデータ符号化
では不必要と判断したため。 

TM̲OrdinalEraのbegin及びend属性は,役割名start
及びendを伴うTM̲Nodeとの関連に置き換える。 

歴史学及び地質学における実用性を考慮すると,順
序年代の端点は,正確には分からない位置と関連付
けられる。これは,間接的に位置を示すTM̲Node
の概念と適合する。 

TM̲CoordinateSystemのorigin属性は,TM̲Instant
とのUML関連又はTM̲Position型のUML属性の選
択として実装する。 

原点を外部のイベントとして示すことを可能にする
ため。 

TM̲CoordinateSystem の

interval

属性は,

TM̲IntervalLengthとして実装する。 

より精確かつ自由に尺度を示せるようにするため。 

注記 変更2は,XML Schema実装言語が規定する<choice>構造の有利さによる。これによって,同

じ情報を含みながら,標準的な符号化規則の機械的な応用に比べて,より自由かつコンパクト

に符号化できるようになる。 

JIS X 7108:2004の5.5に示す,地物間の時間関係を扱うクラスにおいて,地物継起だけは直接実装され

てきた。その他の関係に一致する部品は,GML応用スキーマの中で定義することができるが,ここでは示

さない。 

時間スキーマに含まれる様々なクラスのGMLスキーマへの対応は,クラス階層の詳細を示す次の細分

箇条(D.2.5.2〜D.2.5.10)の中で説明する。 

図D.30〜図D.34に示すUMLクラス図は,“時間オブジェクト”パッケージのプロファイルを示してい

る(JIS X 7108:2004の図2〜図6及び図11を参照)。 

background image

286 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.5.2 時間オブジェクト 

TM̲Object

1..1

TM̲Primitive

TM̲Complex

TM̲GeometricPrimitive

TM̲TopologicalPrimitive

TM̲TopologicalComplex

図D.30−JIS X 7108における時間オブジェクトの主な階層 

“TM̲Object”は,“AbstractTimeObject”オブジェクト要素で表現する。“AbstractTimeObject”要素は,

付加的なプロパティをもつことができるが,それは,任意選択の“description”要素,0個以上の“name”

要素,任意選択の“identifier”要素,及び必須の“gml:id”属性である。これらのプロパティは,

“AbstractTimeObject”に代替可能な全ての部品によって継承する。 

“TM̲Primitive”は,“AbstractTimePrimitive”オブジェクト要素で表現する。 

“TM̲GeometricPrimitive”は,“AbstractTimeGeometricPrimitive”オブジェクト要素で表現する。 

“TM̲TopologicalPrimitive”は,“AbstractTimeTopologyPrimitive”オブジェクト要素で表現する。 

“TM̲Complex”は,“AbstractTimeComplex”オブジェクト要素で表現する。 

“TM̲TopologicalComplex”は,“AbstractTimeTopologyComplex”オブジェクト要素で表現する。 

background image

287 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.5.3 具象時間幾何プリミティブ 

TM̲Primitive

1..1

TM̲GeometricPrimitive

TM̲Instant

TM̲Period

<<Interface>>

TM̲Separation

+ position : TM̲Position

<<Uses>>

+ length() : TM̲Duration

<<Interface>>

TM̲Order

+ relativePosition(other: TM̲Primitive) : TM̲RelativePosition

<<Uses>>

end

0..*

endedBy

1..1

begin

0..*

begunBy

Ending

Beginning

{self.begin.position<self.end.position}

図D.31−JIS X 7108における時間幾何オブジェクトのプロファイル 

“TM̲Primitive”は,“AbstractTimePrimitive”で表現する。“relativePosition(other:TM̲Primitive) ”操作の

結果を表現する付加的なプロパティ“relatedTime”を追加している。 

“TM̲GeometricPrimitive”は,“AbstractTimeGeometricPrimitive”オブジェクト要素で表現する。“length()”

操作の結果を表現する付加的なプロパティ“abstractTimeLength”を追加している。 

“TM̲Instant”は,“TimeInstant”オブジェクト要素で表現する。“position”属性は,“timePosition”プロ

パティで表現する。 

“TM̲Period”は,“TimePeriod”オブジェクト要素で表現する。“begin”及び“end”役割は,GMLにお

ける同じ名称の関連役割で表現する。これらの関連は,次に示す表現で代替する。つまり,“end”は,

“endPosition”をもつ選択ブロックの中にあり,“begin”は,“beginPosition”をもつ選択ブロックの中にあ

る。それぞれの場合のうちの後者は,14.2.2.5の中で示す単純な内容をもつ。 

background image

288 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.5.4 持続時間 

<<DataType>>

TM̲Duration

<<DataType>>

TM̲PeriodDuration

<<DataType>>

TM̲IntervalLength

+ unit : CharacterString
+ radix : Integer
+ factor : Integer
+ value : Integer

+ designator : CharacterString= P
+ years [0..1] : CharacterString
+ months [0..1] : CharacterString
+ days [0..1] : CaracterString
+ timeIndicator[0..1] : CharacterString= T
+ hours [0..1] : CharacterString
+ minutes [0..1] : CharacterString
+ seconds [0..1] : CharacterString

図D.32−JIS X 7108における持続時間を表現するデータ型 

GMLプロパティ要素“abstractTimeLength”は,“timeInterval”又は“duration”要素のいずれかへの代替

を可能にする抽象要素とする。これらは,次に示す,図D.32のデータ型を実装するXML Schemaの型を

もつ。 

“TM̲IntervalLength”は,XML Schemaの中で既に定義している型“decimal”にXML属性である“unit”, 

“radix”及び“factor”を付加することによって作る単純内容型を使って実装する。 

“TM̲PeriodDuration”は,XML Schemaの中で既に定義している型“duration”(14.2.2.8参照)によって

実装する。XML Schema型“duration”は,JIS X 0301に示す文字形式によるリテラル値を示し,別に

TM̲PeriodDurationクラスの属性値の並びを実装する必要性を取り除く。 

background image

289 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.5.5 時間位置 

<<DataType>>

TM̲OrdinalPosition

TM̲TemporalPosition

+ indeterminatePosition[0..1] : TM̲IntegerminateValue

<<DataType>>

TM̲Coordinate

+ coordinateValue: Number

<<DataType>>

TM̲CalDate

+ calDate: Sequence<Integer>
+ calendarEraName: CharacterString

<<DataType>>
TM̲ClockTime

+ clkTime: Sequence<Number>

TM̲ReferenceSystem

1..1

frame

0..*

position

<<DataType>>

JulianDate

TM̲OrdinalEra

<<DataType>>

TM̲DateAndTime

1

position

1

value

<<Enumeration>>

TM̲IndeterminateValue

+ unknown : Code
+ now : Code
+ before : Code
+ after : Code

<<Union>>

TM̲Position

+ anyOther: TM̲TemporalPosition
+ date8601 : Date
+ time8601 : Time
+ dateTime8601 : DateTime

図D.33−JIS X 7108における時間位置 

TM̲Position型のUML属性で表現する部品は,XML Schema型gml:TimePositionTypeをもつGMLプロパ

ティとして表現する。これは,単純内容型であり,その派生の詳細は,14.2.2.5に示す。これは,次に示す,

図D.33にある要件を表現する。 

単一の数で表現する時間位置を与える“TM̲Coordinate”は,XML Schema型“decimal”で実装する。 

TM̲OrdinalEraと関連する“TM̲OrdinalPosition”は,XML Schema型“anyURI”によって実装し,関連

は参照で実装するという,GMLで使用しているパターンに従う。 

暦日を示す数の列及び年代の名称からなる属性をもつ“TM̲CalDate”には,XML属性“calendarEraName”

が追加され,XML Schema型“date”,“gYear”,“gYearMonth”の共用体(選択)によってgml:CalDateの中

で実装し,その文字表現はJIS X 0301に従う。 

日ごとに繰り返す瞬間を記述する数の列をもつ“TM̲ClockTime”は,XML Schema型“time”で実装し,

その文字表現はJIS X 0301に従う。 

“TM̲DateAndTime”は,XML Schema型“dateTime”で実装し,その文字表現はJIS X 0301に従う。 

background image

290 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

“TM̲Position”の中にある“date8601”,“time8601”及び“dateTime8601”は,XML Schema型“date”,

“time” 及び“dateTime”で実装する。 “indeterminatePosition”は,既に示したように,同じ名称のXML

属性を使って表現する。 

役割“frame”は,同じ名称のXML属性を使って実装し,その値は“anyURI”をとり,関連は参照によ

って実装するというGMLで使われるパターンに従う。 

D.2.5.6 時間位相 

1..1

TM̲Primitive

TM̲TopologicalPrimitive

TM̲TopologicalComplex

1..*

complex

primitive

Complex

TM̲Edge

TM̲Node

TM̲Period

TM̲Instant

0..1

topology

0..1

geometry

Realization

0..1

topology

0..1

geometry

Realization

0..*

0..*

1..1

1..1

Termination

Initiation

previousEdge

nextEdge

start

end

  

図D.34−JIS X 7108で採用している時間位相のプロファイル 

“TM̲TopologicalComplex”は,“AbstractTimeTopologyComplex”オブジェクト要素で表現する。

“primitive”役割は,同じ名称のプロパティ要素で実装する。 

“TM̲TopologicalPrimitive”は,“AbstractTimeTopologyPrimitive”オブジェクト要素で表現する。“complex”

役割は任意選択とするが,同じ名称のプロパティ要素によって,参照として実装する。 

“TM̲Node”は,“TimeNode”オブジェクト要素で表現する。“start”及び“end”役割は,同じ名称の

プロパティ要素で実装する。“geometry”役割は,“position”プロパティで実装する。 

“TM̲Edge”は,“TimeEdge”オブジェクト要素で表現する。“start”及び“end”役割は,同じ名称のプ

ロパティ要素で実装する。“geometry”役割は,“extent”プロパティで実装する。 

background image

291 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.5.7 時間参照系 

図D.35〜図D.38に示すUMLクラス図は,“時間参照系”パッケージのプロファイル(JIS X 7108:2004

の図7〜図10を参照)を示す。 

TM̲OrdinalReferenceSystem

TM̲ReferenceSystem

+ name : RS̲Identifier
+ domainOfValidity[0..*] : EX̲Extent

TM̲CoordinateSystem

TM̲Calendar

TM̲Clock

図D.35−JIS X 7108における時間参照系の階層 

“TM̲ReferenceSystem”は,“AbstractTimeReferenceSystem”オブジェクト要素で実装する。

“AbstractTimeReferenceSystem”要素は,追加的なプロパティをもってよい。追加的なプロパティとは,任

意選択の“description”要素,一つ以上の“name”要素,任意選択の“identifier”要素,及び必須の“gml:id”

属性である。“domainOfValidity”属性は,同じ名前のXML属性を用いて実装する。“domainOfValidity”属

性は,EX̲Extent(JIS X 7115参照)の“description”属性を実装するXML Schemaの型“string”をもつ。 

これらのプロパティは,AbstractTimeReferenceSystemに対して代替可能となる全ての構成部品が継承す

る。 

D.2.5.8 暦及び時計 

TM̲CalendarEra

+ name : CharacterString
+ referenceEvent: CharacterString
+ referenceDate: TM̲CalDate
+ julianReference: JulianDate
+ epochOfUse: TM̲Period

TM̲Calendar

TM̲Clock

+ referenceEvent: CharacterString
+ referenceDate: TM̲ClockTime
+utcReference: TM̲ClockTime

Basis

1..*

1..*

datingSystem

referenceFrame

Resolution

0..*

0..1

dataBasis

timeBasis

図D.36−JIS X 7108における暦及び時計のためのモデル 

background image

292 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

“TM̲Calendar”は,“TimeCalendar”オブジェクト要素で実装する。“referenceFrame”役割は,同じ名

前のプロパティ要素として実装する。 

“TM̲CalendarEra”は,“TimeCalendarEra”オブジェクト要素で実装する。“referenceEvent”, 

“referenceDate”, “julianReference”及び“epochOfUse”属性は,同じ名前のプロパティ要素として実装

する。 

“TM̲Clock”は,“TimeClock”オブジェクト要素で実装する。“referenceEvent”,“referenceTime”及び

“utcReference”属性は,同じ名前のプロパティ要素として実装する。“dateBasis”役割は,同じ名前のプ

ロパティ要素で実装する。 

D.2.5.9 時間参照系 

TM̲CoordinateSystem

+ origin : DateTime
+ interval : CharacterString

図D.37−JIS X 7108における時間参照系のためのモデル 

“TM̲CoordinateSystem”は,“TimeCoordinateSystem”オブジェクト要素で実装する。“origin”属性は,

選択型の“origin”プロパティ要素で実装する。つまり,TimeInstantへの参照又は直接的に位置を符号化す

る“originPosition”である。“interval”属性は,同じ名前のプロパティ要素として実装し,ISO/IEC 11404

に従うTimeIntervalLengthTypeを用いる。 

D.2.5.10 順序時間参照系 

TM̲OrdinalEra

+ name : CharacterString
+ begin [0..1] : DateTime
+ end [0..1] : DateTime

TM̲OrdinalReferenceSystem

Structure

1..1

1..*

system

component

Composition

0..*

1..1

group

member

TM̲Edge

図D.38−JIS X 7108における順序時間参照系のためのモデル 

“TM̲OrdinalReferenceSystem”は,“TimeOrdinalReferenceSystem”オブジェクト要素で実装する。

“component”役割は,同じ名前のプロパティ要素として実装する。 

“TM̲OrdinalEra”は,“TimeOrdinalEra”オブジェクト要素で実装する。“name”,“begin”及び“end”

属性は,TimeEdgeから継承する“name”,“start”及び“end”プロパティで実装する。“member”役割は,

background image

293 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

同じ名前のプロパティ要素で実装する。“group”役割は,同じ名前のプロパティ要素による参照として実

装する。任意選択の“description”及び必須の“gml:id”プロパティもまた,TimeEdgeから継承する。 

D.2.5.11 適合性 

JIS X 7108:2004に伴うプロファイルの適合性を決定する規則は,JIS X 7108の2.及び附属書Aで記述す

る。JIS X 7108の2.で定義される基準に関して,データ転送のための応用スキーマとしてのGMLは,A.1

に適合する。この適合性の箇条の条件は,上で示すプロファイルが対応する。 

D.2.6 応用スキーマのためのJIS X 7109の規則 

GMLは,JIS X 7109が定義する一般地物モデルの部分集合を実装する。 

加えて,GMLはそれを拡張する。一般地物モデルは,地物型だけを扱っているが,(UML又はGMLに

おける)応用スキーマは,付加的な情報の型をしばしば扱うことがある。例えば,データ型,列挙型,共

用体型などであり,これらは,一般地物モデルで明確には規定されない。それゆえ,JIS X 7109では,一

般地物モデルから応用スキーマへの片方向の写像だけが可能であることを示している。 

UMLの場合のように,一般地物モデルからXML Schemaで記述するGML地物モデルへの写像は通例,

直接的である。 

表D.6に示す変更が,JIS X 7109の一般地物モデルに対して行われている。 

表D.6−JIS X 7109の実装の記述 

変更 

説明 

GF̲FeatureOperationを削除。 

操作はサポートしない。 

GF̲InheritanceRelation/supertypeの多重度を
“1”に変更。 

単一の継承だけを使用可能とし,XML Schemaの代替
グループの構造に写像する。 

一般地物モデルのメタクラスに対する幾つかの追加的なコメントを表D.7に示す。 

表D.7−JIS X 7109の実装における備考 

変更 

説明 

GF̲AssociationType 

一般的に,関連に対する関連役割の構成は,GML応
用スキーマで直接的に表現しない。 
二つの関連役割の関係性をGML応用スキーマで明確
に表現する場合,役割は,次の方法で相互参照する。 
− xsd:stringを型とするappinfo注釈要素

gml:targetElementの中にある,対象となるオブジ
ェクトクラスの適当な要素名を表す。 

− xsd:stringを型とするappinfo注釈要素

gml:reversePropertyの中にある,逆方向の関連役
割の適当なプロパティ名を表す。 

− xsd:stringを型とするappinfo注釈要素

gml:associationNameの中にある,関連の名前を任
意選択で表す。 

GF̲Constraint 

制約は,schematron制約に写像してもよく,又は文書
の注釈にテキストとして表現するだけでもよい。 

UML及びGMLによる応用スキーマ間の関係は,JIS X 7109及びGML応用スキーマの間の写像を扱う

附属書E及び附属書Fの一部として示す。 

294 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.7 ISO 19111 座標による空間参照系 

D.2.7.1 概要 

GMLは,ISO 19111の全ての概念モデルを実装する。写像は一般に,概念モデルからGMLスキーマへ

の直接的な写像である。より複雑な写像を伴うスキーマ構成部品に限り,この細分箇条で詳細に説明する。 

GMLオブジェクトが座標参照系に関連するときはいつも,GMLオブジェクトは,gml:AbstractCRS要素

を指す属性(srsName)で実装する。 

座標参照系(CRS)に関して重複する情報をもつ同じ要素の内容モデルには,付加的な属性を定義する。

srsDimensionは,座標参照系定義で記載する座標参照系の次元とする。axisLabels及びuomLabels属性は,

座標参照系の異なる軸に伴うラベル及び計測単位の一覧とする。 

D.2.7.2 識別オブジェクトパッケージ 

GMLで実装するために,IO̲IdentifiedObjectBase及びSC̲CRSクラスは,IO̲IdentifiedObjectクラスに統

合し,IO̲IdentifiedObjectクラスと同様のXMLによる符号化に対応する。SC̲CRSの“name”属性は,

IO̲IdentifiedObjectの“name”属性に写像することに留意する。 

IO̲IdentifiedObject型は,gml:IdentifiedObject要素で実装し,その内容モデルは,gml:DefinitionTypeから,

拡張によって派生する。 

RS̲Identifierは,gml:CodeTypeによって実装する。これを使用するときは,“version [0..1]”属性を

gml:CodeTypeのcodeSpace属性で表現しなければならない。 

例 国際石油・ガス生産者協会のEPSG データ集合(EPSG)の6.3版における座標参照系“4326”は,

urn:x-ogc名前空間で定義するURNを用いて次のとおり表す。 

 <name codeSpace="urn:x-ogc:def:crs:EPSG:6.3: ">4326</name> 

任意選択のgml:descriptionプロパティを使用することで,各CRSオブジェクトに関して符号化のための

追加的な情報を使用可能とする。 

“name”属性は,gml:identifierプロパティで実装する。 

“identifier”属性は,gml:nameプロパティで実装する。 

“alias”属性もまた,gml:nameプロパティで実装する。 

注記 逆方向の写像において識別子は,RS̲Identifierに写像するcodeSpaceをもつgml:nameとなり,

他は全て別名となる。 

D.2.7.3 座標参照系パッケージ 

SC̲CRSクラスは,gml:AbstractCRSで実装する。 

CS̲CoordinateSystem クラスの具象の下位クラスへの関連役割 である“…CS”への“coordinateSystem”

は, gml:coordinateSystem/gml:…CS で実装する。ここで,だ(楕)円体は,特定のCS型の名称に代替す

る。 

CD̲Datumクラスの具象の下位クラスへの関連役割“datum”は,gml:Datumによって実装する。ここで,

だ(楕)円体は,特定の原子の型の名称に代替する。 

注記 この名称の変更は,大域的な名称を使用するために必要となる。そうでない場合は,対象とす

るクラスがGMLスキーマにおいて特定することができないであろう。 

SC̲CompoundCRSクラスからSC̲SingleCRSクラスへの関連役割“componentReferenceSystem”は,

gml:componentReferenceSystemプロパティで実装する。 

SC̲ProjectedCRSクラスからSC̲GeodeticCRS クラスへの関連“baseCRS”は,gml:baseGeodeticCRSプ

ロパティで実装する。 

295 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.2.7.4 座標系パッケージ 

D.2.7.2及びD.2.7.3で示す実装の規則のほか,写像は直接的である。ただし,CS̲CoordinateSystemAxis

の“axisUnitID”属性は,XML属性uomによって実装する。 

D.2.7.5 原子パッケージ 

D.2.7.2及びD.2.7.3で規定する実装の規則のほか,写像は直接的である。ただし,CD̲Datumにおける

プロパティの順序は,gml:AbstractDatumへの写像において変更している。 

D.2.7.6 座標演算パッケージ 

CC̲Conversion及びCC̲Transformationクラスは,分離された抽象及び具象の要素として,二つの段階で

実装する。 

CC̲SingleOperationクラスにおけるparameterValue及びmethod関連役割は,具象のgml:Conversion及び

gml:Transformation要素において実装する。これは,XML Schemaの制限を用いる必要性を軽減するためで

ある。 

CC̲CoordinateOperationにおけるプロパティの順序は,gml:AbstractCoordinateOperationへの写像において

変更している。 

CC̲ConcatenatedOperationクラスからCC̲CoordinateOperationクラスへの写像において,

“coordOperation”関連役割は,gml:coordOperationプロパティで実装する。 

CC̲GeneralOperationParameter又はCC̲OperationParameterクラスへの“parameter”関連役割は,対象と

するクラスに依存するgml:generalOperationParameter又はgml:operationParameterプロパティで実装する。 

D.2.8 JIS X 7112 地理識別子による空間参照 

GMLは,地名辞典に関する既定義のスキーマに対応していない。しかしながら,地理識別子による空間

参照のための既定義のプロパティには対応している。 

− <gml:locationName>プロパティは,場所を記述するテキストを含む。 

− <gml:locationReference>プロパティは,場所を記述するテキストを参照する。 

D.2.9 JIS X 7115 メタデータ 

GMLは,メタデータに関する情報モデルを提供しない。代わりに,メタデータを含むか又は参照するメ

カニズムを全てのオブジェクト要素に与える。 

注記 7.2.6で示すように, JIS X 7115の概念モデルに従うメタデータをGML文書で符号化する場合,

メタデータの情報を符号化するために,ISO/TS 19139で規定するXMLスキーマを用いる。 

D.2.10 ISO 19118 符号化 

E.2で記述する符号化規則は,ISO 19118 レベル1に適合している。 

D.2.11 ISO 19123 被覆 

この附属書で定義するGMLプロファイルのUMLモデルは,ISO 19123で定義する抽象型の概念モデル

を記述する。表D.8は,ISO 19123との比較を容易にするため,GML被覆オブジェクト及びプロパティ名

称をISO 19123の対応するクラス名称に写像する。 

background image

296 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表D.8−ISO 19123の実装の記述 

ISO 19123の構成 

GMLの構成 

CV̲Coverage 

AbstractCoverage 
(AbstractCoverageType) 

domainExtent(属性) 

boundedBy(プロパティ) 

domainElement(役割名) 

domainSet(プロパティ) 

rangeElement(役割名) 

rangeSet(プロパティ) 

AttributeValues 

ValueArray又はAbstractScalarValueList 

CoverageFunction(関連) 

coverageFunction(プロパティ) 

CV̲GridValuesMatrix 

GridFunction 

sequencingRule(属性) 

sequenceRule(プロパティ) 

CV̲SequenceRule 

SequenceRuleType 

CV̲SequenceType 

SequenceRuleNames 

scanDirection(属性) 

order(属性) 

startSequence(属性) 

startPoint(プロパティ) 

CV̲Grid 

Grid 

CV̲GridEnvelope 

GridEnvelope 

low(属性) 

low(プロパティ) 

high(属性) 

high(プロパティ) 

CV̲RectifiedGrid 

RectifiedGrid 

origin(属性) 

origin(プロパティ) 

offsetVectors(属性) 

offsetVector(s)(の集合)(プロパティ) 

CV̲DiscretePointCoverage 

MultiPointCoverage 

CV̲DiscreteCurveCoverage 

MultiCurveCoverage 

CV̲DiscreteSurfaceCoverage 

MultiSurfaceCoverage 

CV̲DiscreteGridPointCoverage 

GridCoverage又はRectifiedGridCoverage 

表D.9に示す追加的な変更点が,ISO 19123の被覆パッケージに対して行われている。 

表D.9−ISO 19123のプロファイルの説明 

変更 

理由 

CV̲ContinuousCoverageの全ての下位クラスを
削除。 

GMLでは現在,サポートしていない。 

座標参照系の関連をCV̲Coverageから削除。 

定義域において,幾何オブジェクト又は時間オブ
ジェクトのsrsName(又はframe)属性に置き換え
る。GML被覆パッケージは,定義域のオブジェク
トが異なる座標参照系に存在することを許す。 

CV̲CommonPointRuleを削除。 

GMLでは現在,サポートしていない。 

AttributeValuesを削除。 

GMLにある類似した要素であるValueArray又は
AbstractScalarValueListを選択し置き換える。 

CV̲GeometryValuePairを削除。 

GML被覆は,定義域と値域との関係記述の観点だ
けで符号化する。 

CV̲GridValuesMatrixを削除。 

順序規則などを含むグリッド点及び値域の写像
は,Gridから継承されないオブジェクト
(GridFunction)に含まれている。 

CV̲GridCell 

GMLでは現在,サポートしていない。 

background image

297 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

図D.39のUMLクラス図は,“Coverage root”パッケージ(ISO 19123:2005の図2参照)のプロファイル

を示す。 

AbstractCoverage

AbstractDiscreteCoverage

AbstractContinuousCoverage

+ domainSet: DomainSet
+ rangeSet: RangeSet

<<Union>>

RangeSet

+ sequence<ValueArray>
+ sequence<AbstractScalarValueList>
+ DataBlock
+ File

<<Union>>
DomainSet

+ GM̲Object
+ TM̲Object

図D.39−被覆の概要 

図D.40のUMLクラス図は,離散被覆(discrete coverage)(ISO 19123:2005の図3〜図5参照)を示す。 

AbstractCoverage

AbstractDiscreteCoverage

AbstractContinuousCoverage

+ domainSet: DomainSet
+ rangeSet: RangeSet

<<Union>>

CoverageFunction

+ MappingRule
+ GridFunction

+ coverageFunction[0..1] : CoverageFunction

MultiPointCoverage

MultiCurveCoverage

MultiSurfaceCoverage

MultiSolidCoverage

GridCoverage

RectifiedGridCoverage

図D.40−離散被覆 

ISO 19123のプロファイルの適合性を決定する規則は,ISO 19123:2005の箇条2及び附属書Aで示す。 

次の適合性の箇条の条件を適用する。 

− A.1.1 単純被覆インタフェース 

− A.1.2 離散被覆インタフェース 

− A.1.4 四辺形グリッド被覆インタフェース 

298 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

派生属性は操作とみなすとともに,派生属性はGMLインスタンスを扱う応用システムによってデータ

から派生すると仮定する。 

D.3 JIS X 7100シリーズ(ISO 19100シリーズ)の規格におけるプロファイルの拡張 

D.3.1 概要 

D.3.2〜D.3.17は,D.2で定義するJIS X 7100シリーズ(ISO 19100シリーズ)のプロファイルの範囲外

であるGMLの追加的な部分を定義する。UMLは,ISO/TS 19103に従って追加的な要素を記述するための

概念スキーマ言語として用いられる。追加的なクラスの意味規則の詳細については,箇条7〜箇条9を参

照。 

GMLスキーマ構成部品は,箇条7〜箇条19の構造に基づき,意味的にグループ化し,各グループのパ

ッケージを作る。D.2では記載しない必須の追加的なクラスは,対応するパッケージで定義する。パッケ

ージは,“GML”パッケージの一部とする。 

D.3.2 “basicTypes”パッケージ 

ISO/TS 19103における型に加え,8.2では,他のGMLスキーマ文書が使用し必要とする多くの追加的な

型を定義する。 

これらの追加の大部分は,空情報(nilReason属性)に関する情報を利用可能としようとする結果である。

それは,使用者の要求に基づきGMLスキーマに加えられ,それゆえ,概念は一般的な使用を考慮した(図

D.41及び図D.42参照)。 

リスト型は,GMLスキーマを単純に記述するのに便利な型である。 

background image

299 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<CodeList>>

NilReasonEnumeration

+ inapplicable
+ missing
+ template
+ unknown
+ withheld

<<Union>>

NilReason

+ NilReasonEnumeration
+ URI

<<Enumeration>>

Sign

+ "+"
+ "-"

<<Union>>

booleanOrNilReason

+ value : Boolean
+ nilReason: NilReason

<<Union>>

StringOrNilReason

+ value : CharacterString
+ nilReason: NilReason

<<Union>>

NameOrNilReason

+ value : CharacterString
+ nilReason: NilReason

文字列の値は,xsd:Name型によって
暗黙に定義されたパターンに制限される。

<<Union>>

doubleOrNilReason

+ value : Real
+ nilReason: NilReason

<<Union>>

integerOrNilReason

+ value : Integer
+ nilReason: NilReason

<<Type>>

CharacterString

(from ISO/TS 19103)

<<Type>>

Coordinates

+ decimal [0..1] : CharacterString= ","
+ cs[0..1] : CharacterString= ", "
+ ts[0..1] : CharacterString= "&#x20;"

<<Type>>

URI

図D.41−単純型 

background image

300 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

booleanList

+ list : sequence<Boolean>

<<Type>>
integerList

+ list : sequence<Integer>

<<Type>>
doubleList

+ list : sequence<Real>

<<Type>>

MeasureList

+ uom: UnitOfMeasure

<<Type>>

booleanOrNilReasonList

+ list : sequence<booleanOrNilReason>

<<Type>>

integerOrNilReasonList

+ list : sequence<integerOrNilReason>

<<Type>>

doubleOrNilReasonList

+ list : sequence<doubleOrNilReason>

<<Type>>

MeasureOrNilReasonList

+ uom: UnitOfMeasure

<<Type>>

NameList

+ list : sequence<GenericName>

<<Type>>

NameOrNilReasonList

+ list : sequence<NameOrNilReason>

<<Type>>

CodeOrNilReasonList

+ codeSpace[0..1] : URI

<<Type>>

CodeList

+ codeSpace[0..1] : URI

<<Type>>

QNameList

+ list : sequence<ScopedName>

<<Type>>

NCNameList

+ list : sequence<LocalName>

図D.42−リスト 

D.3.3 “gmlBase”パッケージ 

ISO/TS 19103における型に加え,概念スキーマからXMLスキーマに実装するときの写像の部分のほか,

7.2では,他のGMLスキーマ文書によって使用される幾つかの追加的な型を定義する。 

gml:AbstractObject,gml:AbstractGML 及びgml:AbstractFeature(D.3.4参照)は,応用スキーマにおいて

使用可能な明確な一般概念をもつ。例えば,プロパティがどのような特徴の値をもってもよい場合に,こ

れが必要であり,役に立つ(図D.43及び図D.44参照)。 

background image

301 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

Any

(from ISO/TS 19103)

<<Type>>

AbstractGML

+ description [0..1] : CharacterString
+ descriptionReference[0..1] : CharacterString
+ name [0..*] : GenericName
+ Identifier [0..1] : ScopedName

<<Type>>

AbstractObject

図D.43−基本型 

<<Enumeration>>

AggregationType

+ set
+ bag
+ sequence
+ array
+ record
+ table

図D.44−集まりの集成型 

D.3.4 “feature”パッケージ 

この細分箇条は,箇条9で用いる追加的な型を規定する。その型は,地物型(feature type)の表現を明

確にし,また,共通で既定の任意選択のプロパティ要素,つまり,名前,識別子,説明及び境界包被を明

確にする(図D.45参照)。 

background image

302 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

AbstractGML

(from gmlBase)

+ description [0..1] : CharacterString
+ descriptionReference[0..1] : CharacterString
+ name [0..*] : GenericName
+ Identifier [0..1] : ScopedName

<<Type>>

AbstractObject

(from gmlBase)

<<FeatureType>>

AbstractFeature

+ boundedBy[0..1] : GM̲Envelope

<<MetaClass>>

GF̲FeatureType

(from ISo19109)

<<DataType>>

GM̲Envelope

(from ISO 19107)

<<DataType>>

EnvelopeWithTimePeriod

+ frame : TM̲ReferenceSystem= "ISO-8601"
+ beginPosition: TM̲Position
+ endPosition: TM̲Position

図D.45−地物 

D.3.5 “geometryBasic0d1d”パッケージ 

この細分箇条では,10.3及び10.4で使用する追加型について規定する。 

<<Type>>

GM̲Curve

(from ISO 19107)

<<Type>>
LineString

{segment->size=1 and
segment->forAll(ocllKindOf(GM̲LineString))}

図D.46−単一のGM̲LineString曲線分からなるGM̲Curve 

background image

303 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GM̲Curveに追加する下位型は,GMLで加えたものである。“LineString”は,単一のGM̲LineStringで

構成される特別な曲線である。“LineString”オブジェクト要素のXML表現は,全ての曲線分を結合して一

つの線分とし,制御点は“LineString”の直接のプロパティとして表現する(図D.46参照)。 

上で規定した“LineString”型は,実用上典型的な表現法なので,便利な型として追加した。 

D.3.6 “geometryBasic2d”パッケージ 

この細分箇条では,10.4.5で使用する追加型を規定する。 

<<Type>>

GM̲Surface

(from ISO 19107)

<<Type>>

Polygon

{patch->size=1 and
patch->forAll(ocllKindOf(GM̲Polygon))}

<<Type>>

GM̲Ring

(from ISO 19107)

<<Type>>

LinearRing

{generator->size=1 and
generator->forAll(ocllKindOf(LineString))}

図D.47−単一のGM̲Polygon曲面分からなるGM̲Surface 

GM̲Surfaceに追加する下位型は,GMLで加えたものである。“Polygon”は,単一のGM̲Polygon曲面

分からなる特別な曲面である。単一の曲面分だけ存在するため,“Polygon”オブジェクト要素のXML表

現は,曲面分のレベルを省略し,曲面分の外部及び内部境界プロパティを“Polygon”の直接プロパティと

して表現する。 

同様にして,“LinearRing”は,単純な輪(単一の曲線分で表現されるGM̲Ring)となる。 

上で規定した“Polygon”及び“LinearRing”型は,実用上典型的な表現法なので,便利な型として追加

した(図D.47参照)。 

D.3.7 “geometryPrimitive”パッケージ 

この細分箇条では,10.5.10で使用する追加型を規定する。 

background image

304 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Abstract>>

GM̲CurveSegment

(from Geographic primitive)

+interpolation : GM̲CurveInterpolation= "linear"
+numDerivativesAtStart[0..1] : Integer = 0
+numDerivativesAtEnd[0..1] : Integer = 0
+numDerivativeinterior[0..1] : Integer = 0

<<DataType>>

ArcByCenterPoint

+ controlPoint: GM̲PointArray
+ radius : Length
+ startAngle[0..1] : Angle
+ endAngle[0..1] : Angle

<<DataType>>

CircleByCenterPoint

{interpolation = "circularArcCenterPointWithRadius"

<<Abstract>>

GM̲SurfacePatch

(from Geographic primitive)

+ interpolation : GM̲SurfaceInterpolation= "planar"
+ numDerivativesOnBoundary[0..1] : Integer = 0 

Rectangle

+ boundary : GM̲SurfaceBoundary

{boundary.interior->isEmptyand
boundary.exterior.ocllsKindOf(LinearRing)}

図D.48−追加曲線分及び曲面分 

曲線分“ArcByCenterPoint”及び“CircleByCenterPoint”は,曲面分“Rectangle”と同様に,幾つかの応

用分野で円又は弧の表現として共通に使用されるため,GMLで規定した(図D.48参照)。 

D.3.8 “geometryAggregate”パッケージ 

この細分箇条では,11.3で使用する追加型を規定する。 

<<Type>>

GM̲Aggregate

(from Geometric aggregates)

MultiGeometry

図D.49−追加幾何集成 

GMLでは,単一次元の要素に制限しないインスタンス化可能な幾何集成である“MultiGeometry”を定

義する。この型は,幾つかの応用スキーマで使用される幾何オブジェクトの集まりなどのために追加して

おり,一般的に有用な概念だとみられている(図D.49参照)。 

D.3.9 “coordinateOperation”,“coordinateReferenceSystem”,“coordinateSystems”,“dataQuality”,

“datums”及び“referenceSystem”パッケージ 

background image

305 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.3.9.1 概要 

D.3.9は,時間原子及び時間座標系の型とともに,付加的な座標参照系の下位型として,時間参照系を規

定する。 

これらの型(gml:TemporalCRS,gml:TimeCS及びgml:TemporalDatum)を実装するGMLオブジェクトへ

の写像は直接的であり,D.2.7で示す規則に従う。 

D.3.9.2 “coordinateReferenceSystem”パッケージのUMLスキーマ  

図D.50は,時間座標参照系(temporal CRS)に関係するcoordinateReferenceSystemパッケージのUML

クラス図である(表D.10参照)。 

<<Type>>

SC̲SingleCRS

(from ISO 19111)

<<Type>>

TemporalCRS

(from ccordinateReferenceSystems)

図D.50−TemporalCRS 

表D.10−TemporalCRSクラスの要素定義 

説明 

時間の記録のための1D座標参照系 

ステレオタイプ 

(なし) 

派生元 

SC̲SingleCRS 

関連役割 

TemporalDatumへのdatum [1] 
CS̲TimeCSへのcoordinateSystem[1] 
(SC̲SingleCRSから継承する関連) 

パブリック属性 

IO̲IdentifiedObjectBase,RS̲ReferenceSystem及びSC̲CRSから継承する六つの
属性 

D.3.9.3 “coordinateSystems”パッケージのUMLスキーマ 

時間座標系(time CS)は,一つの時間軸をもつ一次元の座標系であり,ある点の時間位置を,指定され

た時間原点から指定された時間単位で記述するために用いる。 

図D.51は,時間座標系に関係するcoordinateSystemsパッケージのUMLクラス図である。SC̲SingleCRS

及びCS̲CoordinateSystemの関連についての制限は,図D.52のUMLクラス図で示す。 

座標参照系の下位型の間の関連には制限がある。座標系の下位型を図D.52のUMLクラス図に示す(表

D.11及び表D.12参照)。 

background image

306 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

CS̲CoordinateSystem

(from ISO 19111)

<<Type>>

TimeCS

<<CodeListe>>

CS̲AxisDirection

+ future
+ past

図D.51−TimeCS 

<<Type>>

SC̲SingleCRS

(from ISO 19111)

<<Type>>

TemporalCRS

(from ccordinateReferenceSystems)

<<Type>>

CS̲CoordinateSystem

(from ISO 19111)

<<Type>>

TimeCS

0..*

+coordinateSystem

1

+referenceSystem

図D.52−TemporalCRSとTimeCSとの関連 

表D.11−TimeCSクラスの要素定義 

説明 

時間軸をもつ一次元の座標系。特定の時間原点から特定の時間単位によって,ある地点の
時間位置を記述するために用いる。TimeCSは,一つの軸と関連をもたなければならない。 

ステレオタイプ 

(なし) 

派生元 

CS̲CoordinateSystem 

関連役割 

TemporalCRSからのcoordinateSystem [1] 
(CS̲CoordinateSystemから継承する関連) 

パブリック属性 

IO̲IdentifiedObject及びIO̲IdentifiedObjectBaseから継承する四つの属性 

表D.12−CS̲AxisDirectionクラスの要素定義 

説明 

座標系の軸に対して,座標値が正に増加する方向 

ステレオタイプ 

CodeList 

派生元 

(なし) 

関連役割 

(なし) 

使用クラス 

CS̲CoordinateSystemAxis 

パブリック属性 

− 

属性名 

UML識別子 

データ型 

要求度 

最大出現

回数 

説明 

future 

Future 

CharacterString 

軸の正方向は,未来に向か
わなければならない。 

past 

Past 

CharacterString 

軸の正方向は,過去に向か
わなければならない。 

条件 列挙した属性のうち,ただ一つだけしか使用できない。 

background image

307 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.3.9.4 “datum”パッケージのUMLスキーマ 

図D.53は,時間原子(temporal datum)と関係するdatumsパッケージのUMLクラス図である。

SC̲SingleCRSとCD̲Datumとの関連の制限を,図D.54のUMLクラス図に示す(表D.13参照)。 

<<Type>>

TemporalDatum

+ anchorDefinition[0..0] : CharacterString
+ realizationEpoch[0..0] : Date
+ origin : DateTime

<<Type>>

CD̲Datum

(from ISO 19111)

図D.53−TemporalDatum 

<<Type>>

SC̲SingleCRS

(from ISO 19111)

<<Type>>

TemporalCRS

(from ccordinateReferenceSystems)

0..*

+datum

1

+referenceSystem

<<Type>>

TemporalDatum

+ anchorDefinition[0..0] : CharacterString
+ realizationEpoch[0..0] : Date
+ origin : DateTime

<<Type>>

CD̲Datum

(from ISO 19111)

図D.54−TemporalCRSとTemporalDatumとの関連 

表D.13−TemporalDatumクラスの要素定義 

説明 

時間参照系の原点を定める時間原子 

ステレオタイプ 

(なし) 

派生元 

CD̲Datum 

関連役割 

TemporalCRSからのdatum[1] 

パブリック属性 

CD̲Datum,IO̲IdentifiedObject及びIO̲IdentifiedObjectBaseから継承する八つの属性に加えて
次の属性。 

属性名 

UML識別子 

データ型 

要求度 

最大出
現回数 

説明 

Origin 

origin 

DateTime 

この時間原子の日付及び時間の原点 

八つの継承する属性のうち,次の二つを集成する。 

AnchorDefinition 

anchorDefinition  CharacterString 

時間原子にこの属性を使用しない。 

Realizationepoch 

realizationEpoch 

Date 

時間属性にこの属性を使用しない。 

background image

308 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.3.10 “topology”パッケージ 

この細分箇条では,箇条13で使用する追加型を示す。 

<<DataType>>

TopoPoint

<<DataType>>

TP̲Expression

(from Topological primitive)

<<DataType>>

TopoCurve

<<DataType>>

TopoSurface

<<DataType>>

TopoVolume

{term->forAll(variable.ocllKindOf(TP̲DirectedNode)}

{term->forAll(variable.ocllKindOf(TP̲DirectedEdge)}

{term->forAll(variable.ocllKindOf(TP̲Directedface)}

{term->forAll(variable.ocllKindOf(TP̲DirectedSolid)}

図D.55−位相の表現 

GMLでは,次元ごとに一つの有向位相プリミティブをもつ(又は参照する)幾つかのデータ型を規定す

る。それらは,“TopoPoint”,“TopoCurve”,“TopoSurface”及び“TopoVolume”である。これらは,応用シ

ステムにおいて地物のプロパティの中で用いることを意図するとき,便利な型である(図D.55参照)。 

D.3.11 “dynamicFeature”パッケージ 

この細分箇条では,14.5で使用する追加型を規定する。 

動的地物(dynamic feature)の概念をGMLに追加したのは,時間によって変化するプロパティを表現す

るための機能が地理情報において基礎的な概念とみなされてきたからである(図D.56参照)。 

<<FeatureType>>

DynamicFeature

+ validTime[0..1] : TM̲Primitive
+ history [0..*] : AbstractTimeSlice
+ dataSource[0..1] : CharacterString
+ dataSourceReference[0..1] : URI

<<FeatureType>>

DynamicFeatureCollection

0..*

+dynamicMembers

<<Type>>

AbstractTimeSlice

+ validTime[0..1] : TM̲Primitive
+ dataSource[0..1] : CharacterString
+ dataSourceReference[0..1] : URI

図D.56−動的地物 

background image

309 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.3.12 “dictionary”パッケージ 

この細分箇条では,箇条15で使用する追加型を示す。辞書(dicrionary)の概念をGMLに追加したのは,

符号リスト,単位及び参照系の辞書を符号化する機能が,インスタンス及び応用スキーマを使用する上で

の基礎となるからである(図D.57参照)。 

<<Type>>

AbstractGML

+ description [0..1] : CharacterString
+ descriptionReference[0..1] : CharacterString
+ name [0..*] : GenericName
+ Identifier [0..1] : ScopedName

<<Type>>

Definition

<<Type>>
Dictionary

0..*

+dictionaryEntry

{identifier->size>=1)}

図D.57−辞書 

注記 “Dictionary”クラスは,ISO/TS 19103の同じ名前をもつクラスとの名前衝突を避けるために,

GMLDictionaryと命名しなければならなかった。 

D.3.13 “units”パッケージ 

この細分箇条では,16.2で使用する追加型を規定する。スキーマをGMLの一部として規定してきたの

は,ISO/TS 19103で使用されるモデルが,計測単位に要求される情報を記述するのに十分ではなかったか

らである(図D.58参照)。 

background image

310 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

Definition

(from dictionary)

<<Type>>

UnitDefinition

+ quantityType[0..1] : CharacterString
+ quantityTypeReference[0..1] : URI
+ catalogSymbol[0..1] : GenericName

<<Type>>

BaseUnit

+ unitSystem: URI

<<Type>>

DerivedUnit

+ DerivedUnitTerm[1..*] : DericationUnitTerm

<<Type>>

DerivationUnitTerm

+ uom: UnitOfMeasure
+ exponent : Integer

<<Union>>

FactorOrFormula

+ factor : Real
+ formula : Formula

<<DataType>>

ConversionToPreferredUnit

+ uom: UnitOfMeasure
+ factorOrFormula: FactorOrFormula

<<DataType>>

Formula

+ a [0..1]  : Real
+ b :Real
+ c : Real
+ d [0..1] : Real

<<Type>>

ConventionalUnit

+ conversionToPreferredUnit[0..1] : ConversionToPreferredUnit
+ roughConversionToPreferredUnit[0..1] : ConversionToPreferredUnit
+ DerivationUnitTerm[0..*] : DerivationUnitTerm

{roughConversionToPreferredUnit->size +
conversionToPreferredUnit->size =1}

図D.58−単位の定義 

D.3.14 “measures”パッケージ 

この細分箇条では,16.3で使用する追加型を規定する。ISO/TS 19103が規定する“Measure”の下位型

に加え,他の下位型をグリッドとして使用しており,それゆえ,GMLスキーマの一部として示した(図

D.59参照)。 

<<Type>>

Meature

(from ISO/TS 19103)

<<Type>>

GridLength

図D.59−追加的な計測 

background image

311 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

D.3.15 “valueObject”パッケージ 

この細分箇条では,16.4で使用する追加型を規定する。これらの型は,観測スキーマ(D.3.17参照)で

使用する。 

部品の階層を,図D.60〜図D.64のUMLクラス図で示す。UMLの汎化関係は,XML Schemaの代替グ

ループ及び選択グループのメンバを示すために使う。UMLの結合関係は,XML Schemaの型内容モデルの

中でメンバを示すために用いる。 

<<Type>>

AbstractObject

(from gmlBase)

<<Union>>

Value

+Abstractvalue
+ GM̲Object
+ TM̲Object

<<Type>>

AbstractValue

図D.60−値の表現 

<<Type>>

AbstractScalarValue

<<Type>>

BooleanValue

+ value : booleanOrNilReason

<<Type>>

AbstractObject

<<Type>>

Quantity

+ value : MeasureOrNilReason

<<Union>>

booleanOrNilReason

(from basicTypes)

+ value : Boolean
+ nilReason: NilReason

<<Union>>

CodeOrNilReason

+ value : GenericName
+ nilReason: NilReason

<<Union>>

MeasureOrNilReason

(from basicTypes)

+ value : Measure
+ nilReason: NilReason

<<Union>>

integerOrNilReason

(from basicTypes)

+ value : Integer
+ nilReason: NilReason

<<Type>>

Category

+ value : CodeOrNilReason

<<Type>>

Count

+ value : integerOrNilReason

図D.61−スカラ値 

background image

312 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記 ISO/TS 19103におけるBooleanクラスとの名前衝突を避けるために,真偽値の値オブジェクト

クラスは,BooleanValueと命名した。 

<<Type>>

AbstractScalarValueList

<<Type>>

BooleanValueList

+ value : sequence<booleanOrNilReason>

<<Type>>

AbstractObject

<<Type>>

QuantityList

+ value : sequence<MeasureOrNilReason>

<<Type>>

CategoryList

+ value : sequence<CodeOrNilReason>

<<Type>>

CountList

+ value : sequence<integerOrNilReason>

図D.62−スカラ値リスト 

<<Type>>

AbstractValue

<<Type>>

CompositeValue

<<Union>>

Value

+ AbstractValue
+ GM̲Object
+ TM̲Object

0..*

+valueComponent

<<Type>>

ValueArray

+ uom[0..1] : UnitOfMeasure
+ codeSpace[0..1] : NameSpace

{count(uom) + 
count(scope) = 1}

構成要素は,同種で
なければならない。

図D.63−複合値 

background image

313 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<Type>>

AbstractValue

<<Type>>

QuantityExtent

+ value : MeasureOrNilReasonList

列の長さは2でなけ
ればならない。

<<Type>>

CountExtent

+ value : integerOrNilReasonList

<<Type>>

CategoryExtent

+ value : CodeOrNilReasonList

図D.64−範囲 

D.3.16 “direction”パッケージ 

この細分箇条では,箇条17で使用する追加型を規定する(図D.65参照)。これらの型は,観測地物スキ

ーマ(D.3.17参照)で使用する。 

<<Union>>

Direction

+ vactor: Vector
+ compassPoint: CompassPoint
+ keyword : GenericName
+ description : CharacterString
+ reference : URI

<<Enumeration>>

CompassPoint

+ N
+ NNE
+ NE
+ ENE
+ E
+ ESE
+ SE
+ SSE
+ S
+ SSW
+ SW
+ WSW
+ W
+ WNW
+ NW
+ NNW

図D.65−方向 

D.3.17 “observation”パッケージ 

この細分箇条では,箇条18で使用する追加型を規定する(図D.66参照)。 

観測地物(observation)の概念をGMLに追加したのは,観測の概念が地理情報の基礎的な概念であると

みなしたからである。 

background image

314 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<FeatureType>>

Observation

+ validTime: TM̲Instant
+ using [ 0..1] : Any
+ target [0..1] : Any
+ resultOf: Any

<<FeatureType>>

DirectedObservationAtDistance

+ distance : Length

<<FeatureType>>

DirectedObservation

+ direction : Direction

設定する場合,"using"の値はGF̲FeatureTypeの
実現となるクラスのインスタンスでなくてはならない。

設定する場合,"target"の値はGF̲FeatureType又は
GM̲Objectの下位型の実現となるクラスのインスタンス
でなくてはならない。

図D.66−観測地物 

315 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書E 

(規定) 

UMLからGMLへの応用スキーマ符号化規則 

E.1 

一般概念 

JIS X 7109に適合したUML応用スキーマから,対応するGML応用スキーマへの写像は,符号化規則の

集合に基づいて行う。これらの符号化規則は,GML応用スキーマのための規則に適合するとともに,ISO 

19118に基づく。 

これらの規則は,GMLモデル及び箇条7〜箇条21,特に箇条7に示した構文規則から派生したものであ

る。ISO 19118:2005の附属書Aの符号化規則は,実現可能かつ実装可能な限り使用する。 

この附属書に列記する規則は,JIS X 7109及びISO/TS 19103に適合するUML応用スキーマを(箇条21

で規定する規則に従い)GML応用スキーマに自動的に写像することを目的とする。この自動化の結果生じ

るGML応用スキーマは,XML及びXML Schemaの機能を完全に使用することはないが,明確に定義され

た普通のXML文法による,JIS X 7100シリーズ(ISO 19100シリーズ)の規格に適合するXML実装を可

能にする。 

これらの規則は,全てのGML応用スキーマを,これらの規則を用いて生成しなければならないと規定

しているわけではない。箇条21で定義した規則に従う全てのスキーマは,妥当かつ適合したGML応用ス

キーマであり,それらが手作業で生成されたり,UML応用スキーマから自動で生成されたり,又は他の手

段を用いて作成されたりすることによらない。 

スキーマの符号化規則は,応用スキーマのクラス定義がXML Schemaの型及び要素宣言に対応するとい

う一般的な考え方に基づく。そのため,インスタンスモデルのオブジェクトは,XML文書中の対応する要

素構造に写像することができる。 

E.2 

符号化規則 

E.2.1 一般符号化要件 

E.2.1.1 応用スキーマ 

E.2.1.1.1 概要(応用スキーマ及びパッケージ) 

UML応用スキーマが,写像のための有効なインプットであるためには,次の規則全てに適合しなければ

ならない。追加する要件は,ISO 19118:2005のA.2.1を参照。 

UML応用スキーマは,JIS X 7109及びISO/TS 19103で定義した規則に適合しなければならない。 

UML応用スキーマは,ステレオタイプを<<Application Schema>>としたパッケージで表現しなければな

らない。このパッケージは,GML応用スキーマ中のオブジェクト型に写像する全てのUMLモデル要素を,

保持(言い換えれば,直接に又は間接に所有)しなければならない。このパッケージは,応用スキーマの

中で様々なUMLモデル要素をグループ化するために,ステレオタイプ<<Application Schema>>以外の,別

のパッケージを含んでもよい。 

UMLモデルは完結していなければならず,次に明示する例外を除き,外部参照を含んではならない。既

定義のクラスは,JIS X 7100シリーズ(ISO 19100シリーズ)の規格の標準スキーマからインポートして

もよい。GMLスキーマで実装しUML応用スキーマで使用するJIS X 7100シリーズ(ISO 19100シリーズ)

の規格からとられたクラスは,“ISO 19100(又はJIS X 7100)”という名称を付けたパッケージの中で示す

background image

316 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

か,又はその名称をもったパッケージの下位に位置する任意のパッケージの中で示さなければならない。 

パッケージ間の依存関係は,明示的にモデルで示す。ステレオタイプ<<import>>付きの許可要素又はパ

ッケージ間で汎用の依存要素を,別のパッケージ中の要素から自パッケージ中の要素への依存関係を説明

するために使用しなければならない。その他の依存関係の要素は,全て無視する(図E.1参照)。 

<<Application Schema>>

Parcels

<<Application Schema>>

Geodetic Points

<<Leaf>>

Buildings

図 E.1−パッケージ間の依存関係(参考) 

UML要素の可視性は,“public”に設定しなければならない。可視性をpublicとしている要素だけを,応

用システム間のデータ交換に使用する応用スキーマに含む。 

UMLモデルの要素の説明は,タグ付きの値である“documentation”に格納する。 

一意なXML名前空間を,UML応用スキーマに関連させなければならない。パッケージがUML応用ス

キーマを表す場合,かつ,その場合に限り,対象名前空間のURIに対するタグ付きの値である

“targetNamespace”を,略語に対しては “xmlns”を設定しなければならない。 

UML応用スキーマの版を表すパッケージの版番号は,その番号が適用可能のときは,タグ付きの値であ

る“version”に示す。 

GMLプロファイルを,タグ付きの値である“gmlProfileSchema”を用いて,作成した応用スキーマに関

連づけてもよい。値を与える場合,その値は,GMLプロファイルのスキーマの位置を参照するURLでな

ければならない。 

パッケージをそれ自身のXMLスキーマ文書に写像する場合,タグ付きの値である“xsdDocument”は,

スキーマ文書の有効な相対的ファイル名を与えるように設定しなければならない。作成したUML応用ス

キーマに対応するパッケージごとに,このタグ付きの値を設定しなければならない。UMLモデルでは,全

てのタグ付きの値である“xsdDocument”は一意とする。 

例 タグ付きの値である“xsdDocument”の値は,例えば,“GeodeticPoints.xsd” 又は

“schemas/Parcels.xsd”となる。 

E.2.1.1.2 クラス 

同一応用スキーマ内の全てのクラスは一意であり,かつ,JIS X 4158で定義した“NCName”でなけれ

ばならない。 

地物型は,ステレオタイプ<<FeatureType>>を使ってUMLクラスとしてモデル化する(図E.2参照)。 

注記1 JIS X 7109もISO 19118:2005の附属書Aも,地物型及びオブジェクト型を区別してはいない。

JIS X 7109では地物型を考慮しているだけであるが,ISO 19118:2005の附属書Aでは全ての

地物型をオブジェクト型として分類している。しかし,GMLでは,これらを区別することに

background image

317 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

意味があり,応用スキーマでは実際にしばしば区別することが必要となる。この附属書にお

ける区別は,ISO 19118:2005の附属書Aへの適合のための改良である。 

<<FeatureType>>

Building

+ extent : GM̲Surface
+ address : Address
+ type : BuildingType

図E.2−地物型(参考) 

オブジェクト型は,ステレオタイプをもたないUMLクラスとしてモデル化する。オブジェクト型は,

そのインスタンスを他から区別するための型であるが,地物型ではない(オブジェクト型については,ISO 

19109:2005で表立った検討は行っていない(オブジェクト型は,プロパティ型の値の型として出ているだ

けである。)。 

例 このような型の例としては,幾何,位相,参照系がある。これらの型のインスタンスが,例えば,

名前及び識別子をもってもよい。 

ステレオタイプ<<Type>>をもつUMLクラスは,0個以上の,操作(操作のGML応用スキーマへの写像

はない),属性又は関連をもってもよい。 

ステレオタイプ<<Abstract>>は,応用スキーマで用いてはならない。なぜならば,これは正しいUML記

法の用法と一致しない可能性があり,誤解を招くおそれがあるためである。 

抽象型の下にあるインスタンス化可能な全ての下位型は,地物型,オブジェクト型又はデータ型のいず

れかでなければならない。 

列挙型は,ステレオタイプ<<Enumeration>>をもつUMLクラスとしてモデル化しなければならない。 

符号リストは,ステレオタイプ<<CodeList>>をもつUMLクラスとしてモデル化しなければならない(図

E.3参照)。 

<<CodeList>>

ParcelUsage

+ factory = 1
+ road = 2
+ residential = 3
+ offices = 4
+ sea, river = 5
+ ...

図E.3−符号リスト(参考) 

共用体型は,(JIS X 7107の指定のとおり)ステレオタイプ<<Union>>をもつUMLクラスとしてモデル

化しなければならない。その他のデータ型は,全て,ステレオタイプ<<DataType>>をもつUMLクラスと

してモデル化しなければならない(図E.4参照)。 

background image

318 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<DataType>>

ParcelName

+ countryId: CharacterString
+ stateId: CharacterString
+ municipalityId: CharacterString
+ parcelIdPrefix: CharacterString
+ parcelIdSuffix: CharacterString

図E.4−データ型(参考) 

GMLプロファイルの一部であり,かつ,表D.2の“GML型”の列にGML基本型を示した,JIS X 7100

シリーズ(ISO 19100シリーズ)の規格のUMLクラスは,UML応用スキーマにおいて,下位クラスにし

てもよい。下位クラスでは,追加プロパティを加えるか,又は下位型のプロパティを多重度若しくは値域

を制限して再定義してもよい。 

注記2 プロパティを再定義することは可能ではあるが,変換規則の中では,再定義したプロパティ

は無視される。再定義によってもたらされる制約の妥当性検証は,応用システム側の責任に

おいて行わなければならない。上で示したステレオタイプとは異なるその他のステレオタイ

プをもつ全てのクラスは,UML応用スキーマの一部であってもよいが,それらは無視される。 

注記3 JIS X 7100シリーズ(ISO 19100シリーズ)の他の規格で定義する型で,この規格で実装す

る型を応用スキーマで参照するときは,クラス名は,表D.2の最初の列に示すものの一つと

一致しなければならない。 

汎化の関係は,次のいずれかの場合において二つのクラスの間でだけ示すことができる。 

− 両方が地物型 

− 両方がオブジェクト型 

− 両方がデータ型 

クラス間の汎化関係は全て,ステレオタイプをもたない。上記以外の別のステレオタイプをもつクラス

間の汎化の関係では,ステレオタイプは全て無視される。UMLの汎化の識別プロパティは,ブランクでな

ければならない。 

あるクラスが他のクラスの特化である場合は,このクラスがもつ上位型は,一つだけでなければならな

い(多重継承は使用不能)。 

全てのクラスは,クラスの意味を示すステレオタイプをもたなければならない。ステレオタイプをもた

ないクラスは,オブジェクト型として取り扱う(図E.5参照)。 

<<FeatureType>>

LandClassification

+ featureMetadata: MD̲Metadata
+ extent : GM̲Surface

<<FeatureType>>

Forest

+ type : ForestTypeEnumeration

<<FeatureType>>

Lake

+ depth [0..1] : Length

...

図E.5−地物型間の汎化の関係(参考) 

319 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

E.2.1.1.3 属性 

抽象型,地物型,オブジェクト型,データ型又は共用体型のUML属性は,全て必ず名前及び型をもつ。

名前には,JIS X 4158の定義にある“NCName”を使う。型の多重度が“1”でない場合は,多重度を明示

的に示さなければならない。属性の初期値を,数値,文字列又は列挙型を用いて指定してもよい。 

型は,既定義の型(E.2.1.1.5参照)又はUMLモデルで定義したクラスでなければならない。 

列挙クラスのUML属性には,全て必ず名前をもたせる。型の情報は,空のままにする。多重度,順序

又は初期値の情報を,属性にもたせてはならない。 

符号リストクラスのUML属性には,全て必ず名前をもたせる。型の情報は,空のままにする。多重度

又は順序付けの情報は,属性に加えてはならない。符号リストの一つの値を具体的に明記できるように,

初期値を指定してもよい。初期値を省略する場合は,値(すなわち属性名)を符号として用いる。 

UMLクラスのプロパティに,順序はない。UMLモデルからXMLスキーマに変換するとき,プロパテ

ィの順序付けを一致させるには,タグ付きの値として“sequenceNumber”(値の定義域:整数)を属性ごと

に指定する。この値は,クラスの全ての属性及びクラスの関連終端を通して,一意でなければならない。 

E.2.1.1.4 関連及び関連終端 

UMLの関連は全て,関連終端が二つからなる関連でなければならない。いずれの関連終端とも,地物型,

オブジェクト型又はデータ型に接続する。ステレオタイプは付けない,又はステレオタイプを

<<association>>とする(そうでないときは,関連全体が無視される。)。 

関連は,いかなるプロパティももってはならない。 

関連終端の規則を,次に示す。 

− 関連の終端が誘導可能(navigable)で参照できる場合には,関連の終端に誘導可能であることを示す

マークを付けて,役割名を示さなければならない。役割名をもたない関連の終端は,たとえ誘導可能

としてマークを付けていても,無視する。役割名を示している場合,JIS X 4158で定義する“NCName”

で名前を付ける。 

− 多重度は,明示的に示さなければならない。 

− 集成の種類は,“none”でない場合は,明示的に指定しなければならない。 

− 関連の終端の対象クラスがデータ型の場合は,集成の種類は“合成”とする。 

図E.6に,関連の例を二つ示す。一方は,双方向に誘導可能な関連で,他方は,片方向だけに誘導可能

な集成である。 

background image

320 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<<FeatureType>>

Parcel

+ area : Area
+ extent : GM̲Surface

<<FeatureType>>

Building

+ extent : GM̲Surface
+ address : Address
+ type : BuildingType

<<FeatureType>>

Person

+ firstName: CharacterString
+ lastName: CharacterString

0..*

1..*

+owner

+hasBuilding

+owns

0..*

図E.6−関連(参考) 

UMLクラスのプロパティは,順序付けしたものではない。XMLスキーマへの変換において,UMLモデ

ルのプロパティの順序づけを一致させて保持するには,タグ付きの値として“sequenceNumber”(値の定義

域:整数。)を関連の終端ごとに指定する。この指定する値は,クラスの全ての属性及び関連の終端を通し

て一意でなければならない。 

E.2.1.1.5 既定義の型 

E.2.4.4で示すISO/TS 19103に基づく既定義の型は,ISO 19118:2005の附属書Aにおいて“基本型”と

して扱っている(すなわち,正規のXML符号化を付け加えている。)。 

E.2.1.1.6 OCL制約 

全てのOCL制約を無視する。これらの制約に関するインスタンスモデルの妥当性検証は,GMLインス

タンスを処理する応用システムが行う。 

注記 Schematron言語を,GML応用スキーマを表すXML Schemaの一部として,OCL制約を表現す

るために用いてもよい。 

E.2.1.1.7 他の情報 

UML応用スキーマの他の情報は,全て,符号化規則では不使用とし,これを無視する。 

E.2.1.2 文字レパートリ及び言語 

XML文法に従ったXML Schemaファイル(文字レパートリを関連付けてもたせる。)の文字符号化には,

“UTF-8”又は “UTF-16”を用いる。 

E.2.1.3 交換メタデータ 

GMLインスタンス文書の中の全ての地物又は地物の集まりについて,交換メタデータを指定してもよい。

そのためには,応用スキーマにおいて,E.2.4.11及びE.2.4.13で示す“gml:AbstractMetadataPropertyType”

から内容モデルを派生させているプロパティ要素を指定する。 

GML応用スキーマに,交換メタデータのための特定のスキーマは付加しない。 

E.2.1.4 データ集合及びオブジェクト識別 

XMLのIDの仕組みに従って一意とした識別子は,オブジェクトの識別に用いる。 

注記 XML IDの仕組みで要求することは,識別子が,所属するXML文書内で一意であるということ

だけである。 

background image

321 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

E.2.1.5 更新機構 

明示的な更新の仕組みは,GML応用スキーマで定義している地物に対しては定義しない。他の仕組みを

保存データの更新に用いることを仮定している。 

注記 一つの例が,OpenGISウェブ地物サービス実装仕様(OpenGIS(R) Web Feature Service 

Implementation Specification)の“トランザクション”操作である。 

E.2.2 入力データ構造 

入力データ構造については,ISO 19118:2005のA.3を参照。 

E.2.3 出力データ構造 

出力データの符号化規則は,JIS X 4159:2005及びJIS X 4176に基づいている。交換形式の構造を支配す

る出力データ構造についてのスキーマは,XML Schema 1.0及び応用スキーマのための規則(箇条21参照)

に従った,妥当なXMLスキーマ(の一組)でなければならない。 

XML Schema変換規則は,E.2.4で定義する。 

E.2.4 変換規則 

E.2.4.1 一般概念 

スキーマ変換規則は,JIS X 7109に従ったUMLで表現した応用スキーマから,どのようにしてXMLス

キーマ文書(XSD)を導き出すかを定義しなければならない。様々な一般規則をE.2.4の中で定義し,E.2.1

に示す指針に従ったUMLモデルからの写像を示す。 

注記 この附属書では,名前空間に“xsd:”を用いてXML Schemaの名前空間である

http://www.w3.org/2001/XMLSchemaを参照する。名前空間の“gml:”は,GMLの名前空間 

“http://schemas.opengis.net/gml/3.2.1/”を参照する。 

この規則の基となっているのは,箇条7〜箇条21(特に箇条7,箇条9及び箇条21)に示したGMLモ

デル及び構文並びにISO 19118:2005の附属書Aである。 

ここに示すスキーマの符号化規則は,UML応用スキーマでのクラス定義をXML Schemaの型及び要素

宣言に写像し,その結果,インスタンスモデルにおけるオブジェクトをXML文書の対応する要素構造に

写像できるという概念に基づいている。 

表E.1に概要を示す。 

表E.1−スキーマ符号化の概要 

表: UML → GML応用スキーマの概要 

UML応用スキーマ 

GML応用スキーマ 

パッケージ 
 

一つのパッケージに付き一つのXML Schema 文書(既定の
写像)。 

<<Application Schema>>  
 

XML Schema 文書 

<<DataType>>  
 

大域要素。この内容モデルは,大域的な範囲をもつXML 
Schema complexType,つまりプロパティ型。 

<<Enumeration>>  
 

列挙の値によるxsd:string の制限。 

<<CodeList>> 

列挙型及びパターンの共用体(既定とする写像の場合。代
替的な写像は,辞書への参照となる。)。 

background image

322 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

表E.1−スキーマ符号化の概要(続き) 

表: UML → GML応用スキーマの概要 

UML応用スキーマ 

GML応用スキーマ 

<<Union>>  
 

GMLオブジェクト又は地物がメンバになる選択グループ,
又はDataType に一致する複数のオブジェクト。 

<<FeatureType>>  
 

大域要素であり,その内容モデルは,
gml:AbstractFeatureTypeプロパティ型を直接又は間接な拡
張型から派生した大域的な範囲をもつXML Schemaの型。 

ステレオタイプなし,又は<<Type>>  
 

大域要素であり,その内容モデルは,gml:AbstractGMLType
プロパティ型を直接的又は間接的に拡張によって派生した
大域的な範囲をもつXML Schemaの型。 

操作  
 

符号化しない。 

属性 
 

局所的なxsd:element。この型は,プロパティ型(型が複合
型の場合。)又は単純型。 

関連規則 
 

局所的なxsd:element。この型は,常にプロパティ型(名前
付きの誘導可能な役割だけを示す。)。 

一般OCL制約 

符号化しない。 

注記 <<FeatureType>>は,ISO/TS 19103又はJIS X 7109にはない新たなステレオタイプであり,型

が,GF̲FeatureTypeの実現及びAbstractFeatureからの特化であることを示すのに用いる。 

属性及び関連役割の多重度は,<xsd:element>宣言における“minOccurs”及び“maxOccurs”の両属性に

写像する。詳細な写像規則を次に示す。 

UMLモデル要素別に,異なったタグ付きの値を用いて,UMLからXMLスキーマへの写像を制御する。

次の表E.2にタグ付きの値の一覧を示す。 

表E.2−タグ付きの値 

UMLモデル要素 

関連するタグ付きの値 

パッケージ 

− documentation  
− xsdDocument 
− targetNamespace(<<Application Schema>>だけ) 
− xmlns(<<Application Schema>>だけ) 
− version(<<Application Schema>>だけ) 
− gmlProfileSchema(<<Application Schema>>だけ) 

クラス 

− documentation 
− noPropertyType 
− byValuePropertyType 
− isCollection 
− asDictionary(<<CodeList>>だけ) 
− xmlSchemaType(<<Type>>だけ) 

属性及び関連の終端 

− documentation 
− sequenceNumber 
− inlineOrByReference 
− isMetadata 

323 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

E.2.4.2 UML パッケージ 

一つのXML Schema文書は,タグ付きの値である“xsdDocument”を伴うパッケージごとに作成し,フ

ァイル名は,このタグ付きの値によって指定する。 

タグ付きの値である“xsdDocument”をパッケージに設定する場合,スキーマ文書は,そのパッケージ

が直接所有しているUMLクラスに由来する全てのXML Schema構成部品を含むことになる。そのパッケ

ージがUML応用スキーマでない場合,スキーマ文書は,そのパッケージを所有するパッケージのスキー

マ構成部品を含んでいるスキーマ文書に含まれる。 

タグ付きの値である“xsdDocument”を,パッケージごとに設定しない場合,全てのスキーマ構成部品

は,そのパッケージを所有しているパッケージのスキーマ構成部品を含んでいるスキーマ文書内で宣言さ

れる。 

注記 タグ付きの値はステレオタイプ<<Application Schema>>をもつ全てのパッケージに必須である

が,それ以外の全てのパッケージでは任意である。 

全てのスキーマ文書にとっての根底要素の“targetNamespace”及び“version”属性は,スキーマ文書内

にあるスキーマ構成部品を所有するUML応用スキーマを代表するパッケージ内にある同じ名前のタグ付

きの値に従って準備する。タグ付きの値である“version”を指定しない場合は,値“unknown”を使用し

なければならない。さらに,略語としてのタグ付きの値である“xmlns”の値をもった対象名前空間のため

に,一つの“xmlns”属性を指定しなければならない。 

例1 “http://www.myorg.com/myns”は,対象名前空間であり得るし,“myns”はスキーマ文書で使わ

れている関連した略語でもあり得る。 

ステレオタイプ<<Application Schema>>を伴うパッケージにおける,全てのタグ付きの値

“gmlProfileSchema”のために,そのタグ付きの値の内容をもつ要素<gml:gmlProfileSchema>が,20.5で指

定する<schema>要素のappinfo注釈の中で生成する。 

必要な他のスキーマのインポート及び他のスキーマ文書の付加的な包含(include)を決定するために,

パッケージ間の依存関係を使用する。 

− 依存関係をもつ対象パッケージが指定するスキーマ構成部品が,供給側のパッケージにおけるそれら

と同じ対象名前空間にある場合,対象パッケージのスキーマ構成部品を指定しているスキーマ文書が,

“include”されているという。 

− 一方,対象パッケージを含んでいるUML応用スキーマパッケージを代表しているスキーマ文書は,

“import”されているということになる。 

例2 図E.1の情報を写像すると,次のような結果になる。 
<?xml version="1.0" encoding="UTF-8"?> 
<schema targetNamespace="http://www.myorg.com/parcels" xmlns="http://www.w3.org/2001/XMLSchema" 
xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:gp="http://www.myorg.com/geodeticPoints" 
xmlns:pcl="http://www.myorg.com/parcels" xmlns:iso19115="http://www.isotc211.org/iso19115/" 
xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="qualified" version="2003-07-20"> 

<include schemaLocation="Buildings.xsd"/> 
<import namespace="http://www.myorg.com/geodeticPoints" schemaLocation="GeodeticPoints.xsd"/> 
<import namespace="http://www.opengis.net/gml/3.2" schemaLocation="base/gml.xsd"/> 
<!-- … --> 

</schema> 

324 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

E.2.4.3 UMLクラス(一般規則) 

UMLクラス用として認めるステレオタイプは,ステレオタイプなし,<<FeatureType>>,<<Type>>, 

<<DataType>>,<<Union>>,<<CodeList>>,及び<<Enumeration>>とする。全てのクラスは対応するクラス

カテゴリに写像する。他のステレオタイプをもった全てのUMLクラスは,無視される。 

全てのUMLクラスは,零又は一つの上位型をもたなければならない。 

全てのUMLクラスは,名前の付いた型に写像する。接尾辞“Type”を,型の名前に付け加える。 

E.2.4.4 UMLクラス(基本型) 

(“CharacterString”で始まる)表D.2の左列に示すISO/TS 19103のGMLプロファイルからの基本型は

既定義であり,JIS X 7109に従う応用スキーマ内の属性のデータ型として使うことができる。XML Schema 

(“xsd:”)又はGML(“gml:”)の組込み型への写像法は,ここで規定する。複数の名前が表の中の一つの

セルに与えられている場合は,太字の活字書体の名前を,写像の既定値型として使用する。 

注記1 右列にある複数の値は,附属書Fにある逆写像を利用可能とするために使用する。 

例 ISO/TS 19103 Integerは,“xsd:integer”に写像する。 

ステレオタイプ<<Type>>をもつクラスが,正規のXML Schema符号化(例えば,XML Schema由来)を

もっている場合は,タグ付きの値である“xmlSchemaType”の値としてデータ型に対応しているXML Schema 

型名を,与えなければならない。 

注記2 正規の符号化は,例えば“simpleContent”に基づいた簡潔な構成が既に応用領域の中でよく

知られている場合など,標準UMLからGMLへの符号化規則に沿う体系だった符号化よりも

好まれる場合がある。 

E.2.4.5 UMLクラス(データ型) 

ステレオタイプ<<DataType>>をもつUMLクラスは,XML Schema複合型に写像しなければならない。 

注記 他のステレオタイプをもつデータ型,つまり,<<Enumeration>>,<<CodeList>>,及び<<Union>>,

並びに既定義の基本型は,別々に扱う(E.2.4.4,E.2.4.8,E.2.4.9,及びE.2.4.10参照)。 

クラスが上位型をもたない場合は,XML Schemaの非派生型,又は(直接に又は間接に)絶対に

gml:AbstractGMLTypeから派生しないsupertypeを拡張する。いかなる属性も誘導可能(navigable)な関連

役割ももたない抽象上位クラスは,無視する。 

名前(UMLクラスの名前),型(UMLクラスの名前に“Type”を付けたもの),抽象性(そのクラスが

抽象の場合)及び代替グループ(上位型をもたない場合,上位型又はgml:AbstractObjectに適合する要素名)

の適切な設定をもつ大域XML要素を,これらのクラスに対して定義しなければならない。 

クラスが“true”の値をもつタグ付きの値“noPropertyType”をもたない場合,名前の付いた複合型を,

(“PropertyType” 接尾辞をもつクラスの名前をもつ)これらのクラスのために生成しなければならない。

その型には,XLink属性は許可はしないが,GMLで定義する関連プロパティのためのパターン(7.2.3参

照)に従う。 

例 図E.4のデータ型“ParcelName”は,次のように写像することができる。 
<complexType name="ParcelNameType"> 

<sequence> 

<element name="countryId" type="string"/> 
<element name="stateId" type="string"/> 
<element name="municipalityId" type="string"/> 
<element name="parcelIdPrefix" type="string"/> 
<element name="parcelIdSuffix" type="string" minOccurs="0"/> 

325 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</complexType> 

<element name="ParcelName" type="ex:ParcelNameType" substitutionGroup="gml:AbstractObject"/> 
 
<complexType name="ParcelNamePropertyType"> 

<sequence> 

<element ref="ex:ParcelName"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

E.2.4.6 UMLクラス(地物型) 

ステレオタイプ<<FeatureType>>をもつUMLクラスは,直接又は間接にgml:AbstractFeatureTypeから派

生する。そのクラスが上位型をもたないクラスである場合は,直接gml:AbstractFeatureTypeを拡張する。

そうでない場合は,それは(再び直接又は間接に)gml:AbstractFeatureTypeからの派生となる上位型を拡張

したものでなければならない。 

− 名前(UMLクラスの名前)にふさわしい設定をもつ大域XML要素,型(UMLクラスの名前に“Type”

を付けたもの),抽象性(true,そのクラスが抽象である場合)及び代替グループ(上位クラスの名前,

又はgml:AbstractFeature)をこれらのクラスのために定義する。 

− そのクラスが対象クラスの集成又は構成部品としての単一の関連をもつ場合,その関連役割はプロパ

ティ要素に変換し,また,そのクラスは“true”の値をもつタグ付きの値“isCollection”をもち,属性

グループgml:AggregationAttributeGroupを地物型の複合型に追加する。 

− そのクラスが“true”の値をもつタグ付きの値“noPropertyType”をもたない場合,(“PropertyType”

接尾辞をもつクラスの名前をもつ)名前の付いた複合型を,これらのクラスのために作成しなければ

ならない。その型は,GMLで定義する関連プロパティのためのパターンに従う(7.2.3参照)。 

− そのクラスが“true”の値をもつタグ付きの値“byValuePropertyType”をもつ場合,名前の付いた複合

型を,(“PropertyByValueType”接尾辞をもつクラスの名前をもつ)これらのクラスのために作成しな

ければならない。その型は,“by value”形式に制限した,GMLで定義する関連プロパティのためのパ

ターンのプロファイルとする(7.2.3参照)。 

例 図E.2の“Building”は,次のように写像することができる。 
<complexType name="BuildingType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="extent" type="gml:SurfacePropertyType"/> 
<element name="address" type="pcl:AddressPropertyType"/> 
<element name="type" type="pcl:BuildingTypeType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 
 
<complexType name="BuildingPropertyType"> 

<sequence minOccurs="0"> 

326 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="pcl:Building"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
 
<complexType name="BuildingPropertyByValueType"> 

<sequence> 

<element ref="pcl:Building"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
 
<element name="Building" type="pcl:BuildingType" substitutionGroup="gml:AbstractFeature"/> 

E.2.4.7 UMLクラス(オブジェクト型) 

ステレオタイプ<<Type>>をもつもたないにかかわらず,UMLクラスは,gml:AbstractGMLTypeから直接

又は間接に派生する。そのクラスが上位型をもたないクラスである場合,それは直接的に

gml:AbstractGMLTypeを拡張する。そうでない場合は,それは(再び直接又は間接に)gml:AbstractFeatureType

からではなく,(再び直接又は間接に)gml:AbstractGMLTypeから派生する上位型を拡張しなければならな

い。 

− 名前(UMLクラスの名前),型(UMLクラスの名前に“Type”を付けたもの),抽象性(true,そのク

ラスが抽象である場合)及び代替グループ(上位型又は“AbstractGML”の名前)の適切な設定をも

つ大域XML要素を,これらのクラスのために定義する。 

− そのクラスが対象クラスの合成又は集成として単一の関連をもつ場合,その関連役割はプロパティ要

素に変換し,また,そのクラスは“true”の値をもつタグ付きの値“isCollection”をもち,属性グルー

プgml:AggregationAttributeGroupがオブジェクト型を複合型に付加する。 

− そのクラスが“true”の値をもつタグ付きの値である“noPropertyType”をもたない場合,(“PropertyType”

接尾辞をもつクラスの名前をもつ)名前の付いた複合型を,これらのクラスのために作成しなければ

ならない。その型は,GMLで定義する関連プロパティのためのパターンに従う(7.2.3参照)。 

− そのクラスが“true”の値をもつタグ付きの値である“byValuePropertyType”をもつ場合,

(“PropertyByValueType”接尾辞をもつクラスの名前をもつ)名前の付いた複合型を,これらのクラス

のために作成しなければならない。その型は,“by value”形式に制限する,GMLで定義する関連プロ

パティのパターンのプロファイルとする(7.2.3参照)。 

例 
<element name="Ellipse" type="ex:EllipseType" substitutionGroup="gml:AbstractCurveSegment"/> 
 
<complexType name="EllipseType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<element name="center" type="gml:DirectPositionType"/> 
<element name="semiminor" type="gml:VectorType"/> 
<element name="semimajor" type="gml:VectorType"/> 

</sequence> 

327 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</extension> 

</complexContent> 

</complexType> 

E.2.4.8 UMLクラス(列挙) 

ステレオタイプ<<Enumeration>>をもつUMLクラスは,XML Schemaの単純型へ写像する。基本型は

“string”で,値の定義域は,UMLクラスの属性名として指定するリテラル値の集合に制限する。 

例 
<simpleType name="SignType"> 

<restriction base="string"> 

<enumeration value="-"/> 
<enumeration value="+"/> 

</restriction> 

</simpleType> 

E.2.4.9 UMLクラス(符号リスト) 

ステレオタイプ<<CodeList>>をもち,“true”の値をもつタグ付きの値である“asDictionary”をもたない

UMLクラスは,列挙のように写像しなければならないが,列挙とは次のような違いがある。 

− ファセット“<pattern value=ʼother: ¥ w{2,}ʼ/>”を,あらかじめ定義した値の他にどんなテキスト値で

も許可するために追加しなければならない。これら自由な値には,“other:”を接頭辞として付ける。 

− 符号を符号リスト値のために指定するときは,その符号だけを列挙のファセットとして表現する。 

− 符号化した符号値は,列挙値のテキスト値を指定するgml:description要素をもつappinfo注釈に適合し

なければならない。 

例1 図E.3の符号リスト“ParcelUsage(区画の用途)”は,次のように表現できる。 
<simpleType name="ParcelUsageType"> 

<union memberTypes="pcl:ParcelUsageEnumerationType pcl: ParcelUsageOtherType"/> 

</simpleType> 
 
<simpleType name="ParcelUsageEnumerationType"> 

<restriction base="string"> 

<enumeration value="1"> 

<annotation> 

<appinfo><gml:description>工場</gml:description></appinfo> 

</annotation> 

</enumeration> 
<enumeration value="2"> 

<annotation> 

<appinfo><gml:description>道路</gml:description></appinfo> 

</annotation> 

</enumeration> 
<enumeration value="3"> 

<annotation> 

<appinfo><gml:description>住宅</gml:description></appinfo> 

</annotation> 

</enumeration> 
<enumeration value="4"> 

<annotation> 

328 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<appinfo><gml:description>事業所</gml:description></appinfo> 

</annotation> 

</enumeration> 
<enumeration value="5"> 

<annotation> 

<appinfo><gml:description>海,河川</gml:description></appinfo> 

</annotation> 

</enumeration> 

</restriction> 

</simpleType> 
 
<simpleType name="ParcelUsageOtherType"> 

<restriction base="string"> 

<pattern value="other: ¥w{2,}"/> 

</restriction> 

</simpleType> 

もう一つの方法として,そのクラスが“true”値をもつタグ付きの値“asDictionary”をもつ場合,

gml:Dictionaryを,符号リストを表現するために使わなければならない。 

例2 図E.3の符号リスト“ParcelUsage”は,GML辞書文書内で,次のように表現できる。 
<gml:Dictionary gml:id="CodeList" xmlns:gml="http://www.opengis.net/gml/3.2" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.opengis.net/gml/3.2gml.xsd"> 

<gml:identifier codeSpace="http://www.someorg.de/cl.xml">My code lists</gml:identifier> 
<gml:dictionaryEntry> 

<gml:Dictionary gml:id="ParcelUsage"> 

<gml:identifier codeSpace="http://www.someorg.de/cl.xml">ParcelUsage</gml:identifier> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="ParcelUsage̲1"> 

<gml:description>工場</gml:description> 
<gml:identifier codeSpace="http://www.someorg.de/cl.xml#ParcelUsage">1</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="ParcelUsage̲2"> 

<gml:description>道路</gml:description> 
<gml:identifier codeSpace="http://www.someorg.de/cl.xml#ParcelUsage">2</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="ParcelUsage̲3"> 

<gml:description>住居</gml:description> 
<gml:identifier codeSpace="http://www.someorg.de/cl.xml#ParcelUsage">3</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="ParcelUsage̲4"> 

<gml:description>事業所</gml:description> 

329 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<gml:identifier codeSpace="http://www.someorg.de/cl.xml#ParcelUsage">4</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 
<gml:dictionaryEntry> 

<gml:Definition gml:id="ParcelUsage̲5"> 

<gml:description>海,河川</gml:description> 
<gml:identifier codeSpace="http://www.someorg.de/cl.xml#ParcelUsage">5</gml:identifier> 

</gml:Definition> 

</gml:dictionaryEntry> 

</gml:Dictionary> 

</gml:dictionaryEntry> 

</gml:Dictionary> 

インスタンス文書では,参照は,次の例のように符号化してよい(内容モデルとして,gml:CodeTypeを

使う。E.2.4.11参照)。例えば, 

<usage codeSpace="http://www.someorg.de/example/cl.xml#ParcelUsage">1</usage> 

codeSpace属性は辞書を指し,その値はその辞書の見出しの名前とする。 

符号リストをGML応用スキーマで符号化する方法は,値の定義域として符号リストをもつプロパティ

要素を,どのように符号化しなければならないかということも決定する(E.2.4.11参照)。 

E.2.4.10 UMLクラス(共用体) 

ステレオタイプ<<Union>>をもつUMLクラスは,XML Schemaの複合型として写像する。これらのクラ

スは,データ型のように写像する(E.2.4.5参照)が,一つのプロパティを正確に一つの共用体のインスタ

ンスとして指定するために,プロパティの<xsd:sequence>の代わりに<xsd:choice>を用いる。 

例 
<complexType name="RemoteResourceType"> 

<choice> 

<element name="name" type="string"/> 
<element name="uri" type="anyURI"/> 

</choice> 

</complexType> 

E.2.4.11 UML属性と関連役割 

オブジェクト又は地物型の,UML属性又は関連役割は,そのオブジェクト又は地物型の内容モデルを定

義している複合型の中にある,同じ名前をもつ局所的な要素に写像する。minOccurs及びmaxOccurs属性

は,UMLモデル(写像の詳細についてはISO 19118:2005の附属書A参照)の中にある定義に応じて設定

する。その型は,UMLにあるプロパティの値の型に依存する。 

そのプロパティの値の型が単純内容である場合は,その型を直接使用する。 

例1 <element name="count" type="integer"/> 

プロパティ値の型が複合的な内容である場合は,プロパティ型を使用する。プロパティ型の既定の符号

化は,地物及びオブジェクト型への要素内表現又は参照による表現,並びにデータ及び共用体型への要素

内表現の両方を許す。地物及びオブジェクト型の表現は,“inline”又は“byReference”値をもつタグ付き

の値である“inlineOrByReference”によって,要素内又は参照に制限を付けてもよい。タグ付きの値がな

い又はその値が“inlineOrByReference”のときは,規定の符号化を行わなければならない。 

330 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

属性又は関連役割がメタデータプロパティの場合,そのプロパティ型は,

gml:AbstractMetadataPropertyTypeを拡張しなければならない(7.2.6参照)。メタデータプロパティは,値

“true”をもったタグ付きの値“isMetadata”をもつプロパティ,又はプロパティの値がJIS X 7115で定義

するクラスとなる。関連役割が合成又は集成の対象終端である場合,それがメタデータプロパティでない

限り,そのプロパティ型は,gml:AbstractMemberTypeを拡張しなければならない(7.2.5.1参照)。関連役割

が合成又はオブジェクト値をとる属性の対象終端である場合,そのプロパティ要素は,

gml:OwnershipAttributeGroup のowns属性が“true”であると主張するSchematron制約を追加しなければな

らない。Schematron制約は,次のパターンに従わなければならない。 

<sch:pattern> 

<sch:rule context="qualified name of the object element"> 

<sch:report test="qualified property name/@owns='true'">このプロパティは合成であり,値は所有さ

れなければならない。</sch:report> 
</sch:rule> 

</sch:pattern> 

例2 場所を記述する点オブジェクトを制御する地物型ex:MyFeatureのプロパティ

ex:representativeLocationは,次のように記述することができる。 

<element name="representativeLocation" type="gml:PointPropertyType"> 

<annotation> 

<appinfo> 

<sch:pattern> 

<sch:rule context="ex:MyFeature"> 

<sch:report test="ex:representativeLocation/@owns='true'">このプロパティは合成であり,値

は所有されなければならない。</sch:report> 
</sch:rule> 

</sch:pattern> 

</appinfo> 

</annotation> 

</element> 

プロパティ型が名前の付いた型として応用スキーマで既に規定されている場合(これはタグの付いた値

“noPropertyType”及び“byValuePropertyType”を見ることによって発見できる。),このスキーマ構成部品

を参照しなければならない。そうでない場合は,匿名プロパティ型をプロパティ要素の中で局所的に定義

しなければならない。 

符号化したプロパティが関連の終端であり,その関連の他の関連の終端もまた,GML応用スキーマで符

号化しているとき,他の関連の終端のプロパティ名は,そのプロパティ要素のappinfo注釈にある

gml:reversePropertyName要素で符号化しなければならない(7.2.3.9参照)。 

例3 参照又は要素内: 
<element name="owner" type="ex:PersonPropertyType" minOccurs=“0”> 

<annotation> 

<appinfo> 

<gml:reversePropertyName>ex:owns</gml:reversePropertyName> 

</appinfo> 

</annotation> 

</element> 
… 

331 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="PersonPropertyType"> 

<sequence minOccurs="0"> 

<element ref=“ex:Person”/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
又は 

<element name="owner" minOccurs="0"> 

<annotation> 

<appinfo> 

<gml:reversePropertyName>ex:owns</gml:reversePropertyName> 

</appinfo> 

</annotation> 
<complexType> 

<sequence minOccurs="0"> 

<element ref="ex:Person"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

</element> 

もう一つの方法としては,そのプロパティ型は,タグ付きの値“inlineOrByReference”によって,要素

内又は参照による表現のうちの一つだけを使用してもよい。 

例4 要素内だけ 
<element name="owner" type="ex:PersonPropertyByValueType" minOccurs="0"/> 
… 
<complexType name="PersonPropertyByValueType"> 

<sequence> 

<element ref="ex:Person"/> 

</sequence> 

</complexType> 
又は 
<element name="owner" minOccurs="0"> 

<complexType> 

<sequence> 

<element ref="ex:Person"/> 

</sequence> 

</complexType> 

</element> 

参照による表現だけが使用可能である場合,そのプロパティ要素は,対象型の適合する要素名を示す

appinfo注釈要素gml:targetElementに適合していなければならない。 

<element name="targetElement" type="string"/> 

符号化したプロパティが関連の終端で,その関連のその他の関連の終端もGML応用スキーマで符号化

されているとき,その他関連終端のプロパティ名は,上で指定したもう一つのappinfo注釈要素

gml:reversePropertyNameで符号化しなければならない。 

例5 参照だけ 

332 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="owner" type="gml:ReferenceType" minOccurs="0"> 

<annotation> 

<appinfo> 

<gml:targetElement>ex:Person</gml:targetElement> 
<gml:reversePropertyName>ex:owns</gml:reversePropertyName> 

</appinfo> 

</annotation> 

</element> 

クラスの符号化法に応じて,符号リストのUML属性又は列挙型は,string値(値の定義域:列挙又は符

号リストの値。)又は対応する辞書の見出しを参照する値のいずれかをもつ,一つの要素に写像する。イン

スタンスでは,辞書はcodeSpace属性を使って明示的に参照してもよい。辞書を表現しているURIの既定

値は,appinfo注釈要素gml:defaultCodeSpaceを使って与えることができる。 

<element name="defaultCodeSpace" type="anyURI"/> 

例6 符号リスト“BuildingType”は,次のように表現することができる。 

<element name=" type" type="ex:BuildingTypeType"/> 

又は 
<element name="type" type="gml:CodeType"> 

<annotation> 

<appinfo> 

<gml:defaultCodeSpace>http://www.someorg.de/example/cl.xml#BuildingType</gml:defaultCodeSpa

ce> 
</appinfo> 

</annotation> 

</element> 

UML属性又はUML関連役割を再定義する場合(つまり,一つの下位クラスが,上位型にある同じ名前

をもつ一つの属性又は関連役割を含んでいる場合),そのプロパティは下位型の内容モデルの一部ではない。

概要モデルで表現する,このような制限をもったインスタンスに従うことを主張するのは,応用システム

の責任とする。 

一つのクラスの全ての属性及び関連役割は,タグ付きの値“sequenceNumber”を昇順に並び替えた形に

変換しなければならない。 

E.2.4.12 文書化 

UMLモデルの要素のうち,タグ付きの値“documentation”は,XML Schemaファイルのannotation及び

documentation要素に写像する。 

例 
<element name="curveProperty" type="gml:CurvePropertyType"> 

<annotation> 

<documentation>このプロパティ要素は,XLinkを介して曲線を参照するか曲線要素を含むかのい
ずれかである。curvePropertyは,GML応用スキーマで用いることができる既定のプロパティで
ある。GML地物は,AbstractCurveを置換可能な値を伴うプロパティをもつ。</documentation> 

</annotation> 

</element> 

E.2.4.13 JIS X 7100シリーズ(ISO 19100シリーズ)の規格から導入するクラス 

これまでに定義した規則に加えて,UML応用スキーマがJIS X 7100シリーズ(ISO 19100シリーズ)の

規格からクラスを導入する場合には,次の規則を適用する。 

background image

333 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GMLスキーマで実装するJIS X 7100シリーズ(ISO 19100シリーズ)の規格からとられたクラスがどれ

か,確認しなければならない。JIS X 7100シリーズ(ISO 19100シリーズ)の規格によるクラスの使用は,

JIS X 7109に適合しなければならない。JIS X 7100シリーズ(ISO 19100シリーズ)の規格によるクラス

との対応関係を表D.2に示す。 

ISO/TS 19139に従って実装するJIS X 7115からとられたクラスは,プロパティの型として使用するので,

gml:AbstractMetadataPropertyTypeを拡張した無名のプロパティ型を定義しなければならない。このカプセ

ル化されたオブジェクト要素は,ISO/TS 19139で規定したメタデータ型に対応するオブジェクト要素とす

る。 

E.2.4.14 既定のXML符号化を伴う他の概念モデルからインポートされるクラス 

これまでに定義した規則に加えて,UML応用スキーマが標準のXML符号化で既に規定している他の

UMLモデルからクラスをインポートする場合,次の規則を適用する。 

インポートされたクラスに対して,表D.2の拡張を規定しなければならない。この表は,UMLによる応

用スキーマとともに配布しなければならない。 

インポートされたモデルからXML Schemaにおいて,関連するクラスの写像はこの表で規定する。 

E.3 

例(参考) 

<<FeatureType>>

Parcel

+ area : Area
+ extent : GM̲Surface

<<FeatureType>>

Building

+ extent : GM̲Surface
+ address : Address
+ type : BuildingType

<<FeatureType>>

Person

+ firstName: CharacterString
+ lastName: CharacterString

0..*

1..*

+owner

+hasBuilding

+owns

0..*

<<Enumeration>>

BuildingType

+ church
+ school
+ garage
+ residential houses
+ unknown
+ mixed

<<CodeList>>

CountryCode

+ DE
+ US
+ CA
+ ...

<<DataType>>

Address

+ street [0..1] : CharacterString
+ housenumber[0..1] : CharacterString
+ poBox[0..1] : CharacterString
+ city : CharacterString
+ postalCode: CharacterString
+ country [0..1] :CountryCode= DE

<<Abstract>>

GM̲CurveSegment

(from Geographic primitive)

Elipse

+ center : DirectPosition
+ semiminor: Vector
+ semimajor: Vector

図E.7−応用スキーマの例 

図E.7で示した応用スキーマは,次のように符号化できる。 

334 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<?xml version="1.0" encoding="UTF-8"?> 
<schema targetNamespace="http://www.someorg.de/example" xmlns="http://www.w3.org/2001/XMLSchema" 
xmlns:ex="http://www.someorg.de/example" xmlns:gml="http://www.opengis.net/gml/3.2" 
elementFormDefault="qualified" version="1.0"> 

<!-- ================================== --> 
<import namespace="http://www.opengis.net/gml/3.2" schemaLocation="./gml.xsd"/> 
<import namespace="http://www.w3.org/1999/xlink" schemaLocation="./xlinks.xsd"/> 
<!-- ================================== --> 
<element name="Parcel" substitutionGroup="gml:AbstractFeature"> 

<complexType> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="area" type="gml:AreaType"/> 
<element name="extent" type="gml:SurfacePropertyType"/> 
<element name="owner" type="ex:PersonPropertyType" maxOccurs="unbounded"> 

<annotation> 

<appinfo><gml:reverseProperty>ex:owns</gml:reverseProperty></appinfo> 

</annotation> 

</element> 
<element name="hasBuilding" type="ex:BuildingPropertyType" minOccurs="0" 

maxOccurs="unbounded"/> 
</sequence> 

</extension> 

</complexContent> 

</complexType> 

</element> 
<complexType name="ParcelPropertyType"> 

<sequence minOccurs="0"> 

<element ref="ex:Parcel"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
<!-- ================================== --> 
<element name="Building" substitutionGroup="gml:AbstractFeature"> 

<complexType> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="extent" type="gml:SurfacePropertyType"/> 
<element name="address"> 

<complexType> 

<sequence> 

<element name="Address" type="ex:AddressType"/> 

</sequence> 

</complexType> 

</element> 

335 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="type" type="ex:BuildingTypeType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

</element> 
<complexType name="BuildingPropertyType"> 

<sequence minOccurs="0"> 

<element ref="ex:Building"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
<!-- ================================== --> 
<element name="Person" substitutionGroup="gml:AbstractFeature"> 

<complexType> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element name="firstName" type="string"/> 
<element name="lastName" type="string"/> 
<element name="owns" type="ex:ParcelPropertyType" minOccurs="0" 
maxOccurs="unbounded"> 

<annotation> 

<appinfo><gml:reverseProperty>ex:owner</gml:reverseProperty></appinfo> 

</annotation> 

</element> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

</element> 
<complexType name="PersonPropertyType"> 

<sequence minOccurs="0"> 

<element ref="ex:Person"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 
<!-- ================================== --> 
<complexType name="AddressType"> 

<sequence> 

<element name="street" type="string" minOccurs="0"/> 
<element name="housenumber" type="string" minOccurs="0"/> 
<element name="poBox" type="string" minOccurs="0"/> 
<element name="city" type="string"/> 
<element name="postalCode" type="string"/> 
<element name="country" type="ex:CountryCodeType" minOccurs="0" default="DE"/> 

336 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</complexType> 
<!-- ================================== --> 
<simpleType name="BuildingTypeType"> 

<restriction base=“string"> 

<enumeration value="church"/> 
<enumeration value="school"/> 
<enumeration value="garage"/> 
<enumeration value="residential houses"/> 
<enumeration value="unknown"/> 
<enumeration value="mixed"/> 

</restriction> 

</simpleType> 
<!-- ================================== --> 
<simpleType name="CountryCodeType"> 

<union memberTypes="ex:CountryCodeEnumerationType ex:CountryCodeOtherType"/> 

</simpleType> 
<simpleType name="CountryCodeEnumerationType"> 

<restriction base="string"> 

<enumeration value="DE"/> 
<enumeration value="US"/> 
<enumeration value="CA"/> 
<enumeration value="..."/> 

</restriction> 

</simpleType> 
<simpleType name="CountryCodeOtherType"> 

<restriction base="string"> 

<pattern value="other: ¥w{2,}"/> 

</restriction> 

</simpleType> 
<!-- ================================== --> 
<element name="Ellipse" type="ex:EllipseType" substitutionGroup="gml:AbstractCurveSegment"/> 
<complexType name="EllipseType"> 

<complexContent> 

<extension base="gml:AbstractCurveSegmentType"> 

<sequence> 

<element name="center" type="gml:DirectPositionType"/> 
<element name="semiminor" type="gml:VectorType"/> 
<element name="semimajor" type="gml:VectorType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

</schema> 

337 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書F 

(規定) 

GMLからUMLへの応用スキーマ符号化規則 

F.1 

一般の概念 

GML応用スキーマから,JIS X 7109に適合するUMLによる応用スキーマへの写像は,符号化規則の集

合に基づいて行う。これらの符号化規則は,本体の箇条7〜箇条9,特に箇条7,箇条9及び箇条21で規

定したGML応用スキーマのための規則に適合する。 

F.2で列挙する規則は,GML応用スキーマからJIS X 7109及びISO/TS 19103に適合するUML応用スキ

ーマへの自動的な対応付けを目的とする。 

これらの規則は,全てのGML応用スキーマがこの附属書で示す符号化要件を満たす形で生成すること

を規定するものではない。箇条21で定義した規則に従った全てのスキーマは,妥当な適合GML応用スキ

ーマとなる。 

応用分野においてGML応用スキーマからJIS X 7109に適合するUMLによる応用スキーマを派生させ

る必要がある場合には,この附属書を用いなければならない。 

XML名前空間略号“xsd”をXML Schemaの名前空間である“http://www.w3.org/2001/XMLSchema”への

参照として用いる。 

XML名前空間略号“gml”をGMLのXML名前空間である“http://schemas.opengis.net/gml/3.2.1/”への参

照として用いる。 

さらに,GMLは,次の名前空間を取り込んでいる。 

XML名前空間省略名“xlink”をXLinkに対するXML名前空間である“http://www.w3.org/1999/xlink”へ

の参照として用いる。 

以後“GML名前空間”という用語を“gml”及び“xlink”名前空間への参照として用いる。 

F.2 

符号化規則 

F.2.1 

一般的な符号化要件 

F.2.1.1 

一般的な注意点 

スキーマ符号化規則は,XML Schemaが宣言するそれぞれの型及び要素をUML応用スキーマのクラス

定義に写像するという一般的な発想に基づいており,そのため,XML文書の要素構造をインスタンスモデ

ルのオブジェクトに写像することができる。 

F.2.1.2 

GMLスキーマ 

F.2.1.2.1 

一般 

写像への妥当な入力であるためには,GML応用スキーマは,対応する2.2の適合クラスの要件,特に,

少なくとも“全てのGML応用スキーマ”,“UMLによるJIS X 7109応用スキーマに変換するGML応用ス

キーマ”及び“地物及び地物の集まりを定義するGML応用スキーマ”の要件を,満たさなければならな

い。 

GML応用スキーマは単一の対象名前空間をもち,その定義を含まなければならない。 

GML応用スキーマは,その対象名前空間以外のXML名前空間から定義を取り込んでよい。 

GML応用スキーマは,次のような一つ以上のXMLスキーマ文書の集合からなる。 

338 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

− 文書は,一意の名前をもつ。 

− 文書は,同一の対象名前空間をもつ他のスキーマ文書に対するxsd:include要素を含む。 

− GML応用スキーマ対象名前空間に対する単一の最上位のスキーマ文書は,その対象名前空間以外のス

キーマ文書が存在する場合,それらのどのスキーマ文書にも含まれることはなく,逆にその対象名前

空間の他の全てのスキーマ文書を直接又は間接に含んでいる。 

− スキーマ文書は,対象名前空間以外のXML名前空間に対してそれらのXML名前空間内の定義を含む

スキーマ文書へのxsd:import要素を含む。 

− スキーマ文書として含まれた又は取り込まれた全ての文書は,それらを参照しているxsd:include要素

及びxsd:import要素のschemaLocation属性で指定するURIを通じてアクセスできる。 

− 妥当性検証を行うXMLパーサは,スキーマ文書の集合に含まれる定義間の全ての依存関係を解決す

る。 

− 妥当性検証を行うXMLパーサは,スキーマ文書の集合をエラーを発生することなく検証する。 

− 妥当性検証を行うXMLパーサは,全てがGML応用スキーマの対象名前空間に含まれる定義を表現す

る要素及び属性を含むXMLインスタンス文書を,エラーを発生させることなく検査する。 

GML応用スキーマに含まれる定義の文書化は,スキーマ定義要素の内に含まれたxsd:annotation及び

xsd:documentation要素として格納しなければならない。 

GML応用スキーマが版をもつ場合は,その対象名前空間の最上位のスキーマのxsd:schema要素のversion

属性に含まれなければならない。 

GML応用スキーマにおける全ての大域型及び要素の名前は,一意でなければならない。 

GML応用スキーマは,オブジェクトに対して匿名型の要素を定義してはならない。 

GML応用スキーマは,XML属性及び名前付きグループを定義してはならない。 

GML応用スキーマの全ての複合型は,GMLオブジェクト型,GML地物型,GMLデータ型又はGML

プロパティ型でなければならない。 

GML応用スキーマでは,単純内容をもつ複合型を定義してはならない。 

GML応用スキーマで定義された全ての型の名前の末尾は,“Type”で終わらなければならない。 

複合型が,制限によって派生した抽象型で,拡張によって派生した複合型を唯一の直接の下位型として

もつような型の場合,その場合にだけその名前の末尾を“RestrictionType”で終える。この場合,その唯一

の直接の下位型の名前は,元の型の名前の“RestrictionType”を“Type”に置き換えた名前でなければなら

ない。 

複合型は,GMLの参照又は値プロパティのパターンに従ったインスタンス化可能な複合型の場合にだけ,

その型の名前の末尾に“PropertyType”を用いる。その型の名前の“PropertyType”を“Type”に置き換え

た名前をもつ複合型(GMLオブジェクト型又はGML地物型)が存在しなければならない。 

複合型は,GMLの値によるプロパティのパターンに従ったインスタンス化可能な型の場合にだけ,型の

名前の末尾に“PropertyByValueType”を用いる。その型の名前の“PropertyByValueType”を“Type”に置

き換えた名前をもつ複合型(GMLデータ型,GMLオブジェクト型又はGML地物型)が存在しなければ

ならない。 

注記 これらの規則は,GML応用スキーマとしてとり得る形式を厳密に制限する。 

F.2.1.2.2 

GML地物型を含むGMLオブジェクト型 

GML応用スキーマで定義するGMLオブジェクト型は,それぞれgml:AbstractGMLTypeから直接又は間

接的に派生した内容モデルをもつとともに,gml:id属性をもたなければならない。 

339 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

GML応用スキーマで定義する特定の種類のGMLオブジェクト型は,それぞれ

“http://schemas.opengis.net/gml/3.2.1/”名前空間における同じ(意味規則が該当する)種類の最も特化した

GMLオブジェクト型から派生しなければならず,それをその内容モデルの定義に用いることができる。こ

のため,GML応用スキーマで定義した地物を表現するGMLオブジェクト型(GML地物型)は,

gml:AbstractGMLTypeからではなくgml:AbstractFeatureTypeから派生しなければならず,GML応用スキー

マで定義された幾何の点を表現するGMLオブジェクト型は,gml:AbstractGeometryTypeなどからではなく

gml:PointTypeから派生しなければならない。 

GML応用スキーマで定義したGMLオブジェクト型で対象名前空間以外のGMLオブジェクト型から派

生した型は,表D.2の第3列に列挙したGMLオブジェクト型で同じ行の第1列がISO 19100シリーズの

国際規格で定義したクラスとしてのクラス名となっている型,gml:AbstractGMLType又は

gml:AbstractFeatureTypeのいずれかから直接派生しなければならない。 

抽象GMLオブジェクト型のスキーマ定義は,値が“true”となる“abstract”属性を含まなければならな

い。 

抽象GMLオブジェクト型の名前は,先頭を“Abstract”で始めなければならない。 

下位型をもたないGMLオブジェクト型のスキーマ定義は,値が“all”となる“final”属性を含まなけ

ればならない。 

GMLオブジェクト型のプロパティは,xsd:sequence要素内で指定しなければならない。 

F.2.1.2.3 

gmlオブジェクト型の大域要素 

GML応用スキーマで定義する全てのGMLオブジェクト型のそれぞれについて一つの大域XML要素を

定義しなければならない。 

この要素の名前は,GMLオブジェクト型の名前の末尾から“Type”を取り除いた名前でなければならな

い。 

要素は,値にそのGMLオブジェクト型の基本型に対する大域XML要素の名前をもつ“substitutionGroup”

属性をもたなければならない。 

F.2.1.2.4 

gmlオブジェクト型に対する既定のプロパティ型 

GML応用スキーマで定義する全てのGMLオブジェクト型のそれぞれについて,そのGML応用スキー

マ内で既定のGMLプロパティ型を定義してよい。 

GMLプロパティ型は,7.2.3で規定したプロパティ型の一つを用いるか,又は直接若しくは間接的に継

承しなければならない。それ以外の場合は,この細分箇条で規定するパターンに従って定義しなければな

らない。 

このプロパティ型の名前は,GMLオブジェクト型の名前に対して末尾の“Type”を“PropertyType”に

置き換えた名前でなければならない。 

GMLオブジェクト型に対して既定のプロパティ型が指定されていない場合,応用スキーマは,GMLオ

ブジェクト型の既定のプロパティ型としてgml:ReferenceTypeを用いなければならない。 

F.2.1.2.5 

gmlオブジェクト型に対する直接記述プロパティ型 

GML応用スキーマで定義するGMLオブジェクト型のそれぞれについて,直接記述プロパティに対する

既定のGMLプロパティ型をそのGML応用スキーマで定義してよい。 

GMLプロパティ型は,直接若しくは間接にgml:InlinePropertyTypeを継承するか,又は7.2.3.8で規定し

たパターンに従って定義しなければならない。このようなプロパティにgml:AsscociationAttributeGroupを

用いてはならない。 

340 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

このプロパティ型の名前は,GMLオブジェクト型の名前の末尾の“Type”を“PropertyByValueType”で

置き換えた名前でなければならない。 

あるGMLオブジェクト型に対して直接記述プロパティのための既定のプロパティ型が規定されていな

い場合,応用スキーマは,そのGMLオブジェクトの直接記述プロパティに対する既定のプロパティ型と

してgml:AssociationRoleTypeを用いなければならない。 

F.2.1.2.6 

GML共用体型を含むGMLデータ型 

GML応用スキーマが定義する複合型で,gml:AbstractGMLTypeから直接又は間接に派生していない型を,

GMLデータ型と呼ぶ。 

GMLデータ型のプロパティは,次の形式のうちのいずれかでなければならない。 

− 複合型のプロパティ及びその全ての基本型のプロパティをminOccurs及びmaxOccursの値が“1”とな

るxsd:sequence要素として定義する形式。 

− GMLデータ型がどの基本型からも派生しない形式。この場合,このプロパティをminOccurs及び

maxOccursの値が“1”となる単一のxsd:sequence要素として規定してもよいし,minOccurs及び

maxOccursの値が“1”となる単一のxsd:choice要素として規定してもよい。 

複合型の内容モデルは,gml:id属性を含んではならない。 

F.2.1.2.7 

GMLデータ型の既定のプロパティ型 

GML応用スキーマで定義されるGMLデータ型のそれぞれに対して,直接記述プロパティに対する既定

のGMLプロパティ型をそのGML応用スキーマで定義してよい。 

GMLプロパティ型は,直接若しくは間接的にgml:InlinePropertyTypeから派生するか,又は7.2.3.8で規

定するパターンに従って定義しなければならない。このようなプロパティにgml:AsscociationAttributeGroup 

を用いてはならない。 

このプロパティ型の名前は,GMLデータ型の名前の末尾の“Type”を“PropertyByValueType”に置き換

えた名前でなければならない。 

GMLデータ型について直接記述プロパティに対する既定のプロパティ型を定義する場合,応用スキーマ

は,そのGMLデータ型の直接記述プロパティに対する既定のプロパティ型としてgml:AssociationRoleType

を使用しなければならない。 

F.2.1.2.8 

列挙 

GML応用スキーマで定義する単純型で,xsd:enumerationファセットだけを用いてxsd:stringを制限した

ものを,列挙と呼ぶ。 

F.2.1.2.9 

符号リスト 

GML応用スキーマで定義する単純型で,xsd:stringを値が“other: ¥w{2,}”となるxsd:patternファセッ

トだけを用いて制限した単純型と列挙との共用体型を,符号リストと呼ぶ。 

列挙値は,その列挙値が他の列挙値の符号値であることを示すappInfo注釈(gml:codeListValue要素)で

示すことができる。関連する列挙値は,gml:codeListValue要素の文字列値として指定される。 

F.2.1.2.10 GMLデータ型,列挙及び符号リストの大域要素 

GML応用スキーマで定義された列挙又は符号リストに対して,大域のXML要素を定義してはならない。 

F.2.1.2.11 既定義基本型 

XMLスキーマ及びGML名前空間の単純型で,表D.2の第4列に挙げられている型は,GML応用スキ

ーマで用いることができる。これらの名前空間のその他の単純型は,GML応用スキーマで用いてはならな

い。 

341 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

F.2.1.2.12 GMLプロパティ 

GMLオブジェクト型又はGML地物型の全てのプロパティ(GML名前空間で定義されているプロパテ

ィを除く。)及びGMLデータ型又は共用型の全てのプロパティは,単一の局所的に定義されたxsd:element

によって表現しなければならない。局所的に定義するとは,要素の名前及び型が要素宣言で(大域XML

要素を参照することなく)明示的に指定しなければならないことを意味する。要素は,minOccurs及び

maxOccursの値をもつことができる。この要素の名前は,プロパティの名前でなければならず,型は単純

型又はプロパティ型でなければならない。 

F.2.1.2.13 Schematron制約 

全てのSchematron制約を無視する。 

F.2.1.2.14 他のXML名前空間から導入された要素及び型 

他のXML Schema構成部品をXML Schema及びGML以外の名前空間から導入する場合,表D.2を拡張

して対応する項を定義する。 

F.2.1.2.15 その他の情報 

GML応用スキーマに含まれるその他の情報は,符号化規則では用いられず無視される。 

F.2.1.3 

文字レパートリ及び言語 

スキーマに用いられる文字符号化は,使用可能な文字レパートリを決定する。 

F.2.1.4 

交換メタデータ 

GMLインスタンス文書の全ての地物及び地物集合に対して,交換メタデータを定めることができる

(gml:AbstractMetadataPropertyTypeから派生する内容モデルをもつプロパティ要素及び例えばJIS X 7115

のXMLスキーマ符号化であるISO/TS 19139を使用することによる。)。交換メタデータに対する特定のス

キーマがGML応用スキーマに追加されることはない。 

F.2.1.5 

データ集合及びオブジェクトの識別 

7.2.4.5及びXMLのIDの機構に従った一意のgml:id識別子を,GMLオブジェクトの識別に用いなけれ

ばならない。 

F.2.1.6 

更新機構 

GML応用スキーマで定義する地物型に対して,明示的な更新機構を定義してはならない。インスタンス

モデルデータ記録の更新には,他の機構が用いられると仮定する。 

F.2.1.7 

入力データ構造 

入力データ構造に対するスキーマは,XML Schema 1.0 Part 1:構造及びPart 2:データ型の各W3C勧告

並びにGML応用スキーマに対する規則(箇条21参照)で定義する。 

F.2.2 

出力データ構造 

出力データ構造の記述については,ISO 19118:2005のA.3を参照。 

F.2.3 

変換規則 

F.2.3.1 

一般概念 

F.2.3で定義するスキーマ変換規則は,F.2.1で示したガイドラインに従ったGML応用スキーマからJIS X 

7109及びISO/TS 19103で定義した規則に合致するUML応用スキーマへの,ISO 19118:2005の附属書A

の符号化規則,特にISO 19118:2005のA.3で示した一般インスタンスモデルを用いた写像を示す。これら

の規則は,また,箇条7〜箇条21(特に箇条7)で示したGMLモデル及び構文に対する現在の規則に基づ

いている。 

background image

342 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

スキーマ変換規則は,妥当なGML応用スキーマ文書(XSD)の(集合の)中に含まれる定義をUML

パッケージの集合へ写像する。<<Application Schema>>ステレオタイプをもつ最上位パッケージは,この集

合の他の全てのパッケージを含むものとして生成する。既定値では,GML名前空間の各XSDを除き,GML

応用スキーマの対象名前空間以外のXML名前空間から直接又は間接的に導入されたXSDを含めて,GML

応用スキーマの各XSDについて一つのパッケージがこの集合に生成される。最上位パッケージは,GML

応用スキーマのオブジェクト型から写像された全てのUMLモデル要素を直接又は間接的に所有する。 

最上位パッケージがその名前及びステレオタイプを保持し,全てのモデル要素がこのパッケージに直接

又は間接的に属する限り,GML応用スキーマの宣言を異なるパッケージ構造に配置してもよい。 

GML応用スキーマの型及び要素宣言は,UML応用スキーマのクラス定義に写像され,これによって,

GMLのXML文書の要素構造をインスタンスモデルの対応するオブジェクトに写像することができる。 

UMLモデルは,“JIS X 7109”を名前とするパッケージ内にJIS X 7100シリーズ(ISO 19100シリーズ)

の規格又はそのモデルの厳密なプロファイルとして適用される規定のパッケージを含まなければならない。 

UMLモデルは,GML応用スキーマが導入する他の全てのGML応用スキーマのUMLパッケージを含ま

なければならない。 

表F.1は,概要を示している。写像の全ての詳細は,次に続く細分箇条(F.2.3.2〜F.2.3.10)で規定する。 

表F.1−スキーマ符号化の概要 

GML → UML応用スキーマの概要 

GML応用スキーマ 

UML応用スキーマ  

GML応用スキーマ 

<<ApplicationSchema>>をステレオタイプにもつパッ
ケージ  

GMLスキーマ文書{名前}XSD 

{名前}という名のパッケージ  

gml:AbstractFeatureTypeを直接又は間接に拡張す
る任意のオブジェクト型に対するオブジェクト及
びプロパティ型並びに大域要素 

<<FeatureType>>をステレオタイプにもつクラス  

gml:AbstractFeatureTypeを拡張するものを除く,
gml:AbstractGMLTypeを直接又は間接に拡張する
任意のオブジェクト型に対するオブジェクト及び
プロパティ型並びに大域要素 

ステレオタイプをもたないクラス  

gml:AbstractGMLTypeを直接にも間接にも拡張せ
ず内容モデルがプロパティの列になっている任意
のオブジェクト型に対するデータ及びプロパティ
型並びに大域要素 

<<DataType>>をステレオタイプにもつクラス  

列挙値によって制限したxsd:string 

<<Enumeration>>をステレオタイプにもつクラス 

列挙及びパターンの共用体 

<<CodeList>>をステレオタイプにもつクラス  

gml:AbstractGMLTypeを直接にも間接にも拡張せ
ず内容モデルがプロパティの選択になっている任
意のオブジェクト型に対するデータ及びプロパテ
ィ型並びに大域要素 

<<Union>>をステレオタイプにもつクラス 

gml:AbstractGMLTypeを直接にも間接にも継承し
ない単純型,単純内容をもつ複合型の局所
xsd:element又は型 

UML属性  

gml:AssociationAttributeGroupを含む型の局所
xsd:element 

UML関連役割  

Schematron制約 

符号化されない 

343 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

属性及び関連役割の多重度は,局所的なxsd:element宣言のminOccurs及びmaxOccurs属性から派生する。 

F.2.3.2 

GMLスキーマ文書 

ステレオタイプ<<Application Schema>>をもつ最上位パッケージは,GML応用スキーマで生成された他

の全てのパッケージを包含するために作成される。 

− タグ付きの値“targetNameSpace”及び“xmlns”を,GML応用スキーマの目的とする名前空間の値と

一致する<<ApplicationSchema>>パッケージに適用する。 

例 http://www.myorg.com/myns 及び“myns”。 

− タグ付きの値“version”は,既定値“1.0”で<<ApplicationSchema>>に適用される。GML応用スキー

マに対する最上位スキーマ文書のxsd:schema要素の“version”属性が存在し,非空値を含む場合,そ

の値は,既定のタグ付きの値に置換される。 

− タグ付きの値“xsdDocument”は,XML Schema文書の相対的なファイル名を配置する。 

既定値として,一つのUMLパッケージは,GML応用スキーマの目的とする名前空間と別のXML名前

空間から直接又は間接に取り込むものを含む,GML応用スキーマの中で各々入力されたスキーマ文書に対

して生成される(ただし,GML名前空間からのXML Schema文書は除く。)。代わりに,単一のXML Schema

文書を幾つかのUMLパッケージに分割してもよい。 

パッケージは,入力スキーマ文書の名前と一致する名前をもつGML応用スキーマに対する

<<ApplicationSchema>>パッケージの中で生成する。 

各々入力したスキーマ文書の中のxsd:include及びxsd:import文は,<<Application Schema>>パッケージの

中で生成されたパッケージの依存関係を決定し配置するために使用する。 

F.2.3.3 

GMLオブジェクト型 

全てのGMLオブジェクト型は,UMLクラスへ写像できなければならない。 

オブジェクト型がgml:AbstractFeatureTypeから直接又は間接に派生する場合,クラスのステレオタイプ

は<<FeatureType>>でなければならない。そうでない場合は,ステレオタイプを配置してはならない。 

クラスの名前は,GMLオブジェクト型の大域要素の名前と同じでなければならない。 

GMLオブジェクト型が抽象である場合,クラスも抽象でなければならない。 

GMLオブジェクト型が別のGMLオブジェクト型から派生する場合,そのクラスは,対応する上位クラ

スから継承する。基本型がGML応用スキーマ又は別に取り込まれたGML応用スキーマの中で定義されて

いる場合,上位クラスは,このGMLオブジェクト型に対応するクラスとする。基本型がGML名前空間の

中で定義されている場合,上位クラスは,表D.2によって決定される。基本型が表の第3列に記載されて

いる場合,その上位クラスは同じ行の第1列にあるクラスである。 

GMLオブジェクト型のGMLプロパティは,F.2.3.9に示す属性及び関連役割に写像しなければならない。

この写像で作られた全てのUML属性及び関連役割に,オブジェクト型の列中のプロパティの順序を反映

した昇順のユニークな整数値を伴うタグ付きの値“sequenceNumber”を割り当てる。 

F.2.3.4 

GMLオブジェクト型(GMLスキーマから取り込まれた) 

表D.2の左側の列に記載するGML名前空間からの複合型は,表の第2列にあるGMLのISO地理情報

標準プロファイルで実装する,既定義のUMLクラスに写像しなければならない。 

F.2.3.5 

基本型 

表D.2の右側の列に示すXML Schema及びGML名前空間からの単純型は,表の左側の列にあるGML

のISO地理情報標準プロファイルで実装する,既定義のUMLクラスに写像しなければならない。 

344 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

F.2.3.6 

GMLデータ型 

全てのGMLデータ型は,UMLクラスに写像しなければならない。クラスの名前は,“Type”接尾辞を

除いて複合型の名前と同じでなければならない。 

GMLデータ型が別のGMLデータ型(基本型)から派生する場合,クラスは対応する上位クラスから継

承する。 

GMLデータ型のプロパティがxsd:sequence要素の中に埋め込まれている場合,クラスのステレオタイプ

は<<DataType>>でなければならない。それらがxsd:choice要素の中に埋め込まれている場合,クラスのス

テレオタイプは<<Union>>を指定しなければならない。 

GMLオブジェクト型のGMLプロパティは,F.2.3.9で規定する属性及び関連役割に写像しなければなら

ない。この写像で生成する全てのUML属性及び関連役割に対し,オブジェクト型の列の中でプロパティ

の順序を反映している昇順で一意の整数値をもつタグ付きの値“sequenceNumber”を割り当てる。 

F.2.3.7 

列挙 

列挙値をもつxsd:stringの制限としてGML応用スキーマの中で定義している単純型は,UML応用スキ

ーマの中の<<Enumeration>>ステレオタイプをもつクラスに写像しなければならない。 

クラスの名前は,単純型の名前でなければならない。 

子要素gml:codeListValueをもつxsd:appinfo注釈をもたない個々のxsd:enumerationのファセットは,

gml:codelistValue要素の値と同じ名前をもつUML属性の最初の値に写像しなければならない。 

子要素gml:codeListValueをもつxsd:appinfo注釈をもつ個々のxsd:enumerationのファセットは,

gml:codelistValue要素の値と同じ名前をもつUML属性の最初の値に写像しなければならない。そのような

UML属性がクラスの中に存在しない場合は,ファセットを無視する。 

F.2.3.8 

符号リスト 

値“other: ¥w{2,}”及び列挙をもつxsd:pattern制限の共用体としてGML応用スキーマを定義する単純

型は,UML応用スキーマの中のステレオタイプ<<CodeList>>をもつクラスに写像しなければならない。 

クラスの名前は,単純型の名前でなければならない。 

子要素gml:codelistValueをもつxsd:appinfo注釈をもたない列挙の,個々のxsd:enumerationのファセット

は,属性名としての値をもつUML属性に写像しなければならない。 

子要素gml:codelistValueをもつxsd:appinfo注釈をもつ列挙の,個々のxsd:enumerationファセットは,

gml:codelistValue要素の値と同じ名前をもつUML属性の最初の値に写像しなければならない。そのような

UML属性がクラスの中に存在しない場合は,ファセットを無視する。 

F.2.3.9 

GMLプロパティ 

型がプロパティ要素である場合は, 

− プロパティ要素の型が単純型又はGMLデータ型のプロパティ型の場合,プロパティはデータ型とし

て一致する型をもつUML属性に写像しなければならない。 

− プロパティ要素の型が,内容モデルが直接又は間接にgml:AbstractMemberTypeから派生した,GML

オブジェクト型(要素内及び/又は参照)のプロパティ型の場合,そのプロパティを,対象となるGML

オブジェクト型を表現するクラスへのUML集成のUML関連役割へ写像しなければならない。プロパ

ティ要素の内容モデルが“true”の固定された値(Schematron制約を通じて)をもつ“owns”属性を

含む場合,UML集成はUML合成に変更しなければならない。 

− プロパティ要素の型が,GMLオブジェクト型(要素内及び/又は参照)のプロパティ型の場合,その

プロパティを,対象となるGMLオブジェクト型を表現するクラスへのUML関連のUML関連役割へ

345 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

写像しなければならない。プロパティ型が参照だけ使用可能な場合,目的とするGMLオブジェクト

型は,目的とする型の制限された要素名を示す子要素gml:targetElementをもつ,埋め込まれた

xsd:appinfo注釈から決定しなければならない。タグ付きの値“inlineOrByReference”は,プロパティ

値の要素内での符号化だけを許す表現として“inline”を配置するとともに,プロパティ値の参照によ

る符号化だけを許す表現として“byReference”を配置しなければならない。 

− プロパティ要素の型が,内容モデルが直接又は間接にgml:AbstractMetadataPropertyTypeから派生する

GMLオブジェクト型(要素内及び/又は参照)のプロパティ型の場合,UML属性又は関連役割は,

“true”の値とともにタグ付きの値“isMetadata”をもたなければならない。 

UML属性又は関連役割の名前は,GMLプロパティ要素の名前でなければならない。 

UML属性又は関連役割の多重度は,GMLプロパティのminOccurs及びmaxOccursの値から派生しなけ

ればならない。 

プロパティ要素が埋め込まれた子要素gml:reversePropertyNameをもつxsd:appInfo注釈をもつ場合,関連

役割は,gml:reversePropertyName要素の値と同じ名前をもつ二つのクラスの間で,関連の一部として定義

しなければならない。 

F.2.3.10 文書 

GML応用スキーマの中のXML Schema xsd:annotation/xsd:documentation要素は,UML応用スキーマの

中の“documentation”タグ付きの値に変換される。 

346 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書G 
(参考) 

GMLスキーマ部分集合作成のためのガイドライン 

G.1 

全般 

GMLスキーマの部分集合作成には,自動的な方法を使うとよい。この附属書は,GMLスキーマ部分集

合ツールの参考となるXSLT参照の実装を含む。ツールは,三つのXSLTスタイルシートで構成する。三

つのスタイルシートは,次のG.2,G.3,及びG.4に示す。 

このツールを用いてGML部分集合スキーマを生成する方法を次に示す。 

a) gml.depを生成するために,depends.xslt及びXSLTプロセッサを使用してgml.xsdを変換する。 

例1 Xalanを用いたコマンドは,次のようになる。 

$ java org.apache.xalan.xslt.Process ‒IN ../base/gml.xsd-XSL depends.xslt ‒OUT gml.dep 

b) 仮に,使用しているXSLTプロセッサが,処理するスタイルシートにパラメタを渡すことができない

ときは,gmlSubset.xsltを編集し,名前空間に含まれる正規の大域的な型及びGML部分集合スキーマ

に含む要素からなる,コンマで区切るリスト(終了コンマを伴う。)を含むように,“wanted”パラメ

タを変更する。 

例2 例えば, 

<xsl:param name="wanted">,</xsl:param> 

から 

<xsl:param name="wanted">gml:featureProperty,gml:lineStringProperty,gml:polygonProperty,

</xsl:param> 

に代える。 

c) 次の三つを使用して,gml:depを変換する。 

− gmlSubset.xslt。 

− 名前空間に含まれる大域的な正規型の,コンマで区切られたリスト(終端コンマを伴う。)に設定さ

れる“wanted”という名前のパラメタ。 

− gmlSubset.xsltを生み出すXSLTプロセッサ。XSLTプロセッサは,次のものを含む。 

− “wanted”パラメタの中で示される大域的な型及び要素。 

− それらが直接又は間接に使用する,全ての大域的な型及び要素。 

d) “wanted”列が,一致する名前空間からの全ての属性を含むか又は依存する場合,生成された

gmlSubset.xsdは,“xlink”という名前の名前空間へのインポートを含む。そうでない場合,それはGML

プロファイルへの要求に従った,スタンドアロンのGML部分集合スキーマである。 

G.2 

depends.xslt 

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet version="1.0" 

xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:xlink="http://www.w3.org/1999/xlink" 
<!--======================================================= 

347 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

This stylesheet is designed to be used on gml.xsd to produce gml.dep 
for use by the gml schema subset utility gmlSubset.xslt to produce a specialized 
gmlSubset.xsd that contains only the specified types and elements, and the types 
and elements on which they depend. 
=========================================================--> 
<xsl:output method="xml" encoding="UTF-8" indent="yes"/> 
<xsl:include href="utility.xslt"/> 
<!-NEWLINE = &#xA; --> 
<xsl:param name="schemas">gml.xsd, observation.xsd, dynamicFeature.xsd, coverage.xsd, topology.xsd,

defaultStyle.xsd, coordinateReferenceSystem.xsd, feature.xsd, valueObject.xsd, grids.xsd, geometryComplexes.xsd,
datums.xsd, coordinateSystems.xsd, coordinateOperatiions.xsd, geometryAggregates.xsd, referenceSystems.xsd,
dataQuality.xsd, geometryPrimitives.xsd, geometryBasic2d.xsd, direction.xsd, geometryBasic0d1d.xsd, 
measures.xsd, temporal.xsd, units.xsd, dictionary.xsd, gmlBase.xsd, basicTypes.xsd</xsl:param> 

<xsl:param name="allSchemas"> 

<xsl:call-template name="getUniqueSchemaList"> 

<xsl:with-param name="list" select="$schemas"/> 
<xsl:with-param name="usePre"></xsl:with-param> 

</xsl:call-template> 

</xsl:param> 
<xsl:template match="/"> 

<xsl:param name="docName">gml:xsd</xsl:param> 
<xsl:param name="top" select="true()"/> 
<xsl:param name="tns" select="//xsd:schema/@targetNamespace"/> 
<xsl:param name="vers" select="//xsd:schema/@version"/> 
<xsl;variable name="ltns"> 

<xsl:for-each select="//xsd:schema/namespace::* "> 

<xsl:if test="local-name() != 'targetNamespace' and string() = $tns"> 

<xsl:value-of select="local-name()"/> 

</xsl:if> 

</xsl:for-each> 

</xsl:variable> 
<xsl:variable name="tnsp"> 

<xsl:choose> 

<xsl:when test="$ltns =""> 

<xsl:call-template name="getTargetNameSpacePrefix"> 

<xsl:with-param name="list" select="$tns"/> 

</xsl:call-template> 

</xsl:when> 
<xsl:otherwise> 

<xsl:value-of select="$ltns"/> 

</xsl:otherwise> 

</xsl:choose> 

</xsl:variable> 
<xsl:text>&#xA;</xsl:text> 
<xsl:choose> 

<xsl:when test="$top"> 

<xsl:text disable-output-escaping="yes">&lt;depends version="</xsl:text><xsl:value-of 

select="$vers"/><xsl:text disable-output-escaping="yes">"&gt;</xsl:text> 

348 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</xsl:when> 
<xsl:otherwise> 

<xsl:for-each select="/xsd:schema"> 

<xsl:for-each 

select="xsd:complexType|xsd:group|xsd:simpleType|xsd:element|xsd:attribute|xsd:attributeGroup"> 

<xsl:variable name="type" select="local-name()"/> 
<xsl:choose> 

<xsl:when test="$type ='complexType' "> 

<xsl:call-template name="complexType"> 

<xsl:with-param name="docName" select="$docName"/> 
<xsl:with-param name="targetNamespace" select="$tnsp"/> 

</xsl:call-template> 

</xsl:when> 
<xsl:when test="$type = 'simpleType' "> 

<xsl:call-template name="simpleType"> 

<xsl:with-param name="docName" select="$docName"/> 
<xsl:with-param name="targetNamespace" select="$tnsp"/> 

</call-template> 

</xsl:when> 
<xsl:when test="$type ='element' "> 

<xsl:call-template name="globalElement"> 

<xsl:with-param name="docName" select="$docName"/> 
<xsl:with-param name="targetNamespace" select="$tnsp"/> 

</xsl:call-template> 

</xsl:when> 
<xsl:when test="$type ='attribute' "> 

<xsl:call-template name="globalAtt"> 

<xsl:with-param name="docName" select="$docName"/> 
<xsl:with-param name="targetNamespace" select="$tnsp"/> 

</xsl:call-template> 

</xsl:when> 
<xsl:when test="$type ='attributeGroup' "> 

<xsl:call-template name="globalAtt"> 

<xsl:with-param name="docName" select="$docName"/> 
<xsl:with-param name="targetNamespace" select="$tnsp"/> 

</xsl:call-template> 

</xsl:when> 
<xsl:otherwise/> 

</xsl:choose> 

</xsl:for-each> 

</xsl:for-each> 

</xsl:otherwise> 

</xsl:choose> 
<xsl:if test="$top"> 

<xsl:call-template name="dependSchemas"> 

<xsl:with-param name="list select="$allSchemas"/> 

</xsl:call-template> 
<xsl:text disable-output-escaping="yes">&#xA;&lt;/depends&gt;&#xA;</xsl:text> 

349 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</xsl:if> 

</xsl:template> 
<!--=======================================================--> 
<xsl:template name="complexType"> 

<xsl:param name="docName"/> 
<xsl:param name="targetNamespace"/> 
<xsl:variable name="name" select="@name"/> 
<xsl:if test="$name"> 

<xsl:element name="def"> 

<xsl:attribute name="name"><xsl:value-of select="$targetNamespace"/>:<xsl:value-of 

select="$name"/></xsl:attribute> 

<xsl:attribute name="doc"><xsl:value-of select="$docName"/></xsl:attribute> 
<xsl:variable name="uses"> 

<xsl:apply-templates select="./xsd:complexContent|./xsd:simpleContent"/> 
<xsl:call-template name="EltAndAtt"/> 

</xsl:variable> 
<!-USES <xsl:value-of select="$uses"/> --> 
<xsl:call-template name="writeUses"> 

<xsl:with-param name="list" select="$uses"/> 

</xsl:call-template> 

</xsl:element> 

</xsl:if> 

</xsl:template> 
<!--=======================================================--> 
<xsl:template match="xsd:complexContent"> 

<xsl:for-each select="descendant::xsd:extension"> 

<xsl:value-of select="@base"/> 
<xsl:text>?extension|</xsl:text> 

</xsl:for-each> 
<xsl:for-each select="descendant::xsd:restriction"> 

<xsl:value-of select="@base"/> 
<xsl:text>?restriction|</xsl:text> 

</xsl:for-each> 

</xsl:template> 
<!--=======================================================--> 
<xsl:template match="xsd:simpleContent"> 

<xsl:for-each select="descendant::xsd:extension"> 

<xsl:value-of select="@base"/> 
<xsl:text>?extension|</xsl:text> 

</xsl:for-each> 
<xsl:for-each select="decendant::xsd:restriction"> 

<xsl:value-of select="@base"/> 
<xsl:text>?restriction|</xsl:text> 

</xsl:for-each> 

</xsl:template> 
<!--=======================================================--> 
<xsl:template name="EltAndAtt"> 

<xsl:for-each 

350 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

select="descendant::xsd:element|descendant::xsd:group|descendant::xsd:attribute|descendant::xsd:attributeGroup"

<xsl:variable name="name" select="@type|@ref"/> 
<xsl:if test="$name and contains($name, ': ') "> 

<xsl:value-of select="$name"/> 
<xsl:text>|</xsl:text> 

</xsl:if> 

</xsl:for-each> 

</xsl:template> 
<!--=======================================================--> 

 <xsl:template name="simpleType"> 
  <xsl:param name="docName"/> 
  <xsl:param name="targetNamespace"/> 
  <xsl:variable name="name" select="@name"/> 
  <xsl:if test="$name"> 
   <xsl:element name="def"> 
    <xsl:attribute name="name"><xsl:value-of select="$targetNamespace"/>:<xsl:value-of 
select="$name"/></xsl:attribute> 
    <xsl:attribute name="doc"><xsl:value-of select="$docName"/></xsl:attribute> 
    <!-- SIMPLE <xsl:copy-of select=". "/>--> 
    <xsl:variable name="uses"> 
     <xsl:for-each select="xsd:union">  
     <!-UNION <xsl:value-of select="@memberTypes"/> --> 
      <xsl:variable name="members" select="@memberTypes"/> 
      <xsl:if test="$members"> 
       <xsl:value-of select="translate($members, ' ', '|') "/> 
       <xsl:text>|</xsl:text> 
      </xsl:if> 
     </xsl:for-each> 
     <xsl:for-each select="xsd:list"> 
      <xsl:variable name="items" select="@itemType"/> 
      <xsl:if test="$items"> 
       <xsl:value-of select="$items"/> 
       <xsl:text>|</xsl:text> 
      </xsl:if> 
     </xsl:for-each> 
    </xsl:variable> 
    <!-- USES <xsl:value-of select="$uses"/> --> 
    <xsl:call-template name="writeUses"> 
     <xsl:with-param name="list" select="$uses"/> 
    </xsl:call-template> 
   </xsl:element> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="globalElement"> 
  <xsl:param name="docName"/> 
  <xsl:param name="targetNameSpace"/> 

351 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

  <xsl:variable name="name" select="@name"/> 
  <xsl:if test="$name"> 
   <xsl:element name="def"> 
    <xsl:attribute name="name"><xsl:value-of select="$targetNamespace"/>:<xsl:value-of 
select="$name"/></xsl:attribute> 
    <xsl:attribute name="doc"><xsl:value-of select="$docName"/></xsl:attribute> 
    <xsl:variable name="uses"> 
     <xsl:variable name="type" select="@type"/> 
     <xsl:if test="$type and contains($type, ':') "> 
      <xsl:value-of select="$type"/> 
      <xsl:text>|</xsl:text> 
     </xsl:if> 
     <xsl:variable name="sub" select="@substitutionGroup"/> 
     <xsl:if test="$sub"> 
      <xsl:value-of select="$sub"/> 
      <xsl:text>|</xsl:text> 
     </xsl:if> 
    </xsl:variable> 
    <!--USES <xsl:value-of select="$uses"/> --> 
    <xsl:call-template name="writeUses"> 
     <xsl:with-param name="list" select="$uses"/> 
    </xsl:call-template> 
   </xsl:element> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="globalAtt"> 
  <xsl:param name="docName"/> 
  <xsl:param name="targetNamespace"/> 
  <xsl:variable name="name" select="@name"/> 
  <xsl:if test="$name"> 
   <xsl:element name="def"> 
    <xsl:attribute name="name"><xsl:value-of select="$targetNamespace"/>:<xsl:value-of 
select="$name"/></xsl:attribute> 
    <xsl:attribute name="doc"><xsl:value-of select="$docName"/></xsl:attribute> 
    <xsl:variable name="uses"> 
     <xsl:variable name="type" select="@type"/> 
     <xsl:if test="$type and contains($type, ':') "> 
      <xsl:value-of select="$type"/> 
      <xsl:text>|</xsl:text> 
     </xsl:if> 
     <xsl:call-template name="EltAndAtt"/> 
    </xsl:variable> 
    <!-- USES <xsl:value-of select="$uses"/> --> 
    <xsl:call-template name="writeUses"> 
     <xsl:with-param name="list" select="$uses"/> 
    </xsl:call-template> 
   </xsl:element> 

352 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="writeUses"> 
  <xsl:param name=" list"/> 
  <xsl:if test="$list != ""> 
   <xsl:variable name="first" select="substring-before($list,'|')"/> 
   <xsl:variable name="eor" select="substring-after($first,'?')"/> 
   <xsl:variable name="use"> 
    <xsl:choose> 
     <xsl:when test="contains($first,'?')"> 
      <xsl:value-of select="substring-before($first,'?')"/> 
     </xsl:when> 
     <xsl:otherwise> 
      <xsl:value-of select="$first"/> 
     </xsl:otherwise> 
    </xsl:choose> 
   </xsl:variable> 
   <xsl:variable name="testp"> 
    <xsl:value-of select="$use"/> 
    <xsl:text>|</xsl:text> 
   </xsl:variable> 
   <xsl:variable name="testq"> 
    <xsl:value-of select="$use"/> 
    <xsl:text>?</xsl:text> 
   </xsl:variable> 
   <xsl:variable name="rest" select="substring-after($list,'|')"/> 
   <xsl:choose> 
    <xsl:when test="contains($rest,$testp)"/> 
    <xsl:when test="contains($rest,$testq)"/> 
    <xsl:when test="$use = ""/> 
    <xsl:otherwise> 
     <xsl:element name="uses"> 
      <xsl:attribute name="name"><xsl:value-of select="$use"/></xsl:attribute> 
      <xsl:if test="$eor != ""> 
       <xsl:attribute name="derivation"><xsl:value-of select="$eor"/></xsl:attribute> 
      </xsl:if> 
     </xsl:element> 
    </xsl:otherwise> 
   </xsl:choose> 
   <xsl:call-template name="writeUses"> 
    <xsl:with-param name="list" select="$rest"/> 
   </xsl:call-template> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="dependSchemas"> 
  <xsl:param name="list"/> 

353 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

  <xsl:if test="$list != ''"> 
   <xsl:variable name="first" select="substring-before($list, ',')"/> 
   <xsl:variable name="rest" select="substring-after($list, ',')"/> 
   <xsl:apply-templates select="document($first, /)"> 
    <xsl:with-param name="docName" select="$first"/> 
    <xsl:with-param name="top" select="false()"/> 
   </xsl:apply-templates> 
   <xsl:choose> 
    <xsl:when test="contains($rest, ',')"> 
     <xsl:call-template name="dependSchemas"> 
      <xsl:with-param name="ist" select="$rest"/> 
     </xsl:call-template> 
    </xsl:when> 
    <xsl:otherwise/> 
   </xsl:choose> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <!--=======================================================--> 
</xsl:stylesheet> 

G.3 

gmlSubset.xslt 

<xsl:stylesheet version="1.0" 
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
 xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
 xmlns:xlink="http://www.w3.org/1999/xlink"> 
 <xsl:output method="xml" encoding="UTF-8" indent="yes"/> 
 <!--======================================================= 
 This stylesheet is designed to be used on gml.dep(produced from 
 gml.xsd by depends.xslt) to produce a specialized gmlSubset.xsd that 
 contains only the types and elements specified in the “wanted” parameter, 
 and the types and elements on which they depend. Note that the type and 
 element items in the “wanted” parameter must include namespace prefixes, 
 and that they must be separated by commas, including a trailing comma after 
 the last item. 
 =======================================================--> 
 <xsl:include href="utility.xslt"/> 
 <xsl:param name="baseUri" select="document('../../base/gml.xsd')"/> 
 <!-- sample1 <xsl:param name="wanted">gml:featureProperty, gml:lineStringProperty, gml:polygonProperty, 
</xsl:param> --> 
 <!-- sample2 <xsl:param name="wanted">gml:GeodeticCRS, gml:AbstractCoverage, gml:track, </xsl:param> --> 
 <!-- sample3 <xsl:param name="wanted">gml:AbstractFeatureCollection, gml:ItemStyleDescriptorType, 
gml:FeatureConstraintType, </xsl:param --> 
 <xsl:param name="wanted">gml:metaDataProperty, gml:Abstractassociation, gml:members, gml:Array, 
gml:curveProperty, gml:LineString, gml:LinearRing, gml:exterior, gml:interior, gml:surfaceMember, 
gml:surfaceProperty, gml:multiSurfaceProperty, gml:directedNode, gml:directedEdge, gml:directedFace, 
gml:IsolatedProperty, gml:featureProperty, gml:featureMembers, gml:AbstractFeatureCollection, 
gml:featureMember, gml:BaseStyleDescriptorType, </xsl:param> 

354 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

 <xsl:template match="/"> 
  <xsl:variable name="wantedList"> 
   <xsl:call-template name="getWantedList"> 
    <xsl:with-param name="list" select="$wanted"/> 
    <xsl:with-param name="from">BEGIN</xsl:with-param> 
    <xsl:with-param name="depth">0</xsl:with-param> 
   </xsl:call-template> 
  </xsl:variable> 
  <xsl:variable name="vers" select="//depends/@version"/> 

<schema targetNamespace="http://www.opengis.net/gml/3.2" xmlns="http://www.w3.org/2001/XMLSchema" 

xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:gml="http://www.opengis.net/gml/3.2" 
xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="qualified" version="{$vers}"> 

   <annotation> 

<documentation>GML Subset schema for<xsl:value-of select="$wanted"/> written by 

gmlSubset.xslt.</documentation> 

   </annotation> 
 
   <xsl:if test="contains($wantedList, 'xlink:') "> 

<import namespace="http://www.w3.org/1999/xlink" schemaLocation="../../xlink/xlinks.xsd"/> 

   </xsl:if> 
   <xsl:call-template name="writeWantedList"> 
    <xsl:with-param name="list" select="$wantedList"/> 
   </xsl:call-template> 
  </schema> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="getDocName"> 
  <xsl:param name="wanted"/> 
  <xsl:for-each select="//depends/def[@name=$wanted]"> 
   <xsl:value-of select="@doc"/> 
  </xsl:for-each> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="getUses"> 
  <xsl:param name="wanted"/> 
  <xsl:for-each select="//depends/def[@name=$wanted]"> 
   <xsl:for-each select="uses"> 
    <xsl:value-of select="@name"/> 
    <xsl:text>,</xsl:text> 
   </xsl:for-each> 
  </xsl:for-each> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="writeWanted"> 
  <xsl:param name="wanted"/> 
  <xsl:choose> 
   <xsl:when test="contains($wanted, 'xlink:')"> 
    <!-- XLINK <xsl:value-of select="$wanted"/> --> 

355 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

   </xsl:when> 
   <xsl:otherwise> 
    <!-- OTHER <xsl:value-of select="$wanted"/> --> 
    <xsl:variable name="docName"> 
     <xsl:call-template name="getDocName"> 
      <xsl:with-param name="wanted" select="$wanted"/> 
     </xsl:call-template> 
    </xsl:variable> 
    <xsl:variable name="localName"> 
     <xsl:call-template name="removePrefix"> 
      <xsl:with-param name="name" select="$wanted"/> 
      <xsl:with-param name="pre">:</xsl:with-param> 
     </xsl:call-template> 
    </xsl:variable> 
    <xsl:call-template name="Separator"/> 
    <xsl:for-each select="document($docName, $baseUri) "> 
     <xsl:for-each select="//xsd:schema/*[@name = $localName]"> 
      <xsl:copy-of select="."/> 
     </xsl:for-each> 
    </xsl:for-each> 
   </xsl:otherwise> 
  </xsl:choose> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="writeWantedList"> 
  <xsl:param name="list"/> 
  <xsl:if test="$list !=''"> 
   <xsl:variable name="first" select="substring-before($list, ',')"/> 
   <xsl:variable name="rest" select="substring-after($list, ',')"/> 
   <xsl:call-template name="writeWanted"> 
    <xsl:with-param name="wanted" select="$first"/> 
   </xsl:call-template> 
   <xsl:if test="contains($rest, ',')"> 
    <xsl:call-template name="writeWantedList"> 
     <xsl:with-param name="list" select="$rest"/> 
    </xsl:call-template> 
   </xsl:if> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="getWantedList"> 
  <xsl:param name="list"/> 
  <xsl:param name="seen"/> 
  <xsl:param name="from"/> 
  <xsl:param name="depth"/> 
  <xsl:if test="$list != ''"> 
   <xsl:variable name="first" select="substring-before($list, ',') "/> 
   <xsl:variable name="firstSep" select=“concat($first, ',') "/> 

356 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

   <xsl:variable name="rest" select="substring-after($list, ',')"/> 
   <xsl:choose> 
    <xsl:when test="contains($seen, $firstSep) "> 
     <xsl:call-template name="getWantedList"> 
      <xsl:with-param name="list" select="$rest"/> 
      <xsl:with-param name="seen" select="$seen"/> 
      <xsl:with-param name="from">REST</xsl:with-param> 
      <xsl:with-param name="depth" select="$depth + 1"/> 
     </xsl:call-template> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:value-of select="$firstSep"/> 
     <xsl:variable name="usesList"> 
      <xsl:call-template name="getUses"> 
       <xsl:with-param name="wanted" select="$first"/> 
      </xsl:call-template> 
     </xsl:variable> 
     <xsl:variable name="toDo" select="concat($usesList, $rest)"/> 
     <xsl:variable name="nowSeen" select="cancat($seen, $firstSep) "> 
     <xsl:call-template name=“getWantedList"> 
      <xsl:with-param name="list" select="$toDo"/> 
      <xsl:with-param name="seen" select="$nowSeen"/> 
      <xsl:with-param name="from">USES</xsl:with-param> 
      <xsl:with-param name="depth" select="$depth +1"/> 
     </xsl:call-template> 
    </xsl:otherwise> 
   </xsl:choose> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
</xsl:stylesheet> 
 

G.4 

utility.xslt 

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
 <xsl:output method="xml" encoding="UTF-8" indent="yes"/> 
 <!--=======================================================--> 
 <xsl:template name="getTargetNameSpacePrefix"> 
  <xsl:param name="list"/> 
  <xsl:if test="$list != ''"> 
   <xsl:variable name="first" select="substring-before($list, '/')" /> 
   <xsl:variable name="rest" select="substring-after($list, '/')"/> 
   <xsl:choose> 
    <xsl:when test="contains($rest, '/') "> 
     <xsl:call-template name="getTargetNameSpacePrefix"> 
      <xsl:with-param name="list" select="$rest"/> 
     </xsl:call-template> 

357 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

    </xsl:when> 
    <xsl:when test="$rest =''"> 
     <xsl:value-of select="$first"/> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:value-of select="$rest"/> 
    </xsl:otherwise> 
   </xsl:choose> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="getPathPrefix"> 
  <xsl:param name="file"/> 
  <xsl:if test="contains($file, '/') "> 
   <xsl:variable name="pre" select="substring-before($file, '/')"/> 
   <xsl:variable name="suf" select="substring-after($file, '/')"/> 
   <xsl:choose> 
    <xsl:when test="contains($suf, '/') "> 
     <xsl:value-of select=$pre"/><xsl:text>/</xsl:text> 
     <xsl:call-template name="getPathPrefix"> 
      <xsl:with-param name="file" select="$suf"/> 
     </xsl:call-template> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:variable name="path"> 
      <xsl:call-template name="removeSuffix"> 
       <xsl:with-param name="name" select="$file"/> 
       <xsl:with-param name="suf" select="$suf"/> 
      </xsl:call-template> 
     </xsl:variable> 
     <xsl:value-of select="$path"/> 
    </xsl:otherwise> 
   </xsl:choose> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="removePrefix"> 
  <xsl:param name="name"/> 
  <xsl:param name="pre"/> 
  <xsl:variable name="npName"> 
   <xsl:choose> 
    <xsl:when test="contains($name, $pre)"> 
     <xsl:value-of select="substring-after($name, $pre)"/> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:value-of select="$name"/> 
    </xsl:otherwise> 
   </xsl:choose> 

358 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

  </xsl:variable> 
  <xsl:value-of select="$npName"/> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="removeSuffix"> 
  <xsl:param name="name"/> 
  <xsl:param name="suf"/> 
  <xsl:variable name="nsName"> 
   <xsl:choose> 
    <xsl:when test="contains($name, $suf)"> 
     <xsl:value-of select="substring-before($name, $suf)"/> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:value-of select="$name"/> 
    </xsl:otherwise> 
   </xsl:choose> 
  </xsl:variable> 
  <xsl:value-of select="$nsName"/> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="lowerLeading"> 
  <xsl:param name="name"/> 
  <xsl:variable name="ch1" select="substring($name, 1, 1)"/> 

<xsl:variable name="lc1" select="translate($ch1, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',  

'abcdefghijklmnopqrstuvwxyz') "/> 

  <xsl:value-of select="concat($lc1,substring($name, 2))"/> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="uniqueList"> 
  <xsl:param name="list"/> 
  <xsl:param name="sep"/> 
  <xsl:param name="seen"/> 
  <xsl:param name="pre">../base/</xsl:param> 
  <xsl:if test="$list != ''"> 
   <xsl:variable name="first" select="substring-before($list, $sep)"/> 
   <xsl:variable name="firstSep" select="concat($first, $sep)"/> 
   <xsl:variable name="rest" select="substring-after($list, $sep)"/> 
   <xsl:choose> 
    <xsl:when test="contains($seen, $firstSep) "> 
     <xsl:call-template name="uniqueList"> 
      <xsl:with-param name="list" select="$rest"/> 
      <xsl:with-param name="sep" select="$sep"/> 
      <xsl:with-param name="seen" select="$seen"/> 
     </xsl:call-template> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:value-of select="$firstSep"/> 
     <xsl:variable name="nowSeen" select="concat($seen, $firstSep) "/> 

359 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

     <xsl:call-template name="uniqueList"> 
      <xsl:with-param name="list" select="$rest"/> 
      <xsl:with-param name="sep" select="$sep"/> 
      <xsl:with-param name="seen" select="$nowSeen"/> 
     </xsl:call-template> 
    </xsl:otherwise> 
   </xsl:choose> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="getIncludedDocs"> 
  <xsl:param name="docName"/> 
  <xsl:param name="usePre"/> 
  <xsl:param name="seenList"/> 
  <xsl:param name="sep">,</xsl:param> 
  <xsl:value-of select="$docName"/> 
  <xsl:text>,</xsl:text> 
  <xsl:variable name="pathPre"> 
   <xsl:call-template name="getPathPrefix”> 
    <xsl:with-param name="file" select="$docName"/> 
   </xsl:call-template> 
  </xsl:variable> 
  <xsl:variable name="callPathPre"> 
   <xsl:choose> 
    <xsl:when test="$pathPre = " or $pathPre = './ ' "> 
     <xsl:value-of select="$usePre"/> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:value-of select="$pathPre"/> 
    </xsl:otherwise> 
   </xsl:choose> 
  </xsl:variable> 
  <xsl:for-each select="document($docName, /)"> 
   <xsl:for-each select="//xsd:include | //xsd:import"> 
    <xsl:variable name="iDoc" select="@schemaLocation"/> 
    <xsl:variable name="iPathPre"> 
     <xsl:call-template name=“getPathPrefix”> 
      <xsl:with-param name="file" select="$iDoc"/> 
     </xsl:call-template> 
    </xsl:variable> 
    <xsl:variable name="iDocSuf"> 
     <xsl:call-template name="removePrefix"> 
      <xsl:with-param name="name" select="$iDoc"/> 
      <xsl:with-param name="pre" select="$iPathPre"/> 
     </xsl:call-template> 
    </xsl:variable> 
    <xsl:variable name="usePathPre"> 
     <xsl:choose> 

360 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

      <xsl:when test="$iPathPre = " or $iPathPre = './ ' "> 
       <xsl:value-of select="$callPathPre"/> 
      </xsl:when> 
      <xsl:otherwise> 
       <xsl:value-of select="$iPathPre"/> 
      </xsl:otherwise> 
     </xsl:choose> 
    </xsl:variable> 
    <xsl:variable name="uDoc"> 
     <xsl:value-of select="concat($usePathPre, $iDocSuf)"/> 
    </xsl:variable> 
    <xsl:variable name="uDocSep"> 
     <xsl:value-of select="concat($uDoc,$sep)"/> 
    </xsl:variable> 
    <xsl:if test="not(contains($seenList,$uDocSep))"> 
     <xsl:variable name="seenListPlus" select="concat($seenList, $uDocSep) "/> 
     <xsl:call-template name="getIncludedDocs"> 
      <xsl:with-param name="docName" select="$uDoc"/> 
      <xsl:with-param name="usePre" select="$usePathPre"/> 
      <xsl:with-param name="seenList" select="$seenListPlus"/> 
     </xsl:call-template> 
    </xsl:if> 
   </xsl:for-each> 
  </xsl:for-each> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="getDocumentList"> 
  <xsl:param name="list"/> 
  <xsl:param name="seenList"/> 
  <xsl:param name="usePre"/> 
  <xsl:if test="$list != "''"> 
   <xsl:variable name="first" select="substring-before($list, ', ') "/> 
   <xsl:variable name="rest" select="substring-after($list, ', ') "/> 
   <xsl:variable name="included"> 
    <xsl:call-template name="getIncludedDocs"> 
     <xsl:with-param name="docName" select="$first"/> 
     <xsl:with-param name="usePre" select="$usePre"/> 
     <xsl:with-param name="seenList" select="$seenList"/> 
    </xsl:call-template> 
   </xsl:variable> 
   <xsl:value-of select="$included"/> 
   <xsl:variable name="seenListIncluded" select="concat($seenList, $included) "/> 
   <xsl:if test="contains($rest, ',') "> 
    <xsl:call-template name="getDocumentList"> 
     <xsl:with-param name="list" select="$rest"/> 
     <xsl:with-param name="seenList" select="$seenListIncluded"/> 
     <xsl:with-param name="usePre" select="$usePre"/> 
    </xsl:call-template> 

361 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

   </xsl:if> 
  </xsl:if> 
 </xsl:template> 
 <!--=======================================================--> 
 <xsl:template name="getUniqueSchemaList"> 
  <xsl:param name="list"/> 
  <xsl:param name="usePre"/> 
  <xsl:variable name="allSchemas"> 
   <xsl:call-template name="getDocumentList"> 
    <xsl:with-param name="list" select="$list"/> 
    <xsl:with-param name="usePre" select="$usePre"/> 
   </xsl:call-template> 
  </xsl:variable> 
  <xsl:variable name="uniqueSchemas"> 
   <xsl:call-template name="uniqueList"> 
    <xsl:with-param name="list" select="$allSchemas"/> 
    <xsl:with-param name="sep">,</xsl:with-param> 
   </xsl:call-template> 
  </xsl:variable> 
  <xsl:value-of select="$uniqueSchemas"/> 
 </xsl:template> 
 <!--=======================================================--> 
  <xsl:template name="Separator"> 
 <xsl:param name="comment" select="'=========='"/> 
 <xsl:text>&#xA;</xsl:text> 
 <xsl:text disable-output-escaping="yes"> 
  &lt;!--==================</xsl:text><xsl:value-of select="$comment"/><xsl:text 
disable-output-escaping="yes">===================== --&gt; 
 </xsl:text> 
  <!--=======================================================--> 
 </xsl:template> 
</xsl:stylesheet> 

362 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書H 
(参考) 

既定表現様式 

H.1 全般 

GMLは,データの内容を,図的,又はその他の表現から厳密に分けるように設計されてきた。したがっ

て,GMLの地物の記述は,その地物の表現に関する情報を一切含まない。 

この附属書では,関連するGMLデータ集合に適用する場合に,W3C Scalable Vector Graphics(SVG)を

用いて,そのデータの図的な可視化を行う表現化規則の集合を定義するためのスキーマ構成部品を与える。

これらの表現様式規則は,地物型の名前及び主題,空間地物のプロパティなどを含むデータ要素に基づい

た,SVG文書の生成を可能にする。 

GMLデータの表現様式を定義可能にする機能は,GMLデータの描画に不可欠なものとなるように考慮

されている。既定表現様式のスキーマ要素は,このための手段を提供する一方で,既知の問題,特に,既

存のより広く実用されているOpenGIS Implementation Specification Styled-Layer Descriptor(SLD)と調和す

ることが必要である。ISO 19117の改正もまた,この段階において考慮しなければならない。加えて,そ

の処理,例えば,地物をその表現様式から分けるための表現様式辞書の導入では,追加的な拡張も考慮し

なければならない。したがって,既定表現様式のスキーマ要素は,この規格では規定扱いではない。 

これらの表現様式記述スキーマ要素がGML名前空間に“ある”ことが重要であるとは考えないことに

注意する。ただし,規格化された表現様式記述機能が存在することは重要である。一般に受け入れられた

表現様式スキーマが存在する場合,この附属書は削除されてもよい。 

この附属書で記述される既定表現スキーマ要素は,GMLデータ集合に“接続する”ことができる,分離

されたモデルとして使用されることを意図している。 

例 典型的な使用法は,特定の地物型と関連付けられた永続的な表現様式を与えることである。 

“既定”という用語は,関連するGMLデータとの緩やかな関係を示すが,そのデータ集合に割り当て

られた表現様式情報を使用してもよいし,それを完全に無視してもよい。したがって,関連する既定表現

様式規則の使用については,表現のための応用システムが決定する。 

この附属書で定義する様式の発想は,GMLオブジェクト(例 地物,幾何又は位相)とSVGで表現す

る図的表現要素の間との効果的な関連付けにある。例えば,この様式では,道路地物の中心線を表現する

gml:Curveの既定の図的表現は,SVGパスのための線幅及び線色をもつSVGパスであるとすることができ

る。 

既定表現様式スキーマ構成部品は,W3C Synchronized Multimedia Integration Language(SMIL)スキーマ

にも依存している。 

既定表現様式情報とGMLデータインスタンスとの関係は,gml:defaultStyleプロパティによって実現す

る。このプロパティは,関連する応用スキーマの地物型に割り当てることによって,インスタンスに割り

当てられる。GMLは地物に基づく符号化法なので,既定様式は常に,地物,複数の地物及び地物の集まり

に適用する。既定様式は,このような地物のプロパティに基づいた図的な表現を可能にする。 

注記 既定表現様式スキーマの概念モデル及びISO 19117の実装の記述は,この規格の中で参考扱い

なので,この附属書には含まない。 

363 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

H.2 最上位表現様式要素 

H.2.1 概要 

GMLデータ集合及び表現様式記述の結合は,唯一のgml:defaultStyleプロパティを通じて行う。このプ

ロパティの値であるgml:Styleオブジェクトは,表現様式の全ての記述を含む。gml:defaultStyleプロパティ

は,地物要素及び表現様式規則の関連付けに使用できるように,応用スキーマにおける地物型定義で記述

しなければならない。 

H.2.2 defaultStyle要素 

gml:defaultStyleプロパティは,大域要素として定義するプロパティであり,応用スキーマで定義される

あらゆる地物に割り当てることができなければならない。プロパティの定義は,次のとおりである。 

<element name="defaultStyle" type="gml:DefaultStylePropertyType"/> 

<complexType name="DefaultStylePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractStyle"/> 

</sequence> 
<attribute name="about" type="anyURI"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:defaultStyleプロパティは,about属性を含んでもよい。これによって,地物の集まりにおいて,その

集まりの中の地物に既定表現様式を割り当てるために使うことができる。この場合,gml:defaultStyleプロ

パティは,表現様式規則を含むか又は参照する集まり(応用スキーマは,そのようなプロパティを幾つも

もつことを認めている。)に結び付けられる。about属性が使われているとき,それはどの地物(又は地物

の集まり)を参照してもよく,使われていないときは,地物の表現様式はabout属性で結び付けられる

gml:defaultStyleプロパティの親地物に適用される。 

このプロパティは,地物型を定義する応用スキーマを通じて,地物に含まれるようにすることができる。 

例 次のexp:Road地物型の定義は,gml:defaultStyleプロパティを含むことを示す。 
<element name="Road" type="exp:RoadType" substitutionGroup="gml:AbstractFeature"/> 

<complexType name="RoadType"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element ref="gml:centerLineOf"/> 
<element ref="gml:defaultStyle"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

H.2.3 Style要素 

gml:Styleオブジェクトは,gml:defaultStyleプロパティの既定の固有値である。これは,他の全ての部分

的な表現様式の記述を格納する,最上位の表現様式オブジェクトである。この定義は,次のとおりである。 

<element name="Style" type="gml:StyleType" substitutionGroup="gml:AbstractStyle"/> 

364 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="StyleType"> 

<complexContent> 

<extension base="gml:AbstractStyleType"> 

<sequence> 

<element ref="gml:featureStyle" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:graphStyle" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:Styleオブジェクトの内容モデルは,gml:AbstractStyleTypeから派生する。この型は,例えば独自の

表現様式オブジェクトを作るといった,拡張を可能とする目的のための基本抽象型を与える。そして,派

生元であるgml:AbstractGMLTypeに,新たな内容は一切追加しない。 

<element name="AbstractStyle" type="gml:AbstractStyleType" abstract="true" 
substitutionGroup="gml:AbstractGML"/> 

<complexType name="AbstractStyleType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractGMLType"/> 

</complexContent> 

</complexType> 

しかしながら,gml:Styleが表現様式を記述する豊富な機能を提供するので,独自の表現様式オブジェク

ト作成が日常化することを仮定しているわけではない。 

上に示したgml:Styleオブジェクトの定義は,それ自身が拡張方法使用の適切な例であり,スキーマにこ

れらの規則をどのように適用することができるかを示す。 

− 具体的な表現様式オブジェクトの内容モデルは,gml:AbstractStyleTypeから派生する。 

− 具体的な表現様式オブジェクトは,gml:AbstractStyleの代替となる。 

gml:Styleオブジェクトの表現様式要素の機能,すなわち,gml:featureStyle及びgml:graphStyleは,個々

の地物,及び地物の集合を構成する位相グラフという,GMLデータの二つの側面の表現様式を記述するた

めのものである。地物の個々の側面での表現様式を記述する要素,すなわち,地物の表現様式,グラフの

表現様式,位相の表現様式,及びラベルの表現様式は,表現様式記述子と呼ばれることが多い。 

H.3 地物表現様式 

H.3.1 FeatureStyle要素 

地物の表現様式記述子は,gml:featureStyleプロパティによってgml:Styleに割り当てられる。これは,他

のGMLプロパティと同様に,要素内又は遠隔で記述することができる。 

<element name="featureStyle" type="gml:FeatureStylePropertyType"/> 

<complexType name="FeatureStylePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:FeatureStyle"/> 

</sequence> 
<attribute name="about" type="anyURI"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

365 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

この値は,gml:FeatureStyle(地物表現様式記述子)である。地物表現様式記述子は,地物インスタンス

の集合の表現様式情報を記述する。この集合は,この表現様式記述子の一部である選択機構によって定義

される。この表現様式は,集合の個々の地物にそれぞれ適用する。集合の地物間に何の関係も存在しなく

てよいことは重要である。 

注記1 この逆の場合として,地物の集合に全体として表現様式を適用するグラフの表現様式がある。 

地物表現様式記述子の定義は,次のとおりである。 

<element name="FeatureStyle" type="gml:FeatureStyleType" substitutionGroup="gml:AbstractGML"/> 

<complexType name="FeatureStyleType"> 

<complexContent> 

<extension base="gml:AbstractGMLType"> 

<sequence> 

<element name="featureConstraint" type="string" minOccurs="0"/> 
<element ref="gml:geometryStyle" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:topologyStyle" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:labelStyle" minOccurs="0"/> 

</sequence> 
<attribute name="featureType" type="string"/> 
<attribute name="baseType" type="string"/> 
<attribute name="queryGrammar" type="gml:QueryGrammarEnumeration"/> 

</extension> 

</complexContent> 

</complexType> 

表現様式を適用する地物のインスタンスは,featureType属性又はbaseType属性のいずれか一つと,

gml:featureConstraint要素とを使用して選択する。これらの属性は,gml:featureConstraint要素と一緒に使う

場合でも,又はそれを使用しない場合でも,二つの属性は排他的に使用する。 

注記2 再改正では,gml:featureConstraintプロパティ要素が属性となることが望ましい。 

H.3.2 featureType属性 

地物と表現様式とを結び付ける最も単純で一般的な方法は,この属性を使うことである。その値は,表

現しようとするインスタンスの地物名宣言になる。 

例 この値がexp:Roadの場合,gml:FeatureStyleオブジェクトは,単純に全てのRoad地物に適用され

る。この属性の値は常に,地物を宣言する応用スキーマで定義される要素名である。 

H.3.3 baseType 属性 

表現様式を適用する地物インスタンスを選択するもう一つの方法は,この属性の値のように,地物の派

生元である基本型の名前を記述することである。これは通常,XML Schemaの複合型の名前である。派生

の連鎖から生じたどの複合型も使用することができ,その表現様式は,そこから派生するどの地物インス

タンスにも適用される。 

例 gml:AbstractFeatureTypeが属性の値として使用されるとき,表現様式は,データ集合の全ての地物

インスタンスに適用される。 

366 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

H.3.4 featureConstraintプロパティ 

このプロパティは,表現様式を適用する地物インスタンスを更に制約するために使用される。これは,

任意選択であり,その値は,XPath表現である。このプロパティが存在しない場合,表現様式は,featureType

属性,又はbaseType属性で選択された,全ての地物インスタンスに適用される。 

H.3.5 queryGrammar属性 

列挙として定義されるこのプロパティの値は,gml:featureConstraint要素の内容で使用する文法を記述す

る。この列挙は,“XPath”,“Xquery”及び“other”の,三つの値をとることができる。 

様式付きの地物は,ある地物の特定の側面を表現することを意味する。地物の幾何,位相又は任意のテ

キスト文字列の表示を表現することができる。地物の表現様式は,それぞれの目的のために,

gml:GeometryStyle,gml:TopologyStyle及びgml:LabelStyleの三つの表現様式記述子を含む。 

H.4 幾何様式 

gml:geometryStyleプロパティの値は,地物の一つの幾何のための様式について記述する

gml:GeometryStyle記述子である。任意の数の幾何様式記述子を一つの地物様式に割り当てることができる。

これは通常,複数の幾何プロパティをもつ地物には必要である。 

<element name="geometryStyle" type="gml:GeometryStylePropertyType"/> 
 
<complexType name="GeometryStylePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:GeometryStyle" /> 

</sequence> 
<attribute name="about" type="anyURI"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 
 
<element name="GeometryStyle" type="gml:GeometryStyleType" substitutionGroup="gml:AbstractGML"/> 
 
<complexType name="GeometryStyleType"> 

<complexContent> 

<extension base="gml:BaseStyleDescriptorType"> 

<sequence> 

<choice> 

<element ref="gml:symbol"/> 

<element name="style" type="string"/> 

</choice> 
<element ref="gml:labelStyle" minOccurs="0"/> 

</sequence> 
<attribute name="geometryProperty" type="string"/> 
<attribute name="geometryType" type="string"/> 

</extension> 

</complexContent> 

</complexType> 

gml:geometryStyleプロパティは,他のGMLプロパティと同様に,遠隔参照又は要素内で定義する。 

gml:GeometryStyleの中のgeometryProperty属性は,この幾何様式記述子を適用する地物の幾何プロパテ

367 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

ィの名前を指定する。幾何プロパティの応用スキーマがその値として様々な幾何を許可することができる

ので,さらに,geometryType属性を使用して幾何の型を指定することが必要である。 

gml:symbol プロパティをH.7.2に示す。 

プロパティ様式は非推奨である。 

H.5 位相様式 

gml:topologyStyleプロパティの値は,一つの位相プロパティのための様式について記載する

gml:TopologyStyle記述子である。gml:GeometryStyle同様,地物は,複数の位相プロパティをもつことがで

きる。したがって,複数の位相様式記述子は,一つの地物様式の中に指定することができる。 

<element name="topologyStyle" type="gml:TopologyStylePropertyType"/> 
 
<complexType name="TopologyStylePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TopologyStyle"/> 

</sequence> 
<attribute name="about" type="anyURI"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 
 
<element name="TopologyStyle" type="gml:TopologyStyleType" substitutionGroup="gml:AbstractGML"/> 
 
<complexType name="TopologyStyleType"> 

<complexContent> 

<extension base="gml:BaseStyleDescriptorType"> 

<sequence> 

<choice> 

<element ref="gml:symbol"/> 

<element name="style" type="string"/> 

</choice> 
<element ref="gml:labelStyle" minOccurs="0"/> 

</sequence> 
<attribute name="topologyProperty" type="string"/> 
<attribute name="topologyType" type="string"/> 

</extension> 

</complexContent> 

</complexType> 

gml:topologyStyleプロパティは,他のGMLプロパティと同様に,遠隔での参照又は要素内で定義する。 

gml:TopologyStyle記述子の上のtopologyProperty属性には,この位相様式記述子が適合する地物の位相プ

ロパティの名前を指定する。位相プロパティの応用スキーマがその値として様々な位相を許可することが

できるので,さらに,topologyType属性を使用して位相の型を指定することが必要である。 

gml:symbol プロパティをH.7.2に示す。 

プロパティ様式は,非推奨である。 

368 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

H.6 ラベル様式 

gml:labelStyleプロパティの値は,地物の図的表現に加えて表示されるテキストのための様式について記

載するgml:LabelStyle記述子である。ラベルの内容は,必ずしもGMLデータ集合に定義されるわけではな

い。より正確には,内容は,様式自体の中で示される静的なテキスト及びGMLデータ集合からのテキス

トとなり得る。 

ラベル様式には二つの要素がある。様式を指定するgml:style及びラベル内容を構成するために使用され

るgml:labelである。 

<element name="labelStyle" type="gml:LabelStylePropertyType"/> 
 
<complexType name="LabelStylePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:LabelStyle"/> 

</sequence> 
<attribute name="about" type="anyURI"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 
 
<element name="LabelStyle" type="gml:LabelStyleType" substitutionGroup="gml:AbstractGML"/> 
 
<complexType name="LabelStyleType"> 

<complexContent> 

<extension base="gml:BaseStyleDescriptorType"> 

<sequence> 

<element name="style" type="string"/> 
<element name="label" type="gml:LabelType"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:labelStyleプロパティは,他のGMLプロパティと同様に,遠隔での値の参照又は要素内で定義する。 

gml:style要素は,与えられたテキストの様式を指定するために使用される。この要素の型は,文字列で

あり,CSS2(Cascading Style Sheets Version 2.0)表現様式の文法は図的プロパティを表すために使用される。 

例1 次の地物の様式は,幾何様式の構造中でgml:style要素の使用を示す。 
<gml:FeatureStyle featureType="exp:City"> 

<gml:GeometryStyle> 

<gml:style>fill:blue;stroke:white</gml:style> 

</gml:GeometryStyle> 

</gml:FeatureStyle> 

前述のように,gml:LabelStyle記述子の上のgml:labelプロパティは静的テキストで書かれたテキスト及

びGMLデータから抽出したテキストで構成することができる。 

<complexType name="LabelType" mixed="true"> 

<sequence> 

<element name="LabelExpression" type="string" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 
<attribute ref="gml:transform"/> 

369 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

内容モデルは,テキストの内容及び無制限の数のgml:LabelExpression要素の両方を使うことを許す。

gml:LabelExpression要素の値は,地物の幾つかのプロパティ値を選択するXPath表現である。 

例2 このGMLデータの素片と対応するgml:label様式を検討する。 
<exp:City> 

<gml:name>Belgrade</gml:name> 
<exp:size>1,700,000</exp:size> 
<gml:extentOf> 

… 

</gml:extentOf> 

</exp:City> 
 
<gml:FeatureStyle featureType="exp:City"> 

<gml:LabelStyle> 

<gml:style>font-family:Verdana;font-size:16;fill:black</gml:style> 
<gml:label> 

City: 
<gml:LabelExpression>//City/name</gml:LabelExpression> 
, Size: 
<gml:LabelExpression>//City/size</gml:LabelExpression> 

</gml:label> 

</gml:LabelStyle> 

</gml:FeatureStyle> 

このラベル様式は,次に表示しているようなテキストになる。 

City: Belgrade, Size: 1,700,000 

H.7 共通の表現様式要素 

H.7.1 概要 

共通表現様式要素の中には,複数の様式記述子が使用するものがある。gml:symbol要素は,幾何及び位

相の様式記述子が使用する。spatialResolution,styleVariation及びanimation属性は,gml:BaseStyleDesriptorType

で宣言され,幾何,位相,ラベル及びグラフの様式記述子によって継承される。 

H.7.2 記号 

gml:symbolプロパティ要素は,幾何又は位相が表示に使用する図的記号を指定する。記号は,特別な,

暗黙の意味をもたない図的オブジェクトの図的な属性を記述したものである。それは,線,円,多角形,

又はより複雑な図の記述となることがある。記号要素を使用すると,二つの方法で特別な記号を指定する

ことができる。 

− 遠隔:他の遠隔プロパティと同様に,記号プロパティは,遠隔オブジェクトを指すリンクを指定する

ことを許すgml:AssociationAttributeGroup属性をもつ。 

− 要素内:gml:symbolプロパティの値は,任意の指示子である。これは,記号のための任意の文法を指

定することを許す。 

この要素は,symbolType及びtransformの二つの追加属性をもつ。symbolType属性は列挙型であり,“svg”, 

“xpath”及び“other”の三つの値のうちの一つを取ることができる。応用システムは,記号を解釈する方

370 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

法を決めるために,この属性の値を使用することになる。 

transform属性は,レンダリング段階で記号に用いる変換式を指定することができる。型は文字列であり,

値はSVGで指定されている(変換の属性)。 

H.7.3 styleVariation 

gml:styleVariationプロパティ要素は,多様な能力をもつ。 

− 表現様式ラベル:ラベル様式は,内容が図的でなくテキストで与えられるので,それに関連するシン

ボルはもたない。この属性は,様式属性を指定するために使用することができる。 

− 表現様式記号変化:一つの記号が若干の変更を伴って異なる場合で使用されることがある。事実上同

一の記号を複数作成し管理することは面倒であり,このプロパティを使用して,様式に一つの記号及

び僅かな違いを作成し使用する方がより簡単である。 

− パラメタ付き表現様式:パラメタ付き表現様式は,その属性に合わせて表現される地物の幾つかのプ

ロパティに依存する様式である。 

例1 都市は,その人口に応じて様々に表現されるかもしれない。gml:styleVariationプロパティは,

そのような依存関係の指定を認めている。 

このプロパティの内容モデルは,次のとおりである。 

<complexType name="StyleVariationType"> 

<simpleContent> 

<extension base="string"> 

<attribute name="styleProperty" type="string" use="required"/> 
<attribute name="featurePropertyRange" type="string" use="optional"/> 

</extension> 

</simpleContent> 

</complexType> 

これは,styleProperty及びfeaturePropertyRangeの二つの属性をもつ。stylePropertyの値は“stroke”, “fill”

などのSVGの表現様式の属性名である。それは,プロパティが様式のどの属性を設定するか無視するかを

示す。styleVariation要素の値は,stylePropertyによって指定された表現様式の属性の値である。値は,定数

式又はXPath表現にすることができる。 

featurePropertyRange属性は,変化が適用される地物の部分集合を定義する。その値は,XPath表現であ

る。 

例2 次に,都市地物のための記号の様式の二つの変化を示す。その地物は,円記号を使用して表

現される。円の半径は都市の人口に依存して,都市の人口が200万以上か,又は未満かによ

って異なる計算がされる。 

<gml:FeatureStyle featureType="exp:City"> 

<gml:GeometryStyle> 

<gml:styleVariation styleProperty="r" featurePropertyRange="population &gt;= 2000000">population 

div 1000000</gml:styleVariation> 

<gml:styleVariation styleProperty="r" featurePropertyRange="population &lt; 2000000">population div 

1000000</gml:styleVariation> 

<gml:symbol xlink:href="http://www.opengis.org/symbols/City.xml#City"/> 

</gml:GeometryStyle> 

</gml:FeatureStyle> 

H.7.4 空間解像度 

gml:spatialResolutionプロパティ要素の値は,gml:MeasureTypeである。GML既定の表現様式では,この

background image

371 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

要素の意図するところはJIS X 7115の中の定義に基づいている。それは,データセットの中の空間データ

の密度についての一般的な解釈を示す要因として定義される。この非公式な定義以外に,GMLでは,この

属性の正確な使用を示さない。応用システムの開発者は,様々な方法でgml:spatialResolutionを使用するこ

とができる。 

例1 地図の縮尺の分母として使用することができる(1:50 000,1:25 000など)。 

例2 応用システムは,様々な縮尺における地物の描き方を規定するためにこの値を使用することが

できる。例えば, 都市及びその地物は,大縮尺の地図ではより詳細に描かれ,小縮尺地図では

一つの記号として描かれるかもしれない。また,大縮尺の地図では,海岸線は詳細に描かれる

が,一方,小縮尺地図では,応用システムはより高速に描画するために,幾つかの座標を省略

することができる。 

H.7.5 動画 

動画属性は,幾何,位相,ラベル及びグラフの動きについて記述するために使用される。これらの属性

は,W3C SMIL(SMIL 2.0 BasicAnimation 要素)に定義されている(表H.1参照)。 

表H.1−動画に使用される属性 

属性 

用途 

animate 

一般属性動画。 

animateMotion 経路に沿って要素を動かす。 

animateColor 

色属性の変化。 

set 

属性値を示された時間間隔に設定する。 

H.8 グラフ様式 

gml:FeatureStyle記述子のgml:graphStyleプロパティは,その値として一組の地物によって作られたグラ

フの様式属性について記述するgml:GraphStyle記述子をもつ。 

グラフの様式のプロパティ及び記述子の定義は,次のリストで示される。 

<element name="graphStyle" type="gml:GraphStylePropertyType"/> 
 
<complexType name="GraphStylePropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:GraphStyle"/> 

</sequence> 
<attribute name="about" type="anyURI"/> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 
 
<element name="GraphStyle" type="gml:GraphStyleType" substitutionGroup="gml:AbstractGML"/> 
 
<complexType name="GraphStyleType"> 

<complexContent> 

<extension base="gml:BaseStyleDescriptorType"> 

<sequence> 

<element name="planar" type="boolean" minOccurs="0"/> 
<element name="directed" type="boolean" minOccurs="0"/> 
<element name="grid" type="boolean" minOccurs="0"/> 

372 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="minDistance" type="double" minOccurs="0"/> 
<element name="minAngle" type="double" minOccurs="0"/> 
<element name="graphType" type="gml:GraphTypeType" minOccurs="0"/> 
<element name="drawingType" type="gml:DrawingTypeType" minOccurs="0"/> 
<element name="lineType" type="gml:LineTypeType" minOccurs="0"/> 
<element name="aestheticCriteria" type="gml:AesheticCriteriaType" minOccurs="0" 

maxOccurs="unbounded"/> 
</sequence> 

</extension> 

</complexContent> 

</complexType> 
 
<simpleType name="GraphTypeType"> 

<restriction base="string"> 

<enumeration value="TREE"/> 
<enumeration value="BICONNECTED"/> 

</restriction> 

</simpleType> 
 
<simpleType name="DrawingTypeType"> 

<restriction base="string"> 

<enumeration value="POLYLINE"/> 
<enumeration value="ORTHOGONAL"/> 

</restriction> 

</simpleType> 
 
<simpleType name="LineTypeType"> 

<restriction base="string"> 

<enumeration value="STRAIGHT"/> 
<enumeration value="BENT"/> 

</restriction> 

</simpleType> 
 
<simpleType name="AesheticCriteriaType"> 

<restriction base="string"> 

<enumeration value="MIN̲CROSSINGS"/> 
<enumeration value="MIN̲AREA"/> 
<enumeration value="MIN̲BENDS"/> 
<enumeration value="MAX̲BENDS"/> 
<enumeration value="UNIFORM̲BENDS"/> 
<enumeration value="MIN̲SLOPES"/> 
<enumeration value="MIN̲EDGE̲LENGTH"/> 
<enumeration value="MAX̲EDGE̲LENGTH"/> 
<enumeration value="UNIFORM̲EDGE̲LENGTH"/> 
<enumeration value="MAX̲ANGULAR̲RESOLUTION"/> 
<enumeration value="MIN̲ASPECT̲RATIO"/> 
<enumeration value="MAX̲SYMMETRIES"/> 

</restriction> 

background image

373 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</simpleType> 

gml:graphStyleプロパティは,他のGMLプロパティと同様に,遠隔参照又は要素内で定義する。 

グラフ様式記述子は個々のグラフ要素のためではなく,グラフ全体の表現様式について記述する。それ

はH.7で示した,基となる内容モデルの一般表現様式プロパティから継承される。 

この記述子は,基となる内容モデルにグラフ表現様式に特有の一群のプロパティを加える。それらは,

グラフの特性に関する記述をしている。プロパティは,表H.2に記載されている。 

表H.2−グラフの表現様式で使用する要素 

要素 

型 

用途 

planar 

Boolean型 

真の場合,グラフのエッジは交差しない(平面グラフ)。 
偽の場合,交差可。 

directed 

Boolean型 

真の場合,グラフは有向。 
偽の場合,グラフは無向。 

grid 

Boolean型 

真の場合,頂点,交差及び曲がり角の座標は整数値。 
偽の場合,頂点,交差及び曲がり角の座標は十進値。 

minDistance 

倍精度浮動小数点数型 

頂点と一致しないエッジの端点と,頂点との間の最小距離の推奨
値。 

minAngle 

倍精度浮動小数点数型 

連続してノードに出入りするエッジ間の最小角度(角分解能)に
対して推奨。 

graphType 

列挙型 

グラフの形式。値はTREE又はBICONNECTED とする。 

drawingType 

列挙型 

エッジの直交性に関する描画の形式。 
値はPOLYLINE又はORTHOGONALとする。 

lineType 

列挙型 

任意のエッジの方向を規定する。値はSTRAIGHT又はBENTと
する。 

aestheticCriteria 

列挙型 

個別の審美的基準に従うグラフの一般的な外形に対して推奨。 
値は次の一つとする。 
MIN̲CROSSINGS,MIN̲AREA,MIN̲BENDS, 
MAX̲BENDS,UNIFORM̲BENDS,MIN̲SLOPES, 
MIN̲EDGE̲LENGTH,MAX̲EDGE̲LENGTH, 
UNIFORM̲EDGE̲LENGTH,MAX̲ANGULAR̲RESOLUTION, 
MIN̲ASPECT̲RATIO又はMAX̲SYMMETRIES 

374 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書I 

(参考) 

GML旧版との後方互換性 

I.1 

概要 

この附属書では,非推奨スキーマ構成部品及びそれらの代替部品を示す(5.3参照)。 

I.2 

基本スキーマ構成部品 

I.2.1 

remoteSchema 

XLinkで関連付けられた遠隔資源の記述を制約するスキーマを示すために属性のremoteSchemaを示す。

この属性の使用は非推奨であり,xlink:roleを同じ目的に使用してよい(8.1参照)。 

<attribute name="remoteSchema" type="anyURI"/> 

I.2.2 

member 

memberという名前の具象のプロパティ要素は,以前,次のように宣言された。 

<element name="member" type="gml:AssociationRoleType"/> 

応用スキーマで定義されたプロパティ要素を,代わりとして使用する。 

I.2.3 

ArrayAssociationType 

要素内で単に符号化されるプロパティについては,プロパティ型の様式は,次のように明示的に符号化

された。 

<complexType name="ArrayAssociationType"> 

<sequence> 

<element ref="gml:AbstractObject" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 
<attributeGroup ref="gml:OwnershipAttributeGroup"/> 

</complexType> 

この型は,派生型のgml:AbstractMemberTypeに置き換えられた(7.2.5.1参照)。 

I.2.4 

members 

membersという名前の具象プロパティ要素は,以前,次のように宣言された。 

<element name="members" type="gml:ArrayAssociationType"/> 

応用スキーマ中で定義されるプロパティ要素を,代わりとして使用する。 

I.2.5 

featureProperty,featureMemebr及びfeatureMemebrs 

具象要素gml:featureMember及びgml:featurePropertyは,それらの内容モデルの中で

gml:AssociationRoleType様式を使用し,次のように宣言された。 

<element name="featureMember" type="gml:FeaturePropertyType"/> 
<element name="featureProperty" type="gml:FeaturePropertyType"/> 

具象要素gml:featureMembersは,地物の配列を含んでおり,次のように宣言された。 

<element name="featureMembers" type="gml:FeatureArrayPropertyType"/> 

これらのプロパティ要素は,応用スキーマ中で定義される要素に置き換えられた。 

I.2.6 

StringOrRefType 

gml: StringOrRefTypeは,拡張テキストの値を含むために規定された型である。それは,次のように定義

される。 

375 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<complexType name="StringOrRefType"> 

<simpleContent> 

<extension base="string"> 

<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</extension> 

</simpleContent> 

</complexType> 

この型での遠隔参照の使用は,非推奨である。この型は以前,テキスト型のプロパティが必要なところ

ではどこでも使用することができた。それは,文字列型のものであり,したがって,テキストは,要素内

に含めることができた。しかし,値は,xlink:href 属性を経由して参照することもできた。遠隔の参照があ

る場合,リンクを通じて得られた値は,その値だとみなされる。 

遠隔文字列値,gml:ReferenceType型の要素xlink:href属性の参照(7.2.3.7参照),例えば,

gml:descriptionReferenceを,代わりとして使用する。 

I.2.7 

Array,ArrayType,Bag及びBagType 

二つの具象オブジェクトの集まりを提供してきたが,非推奨である。GMLオブジェクトの集まりは,7.2.5

で記述されているように,応用スキーマ内で構成する。 

gml:Bagは,型,順序又は数の一意性と関連のない集まりである。 

<element name="Bag" type="gml:BagType" substitutionGroup="gml:AbstractGML"/> 

<complexType name="BagType"> 

<complexContent> 

<extension base="gml:AbstractGMLType"> 

<sequence> 

<element ref="gml:member" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:members" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:Arrayは,同一の型で順序が重要なメンバオブジェクトの集まりのために用いることを目的とする。 

<element name="Array" type="gml:ArrayType" substitutionGroup="gml:AbstractGML"/> 

<complexType name="ArrayType"> 

<complexContent> 

<extension base="gml:AbstractGMLType"> 

<sequence> 

<element ref="gml:members" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

I.2.8 

metaDataProperty,MetaDataPropertyType,AbstractMetaData及びAbstractMetaDataType 

この細分箇条で示すスキーマ構成部品は,7.2.6に示すスキーマ構成部品に入れ替わる。 

このプロパティは,旧版のGMLで使用された符号化中のメタデータプロパティを含むメタデータパッ

ケージを含むか又は参照する。この要素は非推奨となり,gml:AbstractMetadataPropertyTypeから派生する

376 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

内容モデルをもつ要素によって入れ替わる。より詳細については,7.2.6に示す。 

<element name="metaDataProperty" type="gml:MetaDataPropertyType"/> 

<complexType name="MetaDataPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractMetaData"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 
<attribute name="about" type="anyURI"/> 

</complexType> 

任意選択の属性である“about”は,要素又は複数の要素の範囲を指し示すURI,又はこのメタデータが

参照する別の情報源を保持する。 

metaDataPropertyの値は,次に定義する“メタデータプロパティの任意のパッケージ”の代替としての

働きをもつ抽象要素gml:AbstractMetaDataである。 

<element name="AbstractMetaData" type="gml:AbstractMetaDataType" abstract="true" 
substitutionGroup="gml:AbstractObject"/> 

<complexType name="AbstractMetaDataType" abstract="true" mixed="true"> 

<sequence/> 
<attribute ref="gml:id"/> 

</complexType> 

I.2.9 

GenericMetaData及びGenericMetaDataType 

利便性を考慮し,一般的な具象MetaData要素は,GMLの先行版の中で規定している。この要素は,7.2.6

に示すスキーマ構成部品に入れ替えられる。 

<element name="GenericMetaData" type="gml:GenericMetaDataType" 
substitutionGroup="gml:AbstractMetaData"/> 

<complexType name="GenericMetaDataType" mixed="true"> 

<complexContent mixed="true"> 

<extension base="gml:AbstractMetaDataType"> 

<sequence> 

<any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

I.3 

基本型及びNull 

gml:Nullは,8.2.3.2で示すnillable及びnilReasonに入れ替える。 

gml:Null要素は,次のように宣言する。 

<element name=“Null” type=“gml:NilReasonType”/> 

例1 この要素は,次のようなデータインスタンスの中に現れることがある。 

<gml:Null>withheld</gml:Null> 
<gml:Null>http://my.big.org/explanations/theDogAteIt</gml:Null> 

最初の例は,Nullの既定値の一つ(非公開)を使用している。第二の例は,URIで示す,別の場所から

377 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

得られる説明への参照を含む。 

gml:Null要素の目的は,次のとおりである。つまり,値を省略することができる内容モデルの作成のた

めに,XML Schemaの中で説明される,minOccurs="0"による多重度制約を使うことができる。しかし,こ

の手法は,値が現れないので誤解を与える危険性を伴う。その代わりとして,“正常な”値のデータ型の要

素と一緒に,要素gml:Nullをchoiceグループのメンバとして含むことができる。 

例2 スキーマ素片として記述する内容モデル 

<element name="footprint"> 

<complexType> 

<choice> 

<element ref="gml:Envelope"/> 
<element ref="gml:Null"/> 

</choice> 

</complexType> 

</element> 

次に示すデータインスタンスのいずれも有効である。 

<footprint> 

<gml:Envelope> … </gml:Envelope> 

</footprint> 

<footprint> 

<gml:Null>inapplicable</gml:Null> 

</footprint> 

これは,インスタンス文書に架空の要素“footprint”が現れることを許し,値の不在から意味規則を推測

する代わりに,任意選択的になぜこの値がないのかを示す外部マーカを含むことができる。 

I.4 

地物 

I.4.1 

location,LocationPropertyType,LocationKeyWord及びLocationString 

gml:location要素は,地物の一般的な場所を記述する便利なプロパティであった。この要素は,次のよう

に定義していた。 

<element name="location" type="gml:LocationPropertyType"/> 

<complexType name="LocationPropertyType"> 

<sequence > 

<choice> 

<element ref="gml:AbstractGeometry"/> 
<element ref="gml:LocationKeyWord"/> 
<element ref="gml:LocationString"/> 
<element ref="gml:Null"/> 

</choice> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

場所の値は,幾何,場所を示す文字列,場所を示すキーワード又はnullである。 

gml:location及びgml:LocationPropertyTypeは,非推奨となった。 

378 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

注記 場所プロパティがもつ自由な内容は,実際には実装することが難しいということが証明された。 

場所を示す文字列は,場所を記述するテキストであることが望ましい。これは,次のように宣言された。 

<element name="LocationString" type="gml:StringOrRefType"/> 

gml:LocationKeyWordは非推奨となり,gml:locationReference及びgml:locationName (9.4.2参照)に入れ

替わった。 

I.4.2 

priorityLocation及びpriorityLocationType 

プロパティgml:priorityLocationは,GML応用スキーマ開発者のためにあり,地物の,優先度の高い場所

を示すことを目指した。gml:priorityLocationは,次の内容モデルをもつ。 

<element name="priorityLocation" type="gml:PriorityLocationPropertyType" 
substitutionGroup="gml:location"/> 

<complexType name="PriorityLocationPropertyType"> 

<complexContent> 

<extension base="gml:LocationPropertyType"> 

<attribute name="priority" type="string"/> 

</extension> 

</complexContent> 

</complexType> 

これは,異なる場所に対して重要性の水準を与える,単純に優先度を示す文字列を,基本となる

gml:locationプロパティに追加したものである。 

I.4.3 

BoundedFeatureType 

gml:AbstractFeatureTypeの単純な制限は,かつては,任意選択のboundedByプロパティを必須にするため

に提供された。gml:BoundedFeatureTypeは,次のように定義した。 

<complexType name="BoundedFeatureType" abstract="true"> 

<complexContent> 

<restriction base="gml:AbstractFeatureType"> 

<sequence> 

<group ref="gml:StandardObjectProperties"/> 
<element ref="gml:boundedBy"/> 
<element ref="gml:location" minOccurs="0"/> 

</sequence> 

</restriction> 

</complexContent> 

</complexType> 

I.4.4 

AbstractFeatureCollectionType,AbstractFeatureCollection,FeatureCollection及び

FeatureCollectionType 

GMLの旧版では,GML地物の集まりは,次に定義するgml:AbstractFeatureCollectionTypeからの拡張又

は制限によって派生した。 

<complexType name="AbstractFeatureCollectionType" abstract="true"> 

<complexContent> 

<extension base="gml:AbstractFeatureType"> 

<sequence> 

<element ref="gml:featureMember" minOccurs="0" maxOccurs="unbounded"/> 
<element ref="gml:featureMembers" minOccurs="0"/> 

379 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:featureMemberプロパティ(gml:featureMembersプロパティではなく)は,関連パターンに従い,xlink:ref

属性を用いて“遠隔”地物を参照する。 

合成プロパティであるgml:featureMembersは,その意味型が複数の地物であるかにかかわらず,地物の

集まりのメンバの集合を含む。gml:featureMemberは,単一の地物インスタンスを含むか又は参照する。

gml:featureMember 及び gml:featureMembersプロパティは,同一の地物の集まりに出現してよいが,含ま

れるgml:featureMembersプロパティは,一つだけである。 

GML地物の集まりは,それ自体有効なGML地物であり,gml:location及びGML応用スキーマの中で定

義されるその他のプロパティをもつことができる。 

<element name="AbstractFeatureCollection" type="gml:AbstractFeatureCollectionType" abstract="true" 
substitutionGroup="gml:AbstractFeature"/> 

この抽象要素gml:AbstractFeatureCollectionは,gml:AbstractFeatureTypeから派生する内容モデルをもつ任

意の要素を含むことができる代替グループの代表要素として使用する。 

スキーマは,具象地物の集まりも示す。 

<element name="FeatureCollection" type="gml:FeatureCollectionType" 
substitutionGroup="gml:AbstractFeature"/> 

<complexType name="FeatureCollectionType"> 

<complexContent> 

<extension base="gml:AbstractFeatureCollectionType"/> 

</complexContent> 

</complexType> 

具象的なgml:FeatureCollectionのユーザは,メンバとして,任意の有効なGML地物を許すことを明記す

ることが望ましい。 

GMLの以前の版で示された地物の集まりの内容モデルは,gml:AbstractFeatureCollectionTypeから派生し

た。これが入れ替わってgml:AbstractFeatureTypeから派生するようになった。一方,地物の集まりは,複

数の地物であり,一般的には,gml:AbstractFeatureに代替可能である。 

この細分箇条の中で示すスキーマ構成部品は非推奨であり,9.9.1に示すGML地物の集まりのための規

則によって入れ替わる。 

I.4.5 

空間プロパティ 

一般的に,地物プロパティの定義は,応用スキーマの設計者の責任による。GMLは以前は,地物を伴う

空間型のインスタンス及び関連する既定義の空間プロパティの集合を定義していた。これらは非推奨とな

り,応用スキーマで示すプロパティの名前を,その代わりに使う。 

a) 応用スキーマの中で多用されるプロパティの名前の集合を示す記述的な名前は,次のとおりである。 

<element name="centerOf" type="gml:PointPropertyType"/> 

<element name="position" type="gml:PointPropertyType"/> 

<element name="extentOf" type="gml:SurfacePropertyType"/> 

<element name="edgeOf"” type="gml:CurvePropertyType"/> 

<element name="centerLineOf" type="gml:CurvePropertyType"/> 

380 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="multiLocation" type="gml:MultiPointPropertyType"/> 

<element name="multiCenterOf" type="gml:MultiPointPropertyType"/> 

<element name="multiPosition" type=“gml:MultiPointPropertyType"/> 

<element name="multiCenterLineOf" type=“gml:MultiCurvePropertyType"/> 

<element name="multiEdgeOf" type="gml:MultiCurvePropertyType"/> 

<element name="multiCoverage" type="gml:MultiSurfacePropertyType"/> 

<element name="multiExtentOf" type="gml:MultiSurfacePropertyType"/> 

これらのプロパティ要素は,地物の幾何のための共通的な役割名を示す。しかし,これらの役割名の意

味規則は,定義しない。 

b) プロパティ値として許される幾何又は位相の型を基礎とする空間プロパティを意味する形式的な名前。

これらは,“Property”という添え字をもつ空間型の名前に基づく名前である。これらのプロパティ型

は通常GMLスキーマ自体の中で定義される。これらは応用スキーマ中のプロパティ要素として使用

してはならない。GMLスキーマの中で使用しない全ての形式的な名前は非推奨になった。 

<element name="topoComplexProperty" type="gml:TopoComplexPropertyType"/> 

<element name="multiPointProperty" type="gml:MultiPointPropertyType"/> 

<element name="multiCurveProperty" type="gml:MultiCurvePropertyType"/> 

<element name="multiSurfaceProperty" type="gml:MultiSurfacePropertyType"/> 

<element name="multiSolidProperty" type="gml:MultiSolidPropertyType"/> 

<element name="multiGeometryProperty" type="gml:MultiGeometryPropertyType"/> 

<element name="pointArrayProperty" type="gml:PointArrayPropertyType"/> 

<element name="curveArrayProperty" type="gml:CurveArrayPropertyType"/> 

<element name="surfaceArrayProperty" type="gml:SurfaceArrayPropertyType"/> 

<element name="solidArrayProperty" type="gml:SolidArrayPropertyType"/> 

これらの役割名の意味規則(例えば,“オブジェクトのmultiPointPropertyは何を意味するか”)は,定義

しない。 

I.5 

座標幾何及び幾何プリミティブ 

I.5.1 

coordinates 

<element name="coordinates" type="gml:CoordinatesType" /> 

gml:coordinates要素は非推奨になり,gml:posList (10.1.4.2参照)が置き換わった。 

I.5.2 

EnvelopType中のpos 

gml:EnvelopeType 中のプロパティgml:lowerCorner 及び gml:upperCornerがposの代わりに使用する

(10.1.4.6参照)。 

I.5.3 

pointRep 

<element name="pointRep" type="gml:PointPropertyType"/> 

このプロパティ要素は,非推奨となった。その代わりに,gml:pointPropertyを使用する(10.3.2参照)。 

I.5.4 

polygonPatches 

<element name="polygonPatches" type="gml:SurfacePatchArrayPropertyType" 

substitutionGroup="gml:patches"/> 

gml:polygonPatchesは,多面体表面のポリゴンパッチをカプセル化する。gml:patchesをその代わりに使

381 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

用する。 

I.5.5 

trianglePatches 

<element name="trianglePatches" type=“gml:SurfacePatchArrayPropertyType" 

substitutionGroup="gml:patches"/> 

gml:trianglePatchesは,三角形によって構成される面の要素となる三角形をカプセル化する。gml:patches

をその代わりに使用する。 

I.6 

座標参照系 

I.6.1 

baseGeographicCRS 

<element name="baseGeographicCRS" type="gml:GeographicCRSPropertyType"/> 

gml:baseGeographicCRSは,この投影CRSが使用する地理座標参照系への役割名である。このプロパテ

ィ要素は非推奨となり,gml:baseGeodeticCRS(12.3.3.15参照)が置き換わった。 

I.6.2 

GeographicCRS 

<element name="GeographicCRS" type="gml:GeographicCRSType" 
substitutionGroup="gml:AbstractSingleCRS"/> 

<complexType name="GeographicCRSType"> 

<complexContent> 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<element ref="gml:usesEllipsoidalCS"/> 
<element ref="gml:usesGeodeticDatum"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:GeographicCRSは,ジオイドのだ(楕)円体近似に基づく座標参照系であり,地球表面の大きな地

域にある地物の幾何の表現を精密に行うために示される。gml:GeographicCRSは,非推奨となり

gml:GeodeticCRS(12.3.3.4参照)が置き換わった。 

<complexType name="GeographicCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:GeographicCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:GeographicCRSPropertyTypeは,参照系の定義を含むか又は参照する地理座標参照系への関連役割名

のためのプロパティ型である。このプロパティ型は非推奨となり,gml:GeodeticCRSPropertyType(12.3.3.9

参照)が置き換わった。 

I.6.3 

GeocentricCRS 

<element name="GeocentricCRS" type="gml:GeocentricCRSType" 
substitutionGroup="gml:AbstractSingleCRS"/> 

<complexType name="GeocentricCRSType"> 

<complexContent> 

382 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<extension base="gml:AbstractCRSType"> 

<sequence> 

<choice> 

<element ref="gml:usesCartesianCS"/> 
<element ref="gml:usesSphericalCS"/> 

</choice> 
<element ref="gml:usesGeodeticDatum"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:GeocentricCRSは,地球の質量のおおよそ中心を原点とする3D座標参照系である。地心CRSは,3D

空間の見方をすることによって,地球の曲率を取り扱う。gml:GeocentricCRSは非推奨であり,

gml:GeodeticCRS(12.3.3.4参照)で置き換えている。 

<complexType name="GeocentricCRSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:GeocentricCRS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:GeocentricCRSPropertyTypeは,地心座標参照系への関連役割のためのプロパティ型であり,参照系

を参照するか,又はその定義を含むかのいずれかである。このプロパティ型は非推奨となっており,

gml:GeodeticCRSPropertyType(12.3.3.9参照)で置き換えている。 

I.6.4 

uom 

<attribute name="uom" type="anyURI"/> 

uom属性は,計測単位の識別子を与えるが非推奨となっている。代わりに,局所的なuom属性を用いる。 

I.6.5 

ObliqueCartesianCS 

<element name="ObliqueCartesianCS" type="gml:ObliqueCartesianCSType" 
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="ObliqueCartesianCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:ObliqueCartesianCSは,必ずしも直交しない直線の軸をもつ二次元又は三次元の座標系である。 

ObliqueCartesianCSは,二つ又は三つのgml:usesAxis関連をもつ。この要素及び型は非推奨となっており,

gml:AffineCS及びその型(12.4.4.19参照)で置き換えている。 

<complexType name="ObliqueCartesianCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:ObliqueCartesianCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:ObliqueCartesianCSPropertyTypeは,斜交-直交座標系への関連役割のためのプロパティ型であり,座

383 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

標系を参照するか,又はその定義を含むかのいずれかである。このプロパティ型は非推奨となっており,

gml:AffineCSPropertyType(12.4.4.20参照)で置き換えている。 

I.6.6 

TemporalCS 

<element name="TemporalCS" type="gml:TemporalCSType" 
substitutionGroup="gml:AbstractCoordinateSystem"/> 

<complexType name="TemporalCSType"> 

<complexContent> 

<extension base="gml:AbstractCoordinateSystemType"/> 

</complexContent> 

</complexType> 

gml:TemporalCSは,単一の時間軸を含む一次元の座標系であり,特定の時間原点からの特定の時間単位

による点の時間位置を記述するために用いる。TemporalCSは,一つのgml:usesAxisプロパティ要素をもつ。

この要素及び型は非推奨となっており,gml:TimeCS及びその型(12.4.4.7参照)で置き換えている。 

<complexType name="TemporalCSPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:TemporalCS"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:TemporalCSPropertyTypeは,時間座標系への関連役割のためのプロパティ型であり,座標系を参照す

るか,又はその定義を含むかのいずれかである。このプロパティ型は,非推奨となっている。 

I.6.7 

greenwichLongitude 

gml:greenwichLongitude(12.5.3.7参照)における非推奨のgml:AngleChoiceTypeの使用は,廃止している。 

I.6.8 

AbstractOperation 

<element name="AbstractOperation" type="gml:AbstractCoordinateOperationType" abstract="true" 
substitutionGroup="gml:AbstractSingleOperation"/> 

gml:AbstractOperationは,他の座標参照系に変換又は換算する,座標に対するパラメタ化された数学的

な演算である。この座標演算は,ある演算方法を使用し,通例,関連づけられたパラメタ値をもっている。

しかしながら,演算方法及びパラメタ値は,具象の下位型と直接的に関連し,この抽象型とは関連しない。

GML応用スキーマは,この抽象複合型を拡張又は制限してはならない。この要素は非推奨となっており,

gml:AbstractSingleOperation(12.6.2.7参照)で置き換えている。 

<complexType name="OperationPropertyType"> 

<sequence minOccurs="0"> 

<element ref="gml:AbstractOperation"/> 

</sequence> 
<attributeGroup ref="gml:AssociationAttributeGroup"/> 

</complexType> 

gml:OperationPropertyTypeは,抽象演算への関連役割のためのプロパティ型であり,演算を参照するか,

又はその定義を含むかのいずれかである。このプロパティ型は非推奨となっており,

gml:AbstractSingleOperationPropertyType(12.6.2.8参照)で置き換えている。 

I.6.9 

dmsAngleValue 

<element name="dmsAngleValue" type="gml:DMSAngleType"/> 

384 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

gml:dmsAngleValueは,角度演算パラメタの値であり,度分秒の書式又は単一の値の書式のいずれかであ

る。このプロパティ要素は,非推奨となっている。 

I.6.10 名前を変更したプロパティ要素 

GMLの以前の版は,ISO/TS 19103が推奨し,GMLの他の場所で使用した方法とは異なる命名規則を使

用するプロパティ要素を含んでいたが,それは,基礎となる概念モデル中のプロパティ名称が変化したた

めでもあった。これらのプロパティ要素は,非推奨となっており,代わりに,代替グループで示したプロ

パティ要素を用いなければならない。 

<element name="methodFormula" type="gml:CodeType" substitutionGroup="gml:formula"/> 
<element name="anchorPoint" type="gml:CodeType" substitutionGroup="gml:anchorDefinition"/> 
<element name="generalOperationParameter" type="gml:AbstractGeneralOperationParameterPropertyType" 
substitutionGroup="gml:parameter"/> 
<element name="valueOfParameter" type="gml:OperationParameterPropertyType" 
substitutionGroup="gml:operationParameter"/> 
<element name="valuesOfGroup" type=“gml:OperationParameterGroupPropertyType" 
substitutionGroup=“gml:group”/> 
<element name="includesParameter" type="gml:AbstractGeneralOperationParameterPropertyType" 
substitutionGroup="gml:parameter"/> 
<element name="definedByConversion" type="gml:GeneralConversionPropertyType" 
substitutionGroup="gml:conversion"/> 
<element name="includesSingleCRS" type="gml:SingleCRSPropertyType" 
substitutionGroup="gml:componentReferenceSystem"/> 
<element name="usesEllipsoidalCS" type="gml:EllipsoidalCSPropertyType" 
substitutionGroup="gml:ellipsoidalCS"/> 
<element name="usesCartesianCS" type="gml:CartesianCSPropertyType" 
substitutionGroup="gml:cartesianCS" /> 
<element name="usesSphericalCS" type="gml:SphericalCSPropertyType" 
substitutionGroup="gml:sphericalCS"/> 
<element name="usesGeodeticDatum" type="gml:GeodeticDatumPropertyType" 
substitutionGroup="gml:geodeticDatum"/> 
<element name="usesVerticalCS" type="gml:VerticalCSPropertyType" 
substitutionGroup="gml:verticalCS"/> 
<element name="usesVerticalDatum" type="gml:VerticalDatumPropertyType" 
substitutionGroup="gml:verticalDatum"/> 
<element name="usesCS" type="gml:CoordinateSystemPropertyType" 
substitutionGroup="gml:coordinateSystem"/> 
<element name="usesEngineeringDatum" type="gml:EngineeringDatumPropertyType" 
substitutionGroup="gml:engineeringDatum"/> 
<element name="usesAffineCS" type="gml:AffineCSPropertyType" 
substitutionGroup="gml:affineCS"/> 
<element name="usesImageDatum" type="gml:ImageDatumPropertyType" 
substitutionGroup="gml:imageDatum"/> 
<element name="usesObliqueCartesianCS" type="gml:ObliqueCartesianCSPropertyType"/> 
<element name="usesTimeCS" type="gml:TimeCSPropertyType" substitutionGroup="gml:timeCS"/> 
<element name="usesTemporalCS" type="gml:TemporalCSPropertyType"/> (use gml:timeCS instead) 
<element name="usesTemporalDatum" type="gml:TemporalDatumPropertyType" 
substitutionGroup="gml:temporalDatum"/> 
<element name="usesAxis" type="gml:CoordinateSystemAxisPropertyType" substitutionGroup="gml:axis"/> 

385 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="usesPrimeMeridian" type="gml:PrimeMeridianPropertyType" 
substitutionGroup="gml:primeMeridian"/> 
<element name="usesEllipsoid" type="gml:EllipsoidPropertyType" substitutionGroup="gml:ellipsoid"/> 
<element name="usesSingleOperation" type="gml:CoordinateOperationPropertyType" 
substitutionGroup="gml:coordOperation"/> 
<element name="usesOperation" type="gml:CoordinateOperationPropertyType" 
substitutionGroup="gml:coordOperation"/> 
<element name="usesMethod" type="gml:OperationMethodPropertyType" 
substitutionGroup="gml:method"/> 
<element name="usesValue” type="gml:AbstractGeneralParameterValuePropertyType" 
substitutionGroup="gml:parameterValue"/> 
<element name="usesParameter" type="gml:AbstractGeneralOperationParameterPropertyType" 
substitutionGroup="gml:generalOperationParameter"/> 
<element name="includesValue" type="gml:AbstractGeneralParameterValueType" 
substitutionGroup="gml:parameterValue"/> 

I.6.11 …Refプロパティ要素 

GMLの旧版は,座標参照系スキーマ文書における定義済みのプロパティ要素を含んだ。これらのプロパ

ティ要素は,非推奨となっており,プロパティ要素は応用スキーマにおいて特定しなければならない。 

<element name="crsRef" type="gml:CRSPropertyType"/> 
<element name="singleCRSRef" type="gml:SingleCRSPropertyType"/> 
<element name="compoundCRSRef" type="gml:CompoundCRSPropertyType"/> 
<element name="verticalCRSRef" type="gml:VerticalCRSPropertyType"/> 
<element name="projectedCRSRef" type="gml:ProjectedCRSPropertyType"/> 
<element name="derivedCRSRef" type="gml:DerivedCRSPropertyType"/> 
<element name="engineeringCRSRef" type="gml:EngineeringCRSPropertyType"/> 
<element name="temporalCRSRef" type="gml:TemporalCRSPropertyType"/> 
<element name="imageCRSRef" type="gml:ImageCRSPropertyType"/> 
<element name="geocentricCRSRef" type="gml:GeocentricCRSPropertyType"/> 
<element name="coordinateSystemAxisRef" type="gml:CoordinateSystemAxisPropertyType"/> 
<element name="coordinateSystemRef" type="gml:CoordinateSystemPropertyType"/> 
<element name="ellipsoidalCSRef" type="gml:EllipsoidalCSPropertyType"/> 
<element name="cartesianCSRef" type="gml:CartesianCSPropertyType"/> 
<element name="temporalCSRef" type="gml:TemporalCSPropertyType"/> 
<element name="linearCSRef" type="gml:LinearCSPropertyType"/> 
<element name="userDefinedCSRef" type="gml:UserDefinedCSPropertyType"/> 
<element name="sphericalCSRef" type="gml:SphericalCSPropertyType"/> 
<element name="polarCSRef" type="gml:PolarCSPropertyType"/> 
<element name="cylindricalCSRef" type="gml:CylindricalCSPropertyType"/> 
<element name="datumRef" type="gml:DatumPropertyType"/> 
<element name="geodeticDatumRef" type="gml:GeodeticDatumPropertyType"/> 
<element name="ellipsoidRef" type="gml:EllipsoidPropertyType"/> 
<element name="primeMeridianRef" type="gml:PrimeMeridianPropertyType"/> 
<element name="engineeringDatumRef" type="gml:EngineeringDatumPropertyType"/> 
<element name="imageDatumRef" type="gml:ImageDatumPropertyType"/> 
<element name="verticalDatumRef" type="gml:VerticalDatumPropertyType"/> 
<element name="temporalDatumRef" type="gml:TemporalDatumPropertyType"/> 
<element name="coordinateOperationRef" type="gml:CoordinateOperationPropertyType"/> 

386 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="singleOperationRef" type="gml:SingleOperationPropertyType"/> 
<element name="referenceSystemRef" type="gml:CRSPropertyType"/> 
<element name="generalConversionRef" type="gml:GeneralConversionPropertyType"/> 
<element name="generalTransformationRef" type="gml:GeneralTransformationPropertyType"/> 
<element name="concatenatedOperationRef" type="gml:ConcatenatedOperationPropertyType"/> 
<element name="passThroughOperationRef" type="gml:PassThroughOperationPropertyType"/> 
<element name="conversionRef" type="gml:ConversionPropertyType"/> 
<element name="transformationRef" type="gml:TransformationPropertyType"/> 
<element name="abstractGeneralOperationParameterRef" 
type="gml:AbstractGeneralOperationParameterPropertyType"/> 
<element name="operationParameterGroupRef" type="gml:OperationParameterPropertyType"/> 
<element name="operationParameterRef" type="gml:OperationParameterPropertyType"/> 
<element name="operationMethodRef" type="gml:OperationMethodPropertyType"/> 
<element name="obliqueCartesianCSRef" type="gml:ObliqueCartesianCSPropertyType"/> 
<element name="verticalCSRef" type="gml:VerticalCSPropertyType"/> 
<element name="operationRef" type="gml:OperationPropertyType"/> 

I.7 

時間情報及び動的地物 

I.7.1 

SuccessionType 

時間の非線形グラフは,時間エッジで構成されたネットワークである。これは,地物インスタンスの連

続,又は “置換”,“分裂”,“融合”及び“開始”によって記述される地物プロパティ値の連続を記述する

ための枠組みを与える。この機能を必要とする応用スキーマを支持して,gml:SuccessionTypeは,一貫した

用語を確保するために,GMLの以前の版において提供された。しかしながら,それは孤立した概念であっ

たため,その型は非推奨となっている。それは,次のとおり定義する。 

<simpleType name="SuccessionType"> 

<restriction base="string"> 

<enumeration value="substitution"/> 
<enumeration value="division"”/> 
<enumeration value="fusion”/> 
<enumeration value="initiation"/> 

</restriction> 

</simpleType> 

I.7.2 

MovingObjectStatus 

gml:MovingObjectStatusは,gml:AbstractTimeSliceを拡張する方法の一つの例である。この要素は,移動

オブジェクトの状態を記録する方法を与える。それは,次のとおり宣言する。 

<element name="MovingObjectStatus" type="gml:MovingObjectStatusType" 
substitutionGroup="gml:AbstractTimeSlice"/> 

<complexType name="MovingObjectStatusType"> 

<complexContent> 

<extension base="gml:AbstractTimeSliceType"> 

<sequence> 

<choice> 

<element name="position" type="gml:GeometryPropertyType"/> 
<element ref="gml:pos"/> 
<element ref="gml:locationName"/> 

387 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element ref="gml:locationReference"/> 
<element ref="gml:location"/> 

</choice> 
<element name="speed" type="gml:MeasureType" minOccurs="0"/> 
<element name="bearing" type="gml:DirectionPropertyType" minOccurs="0"/> 
<element name="acceleration" type="gml:MeasureType" minOccurs="0"/> 
<element name="elevation" type="gml:MeasureType" minOccurs="0"/> 
<element ref="gml:status" minOccurs="0"/> 
<element ref="gml:statusReference" minOccurs="0"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:MovingObjectStatus要素は,個々の時間断面におけるオブジェクトの速度,方向,加速度及び高さと

ともに,使用者が現在の場所を記述することを可能とする。 

オブジェクトの現在の状態に関する追加的な情報は,gml:status又はgml:statusReferenceプロパティ要素

において記録してもよい。これらは,次のとおり宣言する。 

<element name="status" type="gml:StringOrRefType"/> 

<element name="statusReference" type=“gml:ReferenceType"/> 

I.7.3 

track 

gml:trackプロパティ要素は,非推奨となっており,代わりに,gml:history(14.5.7参照)を用いなければ

ならない。それは,スキーマにおいて次のとおり宣言する。 

<element name="track" type="gml:HistoryPropertyType" substitutionGroup="gml:history"/> 

I.8 

定義及び辞書 

I.8.1 

DefinitionCollection 

<element name="DefinitionCollection" type="gml:DictionaryType" substitutionGroup="gml:Definition"/> 

辞書のための通称名gml:DefinitionCollectionは,非推奨となっており,代わりに,gml:Dictionary(15.2.2

参照)を用いる。 

遠隔定義は,gml:dictionaryEntryを用いるため,gml:indirectEntryは,非推奨となっている。Dictionary

の中に含まれるDefinitionオブジェクトが遠隔の定義を記述するためにdescriptionReferenceプロパティを

用いる場合,Definitionオブジェクトは,局所的な辞書における遠隔定義を挿入することを可能とし,局所

的な辞書の文脈において,名前及び識別子を与える。 

I.8.2 

definitionMember 

<element name="definitionMember” type="gml:DictionaryEntryType" 

substitutionGroup="gml:dictionaryEntry"/> 

通称名gml:definitionMemberは,非推奨となっており,代わりに,gml:dictionaryEntryを用いる(15.2.3

参照)。 

I.8.3 

indirectEntry,IndirectEntryType,DefinitionProxy及びDefinitionProxyType 

ある定義が,現在の集まりの前後関係の中で,参照によって含まれることが望ましいときは, GMLの

旧版では,非推奨となったgml:indirectEntryプロパティ要素を使用した。この要素の宣言は,次のとおり

である。 

388 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="indirectEntry" type="gml:IndirectEntryType"/> 

<complexType name="IndirectEntryType"> 

<sequence> 

<element ref="gml:DefinitionProxy"/>  

</sequence> 

</complexType> 

<element name="DefinitionProxy" type="gml:DefinitionProxyType" substitutionGroup="gml:Definition"/> 

<complexType name="DefinitionProxyType"> 

<complexContent> 

<extension base="gml:DefinitionType"> 

<sequence> 

<element ref="gml:definitionRef"/> 

</sequence> 

</extension> 

</complexContent> 

</complexType> 

gml:DefinitionProxyは,必須の属性(gml:id)をもち,別の場所に記述する定義への参照をもつ。この項

目は,一つのXML文書の中の複数の要素に,(XPointerを短縮した)省略形の参照をもたせるのに便利で

あると期待され,同じXML文書内の辞書要素の中で行う外部定義として対応した。 

参照は,次に宣言するgml:definitionRef要素で示す。 

<element name="definitionRef" type="gml:ReferenceType"/> 

この要素は,gml:ReferenceTypeを使用する。この要素が参照する遠隔データは,同じ又は異なるXML

文書にある辞書に存在してもよい。 

I.9 

単位,計測及び値 

I.9.1 

dmsAngle 

gml:dmsAngle要素は,度分秒又は度分形式の角度の値を記録するために用いた。しかし,関係する全て

のスキーマ構成部品とともに非推奨となった。それは,機械同士のコミュニケーションには十進数による

度数を使うことが望ましいとしたからである(16.3.3参照)。この要素は,次のスキーマ宣言による。 

<element name="dmsAngle" type="gml:DMSAngleType"/> 

<complexType name="DMSAngleType"> 

<sequence> 

<element ref="gml:degrees"/> 
<choice minOccurs="0"> 

<element ref="gml:decimalMinutes"/> 
<sequence> 

<element ref="gml:minutes"/> 
<element ref="gml:seconds" minOccurs="0"/> 

</sequence> 

</choice> 

</sequence> 

389 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

</complexType> 

<element name="degrees" type="gml:DegreesType"/> 

<complexType name="DegreesType"> 

<simpleContent> 

<extension base="gml:DegreeValueType"> 

<attribute name="direction"> 

<simpleType> 

<restriction base="string"> 

<enumeration value="N"/> 
<enumeration value="E"/> 
<enumeration value="S"/> 
<enumeration value="W"/> 
<enumeration value="+"/> 
<enumeration value="-"/> 

</restriction> 

</simpleType> 

</attribute> 

</extension> 

</simpleContent> 

</complexType> 

<simpleType name="DegreeValueType"> 

<restriction base="nonNegativeInteger"> 

<maxInclusive value="359"/> 

</restriction> 

</simpleType> 

<element name="decimalMinutes" type="gml:DecimalMinutesType"/> 

<simpleType name="DecimalMinutesType"> 

<restriction base="decimal"> 

<minInclusive value="0.00"/> 
<maxExclusive value="60.00"/> 

</restriction> 

</simpleType> 

<element name="minutes" type="gml:ArcMinutesType"/> 

<simpleType name="ArcMinutesType"> 

<restriction base="nonNegativeInteger"> 

<maxInclusive value="59"/> 

</restriction> 

</simpleType> 

390 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

<element name="seconds" type="gml:ArcSecondsType"/> 

<simpleType name="ArcSecondsType"> 

<restriction base="decimal"> 

<minInclusive value="0.00"/> 
<maxExclusive value="60.00"/> 

</restriction> 

</simpleType> 

I.9.2 

degrees 

degrees要素は,整数で表記した度数を,角度の方向を示す識別子とともに記述するための要素である。

この要素は,地理的な位置の中で使うことを意図する。この要素は,次の値をとるXML属性directionを

もつ。 

緯度の場合は,“N”又は“S”をとる。これは,赤道の北又は南を意味する。 

経度の場合は,“E”又は“W”をとる。これは,本初子午線の東又は西を意味する。 

その他の角度の場合は,“+”又は“−”をとる。これは,指定された参照方向から指定された回転方向

への角度となる。 

I.9.3 

decimalMinutes 

度分による角度の値の中で用いるための角度分の十進数 

I.9.4 

minutes 

度分秒による角度の値の中で用いるための角度分の整数 

I.9.5 

seconds 

度分秒による角度の値の中で用いるための角度秒の数 

I.9.6 

AngleChoiceType 

内容モデルにおける角度の符号化法のいずれでも選択できるように,便宜的な型である

gml:AngleChoiceTypeを提供する。この要素は,angle又はdmsAngleのいずれかの要素を含む。これは,ス

キーマにおいて次のように宣言する。 

<complexType name="AngleChoiceType"> 

<choice> 

<element ref="gml:angle"/> 
<element ref="gml:dmsAngle"/> 

</choice> 

</complexType> 

I.10 方向 

gml:DirectionVectorType(17.3参照)の中のgml:horizontalAngle及びgml:verticalAngleプロパティは,非

推奨であり,gml:vectorによって取って代わられた(10.1.4.5参照)。 

I.11 被覆 

I.11.1 MappingRule 

gml:CoverageMappingRule(19.3.12参照)は,非推奨のMappingRuleによって置き換えられた。 

<element name="MappingRule" type="gml:StringOrRefType"/> 

I.11.2 IncrementOrder 

391 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

非推奨になったgml:orderプロパティは,(二次元被覆に限定の)内容モデルをもつ。 

<simpleType name="IncrementOrder"> 

<restriction base="string"> 

<enumeration value="+x+y"/> 
<enumeration value="+y+x"/> 
<enumeration value="+x-y"/> 
<enumeration value="-x-y"/> 

</restriction> 

</simpleType> 

ここでの列挙値は,最初の2軸で使用される増加順序を示す。つまり,“+x−y”は,最初の軸上の点は

最低値から最高値までたどり,二つ目の軸上の点は最高値から最低値までをたどる。最初の2軸以上の全

てのほかの軸(もしもあれば)上の点は,最低値から最高値へと増加することが保証される。 

順序属性が省略された場合,値は“+x+y”だとみなす。 

この要素は,gml:axisOrder(19.3.14参照)によって置き換わった。 

I.11.3 領域集合プロパティ 

<element name="multiPointDomain" type="gml:DomainSetType" substitutionGroup="gml:domainSet"/> 
<element name="multiCurveDomain" type="gml:DomainSetType" substitutionGroup="gml:domainSet"/> 
<element name="multiSurfaceDomain" type="gml:DomainSetType" substitutionGroup="gml:domainSet"/> 
<element name="multiSolidDomain" type="gml:DomainSetType" substitutionGroup="gml:domainSet"/> 
<element name="gridDomain" type="gml:DomainSetType" substitutionGroup="gml:domainSet"/> 
<element name="rectifiedGridDomain" type="gml:DomainSetType" substitutionGroup="gml:domainSet"/> 

これらのプロパティは,非推奨である。それは,プロパティ要素内での制限による派生を示す,全ての

以前の使用法を排除したからである。21.2.6の注記を参照。代わりに,gml:domainSetを使用する。 

392 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

附属書J 

(参考) 

モジュール化及び依存関係 

この規格に示したGMLスキーマは,附属書Cにおいて,特定の応用分野のためにGMLの局所的な部

分集合が必要な場合に,プロファイルを作成しやすいよう,参考のためモジュール化した。例えば,新し

い機能の追加なしにこの規格に移行したGML 2.1の応用スキーマは,feature.xsdスキーマ文書を含むプロ

ファイルを定義することができる。このようなプロファイルは,座標参照系,位相,被覆,移動地物及び

観測地物に関するこの規格の定義を含まない。しかしながら,GML 2.1以降に追加された全ての基本型を

含む。 

GMLスキーマの初期のモジュール化は,図J.1に示すGML baseスキーマ間の依存関係を生む。図中の

破線矢印は,矢印の元となるスキーマが矢印の先となるスキーマに依存することを示す。依存関係は,あ

るスキーマが“gml”名前空間の他のスキーマを<include>するときに生じ得る。例えば,feature.xsdは,

geometryBasic2d.xsdを<include>する。依存関係は,あるスキーマが“gml”名前空間以外のスキーマを

<import>する場合に生じ得る。例えば,gmlBase.xsdは,“xlink”名前空間のxlinks.xsd を<import>する。 

現在,GMLには,他のGMLスキーマ文書が依存しない七つのスキーマ文書が存在する。これらの最高

位のスキーマは,GMLスキーマ文書群の部分的に重複する階層の根底となる。 

− observation.xsd 

− dynamicFeature.xsd 

− coverage.xsd 

− topology.xsd 

− defaultStyle.xsd 

− coordinateReferenceSystems.xsd 

− temporalReferenceSystems.xsd. 

これらのGMLの局所的な部分集合スキーマ階層のうちの一つ以上からの定義がプロファイルとして必

要な場合,適切なスキーマ文書だけを複数<include>して構成した最高位のスキーマを使ってもよい。これ

によって,不要なGML型の定義を排除することができる。 

しかし,CPU,記憶装置及び/又は入出力処理能力が欠如した処理環境において応用スキーマを使用す

る場合,例えば,コンパクトな携帯端末で使用する場合には,絶対的に最小化されたGMLスキーマのイ

ンポートを要求することが多い。上で示した最高位のスキーマ文書を作るという手法は,予想外に多数の

不要な定義を,作成したGMLプロファイル文書に含む個々のGMLスキーマからもってくる可能性がある。

この解決策は,必要なGML型及び要素だけを含む単一のGML部分集合スキーマを作成することである。

しかし,このようなGMLの部分集合スキーマを,テキストエディタ又はXMLエディタを使った定義の切

り貼りを手で行って作成することは,非現実的で間違いを起こしやすい。なぜならば,この作業には多く

のGMLスキーマを横断する型定義の依存関係を分析する必要があるからである。その代わりとして,自

動化手法を推奨する。参考扱いのGMLスキーマ部分集合ツールの実装例を附属書Gに示す。部分集合ス

キーマは作成されたものであるが,箇条20で示したGMLのプロファイルである。 

background image

393 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

図J.1−スキーマ同士の依存関係 

394 

X 7136:2012 (ISO 19136:2007)  

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

参考文献 

[1] 

JIS X 4151:1992 文書記述言語SGML 

注記 対応国際規格:ISO 8879:1986,Information processing−Text and office systems−Standard 

Generalized Markup Language (SGML)(MOD) 

[2] 

JIS X 4170:2009 オープン分散処理−統一モデル化言語(UML)1.4.2版 

注記 対応国際規格:ISO/IEC 19501:2005,Information technology−Open Distributed Processing

−Unified Modeling Language (UML) Version 1.4.2(IDT) 

[3] 

JIS X 7105:2001 地理情報−適合性及び試験 

注記 対応国際規格:ISO 19105:2000,Geographic information−Conformance and testing(IDT) 

[4] 

JIS X 7110:2009 地理情報−地物カタログ化法 

注記 対応国際規格:ISO 19110:2005,Geographic information−Methodology for feature 

cataloguing(MOD) 

[5] 

JIS Z 8203 国際単位系(SI)及びその使い方 

注記 対応国際規格:ISO 1000,SI units and recommendations for the use of their multiples and of 

certain other units(IDT) 

[6] 

ISO 2955:1983,Information processing−Representation of SI and other units in Systems with limited 

Character sets 

[7] 

ISO/IEC TR 10000-1:1998,Information technology−Framework and taxonomy of International 

Standardized Profiles−Part 1: General principles and documentation framework 

[8] 

ISO 19101:2002,Geographic information−Reference model 

[9] 

ISO 19106:2004,Geographic information−Profiles 

[10] ISO 19117,Geographic information−Portrayal 

[11] ISO 19133:2005,Geographic information−Location-based services−Tracking and navigation 

[12] ISO 19137:2007,Geographic information−Core profile of the spatial schema 

[13] ISO 19141,Geographic information−Schema for moving features 

[14] Cover Pages: Geography Markup Language (GML),available at 

<http://xml.coverpages.org/geographyML.html> 

[15] LANGRAN,G. Time in Geographic Information Systems. London: Taylor & Francis Ltd. 1992 

[16] KAUFMAN,M.,and WAGNER,D. Drawing Graphs,Springer LNCS 2025,1998 

[17] BATTISTA,G.,EADES,P.,TAMASSIA,R.,and TOLLIS,I. Graph Drawing,Prentice Hall 1999 

[18] OpenGIS® Abstract Specification Topic 5,The OpenGIS Feature,OGC document 99-105r2 

[19] OpenGIS® Abstract Specification Topic 6,The Coverage Type,OGC document 00-106 

[20] OpenGIS® Abstract Specification Topic 8,Relationships between Feature,OGC document 99-108r2 

[21] OpenGIS® Abstract Specification Topic 10,Feature Collections,OGC document 99-110 

[22] OGC Best Practice,Observations and Measurements,OGC document 05-087r4 

[23] UCUM,Unified Code for Units of Measure,Schadow,G.,and McDonald,C.J. (eds.),available at 

<http://aurora.rg.iupui.edu/UCUM> 

[24] W3C XML Base,XML Base,W3C Recommendation (27 June 2001) 

395 

X 7136:2012 (ISO 19136:2007) 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

[25] W3C XPath,W3C XML Path Language (XPath) Version 1.0,W3C Recommendation (16 November,1999) 

[26] W3C XPointer Framework,XPointer Framework,W3C Recommendation (25 March 2003) 

[27] W3C XPointer element() Scheme,XPointer element(),W3C Recommendation (25 March 2003) 

[28] W3C XPointer xmlns() Scheme,XPointer xmlns(),W3C Recommendation (25 March 2003) 

[29] W3C XPointer xpointer() Scheme,XPointer xpointer(),W3C Working Draft (19 December 2002) 

[30] W3C SMIL,Synchronized Multimedia Integration Language (SMIL 2.0),W3C Recommendation (07 

August 2001) 

[31] W3C SVG,Scalable Vector Graphics (SVG) 1,W3C Recommendation (14 January 2003) 

396 

X 7136:2012 (ISO 19136:2007) 

索 1 

索引 

ここで,斜体は非推奨のGML要素又は属性を示す。 

英数字 

0D 

4.2 

1D 

4.2 

2D 

4.2 

3D 

4.2 

abstractAssociationRole 

7.2.3.3 

AbstractContinuousCoverage 

19.3.3 

AbstractContinuousCoverageType 

19.3.3 

AbstractCoordinateOperation 

12.6.2.1 

AbstractCoordinateOperationType 

12.6.2.1 

AbstractCoordinateSystem 

12.4.3.1 

AbstractCoordinateSystemType 

12.4.3.1 

AbstractCoverage 

19.3.1 

AbstractCoverageType 

19.3.1 

AbstractCRS 

12.2.3.1 

AbstractCRSType 

12.2.3.1 

AbstractCurve 

10.4.1 

AbstractCurveSegment 

10.4.7.1 

AbstractCurveSegmentType 

10.4.7.1 

AbstractCurveType 

10.4.1 

AbstractDatum 

12.5.2.1 

AbstractDatumType 

12.5.2.1 

AbstractDiscreteCoverage 

19.3.2 

AbstractFeature 

9.3.2 

AbstractFeatureCollection 

I.4.4 

AbstractFeatureCollectionType 

I.4.4 

AbstractFeatureMemberType 

9.9.2 

AbstractFeatureType 

9.3.1 

AbstractGeneralConversion 

12.6.2.9 

AbstractGeneralConversionType 

12.6.2.9 

AbstractGeneralDerivedCRS 

12.3.2.3 

AbstractGeneralDerivedCRSType 

12.3.2.3 

AbstractGeneralOperationParameter 

12.6.6.1 

AbstractGeneralOperationParameterPropertyType 12.6.6.3 

abstractGeneralOperationParameterRef 

I.6.11 

AbstractGeneralOperationParameterType 

12.6.6.1 

AbstractGeneralParameterValue 

12.6.4.1 

AbstractGeneralParameterValuePropertyType 

12.6.4.2 

AbstractGeneralParameterValueType 

12.6.4.1 

AbstractGeneralTransformation 

12.6.2.11 

AbstractGeneralTransformationType 

12.6.2.11 

AbstractGeometricAggregate 

11.3.1.1 

AbstractGeometricAggregateType 

11.3.1.1 

AbstractGeometricPrimitive 

10.2.1 

AbstractGeometricPrimitiveType 

10.2.1 

AbstractGeometry 

10.1.3.4 

AbstractGeometryType 

10.1.3.1 

AbstractGML 

7.2.2.2 

AbstractGMLType 

7.2.2.2 

AbstractGriddedSurface 

10.5.12.9 

AbstractGriddedSurfaceType 

10.5.12.9 

AbstractImplicitGeometry 

19.2.2 

abstractInlineProperty 

7.2.3.8 

AbstractMemberType 

7.2.5.1 

AbstractMetaData 

I.2.8 

AbstractMetadataPropertyType 

7.2.6 

AbstractMetaDataType 

I.2.8 

AbstractObject 

7.2.2.1 

AbstractOperation 

I.6.8 

AbstractParametricCurveSurface 

10.5.12.8 

AbstractParametricCurveSurfaceType 

10.5.12.8 

abstractReference 

7.2.3.7 

AbstractRing 

10.5.6 

AbstractRingPropertyType 

10.5.7 

AbstractRingType 

10.5.6 

AbstractScalarValue 

16.4.7 

AbstractScalarValueList 

16.4.7 

AbstractSingleCRS 

12.3.2.1 

AbstractSingleOperation 

12.6.2.7 

AbstractSolid 

10.6.1 

AbstractSolidType 

10.6.1 

abstractStrictAssociationRole 

7.2.3.6 

AbstractSurface 

10.5.1 

AbstractSurfacePatch 

10.5.12.1 

AbstractSurfacePatchType 

10.5.12.1 

AbstractSurfaceType 

10.5.1 

AbstractTimeComplex 

14.2.1.5 

AbstractTimeComplexType 

14.2.1.5 

AbstractTimeGeometricPrimitive 

14.2.2.2 

AbstractTimeGeometricPrimitiveType 

14.2.2.2 

AbstractTimeObject 

14.2.1.1 

AbstractTimeObjectType 

14.2.1.1 

AbstractTimePrimitive 

14.2.1.2 

AbstractTimePrimitiveType 

14.2.1.2 

AbstractTimeSlice 

14.5.6 

AbstractTimeSliceType 

14.5.6 

AbstractTimeTopologyPrimitive 

14.3.2.2 

AbstractTimeTopologyPrimitiveType 

14.3.2.2 

AbstractTopology 

13.2 

AbstractTopologyType 

13.2 

AbstractTopoPrimitive 

13.3.1.1 

AbstractTopoPrimitiveType 

13.3.1.1 

AbstractValue 

16.4.7 

actuate 

7.2.3.2 

affineCS 

12.3.3.30 

AffineCS 

12.4.4.19 

AffineCSPropertyType 

12.4.4.20 

AffineCSType 

12.4.4.19 

AffinePlacement 

10.4.7.18 

AffinePlacementType 

10.4.7.18 

AggregationAttributeGroup 

7.2.5.2 

AggregationType 

7.2.5.2 

anchorDefinition 

12.5.2.2 

anchorPoint 

I.6.10 

angle 

16.3.4 

AngleChoiceType 

I.9.6 

AngleType 

16.3.3 

Arc 

10.4.7.6 

ArcByBulge 

10.4.7.9 

ArcByBulgeType 

10.4.7.9 

ArcByCenterPoint 

10.4.7.10 

ArcByCenterPointType 

10.4.7.10 

ArcMinutesType 

I.9.1 

arcrole 

8.1 

ArcSecondsType 

I.9.1 

ArcString 

10.4.7.5 

ArcStringByBulge 

10.4.7.8 

ArcStringByBulgeType 

10.4.7.8 

ArcStringType 

10.4.7.5 

ArcType 

10.4.7.6 

AreaType 

16.3.3 

397 

X 7136:2012 (ISO 19136:2007) 索引 

索 2 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

Array 

I.2.7 

ArrayAssociationType 

I.2.3 

ArrayType 

I.2.7 

AssociationAttributeGroup 

7.2.3.2 

AssociationRoleType 

7.2.3.3 

axis 

12.4.3.2 

axisAbbrev 

12.4.2.2 

axisDirection 

12.4.2.3 

AxisDirection 

19.3.14 

AxisDirectionList 

19.3.14 

Bag 

I.2.7 

BagType 

I.2.7 

baseCRS 

12.3.3.18 

baseCurve 

10.4.6 

baseGeodeticCRS 

12.3.3.15 

baseGeographicCRS 

I.6.1 

baseSurface 

10.5.11 

BaseUnit 

16.2.7 

BaseUnitType 

16.2.7 

basicTypes.xsd 

Bezier 

10.4.7.16 

BezierType 

10.4.7.16 

Boolean 

16.4.3 

booleanList 

8.2.4.1 

BooleanList 

16.4.3 

booleanOrNilReason 

8.2.3.4 

booleanOrNilReasonList 

8.2.4.1 

BooleanPropertyType 

16.4.13 

booleanValue 

12.6.4.7 

boundedBy 

9.4.1 

BoundedFeatureType 

I.4.3 

BoundingShapeType 

9.4.1 

BSpline 

10.4.7.13 

BSplineType 

10.4.7.13 

CalDate 

14.2.2.7 

cartesianCS 

12.3.3.6 

CartesianCS 

12.4.4.3 

CartesianCSPropertyType 

12.4.4.4 

cartesianCSRef 

I.6.11 

CartesianCSType 

12.4.4.3 

catalogSymbol 

16.2.6 

Category 

16.4.4 

CategoryExtent 

16.4.12 

CategoryExtentType 

16.4.12 

CategoryList 

16.4.4 

CategoryPropertyType 

16.4.13 

centerLineOf 

I.4.5 

centerOf 

I.4.5 

Circle 

10.4.7.7 

CircleByCenterPoint 

10.4.7.11 

CircleByCenterPointType 

10.4.7.11 

CircleType 

10.4.7.7 

Clothoid 

10.4.7.19 

ClothoidType 

10.4.7.19 

CodeListType 

8.2.4.2 

CodeOrNilReasonListType 

8.2.4.2 

CodeType 

8.2.3.5 

CodeWithAuthorityType 

8.2.3.5 

CompassPointEnumeration 

17.4 

componentReferenceSystem 

12.3.3.2 

CompositeCurve 

11.2.2.2 

CompositeCurveType 

11.2.2.2 

CompositeSolid 

11.2.2.4 

CompositeSolidType 

11.2.2.4 

CompositeSurface 

11.2.2.3 

CompositeSurfaceType 

11.2.2.3 

CompositeValue 

16.4.10 

CompositeValueType 

16.4.10 

CompoundCRS 

12.3.3.1 

CompoundCRSPropertyType 

12.3.3.3 

compoundCRSRef 

I.6.11 

CompoundCRSType 

12.3.3.1 

ConcatenatedOperation 

12.6.3.1 

ConcatenatedOperationPropertyType 

12.6.3.3 

concatenatedOperationRef 

I.6.11 

ConcatenatedOperationType 

12.6.3.1 

Cone 

10.5.12.10 

ConeType 

10.5.12.10 

ConventionalUnit 

16.2.10 

ConventionalUnitType 

16.2.10 

Conversion 

12.3.2.4 

Conversion 

12.6.3.7 

ConversionPropertyType 

12.6.3.10 

conversionRef 

I.6.11 

conversionToPreferredUnit 

16.2.11 

ConversionToPreferredUnitType 

16.2.11 

ConversionType 

12.6.3.7 

coordinateOperationAccuracy 

12.6.2.3 

CoordinateOperationPropertyType 

12.6.2.6 

coordinateOperationRef 

I.6.11 

coordinateOperations.xsd 

coordinateReferenceSystems.xsd 

coordinates 

I.5.1 

CoordinatesType 

8.2.3.7 

CoordinateSystemAxis 

12.4.2.1 

CoordinateSystemAxisPropertyType 

12.4.2.6 

coordinateSystemAxisRef 

I.6.11 

CoordinateSystemAxisType 

12.4.2.1 

CoordinateSystemPropertyType 

12.4.3.3 

coordinateSystemRef 

I.6.11 

coordinateSystems.xsd 

coordinteSystem 

12.3.3.20 

coordOperation 

12.6.3.2 

Count 

16.4.5 

CountExtent 

16.4.12 

CountExtentType 

16.4.12 

CountList 

16.4.5 

CountPropertyType 

16.4.13 

coverage.xsd 

coverageFunction 

19.3.11 

CoverageFunctionType 

19.3.11 

CoverageMappingRule 

19.3.12 

CRS 

4.2 

CRSPropertyType 

12.2.3.4 

crsRef 

I.6.11 

CS 

4.2 

CSV 

4.2 

CT 

4.2 

CubicSpline 

10.4.7.12 

CubicSplineType 

10.4.7.12 

Curve 

10.4.5 

curveArrayProperty 

10.4.3 

CurveArrayPropertyType 

10.4.3 

CurveInterpolationType 

10.4.7.3 

curveMember 

10.5.11.1 

curveMembers 

11.3.3.1 

curveProperty 

10.4.2 

CurvePropertyType 

10.4.2 

CurveSegmentArrayPropertyType 

10.4.7.2 

CurveType 

10.4.5 

398 

X 7136:2012 (ISO 19136:2007) 索引 

索 3 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

CylinderType 

10.5.12.11 

cylindricalCS 

12.3.3.23 

CylindricalCS 

12.4.4.17 

CylindricalCSPropertyType 

12.4.4.18 

cylindricalCSRef 

I.6.11 

CylindricalCSType 

12.4.4.17 

DataBlock 

19.3.6 

DataBlockType 

19.3.6 

dataSource 

14.5.2 

dataSourceReference 

14.5.2 

DatumPropertyType 

12.5.2.4 

datumRef 

I.6.11 

datums.xsd 

decimalMinutes 

I.9.3 

DecimalMinutesType 

I.9.1 

definedByConversion 

I.6.10 

Definition 

15.2.1 

DefinitionBaseType 

15.2.1 

DefinitionCollection 

I.8.1 

definitionMember 

I.8.2 

DefinitionProxy 

I.8.3 

DefinitionProxyType 

I.8.3 

definitionRef 

I.8.3 

DefinitionType 

15.2.1 

degrees 

I.9.2 

DegreesType 

I.9.1 

DegreeValueType 

I.9.1 

derivationUnitTerm 

16.2.9 

DerivationUnitTermType 

16.2.9 

DerivedCRS 

12.3.3.17 

DerivedCRSPropertyType 

12.3.3.21 

derivedCRSRef 

I.6.11 

DerivedCRSType 

12.3.3.17 

derivedCRSType 

12.3.3.19 

DerivedUnit 

16.2.8 

DerivedUnitType 

16.2.8 

description 

7.2.4.2 

descriptionReference 

7.2.4.3 

Dictionary 

15.2.2 

dictionary.xsd 

dictionaryEntry 

15.2.3 

DictionaryEntryType 

15.2.3 

DictionaryType 

15.2.2 

directedEdge 

13.3.3.2 

DirectedEdgePropertyType 

13.3.3.2 

directedFace 

13.3.4.2 

DirectedFacePropertyType 

13.3.4.2 

directedNode 

13.3.2.2 

DirectedNodePropertyType 

13.3.2.2 

DirectedObservation 

18.2.6 

DirectedObservationAtDistance 

18.2.7 

DirectedObservationAtDistanceType 

18.2.7 

DirectedObservationType 

18.2.6 

directedTopoSolid 

13.3.5.2 

DirectedTopoSolidPropertyType 

13.3.5.2 

direction 

17.2 

direction.xsd 

DirectionDescriptionType 

17.4 

DirectionPropertyType 

17.2 

DirectionVectorType 

17.3 

DirectPositionListType 

10.1.4.2 

DirectPositionType 

10.1.4.1 

DiscreteCoverageType 

19.3.2 

dmsAngle 

I.9.1 

DMSAngleType 

I.9.1 

dmsAngleValue 

I.6.9 

domainOfValidity 

12.2.3.2 

domainSet 

19.3.4 

DomainSetType 

19.3.4 

doubleList 

8.2.4.1 

doubleOrNilReason 

8.2.3.4 

doubleOrNilReasonList 

8.2.4.1 

doubleOrNilReasonTupleList 

19.3.9 

DTD 

4.2 

duration 

14.2.2.8 

DynamicFeature 

14.5.4 

dynamicFeature.xsd 

DynamicFeatureCollection 

14.5.5 

DynamicFeatureCollectionType 

14.5.5 

DynamicFeatureMemberType 

14.5.5 

DynamicFeatureType 

14.5.4 

dynamicMembers 

14.5.5 

dynamicProperties 

14.5.3 

Edge 

13.3.3.1 

edgeOf 

I.4.5 

EdgeType 

13.3.3.1 

ellipsodalCS 

12.3.3.5 

ellipsoid 

12.5.3.3 

Ellipsoid 

12.5.3.5 

EllipsoidalCS 

12.4.4.1 

EllipsoidalCSPropertyType 

12.4.4.2 

ellipsoidalCSRef 

I.6.11 

EllipsoidalCSType 

12.4.4.1 

EllipsoidPropertyType 

12.5.3.6 

ellipsoidRef 

I.6.11 

EllipsoidType 

12.5.3.5 

EngineeringCRS 

12.3.3.22 

EngineeringCRSPropertyType 

12.3.3.28 

engineeringCRSRef 

I.6.11 

EngineeringCRSType 

12.3.3.22 

engineeringDatum 

12.3.3.27 

EngineeringDatum 

12.5.4.1 

EngineeringDatumPropertyType 

12.5.4.2 

engineeringDatumRef 

I.6.11 

EngineeringDatumType 

12.5.4.1 

Envelope 

10.1.4.6 

EnvelopeType 

10.1.4.6 

EnvelopeWithTimePeriod 

9.4.1 

EnvelopeWithTimePeriodType 

9.4.1 

EPSG 

4.2 

extentOf 

I.4.5 

exterior 

10.5.5 

Face 

13.3.4.1 

FaceOrTopoSolidPropertyType 

13.3.2.1 

FaceType 

13.3.4.1 

feature.xsd 

FeatureArrayPropertyType 

9.4.3 

FeatureCollection 

I.4.4 

FeatureCollectionType 

I.4.4 

featureMember 

I.2.5 

featureMembers 

I.2.5 

featureProperty 

I.2.5 

FeaturePropertyType 

9.4.3 

File 

19.3.10 

FileType 

19.3.10 

formula 

12.6.5.2 

formulaCitation 

12.6.5.2 

FormulaType 

16.2.11 

GeneralConversionPropertyType 

12.6.2.10 

generalConversionRef 

I.6.11 

399 

X 7136:2012 (ISO 19136:2007) 索引 

索 4 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

generalOperationParameter 

I.6.10 

GeneralTransformationPropertyType 

12.6.2.12 

generalTransformationRef 

I.6.11 

GenericMetaData 

I.2.9 

GenericMetaDataType 

I.2.9 

GeocentricCRS 

I.6.3 

GeocentricCRSPropertyType 

I.6.3 

geocentricCRSRef 

I.6.11 

GeocentricCRSType 

I.6.3 

Geodesic 

10.4.7.21 

GeodesicString 

10.4.7.20 

GeodesicStringType 

10.4.7.20 

GeodesicType 

10.4.7.21 

GeodeticCRS 

12.3.3.4 

GeodeticCRSPropertyType 

12.3.3.9 

GeodeticCRSType 

12.3.3.4 

geodeticDatum 

12.3.3.8 

GeodeticDatum 

12.5.3.1 

GeodeticDatumPropertyType 

12.5.3.4 

geodeticDatumRef 

I.6.11 

GeodeticDatumType 

12.5.3.1 

GeographicCRS 

I.6.2 

GeographicCRSPropertyType 

I.6.2 

GeographicCRSType 

I.6.2 

GeometricComplex 

11.2.1.1 

GeometricComplexPropertyType 

11.2.1.2 

GeometricComplexType 

11.2.1.1 

geometricPositionGroup 

10.1.4.3 

geometricPositionListGroup 

10.1.4.4 

GeometricPrimitivePropertyType 

10.2.2 

geometryAggregates.xsd 

GeometryArrayPropertyType 

10.1.3.6 

geometryBasic0d1d.xsd 

geometryBasic2d.xsd 

geometryComplexes.xsd 

geometryMember 

11.3.1.2 

geometryMembers 

11.3.1.2 

geometryPrimitives.xsd 

GeometryPropertyType 

10.1.3.5 

GIS 

4.2 

GML 

4.2 

gml 

5.1 

gml.xsd 

gmlBase.xsd 

gmlCylinder 

10.5.12.11 

GML応用スキーマ 

4.1.34 

GMLスキーマ 

4.1.37 

GMLプロファイル 

4.1.36 

GML文書 

4.1.35 

greenwichLongitude 

12.5.3.7 

Grid 

19.2.2 

GridCoverage 

19.3.20 

gridDomain 

I.11.3 

GridEnvelopeType 

19.2.2 

GridFunction 

19.3.13 

GridFunctionType 

19.3.13 

GridLengthType 

16.3.3 

GridLimitsType 

19.2.2 

grids.xsd 

GridType 

19.2.2 

group 

12.6.4.13 

history 

14.5.7 

HistoryPropertyType 

14.5.7 

href 

8.1 

HTTP 

4.2 

id 

7.2.4.5 

IdentifiedObjectType 

12.2.2 

identifier 

7.2.4.4 

IETF 

4.2 

ImageCRS 

12.3.3.29 

ImageCRSPropertyType 

12.3.3.32 

imageCRSRef 

I.6.11 

ImageCRSType 

12.3.3.29 

imageDatum 

12.3.3.31 

ImageDatum 

12.5.4.3 

ImageDatumPropertyType 

12.5.4.5 

imageDatumRef 

I.6.11 

ImageDatumType 

12.5.4.3 

includesParameter 

I.6.10 

includesSingleCRS 

I.6.10 

includesValue 

I.6.10 

IncrementOrder 

I.11.2 

indirectEntry 

I.8.3 

IndirectEntryType 

I.8.3 

InlinePropertyType 

7.2.3.8 

integerList 

8.2.4.1 

integerOrNilReason 

8.2.3.4 

integerOrNilReasonList 

8.2.4.1 

integerValue 

12.6.4.6 

integerValueList 

12.6.4.9 

interior 

10.5.5 

ISO 

4.2 

ISO 19111 

ISO 19118 

ISO 19123 

ISO 80000-3 

ISO/IEC 11404 

ISO/TS 19103 

ISO/TS 19139 

isolated 

13.3.4.1 
13.3.5.1 

JIS X 0301 

JIS X 4158 

JIS X 4159 

JIS X 4176 

JIS X 4177-3 

JIS X 7107 

JIS X 7108 

JIS X 7109 

JIS X 7112 

JIS X 7115 

KnotPropertyType 

10.4.7.14 

KnotType 

10.4.7.14 

KnotTypesType 

10.4.7.15 

LengthType 

16.3.3 

linearCS 

12.3.3.24 

LinearCS 

12.4.4.9 

LinearCSPropertyType 

12.4.4.10 

linearCSRef 

I.6.11 

LinearCSType 

12.4.4.9 

LinearRing 

10.5.8 

LinearRingPropertyType 

10.5.9 

LinearRingType 

10.5.8 

LineString 

10.4.4 

LineStringSegment 

10.4.7.4 

LineStringSegmentArrayPropertyType 

10.5.11.6 

LineStringSegmentType 

10.4.7.4 

LineStringType 

10.4.4 

location 

I.4.1 

LocationKeyWord 

I.4.1 

400 

X 7136:2012 (ISO 19136:2007) 索引 

索 5 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

locationName 

9.4.2 

LocationPropertyType 

I.4.1 

locationReference 

9.4.2 

LocationString 

I.4.1 

MappingRule 

I.11.1 

MappingRuleType 

19.3.12 

maximalComplex 

13.5.2 

maximumOccurs 

12.6.6.7 

maximumValue 

12.4.2.4 

measure 

16.3.2 

MeasureListType 

8.2.4.3 

MeasureOrNilReasonListType 

8.2.4.3 

measures.xsd 

MeasureType 

8.2.3.6 

member 

I.2.2 

members 

I.2.4 

metaDataProperty 

I.2.8 

MetaDataPropertyType 

I.2.8 

method 

12.6.3.8 

methodFormula 

I.6.10 

minimumOccurs 

12.6.6.2 

minimumValue 

12.4.2.4 

minutes 

I.9.4 

modifiedCoordinate 

12.6.3.5 

MovingObjectStatus 

I.7.2 

MovingObjectStatusType 

I.7.2 

multiCenterLineOf 

I.4.5 

multiCenterOf 

I.4.5 

multiCoverage 

I.4.5 

MultiCurve 

11.3.3.1 

MultiCurveCoverage 

19.3.17 

multiCurveDomain 

I.11.3 

multiCurveProperty 

11.3.3.2 

MultiCurvePropertyType 

11.3.3.2 

MultiCurveType 

11.3.3.1 

multiEdgeOf 

I.4.5 

multiExtentOf 

I.4.5 

MultiGeometry 

11.3.1.2 

multiGeometryProperty 

11.3.1.3 

MultiGeometryPropertyType 

11.3.1.3 

MultiGeometryType 

11.3.1.2 

multiLocation 

I.4.5 

MultiPoint 

11.3.2.1 

MultiPointCovearge 

19.3.16 

multiPointDomain 

I.11.3 

multiPointProperty 

11.3.2.2 

MultiPointPropertyType 

11.3.2.2 

MultiPointType 

11.3.2.1 

multiPosition 

I.4.5 

MultiSolid 

11.3.5.1 

MultiSolidCoverage 

19.3.19 

multiSolidDomain 

I.11.3 

multiSolidProperty 

11.3.5.2 

MultiSolidPropertyType 

11.3.5.2 

MultiSolidType 

11.3.5.1 

MultiSurface 

11.3.4.1 

MultiSurfaceCoverage 

19.3.18 

multiSurfaceDomain 

I.11.3 

multiSurfaceProperty 

11.3.4.2 

MultiSurfacePropertyType 

11.3.4.2 

MultiSurfaceType 

11.3.4.1 

name 

7.2.4.4 

NameList 

8.2.4.1 

NameOrNilReason 

8.2.3.4 

NameOrNilReasonList 

8.2.4.1 

NCNameList 

8.2.4.1 

NilReasonEnumeration 

8.2.3.1 

NilReasonType 

8.2.3.1 

Node 

13.3.2.1 

NodeOrEdgePropertyType 

13.3.5.1 

NodeType 

13.3.2.1 

Null 

I.3 

ObliqueCartesianCS 

I.6.5 

ObliqueCartesianCSPropertyType 

I.6.5 

obliqueCartesianCSRef 

I.6.11 

ObliqueCartesianCSType 

I.6.5 

Observation 

18.2.2 

observation.xsd 

ObservationType 

18.2.2 

OffsetCurve 

10.4.7.17 

OffsetCurveType 

10.4.7.17 

OGC 

4.2 

OperationMethod 

12.6.5.1 

OperationMethodPropertyType 

12.6.5.6 

operationMethodRef 

I.6.11 

OperationMethodType 

12.6.5.1 

operationParameter 

12.6.4.11 

OperationParameter 

12.6.6.4 

OperationParameterGroup 

12.6.6.6 

OperationParameterGroupPropertyType 

12.6.6.8 

operationParameterGroupRef 

I.6.11 

OperationParameterGroupType 

12.6.6.6 

OperationParameterPropertyType 

12.6.6.5 

operationParameterRef 

I.6.11 

OperationParameterType 

12.6.6.4 

OperationPropertyType 

I.6.8 

operationRef 

I.6.11 

operationVersion 

12.6.2.2 

OrientableCurve 

10.4.6 

OrientableCurveType 

10.4.6 

OrientableSurface 

10.5.11 

OrientableSurfaceType 

10.5.11 

origin 

12.5.4.8 

OwnershipAttributeGroup 

7.2.3.5 

parameter 

12.6.5.5 

parameterValue 

12.6.3.9 

ParameterValue 

12.6.4.3 

ParameterValueGroup 

12.6.4.12 

ParameterValueGroupType 

12.6.4.12 

ParameterValueType 

12.6.4.3 

PassThroughOperation 

12.6.3.4 

PassThroughOperationPropertyType 

12.6.3.6 

passThroughOperationRef 

I.6.11 

PassThroughOperationType 

12.6.3.4 

patches 

10.5.12.2 

pixelInCell 

12.5.4.4 

Point 

10.3.1 

pointArrayProperty 

10.3.3 

PointArrayPropertyType 

10.3.3 

PointGrid 

10.5.12.7 

pointMember 

11.3.2.1 

pointMembers 

11.3.2.1 

pointProperty 

10.3.2 

PointPropertyType 

10.3.2 

pointRep 

I.5.3 

PointType 

10.3.1 

polarCS 

12.3.3.25 

PolarCS 

12.4.4.15 

PolarCSPropertyType 

12.4.4.16 

polarCSRef 

I.6.11 

401 

X 7136:2012 (ISO 19136:2007) 索引 

索 6 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

PolarCSType 

12.4.4.15 

Polygon 

10.5.4 

PolygonPatch 

10.5.12.4 

polygonPatches 

I.5.4 

PolygonPatchType 

10.5.12.4 

PolygonType 

10.5.4 

PolyhedralSurface 

10.5.11.3 

pos 

10.1.4.1 

position 

I.4.5 

posList 

10.1.4.2 

primeMeridian 

12.5.3.2 

PrimeMeridian 

12.5.3.7 

PrimeMeridianPropertyType 

12.5.3.8 

primeMeridianRef 

I.6.11 

PrimeMeridianType 

12.5.3.7 

priorityLocation 

I.4.2 

PriorityLocationPropertyType 

I.4.2 

ProcedurePropertyType 

18.2.3 

ProjectedCRS 

12.3.3.14 

ProjectedCRSPropertyType 

12.3.3.16 

projectedCRSRef 

I.6.11 

ProjectedCRSType 

12.3.3.14 

QNameList 

8.2.4.1 

Quantity 

16.4.6 

QuantityExtent 

16.4.12 

QuantityExtentType 

16.4.12 

QuantityList 

16.4.6 

QuantityPropertyType 

16.4.13 

quantityType 

16.2.5 

quantityTypeReference 

16.2.5 

rangeMeaning 

12.4.2.4 

rangeParameters 

19.3.7 

rangeSet 

19.3.5 

RangeSetType 

19.3.5 

RDF 

4.2 

realizationEpoch 

12.5.2.3 

Rectangle 

10.5.12.6 

RectangleType 

10.5.12.6 

RectifiedGrid 

19.2.3 

RectifiedGridCoverage 

19.3.21 

rectifiedGridDomain 

I.11.3 

RectifiedGridType 

19.2.3 

referenceSystem 

16.4.11 

referenceSystemRef 

I.6.11 

referenceSystems.xsd 

ReferenceType 

7.2.3.7 

RelatedTimeType 

14.2.1.4 

remarks 

15.2.1 

remoteSchema 

I.2.1 

resultOf 

18.2.5 

ResultType 

18.2.5 

reversePropertyName 

7.2.3.9 

RFC 

4.2 

Ring 

10.5.11.1 

RingPropertyType 

10.5.11.2 

RingType 

10.5.11.1 

role 

8.1 

roughConversionToPreferredUnit 

16.2.11 

ScaleType 

16.3.3 

scope 

12.2.3.3 

secondDefiningParameter 

12.5.3.5 

seconds 

I.9.5 

segments 

10.4.7.2 

semiMajorAxis 

12.5.3.5 

sequenceRule 

19.3.14 

SequenceRuleEnumeration 

19.3.14 

SequenceRuleType 

19.3.14 

Shell 

10.6.5 

ShellPropertyType 

10.6.6 

ShellType 

10.6.5 

show 

7.2.3.2 

SignType 

8.2.3.3 

simpleLink 

7.2.3.2 

SingleCRSPropertyType 

12.3.2.2 

singleCRSRef 

I.6.11 

SingleOperationPropertyType 

12.6.2.8 

singleOperationRef 

I.6.11 

SMIL 

4.2 

SOAP 

4.2 

Solid 

10.6.4 

solidArrayProperty 

10.6.3 

SolidArrayPropertyType 

10.6.3 

solidMember 

11.3.5.1 

solidMembers 

11.3.5.1 

solidProperty 

10.6.2 

SolidPropertyType 

10.6.2 

SolidType 

10.6.4 

sourceCRS 

12.6.2.4 

sourceDimensions 

12.6.5.3 

SpeedType 

16.3.3 

Sphere 

10.5.12.12 

SphereType 

10.5.12.12 

sphericalCS 

12.3.3.7 

SphericalCS 

12.4.4.13 

SphericalCSPropertyType 

12.4.4.14 

sphericalCSRef 

I.6.11 

SphericalCSType 

12.4.4.13 

SRSInformationGroup 

10.1.3.3 

SRSReferenceGroup 

10.1.3.2 

StandardObjectProperties 

7.2.2.2 

stringOrNilReason 

8.2.3.4 

StringOrRefType 

I.2.6 

stringValue 

12.6.4.5 

subComplex 

13.5.2 

subject 

18.2.4 

SuccessionType 

I.7.1 

superComplex 

13.5.2 

Surface 

10.5.10 

surfaceArrayProperty 

10.5.3 

SurfaceArrayPropertyType 

10.5.3 

SurfaceInterpolationType 

10.5.12.3 

surfaceMember 

11.3.4.1 

surfaceMembers 

11.3.4.1 

SurfacePatchArrayPropertyType 

10.5.12.2 

surfaceProperty 

10.5.2 

SurfacePropertyType 

10.5.2 

SurfaceType 

10.5.10 

SVG 

4.2 

target 

18.2.4 

targetCRS 

12.6.2.5 

targetDimensions 

12.6.5.4 

TargetPropertyType 

18.2.4 

temporal.xsd 

TemporalCRS 

12.3.3.33 

TemporalCRSPropertyType 

12.3.3.36 

temporalCRSRef 

I.6.11 

TemporalCRSType 

12.3.3.33 

TemporalCS 

I.6.6 

TemporalCSPropertyType 

I.6.6 

temporalCSRef 

I.6.11 

402 

X 7136:2012 (ISO 19136:2007) 索引 

索 7 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

TemporalCSType 

I.6.6 

temporalDatum 

12.3.3.35 

TemporalDatum 

12.5.4.8 

TemporalDatumBaseType 

12.5.4.8 

TemporalDatumPropertyType 

12.5.4.9 

temporalDatumRef 

I.6.11 

TemporalDatumType 

12.5.4.8 

temporalReferenceSystems.xsd 

temporalTopology.xsd 

TimeCalendar 

14.4.4.2 

TimeCalendarEra 

14.4.4.2 

TimeCalendarEraPropertyType 

14.4.4.3 

TimeCalendarEraType 

14.4.4.2 

TimeCalendarPropertyType 

14.4.4.3 

TimeCalendarType 

14.4.4.2 

TimeClock 

14.4.4.4 

TimeClockPropertyType 

14.4.4.5 

TimeClockType 

14.4.4.4 

TimeCoordinateSystem 

14.4.3 

TimeCoordinateSystemType 

14.4.3 

timeCS 

12.3.3.34 

TimeCS 

12.4.4.7 

TimeCSPropertyType 

12.4.4.8 

TimeCSType 

12.4.4.7 

TimeEdge 

14.3.2.8 

TimeEdgePropertyType 

14.3.2.9 

TimeEdgeType 

14.3.2.8 

TimeIndeterminateValueType 

14.2.2.7 

TimeInstant 

14.2.2.3 

TimeInstantPropertyType 

14.2.2.4 

TimeInstantType 

14.2.2.3 

timeInterval 

14.2.2.8 

TimeIntervalLengthType 

14.2.2.8 

timeLength 

14.2.2.8 

TimeNode 

14.3.2.6 

TimeNodePropertyType 

14.3.2.7 

TimeNodeType 

14.3.2.6 

TimeOrdinalEra 

14.4.5.2 

TimeOrdinalEraPropertyType 

14.4.5.3 

TimeOrdinalEraType 

14.4.5.2 

TimeOrdinalReferenceSystem 

14.4.5.2 

TimeOrdinalReferenceSystemType 

14.4.5.2 

TimePeriod 

14.2.2.5 

TimePeriodPropertyType 

14.2.2.6 

TimePeriodType 

14.2.2.5 

timePosition 

14.2.2.7 

TimePositionType 

14.2.2.7 

TimePositionUnion 

14.2.2.7 

TimePrimitivePropertyType 

14.2.1.3 

TimeReferenceSystem 

14.4.2 

TimeReferenceSystemType 

14.4.2 

TimeTopologyComplex 

14.3.2.4 

TimeTopologyComplexPropertyType 

14.3.2.5 

TimeTopologyComplexType 

14.3.2.4 

TimeTopologyPrimitivePropertyType 

14.3.2.3 

TimeType 

16.3.3 

TimeUnitType 

14.2.2.8 

Tin 

10.5.11.5 

TinType 

10.5.11.5 

title 

8.1 

TopoComplex 

13.5.1 

topoComplexProperty 

13.5.5 

TopoComplexPropertyType 

13.5.5 

TopoComplexType 

13.5.1 

TopoCurve 

13.4.2.1 

topoCurveProperty 

13.4.2.2 

TopoCurvePropertyType 

13.4.2.2 

TopoCurveType 

13.4.2.1 

topology.xsd 

TopoPoint 

13.4.1.1 

topoPointProperty 

13.4.1.2 

TopoPointPropertyType 

13.4.1.2 

TopoPointType 

13.4.1.1 

TopoPrimitiveArrayAssociationType 

13.5.4 

topoPrimitiveMember 

13.5.3 

topoPrimitiveMembers 

13.5.4 

TopoSolid 

13.3.5.1 

TopoSolidType 

13.3.5.1 

TopoSurface 

13.4.3.1 

topoSurfaceProperty 

13.4.3.2 

TopoSurfacePropertyType 

13.4.3.2 

TopoSurfaceType 

13.4.3.1 

TopoVolume 

13.4.4.1 

topoVolumeProperty 

13.4.4.2 

TopoVolumePropertyType 

13.4.4.2 

TopoVolumeType 

13.4.4.1 

track 

I.7.3 

Transformation 

12.6.3.11 

TransformationPropertyType 

12.6.3.12 

transformationRef 

I.6.11 

TransformationType 

12.6.3.11 

Triangle 

10.5.12.5 

trianglePatches 

I.5.5 

TriangleType 

10.5.12.5 

TriangulatedSurface 

10.5.11.4 

tupleList 

19.3.8 

type 

7.2.3.2 

UML 

4.2 

UML応用スキーマ 

4.1.64 

UnitDefinition 

16.2.4 

UnitDefinitionType 

16.2.4 

unitOfMeasure 

16.2.3 

UnitOfMeasureType 

16.2.3 

units.xsd 

unitsSystem 

16.2.7 

uom 

I.6.4 

uom 

12.4.2.5 

UomIdentifier 

8.2.3.6 

UomSymbol 

8.2.3.6 

UomURI 

8.2.3.6 

URI 

4.2 

URL 

4.2 

URN 

4.2 

userDefinedCS 

12.3.3.26 

UserDefinedCS 

12.4.4.11 

UserDefinedCSPropertyType 

12.4.4.12 

userDefinedCSRef 

I.6.11 

UserDefinedCSType 

12.4.4.11 

usesAffineCS 

I.6.10 

usesAxis 

I.6.10 

usesCartesianCS 

I.6.10 

usesCS 

I.6.10 

usesEllipsoid 

I.6.10 

usesEllipsoidalCS 

I.6.10 

usesEngineeringDatum 

I.6.10 

usesGeodeticDatum 

I.6.10 

usesImageDatum 

I.6.10 

usesMethod 

I.6.10 

usesObliqueCartesianCS 

I.6.10 

usesOperation 

I.6.10 

403 

X 7136:2012 (ISO 19136:2007) 索引 

索 8 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

usesParameter 

I.6.10 

usesPrimeMeridian 

I.6.10 

usesSingleOperation 

I.6.10 

usesSphericalCS 

I.6.10 

usesTemporalCS 

I.6.10 

usesTemporalDatum 

I.6.10 

usesTimeCS 

I.6.10 

usesValue 

I.6.10 

usesVerticalCS 

I.6.10 

usesVerticalDatum 

I.6.10 

using 

18.2.3 

UTC 

14.2.2.2 

validTime 

14.2.1.3 

value 

12.6.4.4 

Value 

16.4.8 

ValueArray 

16.4.11 

ValueArrayPropertyType 

16.4.9 

ValueArrayType 

16.4.11 

valueComponent 

16.4.9 

valueComponents 

16.4.9 

valueFile 

12.6.4.10 

valueList 

12.6.4.8 

valueObjects.xsd 

valueOfParameter 

I.6.10 

valueProperty 

16.4.9 

ValuePropertyType 

16.4.9 

valuesOfGroup 

I.6.10 

vector 

10.1.4.5 

VectorType 

10.1.4.5 

VerticalCRS 

12.3.3.10 

VerticalCRSPropertyType 

12.3.3.13 

verticalCRSRef 

I.6.11 

VerticalCRSType 

12.3.3.10 

verticalCS 

12.3.3.11 

VerticalCS 

12.4.4.5 

VerticalCSPropertyType 

12.4.4.6 

verticalCSRef 

I.6.11 

VerticalCSType 

12.4.4.5 

verticalDatum 

12.3.3.12 

VerticalDatum 

12.5.4.6 

VerticalDatumPropertyType 

12.5.4.7 

verticalDatumRef 

I.6.11 

VerticalDatumType 

12.5.4.6 

VolumeType 

16.3.3 

W3C 

4.2 

WFS 

4.2 

xlink 

5.1 

XML 

4.2 

XPointer 

8.1 

XSLT 

4.2 

あ行 

位相オブジェクト 

4.1.62 

意味型 

4.1.56 

エッジ 

4.1.22 

応用スキーマ 

4.1.1 

オブジェクト 

4.1.45 

か行 

外部 

4.1.24 

可観測型 

4.1.46 

関数 

4.1.28 

関連 

4.1.2 

幾何オブジェクト 

4.1.30 

幾何集合 

4.1.32 

幾何プリミティブ 

4.1.31 

幾何プロパティ 

4.1.33 

境界 

4.1.4 

曲線 

4.1.17 

曲面 

4.1.60 

空間オブジェクト 

4.1.59 

組 

4.1.63 

グリッド 

4.1.38 

計測値 

4.1.41 

原子 

4.1.19 

合成曲線 

4.1.9 

合成曲面 

4.1.11 

合成立体 

4.1.10 

子要素 

4.1.5 

さ行 

座標 

4.1.12 

座標組 

4.1.15 

座標系 

4.1.14 

座標参照系 

4.1.13 

集合 

4.1.58 

偏位修正グリッド 

4.1.52 

スキーマ 

4.1.53 

スキーマ 

4.1.54 

スキーマ文書 

4.1.55 

線列 

4.1.40 

属性 

4.1.3 

測地原子 

4.1.29 

測定量 

4.1.42 

た行 

タグ 

4.1.61 

値域 

4.1.51 

地物 

4.1.26 

地物関連 

4.1.27 

直接位置 

4.1.20 

定義域 

4.1.21 

データ型 

4.1.18 

点 

4.1.47 

統一資源識別子 

4.1.65 

な行 

内部 

4.1.39 

名前空間 

4.1.43 

ノード 

4.1.44 

は行 

非推奨の 

5.3 

被覆 

4.1.16 

フェイス 

4.1.25 

符号空間 

4.1.8 

符号リスト 

4.1.7 

物理量 

4.1.50 

プロパティ 

4.1.49 

閉包 

4.1.6 

ポリゴン 

4.1.48 

404 

X 7136:2012 (ISO 19136:2007) 索引 

索 9 

2019年7月1日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格」を「日本産業規格」に読み替えてください。 

や行 

要素 

4.1.23 

ら行 

列 

4.1.57