Made edge attribute type generic and updated signature in the callers