Generate Node and Edge function