I'd rather not, since it would be a major pain for most users of Schema.hpp to have to also include string_ref.hpp - a large proportion of files using Schema.hpp are likely to call getDimension, and having the string_ref constructor accessible is required if you're passing a std::string or a const char* to getDimension*().