adjusted Tag handling to use ViewModels