add validation(), getModelsForAffect() methods, ApiRelationProvider improvement