29 | | **Idea 1: Augment pgAdmin to support importing and exporting shapefiles** |
| 29 | **Idea 1: Enhancing shp2pgsql / pgsql2shp to load/export topology elements and topogeoms** |
| 30 | shp2pgsql is a commandline tool that is part of the PostGIS code base designed for loading ESRI shapefiles into a PostGIS database. |
| 31 | pgsql2ship is a commandline tool that is used to export data into ESRI shapefile format. |
| 32 | |
| 33 | Both tools currently only support geometry and geography formats. The plan is to augment them to support topology elements and topogeoms as well if the postgis_topology extension is installed. |
| 34 | |
| 35 | ''Expected outcomes'': |
| 36 | |
| 37 | shp2pgsql will have new switches for loading into a topology. For topology elements, whether it loads into faces, edges, nodes will be dictated by the type of the data in the ESRI shapefile and will ignore the attribute data if any. |
| 38 | |
| 39 | For topogeoms, the user would need to specify the table to create, topology, and column, with default column name being topo if the user does not specify. This will behave more or less the same as geography/geometry loading. For the first pass, we will assume this will just use basic topo element types (areal, lineal, punctal) and will not use subelements. |
| 40 | |
| 41 | pgsql2shp will be used to export topogeoms and will use the topo::geometry casting to do so. Since topology tables faces, edges, and nodes are already tables, there is no need to support exporting topology. |
| 42 | |
| 43 | |
| 44 | ''Skills required'': |
| 45 | |
| 46 | Some familiarity with PostGIS, PostgreSQL, and postgis_topology |
| 47 | Ability to compile PostGIS loader / dumper. Some familiarity with C. |
| 48 | |
| 49 | ''Mentors'': Regina Obe, Sandro Santilli |
| 50 | |
| 51 | ''Difficulty'': Medium |
| 52 | |
| 53 | |
| 54 | |
| 55 | **Idea 2: Augment pgAdmin to support importing and exporting shapefiles** |