Add missing validation

Implemented checks in `validate()` (untested)