This should probably implement Identifiable and Sourced