 
   defp do_get(_, nil), do: {:error, :not_found}
 
-  defp do_get(nil, %Xema{} = xema), do: {:ok, xema.content}
-
-  defp do_get("#", xema), do: {:ok, get_schema(xema)}
-
-  defp do_get("", xema), do: {:ok, get_schema(xema)}
+  defp do_get(pointer, %Xema{} = xema)
+    when pointer in [nil, "", "#"],do: {:ok, xema.content}
 
   defp do_get(pointer, %Xema{} = xema), do: do_get(pointer, xema.content)
 

        nil -> {:error, :not_found}
        value -> do_get(steps, value)
      end
    end
  end

  defp get_schema(schema) do
    case schema do
      %Xema{content: schema} -> schema
      %Schema{} = schema -> schema
    end
  end


      remote: remote,
      url: url
    }
  end

  def validate(ref, value, opts) do
