add schema checking