refactored handling of objects referring to sources