フィーチャ属性テーブルは、さまざまなフィーチャクラスのために作成される特別なテーブル群です。フィーチャ属性テーブルは、あらかじめ定義されている多くのアイテムと、各フィーチャに対してユーザーが定義した追加属性を含む INFO データ ファイルです。1 つのカバレッジに対して多くのフィーチャ属性テーブルを作成できます。それぞれのテーブルが特定のフィーチャクラスに関連付けられています。フィーチャ属性テーブルの名前は、そのカバレッジとフィーチャ属性テーブルの種類を示す 3 文字のコードを使って付けられます。たとえば、ポリゴンを含む LOTS というカバレッジは、LOTS.pat というポリゴン属性テーブル (PAT) を持ちます。
次の表は、カバレッジ内に存在し得るフィーチャ属性テーブルを説明したものです。
フィーチャクラス | フィーチャ属性テーブルの命名規則 | 説明 |
---|---|---|
ポイント | <cover>.pat | ポイント属性テーブル |
アーク | <cover>.aat | アーク属性テーブル |
ノード | <cover>.nat | ノード属性テーブル |
ルート | <cover>.rat<route> | ルート属性テーブル |
セクション | <cover>.sec<route> | セクション属性テーブル |
ポリゴン | <cover>.pat | ポリゴン属性テーブル |
リージョン | <cover>.pat<region> | リージョン属性テーブル |
アノテーション | <subclass>.tat | テキスト属性テーブル |
フィーチャ属性テーブルには、特別なアイテム形式と標準があります。それぞれのフィーチャ属性テーブルには、必ず最小セットのアイテム群があります。たとえば、各 PAT には、最低でも AREA、PERIMETER、COVER#、COVER-ID の 4 つのアイテムが必ず含まれます。
ポイント属性テーブルは、ポリゴン属性テーブルと同じ「.pat」の拡張子を持ち、同じアイテムを含みます。このため、カバレッジは、ポイント フィーチャとポリゴン フィーチャの 2 つを同時に持つことはできません。
カバレッジ内の各フィーチャに対応するフィーチャ属性テーブルの中には、必ず 1 つのレコードがあります。カバレッジ フィーチャの定義に使用する空間情報とフィーチャ属性テーブル内で対応するレコードは、共にフィーチャ番号を持ち、フィーチャとその属性レコード間で 1 対 1 の対応関係が維持されます。
フィーチャ属性テーブルにアイテムを追加して、それをキーとして使用して他の属性情報をフィーチャに関連付けることができます。このため、フィーチャ属性テーブルは、カバレッジ フィーチャと各フィーチャに関するその他の属性情報間のキー テーブルとしての役割を果たします。フィーチャ属性テーブル内のレコードがカバレッジ フィーチャと 1 対 1 の対応関係を維持していても、フィーチャ属性テーブルと対応するテーブル間で 1 対多および多対多の関係を管理できます。