def METHOD_NAME(self, instances, geometry_field):
    """
    Sorts flattend resource instances by their geometry type (multipoint=4, multipolyline==5, multipolygon==6).
    If an instance has more than one geometry type, it is assigned to the respective geometry type once
    for each of its geometries.
    """
    features_by_geom_type = {"point": [], "line": [], "poly": []}
    for instance in instances:
        feature_geoms = self.process_feature_geoms(instance, geometry_field)
        for geometry in feature_geoms:
            feature = copy.copy(instance)
            feature[geometry_field] = geometry
            if geometry.geom_typeid == 4:
                features_by_geom_type["point"].append(feature)
            elif geometry.geom_typeid == 5:
                features_by_geom_type["line"].append(feature)
            elif geometry.geom_typeid == 6:
                features_by_geom_type["poly"].append(feature)
    return features_by_geom_type