カバレッジの属性管理の基礎
カバレッジ フィーチャクラスには、フィーチャ属性テーブルに属性として格納される説明情報があります。
属性定義の概要
属性テーブルの各列は、値を格納するために使用されるデータ タイプ(テキスト、整数、小数など)、ストレージに必要な文字または桁数、および属性値を報告するための表示特性によって表されます。コードを使用して値を表す場合は(1 = 幹線道路、2 = 集電装置など)、コード説明テーブルが定義されます。カバレッジ属性テーブルの列はアイテムです(フィールドとも呼ばれます)。
次に、属性アイテムの特徴をまとめます。
- 名前:テーブル内のアイテム(列)の名前。フィーチャの属性はアイテム名によって参照されます。アイテム名の長さは最大で 16 文字です。
- タイプ:コンピュータによるアイテム値の格納、解釈、書式設定の方法を表します。タイプは次のいずれかになります。
INFO 形式のタイプI
整数(1 桁あたり 1 バイト)
B
2 進整数(I タイプよりも必要なストレージが少ない)
C
文字(テキスト)
N
1 桁あたり 1 バイトとして格納される浮動小数点数(小数)
F
単精度または倍精度の浮動小数点 2 進数
D
日、月、年を格納する日付(mm/dd/yyyy など)
- 幅: アイテム値を格納するために使用されるタイプの単位数。次に、上記のタイプでサポートされるアイテム幅をまとめます。
INFO タイプの幅I
1 ~ 16 桁
B
2 バイトまたは 4 バイト
C
1 ~ 320 文字
F
常に 4(単精度)または 8(倍精度)バイト
N
1 ~ 16 桁
D
常に 8 バイトで、yyyymmdd として格納される
- 小数: 実数(アイテム タイプ F および N)の小数点以下の桁数。
- 出力: アイテム値を表示するために使用される文字数。たとえば、2 バイト整数(アイテム タイプ B)の最大値は 32,767 であり、それを表示するには 5 文字が必要です。日付は 8 文字(mm/dd/yy)または 10 文字(mm/dd/yyyy)で表示することができます。日付の国際表示では、月と日を入れ替えることができます(dd/mm/yy など)。
テーブルのリレート
次の図に示すように、共通のアイテムに基づいて複数のテーブルを関連付けることができます。テーブルのレコードは、共通アイテムの値が同じである場合に関連付けられます。リレーションシップの種類は、1 対多、1 対 1、多対 1 を含め、さまざまです。次の図は、土地区画と所有者の 1 対多のリレーションシップを示しています。1 つの土地区画に複数の所有者がいる可能性があります。各区画の土地区画番号を保持するアイテムは、カバレッジの PARCEL.PAT と OWNER の 2 つのテーブルに含まれます。これらは、2 つのテーブルのレコードを関連させるためのキーとしての役割を果たします。
属性の管理
このセクションは、ArcGIS for Desktop Standard および ArcGIS for Desktop Advanced にのみ該当します。
カバレッジ フィーチャクラスのプロパティ ダイアログ ボックスには、各レコードまたはフィーチャの一意な ID が格納された FID 列が表示されます。フィーチャクラスには Shape 列もあります。また、マーカー シンボルの回転角度やサブクラスのカバレッジ アノテーションのプロパティなどの疑似アイテムが表示されることもあります。疑似アイテムはアプリケーションによって管理されます。疑似アイテムの名前の先頭にはドル記号($)が付いています($ANGLE など)。
テーブルまたはフィーチャクラスのプロパティ ダイアログ ボックスでは、属性の追加、更新、削除や、属性値のインデックスの作成を行うことが可能です。属性の変更や削除は、属性テーブルのユーザ定義の属性でのみ可能です。アプリケーションによって管理されるカバレッジ アイテムをユーザが変更または削除することはできません。特定の属性値でフィーチャを選択する場合など、属性のコンテンツにアクセスする操作のパフォーマンスを改善するには、属性にインデックスを作成します。Shape 列にインデックスを作成すると、空間インデックスが作成されます。これにより、位置に基づいてフィーチャを検索する操作のパフォーマンスが向上します。列の値を変更した場合は、既存のインデックスを削除してから、新しいインデックスを追加してください。
新しい属性だけでなく、再定義属性も追加することができます。既存の属性の値を結合または分割する場合は、再定義属性を追加します。テーブル内の値の表示方法をカスタマイズする場合は、再定義属性を使用すると効果的です。たとえば、2 つの隣接する列を表示するのではなく、値を連結した 1 つの再定義属性として表示することができます。