public function validate(array &$errors = array()) { $schema = $this->schema(); if (!Jsv4::isValid($this->data, $schema)) { // try to coerce on initial failure $result = Jsv4::coerce($this->data, $schema); if ($result->value) { $this->data = $result->value; } // return errors if exists if (!empty($result->errors)) { $errors = array_merge(util::objectToArray($result->errors)); } } return parent::validate(); }