<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>idea SDO_GEOMETRY table — Catalog should recognize geometry type (point, line, polygon) when constrained by spatial index parameter in ArcGIS Pro Ideas</title>
    <link>https://community.esri.com/t5/arcgis-pro-ideas/sdo-geometry-table-catalog-should-recognize/idi-p/1276162</link>
    <description>&lt;P&gt;&lt;EM&gt;ArcGIS Pro 2.6.8; Oracle 18c SDO_GEOMETRY&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;I have an Oracle table that is not registered with the geodatabase:&lt;/P&gt;&lt;PRE&gt;CREATE TABLE sdo_geom_line (objectid     NUMBER(*,0), 
                            shape        SDO_GEOMETRY);
CREATE UNIQUE INDEX sdo_geom_line_objectid ON sdo_geom_line (objectid);
INSERT INTO user_sdo_geom_metadata (table_name,column_name,diminfo,srid) 
VALUES (
    'sdo_geom_line',
    'SHAPE',
    sdo_dim_array(
        sdo_dim_element(NULL, 0, 100, 0.001), 
        sdo_dim_element(NULL, 0, 100, 0.001)
    ),
    26917
    );
COMMIT;&lt;BR /&gt;CREATE INDEX sdo_geom_line_shape ON sdo_geom_line (shape) INDEXTYPE IS mdsys.spatial_index_v2;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is what the table looks like in the Catalog pane:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Bud_0-1680788405929.png" style="width: 400px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/67398i6FC99956D821754A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Bud_0-1680788405929.png" alt="Bud_0-1680788405929.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Catalog seems to use a &lt;EM&gt;generic&lt;/EM&gt; &lt;EM&gt;rounded rectangle&lt;/EM&gt; as the icon. Likely because SDO_GEOMETRY columns can accept features with multiple geometry types (point, line, polygon) within the same column. So Catalog doesn't know for sure what kind of data might be stored in the column,&amp;nbsp;and therefore can't display a specific icon for points, lines, or polygons.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Whereas an SDO_GEOMETRY feature class that was created using ArcGIS Pro &lt;EM&gt;does&lt;/EM&gt;&amp;nbsp;get registered with the geodatabase. So Catalog knows what geometry type it is.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Bud_1-1680788680171.png" style="width: 400px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/67399iCAA0722062D8AE86/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Bud_1-1680788680171.png" alt="Bud_1-1680788680171.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;That all makes sense.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;However, it turns out it&amp;nbsp;&lt;U&gt;&lt;EM&gt;is&lt;/EM&gt;&lt;/U&gt;&amp;nbsp;possible to limit an SDO_GEOMETRY column to a certain geometry type, by specifying the geometry type parameter when creating the spatial index:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/indexing-querying-spatial-data.html#GUID-0A054242-4FCC-4DBB-97FC-E375DE9773EE" target="_self"&gt;5.1.2 Constraining Data to a Geometry Type&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;When you create or rebuild a spatial index, you can ensure that all geometries that are in the table or that are inserted later are of a specified geometry type. To constrain the data to a geometry type in this way, use the&amp;nbsp;&amp;nbsp;&lt;FONT face="courier new,courier"&gt;layer_gtype&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;keyword in the PARAMETERS clause of the&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/sql-indexing-spatial-data.html#GUID-BB6D7C9E-277B-4F49-BDD4-539CFE88D12C" target="_blank" rel="noopener"&gt;CREATE INDEX&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;or&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/sql-indexing-spatial-data.html#GUID-9DBFA670-1F9D-49CB-8D68-66F1C31C1677" target="_blank" rel="noopener"&gt;ALTER INDEX REBUILD&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;statement, and specify a value from the Geometry Type column of the Valid SDO_GTYPE Values table described in&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/spatial-datatypes-metadata.html#GUID-4D84CE67-67E4-4A84-8255-C586E765A94B" target="_blank" rel="noopener"&gt;SDO_GTYPE&lt;/A&gt;&lt;SPAN&gt;.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;For example, constrain the SDO_GEOMETRY column to &lt;U&gt;lines&lt;/U&gt;:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;INDEXTYPE IS mdsys.spatial_index_v2 &lt;FONT color="#000000"&gt;PARAMETERS('layer_gtype=&lt;FONT color="#0000FF"&gt;&lt;STRONG&gt;line&lt;/STRONG&gt;&lt;/FONT&gt;')&lt;/FONT&gt;;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;As expected, I can insert lines successfully:&lt;/P&gt;&lt;PRE&gt;INSERT INTO sdo_geom_line (objectid, shape) &lt;BR /&gt;    VALUES (1, sdo_geometry('&lt;FONT color="#0000FF"&gt;&lt;STRONG&gt;LINESTRING&lt;/STRONG&gt;&lt;/FONT&gt; (30 10, 10 30, 40 40)', 26917));&lt;BR /&gt;COMMIT;&lt;BR /&gt;1 row inserted.&lt;/PRE&gt;&lt;P&gt;But I can't insert features that are other geometry types, such as points:&lt;/P&gt;&lt;PRE&gt;INSERT INTO sdo_geom_line (objectid, shape) &lt;BR /&gt;    VALUES (2, sdo_geometry('&lt;FONT color="#0000FF"&gt;&lt;STRONG&gt;POINT&lt;/STRONG&gt;&lt;/FONT&gt; (30 10)', 26917));&lt;BR /&gt;&lt;BR /&gt;ORA-29875: failed in the execution of the ODCIINDEXINSERT routine&lt;BR /&gt;ORA-13375: &lt;STRONG&gt;&lt;FONT color="#0000FF"&gt;the layer is of type [2002] while geometry inserted has type [2001]&lt;/FONT&gt;&lt;/STRONG&gt;&lt;BR /&gt;ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 976&lt;BR /&gt;ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 488&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Idea:&lt;/P&gt;&lt;P&gt;Since my SDO_GEOMETRY column is constrained to a specific geometry type (point, line, polygon), and since there is only one geometry column in the table, I'm wondering if Catalog could be enhanced so that it recognizes that constraint, and displays the appropriate symbol (point symbol, line symbol, or polygon).&lt;/P&gt;&lt;P&gt;That would make it easier to determine what the geometry type is when using Catalog (assuming the table name doesn't give us a hint). Otherwise, with the &lt;EM&gt;generic rounded rectangle&lt;/EM&gt; icon, we don't have an easy way to determine the geometry type from within ArcGIS Pro.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Similarly, I wonder if the Catalog Properties could also indicate the geometry type if it is constrained by the index. Currently, the SDO_GEOMETRY column is listed as &lt;EM&gt;Any&lt;/EM&gt;, not as&amp;nbsp;&lt;EM&gt;Line&lt;/EM&gt;.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Bud_2-1680789490103.png" style="width: 400px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/67400i5167340841999898/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Bud_2-1680789490103.png" alt="Bud_2-1680789490103.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 10 May 2023 21:10:10 GMT</pubDate>
    <dc:creator>Bud</dc:creator>
    <dc:date>2023-05-10T21:10:10Z</dc:date>
    <item>
      <title>SDO_GEOMETRY table — Catalog should recognize geometry type (point, line, polygon) when constrained by spatial index parameter</title>
      <link>https://community.esri.com/t5/arcgis-pro-ideas/sdo-geometry-table-catalog-should-recognize/idi-p/1276162</link>
      <description>&lt;P&gt;&lt;EM&gt;ArcGIS Pro 2.6.8; Oracle 18c SDO_GEOMETRY&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;I have an Oracle table that is not registered with the geodatabase:&lt;/P&gt;&lt;PRE&gt;CREATE TABLE sdo_geom_line (objectid     NUMBER(*,0), 
                            shape        SDO_GEOMETRY);
