SemanticModel added and tested, viewdidappear is used instead of read