public function validateAttribute($model, $attribute)
    {
        $result = $this->validateValue($model->$attribute);
        if ($result instanceof ExtendedPromiseInterface) {
            return $result->then(function($_result) use ($model, $attribute) {
                if (!empty($_result)) {
                    $this->addError($model, $attribute, $_result[0], $_result[1]);
                }
            });
        }
        if (!empty($result)) {
            $this->addError($model, $attribute, $result[0], $result[1]);
        }
        return null;
    }