public static function newRdataFromName(string $name): RdataInterface
    {
        if (!self::isTypeImplemented($name)) {
            throw new UnsupportedTypeException($name);
        }

        $namespace = '\\Badcow\\DNS\\Rdata\\';
        $className = $namespace.strtoupper($name);

        if (!class_exists($className)) {
            $className = $namespace.'DNSSEC\\'.strtoupper($name);
        }

        return new $className();
    }