この規格ページの目次
10
X 7107 : 2005 (ISO 19107 : 2003)
4.62 レコード(record) 有限の,名前をもつ,相互に関連性のある項目(オブジェクト又は値)の集
まり。
備考 論理的に,レコードは <名称,項目> の対の集合となる。
4.63 輪(ring) 輪体である単純曲線。
備考 輪は二次元及び三次元座標系における曲面の境界の要素を記述するために用いる。
4.64 列(sequence) 繰返しを許した,関連する項目(オブジェクト又は値)の,有限で順序をもつ集
まり。
備考 論理的には,列は <項目,相対位置> の対の集合である。この規格では,括弧で列を区切り,
列の要素をコンマで分けるLISP構文を用いる。
4.65 集合(set) 繰返しを許さない,関連する項目(オブジェクト又は値)の,有限で順序をもたない
集まり。
4.66 殻(shell) 輪体である単純曲面。
備考 殻は,三次元座標系における立体の境界の要素を記述するために用いる。
4.67 単純(simple) 内部が等方的(すべての点が同形な近傍をもつ。)で,したがって,至るところ適
切な次元のユークリッド座標空間の開部分集合に局所的に同形である,という幾何オブジェクトの特性。
備考 これは,内部の直接位置がいかなる種類の自己交差にも関与しないことを意味する。
4.68 立体(solid) 三次元ユークリッド空間のある領域の連続な像を表す三次元の幾何プリミティブ。
備考 立体は,直接位置の三つのパラメタをもつ集合によって局所的に実現することができる。立体
の境界は,その立体の限界を包含する,向きをもつ閉曲面の集合である。
4.69 空間オブジェクト(spatial object) 地物の空間特性を表現するために用いるオブジェクト。
4.70 空間演算子(spatial operator) その定義域又は値域に最低一つの空間パラメタをもつ関数又は手
続。
備考 空間オブジェクトに対するすべてのUML操作は,この規格の8.の問合せ演算子もそうである
ように,空間演算子として分類することができる。
4.71 始点ノード(start node) エッジを含む位相複体の有効な幾何実現において,そのエッジを実現す
る曲線の始点に対応する,このエッジの境界のノード。
4.72 始点(start point) 曲線の最初の点。
4.73 強代替性(strong substitutability) あるクラス,型又はインタフェースを継承又は実現した下位ク
ラスの任意のインスタンスを,その原型のインスタンスの代わりとして任意の状況において用いることの
できる能力。
備考 代替性の弱い形式は,暗黙の代替を行う状況に様々な制限を設ける。
4.74 部分複体(subcomplex) すべての要素が,より大きな複体の一部でもあるような複体。
備考 幾何複体及び位相複体の定義が要求するのは,境界演算について閉じることだけであることか
ら,特定の次元又はそれ以下の任意のプリミティブの集合は,常に元のより大きな複体の部分
複体になる。したがって,任意の完全平面位相複体は,部分複体であるエッジノードグラフを
含む。
4.75 曲面(surface) 局所的に平面領域の連続な像を表す二次元の幾何プリミティブ。
備考 曲面の境界は,曲面の限界の輪郭を描く向きをもつ閉曲線である。球面又はn次元トーラス(n
次元“把”をもつ位相球面)と同形である曲面は,境界をもたない。このような曲面を輪体と
呼ぶ。
――――― [JIS X 7107 pdf 16] ―――――
11
X 7107 : 2005 (ISO 19107 : 2003)
4.76 曲面分(surface patch) 一定の内挿及び定義方法を用いて曲面の連続した部分を表す二次元の連結
な幾何オブジェクト。
4.77 位相境界(topological boundary) 位相オブジェクトの範囲を制限する,より低い位相次元の向き
をもった位相プリミティブの集合で表される境界。
備考 位相複体の境界は,この位相複体の幾何実現の境界と整合する。
4.78 位相複体(topological complex) 境界演算について閉じている位相プリミティブの集まり。
備考 境界演算について閉じているとは,位相プリミティブが位相複体に含まれる場合には,その境
界オブジェクトもまたこの位相複体に含まれることを意味する。
4.79 位相次元(topological dimension) 幾何オブジェクト内の直接位置を他の位置と区別するのに必要
な自由変数の最小の数。
備考 上の自由変数は,多くの場合局地座標系として考えることができる。三次元座標空間におい
て,uとvとを実数,Aを平面上の任意の点,X及びYを平面の二つの接ベクトルとすると,
平面はP(u,v) = A + u X + v Yと書き表すことができる。この平面の位置はuとvとによって(こ
こでは至る所を)識別できるので,平面は二次元であり,(u,v)はこの平面上の点の座標とな
る。一般の曲面では,通常は,至る所を普遍的に識別するのは不可能である。曲面上の点を曲
面の接平面上へ射影すると,接点の微小近傍の局所同形を通常得ることができる。曲面に対す
るこの“局所座標”系は,曲面が二次元位相オブジェクトであるための要件を満たす。
この規格は空間座標だけを取り扱うので,任意の三次元オブジェクトは座標に依存してその
位相次元を定めることができる。四次元モデル(時空間)では,接空間が三次元までのオブジ
ェクトの位相次元を定めるという重要な役割も果たす。
4.80 位相式(topological expression) 多変量多項式のように演算される,向きをもつ位相プリミティブ
の集まり。
備考 位相式は,計算位相幾何の多くの計算で使用する。
4.81 位相オブジェクト(topological object) 連続した変換のもとでも変わらない空間特性を表す空間オ
ブジェクト。
備考 位相オブジェクトは,位相プリミティブ,位相プリミティブの集まり又は位相複体である。
4.82 位相プリミティブ(topological primitive) 単独の不可分な要素を表す位相オブジェクト。
備考 位相プリミティブは幾何実現における同じ次元の幾何プリミティブの内部に相当する。
4.83 位相立体(topological solid) 三次元の位相プリミティブ。
備考 位相立体の境界は有向フェイスの集合からなる。
4.84 全域フェイス(universal face) 二次元複体中の非有界フェイス。
備考 全域フェイスは,通常どのような地物の一部でもなく,データ集合の非有界の部分を表すため
に用いる。通常,この内部境界(それは外部境界をもたない。)をデータ集合によって表された
地図の外部境界とみなす。この規格は,全域フェイスを特別扱いしないが,応用スキーマでは
そうすることが有効な場合もある。
4.85 全域位相立体(universal solid) 三次元複体中の非有界位相立体。
備考 全域位相立体は,三次元において全域フェイスに相当するものであり,通常はどのような地物
の一部でもない。
4.86 ベクトル幾何(vector geometry) 構成的な幾何プリミティブの使用による幾何の表現。
――――― [JIS X 7107 pdf 17] ―――――
12
X 7107 : 2005 (ISO 19107 : 2003)
5. 記号,表記法及び略語
5.1 表現及び表記
5.1.1 統一モデリング言語(UML : Unified Modeling Language)の概念
この規格では,概念スキーマ
は,統一モデリング言語(以下,UMLという。)を使用して表現する。
UMLクラスは,同じ属性,操作,メソッド,関係及び意味を共有するオブジェクトの集合の記述である。
パラメタ化されたクラスは,共通の操作,メソッド及び関係をもつクラスの集合を単独で記述するもので
あり,属性の正確な構造及び操作の振る舞いはパラメタの集合によって制御され変化する。例えば,パラ
メタ化クラスの実現(インスタンス化されたクラスと呼ぶ。)において,整数のパラメタをある属性配列の
大きさを決定するために使用することがある。
この規格では,幾何又は位相の要素を幾つかの方法を織り交ぜてモデル化しているが,このことは実装
における制約とはみなさないほうがよい。属性は,データとして直接実装するか,又は値を取得及び設定
するための“取得”操作及び“設定”操作の対として実装してもよい。この規格のほとんどの図式は,単
一のクラスに焦点を当て,その属性,操作及び重要な関係を示した“構造図”である。その他の図式は,
クラスの関係の概要を示している。UMLは,すべての図式の中ですべての関係を示す事は要求しておらず,
幾つかの図式では単純さを保つために自明な関係については省略している。例えば,GMObjectは
Set<GMObject>と明らかな関係があるが,GMObjectの図式には明示的に示していない。
5.1.2 属性,操作及び関連
属性及び操作は,UML Notation Guide (UML記法ガイド18) に合致した
UML図として表現する。
属性のUML表記は,次の形式をとる。
Attribute-declaration :== “” stereotype “” visibility name multiplicity “ : ”
type = initial-value [{property, ···}]
multiplicity :== “[” cardinality-range,··· “]”
cardinality-range :== begin-value [{“..” end-value}]
操作のUML記法,は次の形式をとる。
Operation :== “” stereotype “” visibility name “(” parameterlist “)”
“ : ” [return-type], ··· [{“[{” property[{=value}], ···“}]”}],···
parameterlist :== [direction] parameter-name “ : ” type [“=” default-value]
上の構文の変数部分は,次のとおりとする。
a) tereotype(ステレオタイプ) 定義された属性又は操作のタグを使用する(次を参照)。
b) isibility(可視性) パブリック(+),プライベート(-)又はプロテクテッド(#)の値は,この属
性又は操作に対するオブジェクト外部からの可視性を示す。visibilityが“/”を含む場合,この属性は,
このモデルの他の部分から導出する。
c) ame(名前) 属性又は操作の名称。
d) ultiplicity(多重度) この属性がもつことのできる値の数であり,他で特に指定されないかぎり一
つの集合として構成するとみなされる。これは,“[..]”というUMLの記法を用いる以外は,ISO/IEC
11404の“size”の機構と一貫性を保った拡張とする。概念の一貫性を維持するために,この規格では,
ISO/IEC 11404の“size”の下位型として用いるときでも,単一の(UMLに従った)多重度の構文を
用いる。
e) egin-value(開始値) 有効な多重度を表す任意の整数。終了値が続かない場合は,開始値だけを可
能な多重度に加える。
――――― [JIS X 7107 pdf 18] ―――――
13
X 7107 : 2005 (ISO 19107 : 2003)
f) end-value(終了値) 先行する開始値より大きな値をとる整数又は無限又は非有界な基数範囲を表す
“n”。“a..b”はa <= j <= bとなる任意の整数jを意味する。[a..a]は,[a]と同じ意味とみなす。
g) arameterlist(パラメタリスト) パラメタ宣言のコンマ区切りリスト。
h) arameter-name(パラメタ名) 操作のパラメタの名前。通常は,定義される操作の中でのパラメタ
の役割を示す。操作の構文構造及び属性の構文構造は,操作にパラメタリストを含むことを除いて,
同じであることに注意しなければならない。
i) direction (入出力方向) “in”(入力 : 値は呼出し前に設定され操作に影響を与える。),“out”(出
力 : 値は操作中に設定され,呼出し側はその値に操作完了後にアクセスする。)又は“inout”(入出力 :
値は呼出し前に設定され操作に影響を与え,操作は呼出し側が操作完了後にアクセスできる値に再設
定する。)の値をとる,このパラメタの入出力方向の選択指示。パラメタの既定の入出力方向は“in”
とする。
j) type(型) 先行するパラメタ又は属性のオブジェクト又は値の型。
k) efault-value(既定値) 呼出し側が指定しなかった場合の入力又は入出力パラメタの値。コンスト
ラクタが設定しなかった場合のオブジェクトの属性の値。
l) return-type(戻り値の型) 操作の戻り値又はオブジェクトの型で,本質的に操作の型となる。
m) roperty(プロパティ) NOT NULL又はUNIQUEのような属性又は操作に関する付加的な情報。
“[{size = [0..n]}]”のように,プロパティ名とそれに続く値とで構成してもよい(プロパティの下位型
としての解釈については,ISO/IEC 11404参照。)。
n) ... 先行する記述を何度でも繰り返してよい。
o) nitial-value(初期値) コンストラクタが,そのパラメタリストによって明確に上書きしない限り,
新しいオブジェクトを構築するときに用いる属性の既定の値。
この規格では,オブジェクト制約言語(OCL : Object Constraint Language)の表記法を軽微な変更を行っ
て使用する。“ocl”接頭辞は,多くの演算子では削除している。これは不要であり紛らわしいためで,特
にこれらの演算子をISO TS 19103の基本型の箇条で接頭辞無しで使用しているためである。“::”はその後
に続く部分に対する名前空間を示す決定演算子とする。OCLでは多くの場合,名前空間はその操作を定義
しているクラスになるが,クラスを定義しているパッケージの名前を含んでもよい。この規格では,すべ
ての名前空間は,クラス識別子であり,次の二つの形式のうちのいずれかを取る。
class-identifier :== class-name | package-name::class- identifier
type :== class-identifier
誤解される恐れ又は強調の必要性がないかぎり,パッケージ名は含まない。この規格では,すべてのク
ラス名は,モデル内で一意な名称を,2文字のパッケージ識別接頭辞の後に下線“”でつないだ形式をと
る。これによって,型及びクラス名のパッケージ名決定の必要性を除いている。この規格のプロファイル
は,できる限りこの規定に従うことが望ましい。属性,役割名及び操作は,次のように記述する。
attribute-name [{multiplicity}] : attribute-type
[{association-name “::”}]role-name [{multiplicity}] “ : ” attribute-type
type-3, ··· )
[{type-1“::”}]operation-name(name-2 “ : ” type-2, name-3 “ : ”
“ : ” return-type
役割は,多重度が1でない場合,役割値を集合として構成するものとする。役割値を他の方式で構成す
る必要がある場合,次のように,ISO/IEC 11404に従ったサイズを多重度として与えた適当なパラメタ化
コレクションクラスをattribute-type (属性型)として使用することが望ましい。
――――― [JIS X 7107 pdf 19] ―――――
14
X 7107 : 2005 (ISO 19107 : 2003)
boundary : CircularSequence<GMOrientableCurve> [{size = [1..n]}]
(C++で用いるような)オブジェクト指向の演算子の記法では,次のメソッド宣言のように,最初のパ
ラメタを操作の前に置く。
return-type type-1::operation(type-2, type-3 ··· )
このようなメソッドは,“type-1”オブジェクトの名前空間が有効な場合にだけ有効であるという意味で,
利用できる名前空間を限定している。さらに,呼出しの間は,“type-1”型の暗黙のパラメタを使用してよ
い。OCLではこのオブジェクトを“self”と記述し,C++では“this”と記述する。非オブジェクト指向言
語又はオブジェクト言語の独立関数では,操作の関数記法は,最初のパラメタを区別せずに,次のように
記述する。
operation(name-1 : type-1, name-2 : type-2, name-3 : type-3 ···) : return-type, ···
これらの記法は(強調を除き)同等とし,この規格のプロファイルではいずれを使用してもよい。
これらの操作の定義は,“操作の署名(シグニチャ)”又は“プロトコル”と呼ぶ。これは操作と呼出し
機構とを分離する。UMLでは,正式な記法はプロトコルを定義し,それらに関連する操作はOCL制約を
記載できる関連文書内で略式に定義されるだけである。
属性を(取得操作と設定操作との対である)操作の型として考える見方では,この用語を属性“署名(シ
グニチャ)”を含むように拡張してよい。署名(シグニチャ)の定義は,操作の名前,戻り値の型並びにパ
ラメタの名前及び型を含む。メソッド又は属性は,通常は型をその下位型と置き換える以外は元の署名(シ
グニチャ)と同一の署名(シグニチャ)をもつような新しいメソッドを提供することで上書きしてよい。
署名(シグニチャ)の再利用を“多態性”と呼ぶ。クラス継承から発生する多態性は“構造的”多態性と
呼ぶ。意味上の類似性から発生する多態性は“自然な”多態性又は“一般的”多態性と呼ぶ。例えば,幾
何及び位相クラスにおける“境界”を得る共通のプロトコルは,位相の定義に基づいた操作上の制約から
発生する自然な多態性である。これは,二つのパッケージが共通のスーパークラスを原型として共有して
いないため,構造的多態性ではない。クラス継承の階層がオブジェクトの意味に基づくとすると,構造的
多態性は自然な多態性となる。意味上の類似性に依存しない多態性は“臨時”多態性とする。例えば,数
字の間に置かれる加算を示す“+”及び文字列クラスの結合を示す“+”の利用は,臨時多態性である。臨
時多態性は,意味的に紛らわしく,したがってこの規格では使用せず,この規格のプロファイルでも避け
ることが望ましい。
多くの操作は,すべてのパラメタを読み取り専用(direction = “in”)として渡し,オブジェクトの唯一
の変更又は生成は,設定操作による戻り値の型を利用して行うという,関数の形式で定義している。イン
タフェースの記述において,“this”という修飾は,呼び出しているオブジェクトのインタフェースの実体
を示す。OCLでは,このオブジェクトは“self”として参照する。オブジェクトを他のオブジェクトのメ
ソッドにパラメタとして渡す場合,それは“渡された”オブジェクトとして参照する。
widget
クラス1 クラス2
Relation gadget
図 1 UMLにおける関連の表記例
モデルの各関連には関連名を付け,関連に参加する各クラスには役割名を付ける。図1の図式の場合,
“クラス1”は“クラス2”と“Relation”という名前で関連し,この二つのクラスを実装する場合には,
――――― [JIS X 7107 pdf 20] ―――――
次のページ PDF 21
JIS X 7107:2005の引用国際規格 ISO 一覧
- ISO 19107:2003(IDT)
JIS X 7107:2005の国際規格 ICS 分類一覧
- 35 : 情報技術.事務機械 > 35.240 : 情報技術(IT)の応用 > 35.240.70 : 自然科学へのITの応用
JIS X 7107:2005の関連規格と引用規格一覧
- 規格番号
- 規格名称
- JISX7111:2014
- 地理情報―座標による空間参照