SQL Server に格納されたジオデータベースのフィーチャ データセット

フィーチャ データセットは、関連するフィーチャクラスをグループ化して固有の機能に追加できるようにするためのオブジェクトです。フィーチャ データセットを使用して、次のような特性を持つフィーチャクラスをグループ化します。

SQL Server のフィーチャ データセットのさまざまな構成要素の詳細については、次のリンク先をご参照ください。

トポロジリレーションシップ クラスジオメトリック ネットワークネットワーク データセットスケマティック データセットテレイン データセットパーセル ファブリック

ここでは、カタログ ウィンドウ、データベース管理システム(DBMS)、および XML ドキュメントにおいてフィーチャ データセットがどのように定義されるのかについて説明します。

ArcGIS Desktop のフィーチャ データセット

カタログ ツリーではフィーチャ データセットは次のアイコンで示されます。

フィーチャ データセット アイコン

カタログ ツリーでフィーチャ データセットを展開すると、フィーチャ データセットに含まれているフィーチャクラスとその他のデータ オブジェクトがすべて表示されます。

展開したカタログ ツリーのフィーチャ データセット

Microsoft SQL Server に格納されているジオデータベースのフィーチャ データセット名には、データベース名、データセットの所有者の名前、およびフィーチャ データセット自体の名前が含まれます。上のグラフィックのような記載になります。

Microsoft SQL Server データベースでのフィーチャ データセット

データベースではフィーチャ データセットはフィーチャクラスの論理的なコレクションです。フィーチャクラスは共通の ID によってグループ化されます。この ID は GDB_ITEMS システム テーブルで管理されます。

Water フィーチャ データセットの例では、フィーチャクラス Tanks は、GDB_ITEMRELATIONSHIPS テーブルを通して Water フィーチャ データセットの一部として識別されます。フィーチャ データセットの UUIDORIGINID であり、フィーチャクラスの UUIDDESTID です。

次の図は、Tanks フィーチャクラス ビジネス テーブルと、SQL ServerWater フィーチャ データセットを追跡するシステム テーブルを示しています。

SQL Serverのフィーチャ データセット テーブルの例

フィーチャ データセットはオブジェクトの論理的なコレクションであるため、フィーチャ データセット内のフィーチャクラスは、フィーチャクラスに関連付けられたテーブル(SDE_layersSDE_table_registrysde_geometry_columnsSDE_column_registry など)にレコードがあるという点において、スタンドアロンのフィーチャクラスと同様です。フィーチャ データセットに関連付けられたフィーチャクラスはデータベース オブジェクトそのものなので、データベースの同じスキーマ内の別のテーブルやスタンドアロン フィーチャクラスと同じ名前を付けることはできません。

ヒントヒント:

ジオデータベースのフィーチャクラス リレーションシップの図については、「」、「」、「」、「」、「SQL Server に格納されたジオデータベースのフィーチャクラス」をご参照ください。

フィーチャ データセットの一部として使用できるその他のデータベース オブジェクトには、トポロジ、ジオメトリック ネットワーク、ネットワーク データセット、パーセル ファブリック、スケマティック データセット、およびテレイン データセットがあります。これらのオブジェクトは別のシステム テーブルを使用します。これについては、別のトピックで説明します。

XML ドキュメントのフィーチャ データセット

フィーチャ データセットは、XML ドキュメントの DatasetDefinitions タグの下にまとめられ、FeatureDataset タイプの DataElement タグによって分割されます。Water データセットの XML ドキュメントのエントリは次のようになります。

<DatasetDefinitions xsi: type="esri:ArrayOfDataElement">
 <DataElement xsi:type="esri:DEFeatureDataset">
 <CatalogPath>/V=dbo.DEFAULT/FD=mydgdb.MAP.Water</CatalogPath> 
 <Name>mydgdb.MAP.Water</Name>  
 <Children xsi:type="esri:ArrayOfDataElement">
    <DataElement xsi:type="esri:DEFeatureClass">
      <CatalogPath>/V=mydgdb.MAP.Water/RC=mydgdb.MAP.Anno_19_72</CatalogPath> 
      <Name>mydgdb.MAP.Anno_19_72</Name> 
      <DatasetType>esriDTFeatureClass</DatasetType> 
      <DSID>1</DSID> 
      <Versioned>false</Versioned> 
      <CanVersion>true</CanVersion> 
      <HasOID>false</HasOID> 
      <OIDFieldName/> 
    <Fields xsi:type="esri:Fields">
      <FieldArray xsi:type="esri:ArrayOfField">
    </Fields>

その他すべてのデータ エレメント

</DatasetDefinitions>
メモメモ:

Though the <Versioned> tag is set to false for the feature dataset, this does not reflect the versioned state of the feature classes in the feature dataset. To find this information, query each individual feature class.


3/6/2012