zoukankan      html  css  js  c++  java
  • ArcGIS属性域Domain探索

    最近在研究UPDM2019,想着转一套模型到PostGIS中,arcgis当中的属性域Domain不能直接转入到PostGIS,需要手动转换。

    ArcGIS属性域Domain

    属性域是描述字段类型合法值的规则,提供了一种增强数据完整性的方法。属性域是可接受的特性值的声明。属性域用于约束表或要素类的任意特定属性中的允许值。如果要素类中的要素或表中的非空间对象已被分组为各个子类型,则可将不同的属性域分配给每个子类型。如果一个属性域与某个特性字段相关联,则只有该属性域内的值才对此字段有效。也就是说,此字段不会接受不属于该属性域的值。使用属性域可针对特定字段限制可供选择的值,从而有助于确保数据完整性。

    ArcGIS Domain信息在ArcCatalong数据管理可见(任选一要素,右键属性->子类型->属性域),在此处可复制编码值到excel。

     

     

     上述编码值可直接复制到excel

     

    属性域Domain在数据库中的存储

    在测试test.mdb中导入部分空间表,会导入跟这些空间数据表相关的Domain信息。

    打开mdb,其中GDB_Items中保存了Domain的信息,Definition字段里面以xml结构保存了字典表值,表里面不只包含Domain信息,还包含关系类等。

    下表为GDB_Items

     

    下表为GDB_ItemTypes,从该表可以读取Domain类型对应的UUID,字段使用的属性域对应Coded Value Domain(父类型是Domain),通过UUID对应GDB_Items的Type字段。

     

    下图为查看属性域的xml值,批量转出可通过写程序转换xml中的Domain值,代码实现比较简单,不再贴出。

    作者: GoodGF
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    总结一下最近的工作状和提高效率的方式
    使用hash 算法把数据均匀的放在不同的数据库里面
    微服务-网关-全局过滤器鉴权(未使用spring security)
    Jwt 工具类
    Java泛型(二)<T> 和<?> 的区别
    final 和 static 的区别
    一面bytedance
    catalina.out 显示 端口占用
    No plugin found for prefix 'install' in the current project and in the plugin groups
    Mysql-sql查询技巧分析
  • 原文地址:https://www.cnblogs.com/gaofan/p/11573159.html
Copyright © 2011-2022 走看看