more detailed url to object mapping and pass an optional source to model