protected function checkAttributeAssignable($attribute): void
    {
        if ( ! $this->exceptionOnUnknown || empty($this->known)) {
            // @codeCoverageIgnoreStart
            return;
            // @codeCoverageIgnoreEnd
        }

        if (is_array($attribute)) {

            foreach ($attribute as $singleAttribute) {
                $this->checkAttributeAssignable($singleAttribute);
            }

            return;
        }

        if ( ! in_array($attribute, $this->known, true)) {
            throw (new ModelConfigurationDataException(
                "Unknown model configuration data key: '{$attribute}' in " . get_class($this)
            ))
                ->setDotKey($attribute);
        }
    }