CREATE UNIQUE INDEX sdo_geom_line_objectid ON sdo_geom_line (objectid);
INSERT INTO user_sdo_geom_metadata (table_name,column_name,diminfo,srid) 
VALUES (
    'sdo_geom_line',
    'SHAPE',
    sdo_dim_array(
        sdo_dim_element(NULL, 0, 100, 0.001), 
        sdo_dim_element(NULL, 0, 100, 0.001)
    ),
    26917
    );
COMMIT;&lt;BR /&gt;CREATE INDEX sdo_geom_line_shape ON sdo_geom_line (shape) INDEXTYPE IS mdsys.spatial_index_v2;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is what the table looks like in the Catalog pane:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Bud_0-1680788405929.png" style="width: 400px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/67398i6FC99956D821754A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Bud_0-1680788405929.png" alt="Bud_0-1680788405929.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Catalog seems to use a &lt;EM&gt;generic&lt;/EM&gt; &lt;EM&gt;rounded rectangle&lt;/EM&gt; as the icon. Likely because SDO_GEOMETRY columns can accept features with multiple geometry types (point, line, polygon) within the same column. So Catalog doesn't know for sure what kind of data might be stored in the column,&amp;nbsp;and therefore can't display a specific icon for points, lines, or polygons.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Whereas an SDO_GEOMETRY feature class that was created using ArcGIS Pro &lt;EM&gt;does&lt;/EM&gt;&amp;nbsp;get registered with the geodatabase. So Catalog knows what geometry type it is.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Bud_1-1680788680171.png" style="width: 400px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/67399iCAA0722062D8AE86/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Bud_1-1680788680171.png" alt="Bud_1-1680788680171.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;That all makes sense.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;However, it turns out it&amp;nbsp;&lt;U&gt;&lt;EM&gt;is&lt;/EM&gt;&lt;/U&gt;&amp;nbsp;possible to limit an SDO_GEOMETRY column to a certain geometry type, by specifying the geometry type parameter when creating the spatial index:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/indexing-querying-spatial-data.html#GUID-0A054242-4FCC-4DBB-97FC-E375DE9773EE" target="_self"&gt;5.1.2 Constraining Data to a Geometry Type&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;When you create or rebuild a spatial index, you can ensure that all geometries that are in the table or that are inserted later are of a specified geometry type. To constrain the data to a geometry type in this way, use the&amp;nbsp;&amp;nbsp;&lt;FONT face="courier new,courier"&gt;layer_gtype&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;keyword in the PARAMETERS clause of the&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/sql-indexing-spatial-data.html#GUID-BB6D7C9E-277B-4F49-BDD4-539CFE88D12C" target="_blank" rel="noopener"&gt;CREATE INDEX&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;or&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/sql-indexing-spatial-data.html#GUID-9DBFA670-1F9D-49CB-8D68-66F1C31C1677" target="_blank" rel="noopener"&gt;ALTER INDEX REBUILD&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;statement, and specify a value from the Geometry Type column of the Valid SDO_GTYPE Values table described in&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.oracle.com/en/database/oracle/oracle-database/23/spatl/spatial-datatypes-metadata.html#GUID-4D84CE67-67E4-4A84-8255-C586E765A94B" target="_blank" rel="noopener"&gt;SDO_GTYPE&lt;/A&gt;&lt;SPAN&gt;.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;For example, constrain the SDO_GEOMETRY column to &lt;U&gt;lines&lt;/U&gt;:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;INDEXTYPE IS mdsys.spatial_index_v2 &lt;FONT color="#000000"&gt;PARAMETERS('layer_gtype=&lt;FONT color="#0000FF"&gt;&lt;STRONG&gt;line&lt;/STRONG&gt;&lt;/FONT&gt;')&lt;/FONT&gt;;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;As expected, I can insert lines successfully:&lt;/P&gt;&lt;PRE&gt;INSERT INTO sdo_geom_line (objectid, shape) &lt;BR /&gt;    VALUES (1, sdo_geometry('&lt;FONT color="#0000FF"&gt;&lt;STRONG&gt;LINESTRING&lt;/STRONG&gt;&lt;/FONT&gt; (30 10, 10 30, 40 40)', 26917));&lt;BR /&gt;COMMIT;&lt;BR /&gt;1 row inserted.&lt;/PRE&gt;&lt;P&gt;But I can't insert features that are other geometry types, such as points:&lt;/P&gt;&lt;PRE&gt;INSERT INTO sdo_geom_line (objectid, shape) &lt;BR /&gt;    VALUES (2, sdo_geometry('&lt;FONT color="#0000FF"&gt;&lt;STRONG&gt;POINT&lt;/STRONG&gt;&lt;/FONT&gt; (30 10)', 26917));&lt;BR /&gt;&lt;BR /&gt;ORA-29875: failed in the execution of the ODCIINDEXINSERT routine&lt;BR /&gt;ORA-13375: &lt;STRONG&gt;&lt;FONT color="#0000FF"&gt;the layer is of type [2002] while geometry inserted has type [2001]&lt;/FONT&gt;&lt;/STRONG&gt;&lt;BR /&gt;ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 976&lt;BR /&gt;ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 488&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Idea:&lt;/P&gt;&lt;P&gt;Since my SDO_GEOMETRY column is constrained to a specific geometry type (point, line, polygon), and since there is only one geometry column in the table, I'm wondering if Catalog could be enhanced so that it recognizes that constraint, and displays the appropriate symbol (point symbol, line symbol, or polygon).&lt;/P&gt;&lt;P&gt;That would make it easier to determine what the geometry type is when using Catalog (assuming the table name doesn't give us a hint). Otherwise, with the &lt;EM&gt;generic rounded rectangle&lt;/EM&gt; icon, we don't have an easy way to determine the geometry type from within ArcGIS Pro.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Similarly, I wonder if the Catalog Properties could also indicate the geometry type if it is constrained by the index. Currently, the SDO_GEOMETRY column is listed as &lt;EM&gt;Any&lt;/EM&gt;, not as&amp;nbsp;&lt;EM&gt;Line&lt;/EM&gt;.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Bud_2-1680789490103.png" style="width: 400px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/67400i5167340841999898/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Bud_2-1680789490103.png" alt="Bud_2-1680789490103.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 21:10:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-pro-ideas/sdo-geometry-table-catalog-should-recognize/idi-p/1276162</guid>
      <dc:creator>Bud</dc:creator>
      <dc:date>2023-05-10T21:10:10Z</dc:date>
    </item>
  </channel>
</rss>

