Для валидации можно использовать Optimus.
Описание на первоисточнике.
Лучший способ изучения — анализ примеров.