code: def process_has_args(cls, kwargs):
      
      rel_definitions = cls.defined_properties(properties=False, rels=True, aliases=False)
  
      match, dont_match = {}, {}
  
      for key, value in kwargs.items():
          if key not in rel_definitions:
              raise ValueError("No such relation {0} defined on a {1}".format(key, cls.__name__))
  
          rhs_ident = key
  
          rel_definitions[key]._lookup_node_class()
  
          if value is True:
              match[rhs_ident] = rel_definitions[key].definition
          elif value is False:
              dont_match[rhs_ident] = rel_definitions[key].definition
          elif isinstance(value, NodeSet):
              raise NotImplementedError("Not implemented yet")
          else:
              raise ValueError("Expecting True / False / NodeSet got: " + repr(value))
  
      return match, dont_match
docs: loop through has parameters check they correspond to class rels defined