このトピックでは、ジオデータベースのフィーチャクラスのモデリングに役立つ設計上のヒントをいくつか紹介します。
タスク 1: シンプル フィーチャクラスの設計
すべてのジオデータベースには、ほぼ例外なく、フィーチャクラスが含まれます。フィーチャクラスのコレクションだけが含まれる、シンプルなジオデータベースを設計する場合もあります。ただし、多くのジオデータベース設計では、高度なジオデータベース エレメントを追加し、より包括的なデータ モデルを開発する必要があります。シンプルなフィーチャクラス設計の拡張については、システムのニーズと目的に基づいて決定し、基本的な GIS の機能に加えて振舞いをサポートするために設計を拡張します。このセクションでは、こうしたフィーチャクラスの機能の多くを紹介し、各選択肢の詳細情報を参照できるヘルプ トピックを示します。
まず、シンプル フィーチャクラスの共通プロパティを定義します。フィーチャクラスは後から必要に応じて拡張できますが、まず基本的な設計を定義することに集中します。
フィーチャクラスとは、同じジオメトリ タイプ (ポイント、ライン、ポリゴンなど)、共通の属性列、同じ座標系を持つ、ジオグラフィック フィーチャのコレクションです。
ArcGIS のフィーチャクラスの例
フィーチャクラス | 地理表現 | 備考 |
---|---|---|
Street centerlines (道路中心線) | ライン | 道路セグメントは各交差点で分断され、通常は住所範囲とネットワーク プロパティを含みます |
Wells (井戸) | ポイント | |
Soil types (土壌タイプ) | ポリゴン | 通常は関連テーブルに多くの説明的な属性を持ちます |
Parcels (土地区画)* | ポリゴン | 土地区画の境界線と角によりとトポロジを構成します |
Parcel boundaries (土地区画境界線)* | ライン | 座標ジオメトリとディメンション属性を持ち、土地区画および土地区画の角とトポロジを構成します |
Parcel corners (土地区画の角)* | ポイント | 土地区画の測量された角、土地区画および土地区画の境界線とトポロジを構成します |
Parcel annotation (土地区画の注記) | アノテーション | ロット ディメンション、課税、法的な説明情報に対するテキスト ラベルを提供します |
Building footprints (建物の外郭) | ポリゴン | 建物と構造の外郭を含みます |
* パーセル ファブリック データセットは、アスタリスクの付いたフィーチャクラスに対して土地区画の振舞いと、土地区画に基づいた特別なトポロジを提供します。
必要なフィーチャクラスのリストが完成したら、それぞれに次の情報を定義してみます。
- ポイント、ライン、ポリゴン、アノテーションなどのジオメトリ タイプ (フィーチャクラス タイプ) を選択します。各フィーチャクラスのすべてのフィーチャに共通のジオメトリ タイプを 1 つ使用する必要があります。「フィーチャクラスの基礎」をご参照ください。
- 属性フィールドと列タイプを決定します。「ジオデータベース フィールドのデータ タイプ」をご参照ください。
- ジオメトリ プロパティを決定します。Z 座標および M 座標の使用の有無、 座データの座標解像度、 ライン フィーチャクラスとポリゴン フィーチャクラスの線種などを決定します。ほとんどの場合はデフォルトのシンプルな直線の線分で十分です。ただし、袋小路や道路を表すために曲線が必要になることもあります。「フィーチャクラスの基礎」をご参照ください。
- 各フィーチャクラスの座標系を定義します。「地図投影法の概要」をご参照ください。
- データセット使用縮尺の範囲と縮尺ごとの表現の変化を確認します。表現の変化によっては、 別の縮尺範囲で使用するための代替フィーチャクラスが必要になることもあります。このような場合は、縮尺範囲ごとに同じデータ主題を表すための異なるフィーチャクラスを追加するができます。
設計によっては、フィーチャクラスを「そのまま」GIS に読み込むことがあります。この場合、以下に示すような追加の設計タスクを実行する必要はないかもしれません。ただし、ジオデータベースのフィーチャにさらに GIS 機能を追加することの利点について評価しておくことは重要です。追加機能によって、データの使用と保守を長期にわたってはるかに容易にできる可能性があります。追加機能は、空間情報の整合性を維持し、データの利便性を高め、設計要件を満たすためのデータの精度を明確にします。
シンプル フィーチャ データ モデルを拡張する一般的な理由を、以下にいくつか示します。
- データセットをシステムにインポートして使用する前に整合チェックする必要がある場合 (たとえば、データセットが一連の空間整合性ルールを満たしていることを確認します)
- データを編集しても、その空間整合性を維持する必要がある場合
- モデリングや解析といった高度な GIS 作業にフィーチャクラスを使用したい場合
タスク 2: 関連するフィーチャクラスをフィーチャ データセットにまとめる
フィーチャ データセットを使用して、空間的に関連するフィーチャクラスを共通のフィーチャ データセットにまとめます。フィーチャ データセットが必要となるのは、次の操作を行う場合です。
- トポロジの追加
- パーセル ファブリックの追加
- ネットワーク データセットの追加
- ジオメトリック ネットワークの追加
- テレイン データセットの追加
フィーチャ データセットとは、空間的または主題的に関連し、共通の座標系を使用する、フィーチャクラスのコレクションです。フィーチャ データセットは、トポロジ、ネットワーク データセット、ジオメトリック ネットワーク、またはテレインなど共通のモデルに属するフィーチャクラスを保持するために使用されます。
主題が共通するフィーチャクラスのコレクションを 1 つのフィーチャ データセットにまとめることもあります。たとえば、Hydro Point (ダム、橋、取水口など)、Hydro Line (小川、運河、河川など)、Hydro Polygon (湖、集水域、分水界など) を含む、Water フィーチャ データセットを定義することがあります。
フィーチャ データセットをシンプル フィーチャクラスのコレクションを保持するフォルダーとして使用することもあります。この手法は主に、ユーザーによるデータセットの共有方法を整理するために使用されます。ただし、この方法は編集に適したデータ構造ではありません。
タスク 3 およびタスク 4 の内容を確認し、各フィーチャ データセットにどのようにフィーチャクラスをまとめるべきかその設計方法を確認してください。
フィーチャ データセットは、データ編集の権限の管理において重要な役割を果たします。これはフィーチャ データセットのすべてのフィーチャクラスが同じ権限を持つためです。つまりフィーチャ データセットのコンテンツを管理する組織またはグループを特定するための権限を、フィーチャ データセットに設定することができます。フィーチャクラスごとに異なる権限を設定する必要がある場合は、それらのフィーチャクラスを別のフィーチャ データセット (またはフィーチャクラス) にまとめて、それらに別の権限を設定する必要があります。この場合は、抽出、変換、読み取り (ETL)、またはインポート/エクスポートを使用して、データセット間でデータ更新をやり取りすることができます。
フィーチャ データセットを使用する状況
フィーチャ データセットを使用して、関連するフィーチャクラスを空間的または主題別に統合します。主な目的は、特定の高度なジオデータベース データセットを使用する場合です。
次のいずれかのジオデータベース機能に属するフィーチャクラスの集合は、フィーチャ データセットを使用して保持する必要があります。
- Topology
- ネットワーク データセット
- Terrain
- ジオメトリック ネットワーク
- パーセル ファブリック
タスク 3: データの編集とデータの整合性維持のためのジオデータベース エレメントの追加
ジオデータベースには、GIS に整合性ルールと編集機能を追加するための、オプションのデータ モデリング機能が含まれています。これらの機能は、データ管理作業と整合チェック処理の多くを自動化するのに役立ちます。
- 属性値の整合性を管理する必要がある場合は、 ドメインを使用することができます。ドメインは、属性フィールドに有効な値を割り当てるためのルールです。
- サブタイプを使用して、フィーチャクラス内のフィーチャのサブセットを管理することができます。サブタイプを使用すると、各サブクラスに特別な動作を設定できます。またフィーチャ サブセットを管理するためのデフォルト ルールを設定することができます。たとえば、サブタイプを使用して、編集時に新しいフィーチャが追加されたら、デフォルトの属性値を自動的に割り当て、他のフィーチャへの接続方法に関する空間整合性ルールや、その他のフィーチャの振舞いを追加することができます。
- 関連するテーブルが存在する場合は、リレーションシップ クラスを使用することもできます。リレーションシップ クラスを使用して、関連元テーブルのフィーチャを選択することにより、関連先のテーブルでフィーチャを操作することができます。これは、一般的なリレーショナル データベース機能です。
- あるフィーチャクラスのフィーチャと他のフィーチャクラスのフィーチャの間に、モデリングが必要な空間的な関係が存在するかどうかを判断します。たとえば、同じ境界線を共有する 土地区画 の有無や、土地区画と土地区画の境界線や角のジオメトリの共有関係を確認します。道路セグメントの接続状態や電線が接続可能なジャンクションと交換機の種類。郡の境界線と州の境界線の関係や、 植生クラスの傾斜角、傾斜方向、土壌タイプ ポリゴンと他の環境レイヤーの境界線の関係など、 このような空間リレーションシップをモデリングする場合にはトポロジが非常に有効です。
トポロジに属するフィーチャクラスは、同じフィーチャ データセットにまとめる必要があります。フィーチャ データセット内でトポロジを使用して空間的なデータの整合性を維持しながらデータの編集/更新操作を行う方法の詳細については、「トポロジ」をご参照ください。
タスク 4: 高度なデータの使用、解析モデル (Network Analysis、ジオコーディングなど)、高度なカートグラフィのための機能を追加する
各データセットの利便性をさらに向上させるためにジオデータベース機能を追加することもできます。追加できる機能には多くのオプションが用意されており、その中から必要に応じてジオデータベースに機能を追加することができます。
- 空間的な関係をモデリングしてフィーチャの点、線、面を操作したい場合は、トポロジを使用することができます。フィーチャ間でのジオメトリ ルールの共有はフィーチャのより現実的なモデリングに役立ちます。たとえば、植生、傾斜角、傾斜方向、土壌タイプ、地質、水域、分水界、生態域、その他の環境レイヤーなど、さまざまなテレイン データ レイヤーのポリゴンと境界線は互いにネストしています。トポロジを使用してこれらの境界線を管理することで、より堅牢で一貫した属性の組み合わせを構築することができます。これにより、モデルの適合性/機能性を向上し、問題をより現実的に捉えることができます。トポロジは、土地区画システム、調査単位、行政区分など、さまざまな情報セットの統合にも役立てることができます。これは GIS データ レイヤーの垂直統合とも呼ばれます。
- 交通ネットワークをモデリングする必要はあるでしょうか。ジオデータベースは、ネットワーク データセットを使用して、交通ネットワークをモデリングすることができます。ネットワーク データセットとは、ナビゲーションや物資の流れをモデリングできる、エッジ、ターン、ジャンクションのコレクションです。各ネットワークには一連のナビゲーション プロパティがあります。これには、エッジからエッジへ移動するための「コスト」や、一方通行や右折禁止などの交通規制をモデリングする機能、およびマルチモーダル ネットワーク (自動車、バス、徒歩による移動の組み合わせ) が含まれます。
ネットワーク データセットは、エッジ、ジャンクション、ターンのデータ ソースとしてフィーチャクラスを使用します。ネットワークにおいて各フィーチャクラスが果たす役割と、ネットワークのナビゲーション プロパティを指定します。ネットワークに属するフィーチャクラスは、同じフィーチャ データセットにまとめる必要があります。
- 公共ネットワークをモデリングする必要はあるでしょうか。電力、水道、排水溝、下水道などの公共ネットワークをモデリングするには、ジオデータベースのジオメトリック ネットワークを使用することができます。ジオメトリック ネットワークとは、一連の接続されたエッジ フィーチャとジャンクション フィーチャであり、電力、水道、ガス、排水溝などの流れをモデリングするために使用されます。ジオメトリック ネットワークでは、各フィーチャクラスがエッジまたはジャンクションのコレクションという役割を果たします。ネットワークの接続性は、フィーチャのプロパティとジオメトリの一致によって定義されます。たとえば、(ポイント フィーチャとして保持される) バルブは、(ライン フィーチャとして保持される) パイプ セグメントの端点に接続されます。バルブが開かれると、そこから水が指定された方向へ流れるようにモデリングすることができます。
- 住所のジオコーディングを行う必要がある場合は、 ジオデータベースに住所ロケーターを追加します。ロケーターとは、住所指定可能なフィーチャ (道路の中心線の住所範囲情報など) を含んでいる 1 つ以上のフィーチャクラスと、住所スタイルおよび照合ルールの組み合わせです。各ロケーター データセットには、住所を検索するために複数の住所が含まれており単一またはファイルに含まれた複数の住所を照合するためのソースとして使用されます。ロケーターを作成して、それらのコピーをジオデータベースとは別に保存することもできます。これにより、ロケーターをさまざまなユーザーと共有して、各ユーザーのジオコーディング作業に使用することができます。
- リニア リファレンスを使用することで、輸送経路沿いのさまざまなイベントや設備を特定することができます。ライン フィーチャの頂点には、M 値 (メジャー値) を追加することもできます。一部の GIS アプリケーションでは、道路、流線、パイプライン沿いなどの、線形のフィーチャ沿いの距離を補完するために、 フィーチャの各頂点に M 値を割り当てて線形の計測値を使用します。よく使用されるのは、交通局が高速道路の舗装状態、制限速度、事故現場、およびその他のイベントを記録するために使用する、マイルポスト計測システムです。よく使用される計測単位は、郡の境界線などの固定の位置からマイルポストまでの距離と、参照マーカーからの距離などがあります。計測値の頂点は、(x,y,m) または (x,y,z,m) のどちらかとなります。これらのデータ タイプのサポートは、リニア リファレンスと呼ばれ、 これらの計測システム上で発生するイベントの位置を特定するプロセスは、ダイナミック セグメンテーションと呼ばれます。計測システムはこれらの計測された座標値を基に構築されます。ArcGIS のリニア リファレンスの実装では、ルートという言葉は、市街道路、高速道路、河川、パイプなどの線形のフィーチャを表します。これらは、一意な識別子と線形のフィーチャに沿った共通の計測システムを持ちます。共通の計測システムを持つルートのコレクションは、ライン フィーチャクラスに次のように構築することができます。
- TIN (Triangulated Irregular Network) を使用することで標高データをモデリングしたり、 LiDAR/Bathymetry などの計測データのポイント コレクションを管理することができます。ジオデータベースに実装されているテレイン データセットは、三角形網を使用して (地表面などの) サーフェスをモデリングしたり、LiDAR や水深測量データなどの大規模なポイント データのコレクションを管理します。テレインは、膨大な数の 3D ポイント コレクションやその他の 3D フィーチャを管理し、これらのコレクションから多重解像度の TIN を生成するために使用されます。
- 接続された土地区画の連続サーフェスで土地区画を管理できます。パーセル ファブリックを使用して、連続する土地区画のデータセットを構築することができます。土地区画は、パーセル ライン フィーチャ、パーセル ポイント フィーチャ、パーセル ポリゴン フィーチャによって表されます。
- フィーチャクラスに地図表現のためのルールを追加する必要はある場合は、 リプレゼンテーションを追加することにより、フィーチャクラスにフィーチャの地図表示のための描画ルールや代替グラフィック表現を保持できます。GIS では、ほとんどのユーザーが一連のマップ レイヤーを定義してマッピングを自動化します。マップ レイヤーとは、各マップ上でのフィーチャのシンボル表示とラベリングの方法を定義する一連のルールです。しかしレイヤーだけでは情報を正しく伝達するのに不十分な場合があります。たとえば、交差点で接続する道路の中心線があるとします。ただし、中心線上に橋、高架、トンネルなどを表示したくても、それらをマップ上に簡単に表示することはできません。
カートグラフィック リプレゼンテーションは、マップの表現がより明確になるように、特殊なオーバーライド、ルール、グラフィックスをフィーチャに適用することができます。たとえば、マップの表示では道路シンボルによって道路の幅が拡大すると、河川や建物などの他のフィーチャと重なってしまう可能性があります。カートグラフィック リプレゼンテーションを使用すれば、一部のフィーチャのシンボル表現の位置をオフセットすることで、フィーチャの地理的な位置を変更せずに、このような重なりを解消することができます。たとえば道路の表現を河川からずらしたり、建物を道路シンボルからずらすことができます。
リプレゼンテーションを使用して、フィーチャクラ内の個々のフィーチャの表示をカスタマイズすることもできます。個々のフィーチャのカスタマイズは、オーバーライドと呼ばれています。たとえば、ライン フィーチャは、破線ストローク リプレゼンテーション ルールで表現できます。そのルールのプロパティ (ストローク ウェイトや色など) は、そのルールの構造を変更しなくても、フィーチャごとにオーバーライドできます。