def get_node_property_value()

in src/graph_notebook/network/sparql/SPARQLNetwork.py [0:0]


    def get_node_property_value(self, binding: dict, custom_property, data: dict = None):
        if data is None:
            data = {}
            node_type = None
        else:
            node_type = self.get_node_class(data)
        if isinstance(custom_property, dict):
            if node_type:
                try:
                    if node_type in custom_property:
                        property_for_type = custom_property[node_type]
                        if property_for_type[:2] == "P." and 'properties' in data:
                            prop_value = self.retrieve_object_property_value(property_for_type[2:], data['properties'])
                        else:
                            prop_value = binding[property_for_type]
                    else:
                        prop_value = None
                except KeyError:
                    prop_value = None
            else:
                prop_value = None
        elif custom_property[:2] == "P." and 'properties' in data:
            prop_value = self.retrieve_object_property_value(custom_property[2:], data['properties'])
        elif custom_property in binding:
            prop_value = binding[custom_property]
        else:
            prop_value = None

        return prop_value