PostgreSQL 地理数据库中的要素数据集
要素数据集是用于将相关要素类分组在一起以使其能够参与特定功能的对象。您将使用要素数据集对具有以下特征的要素类进行分组:
- 要素类使用相同的坐标系进行存储。
- 要素类参与拓扑。
- 要素类参与关系类。
- 要素类是几何网络、网络数据集、逻辑示意图数据集、宗地结构或 terrain 数据集的组成部分。
- 要素类具有与要素关联的注记。
可通过以下链接来了解 PostgreSQL 中要素数据集的不同组件:
以下部分将分别介绍要素数据集在 ArcGIS for Desktop 的目录窗口、数据库管理系统 (DBMS) 以及 XML 文档中的显示方式。
ArcGIS for Desktop 中的要素数据集
在目录树中,要素数据集使用以下图标来表示:
在目录树中展开要素数据集后,可以看到其中的所有要素类和其他数据对象。
PostgreSQL 中地理数据库内的要素数据集的名称包含数据库名称、数据集所有者的名称以及要素数据集本身的名称。这可在上面的图形中看到。
PostgreSQL 数据库中的要素数据集
在数据库中,要素数据集是要素类的虚拟集合。它们按照在 gdb_items 系统表中保存的公共 ID 分组在一起。
对于 water 要素数据集示例,通过 gdb_itemrelationships 表将要素类 tanks 标识为 water 要素数据集的一部分。要素数据集的 uuid 是 originid,而要素类的 uuid 是 destid。
下图显示的是 tanks 要素类业务表以及用于追踪 PostgreSQL 中的 water 要素数据集的系统表:
虚线表示各列之间的隐含关系;实线表示各列之间明确定义的关系。
因为要素数据集是对象的虚拟集合,所以要素数据集中的要素类就像独立的要素类,它们在与要素类相关联的 sde_layers、sde_table_registry、sde_geometry_columns 和 sde_column_registry 等表中均有自己的记录。由于与要素数据集关联的要素类本身就是数据库对象,所以要素类的名称不能与同一数据库方案中的其他表或独立要素类相同。
有关地理数据库中要素类关系的示意图,请参阅 PostgreSQL 地理数据库 (geodatabase) 中的要素类。
拓扑、几何网络、网络数据集、宗地结构、逻辑示意图数据集和 terrain 数据集是可构成要素数据集的附加数据库对象。这些对象使用附加系统表,这些表将在单独的主题中进行介绍。
XML 工作空间文档中的要素数据集
在 XML 文档中,要素数据集按 DatasetDefinitions 标签进行分组,并以 esri:DEFeatureDataset 类型的 DataElement 标签进行定义。作为要素数据集组成部分的要素类将以要素数据集的子数据元素列出。先列出这些元素的定义,随后是要素数据集本身的定义。water 数据集的 XML 文档条目将如下所示:
<DatasetDefinitions xsi: type="esri:ArrayOfDataElement">
<DataElement xsi:type="esri:DEFeatureDataset">
<CatalogPath>/V=sde.DEFAULT/FD=spdata.gis.water</CatalogPath>
<Name>spdata.gis.water</Name>
<Children xsi:type="esri:ArrayOfDataElement">
<DataElement xsi:type="esri:DEFeatureClass">
<CatalogPath>/V=spdata.gis.water/RC=spdata.gis.Anno_19_72</CatalogPath>
<Name>spdata.gis.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>
...所有其他子数据元素...
</Children>
<DatasetType>esriDTFeatureDataset</DatasetType>
<DSID>-1</DSID>
<Versioned>false</Versioned>
<CanVersion>true</CanVersion>
<ConfigurationKeyword></Configuration Keyword>
<Extent xsi:type="esri:EnvelopeN">
<XMin>2210083.8332546502</XMin>
<YMin>386326.52300001681</YMin>
<XMax>2223761.6047394276</XMax>
<YMax>399843.09970059991</YMax>
<SpatialReference xsi:type"esri:ProjectedCoordinateSystem">
<WKT>PROJCS["NAD_1927_StatePlane_Colorado_North_FIPS_0501",
GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",
SPHERIOD["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],
PARAMETER["False_Easting",2000000.0],PARAMETER["False_Northing",0.0],
PARAMETER["Centeral_Meridian",-105.5],PARAMETER["Stnadard_parallel_1",39.71666666666667],
PARAMETER["Standard_Parallel_2",40.78333333333333],
PARAMETER["Latitude_Of_Origin",39.333333333334],
UNIT["Foot_US",0.3048006096012192],AUTHORITY["EPSG",26753]]</WKT>
<XOrigin>-119259500</XOrigin>
<YOrigin>-96173400</YOrigin>
<XYScale>37140179.758043662</XYScale>
<ZOrigin>-100000</ZOrigin>
<ZScale>10000</ZScale>
<MOrigin>-100000</MOrigin>
<MScale>10000</MScale>
<XYTolerance>0.0032808333333333335</XYTolerance>
<ZTolerance>0.001</ZTolerance>
<MTolerance>0.001</MTolerance>
<HighPrecision>true</HighPrecision>
<WKID>26753</WKID>
</SpatialReference>
</Extent>
</DataElement>
</DatasetDefinitions>
虽然要素数据集的 <Versioned> 标签已设置为 false,但这反映不出要素类在要素数据集中的版本化状态。要查找此信息,请查询要素数据集中的各个要素类。