code: def create_node(manager, name, meta_type_label, type_label, handle_id, legacy=True):
      
      if meta_type_label not in META_TYPES:
          raise exceptions.MetaLabelNamingError(meta_type_label)
      q = """
          CREATE (n:Node:%s:%s { name: { name }, handle_id: { handle_id }})
          RETURN n
          """ % (meta_type_label, type_label)
      with manager.session as s:
          if legacy:
              return s.run(q, {'name': name, 'handle_id': handle_id}).single()['n'].properties
          return s.run(q, {'name': name, 'handle_id': handle_id}).single()['n']
docs: Creates a node with the mandatory attributes name and handle_id also sets type label.
  
      :param manager: Manager to handle sessions and transactions
      :param name: Node name
      :param meta_type_label: Node meta type
      :param type_label: Node label
      :param handle_id: Unique id
      :param legacy: Backwards compatibility
  
      :type manager: norduniclient.contextmanager.Neo4jDBSessionManager
      :type name: str|unicode
      :type meta_type_label: str|unicode
      :type type_label: str|unicode
      :type handle_id: str|unicode
      :type legacy: Boolean
  
      :rtype: dict|neo4j.v1.types.Node