Select to view content in your preferred language

Knowledge Graph geometry type not accepted

245
0
04-11-2024 12:34 PM
Labels (1)
dariusmb
New Contributor

I have a code (below) that accepts a geometry type and builds a shape dict to be added to my knowledge graphs. This works without issue if the geometry type is 'esriGeometryTypePoint', but any other type and I get the following error (shown after code):

 

 

def build_spatial_props(geo_type):
    space_types = []
    space_dict = {
        "name": "shape",
        "alias": "shape",
        "fieldType": "esriFieldTypeGeometry",
        "geometryType": geo_type,
        "hasZ": False,
        "hasM": False,
        "editable": True,
        "visible": True,
        "required": False,
        "IsSystemMaintained": False,
        "role": "esriGraphPropertyRegular"
    }
    space_types.append(space_dict)
    return space_types
spatial_poly = build_spatial_props("esriGeometryTypeMultipoint")

kg.graph_property_adds(type_name='Matthew_Flood_Impact', graph_properties=spatial_poly)

 

 

~\AppData\Local\ESRI\conda\envs\gf\Lib\site-packages\arcgis\graph\_service.py in graph_property_adds(self, type_name, graph_properties)
    868         r_enc = _kgparser.GraphPropertyAddsRequestEncoder()
    869         for prop in graph_properties:
--> 870             r_enc.add_property(prop)
    871 
    872         r_enc.encode()

ValueError: Unexpected geometry type.

The following are listed as geometry types for properties: https://github.com/Esri/arcgis-python-api/blob/d89788423fdf430cf84a28614f3effed7bc8706a/guide/17-wor... 

  • esriFieldTypeGeometry
    • with this type, you also need to define geometryType:
      • esriGeometryTypePoint
      • esriGeometryTypePolyline
      • esriGeometryTypePolygon
      • esriGeometryTypeMultipoint
0 Kudos
0 Replies