В этом разделе описывается, как библиотека подготовлена для поддержки множественных (не обратно совместимых) изменений.
Элементы библиотеки определены в boost::metaparse::v1 namespace. Например, one_char класс boost::metaparse::v1::one_char и доступен после включения <boost/<>.
В то же время библиотека предоставляет <boost/metaparse/one_char.hpp> заголовок, который включает в себя <boost/metaparse/v1>/>>>>>>><>>>>>>>>
namespace boost
{
  namespace metaparse
  {
    using v1::one_char;
  }
}
Это позволяет использовать one_char как boost::metaparse::one_char.
Будущие версии библиотеки могут предоставить другие пространства имен (например, v2). Файлы заголовка в <boost/metaparse/...> предоставляют последнюю версию библиотеки. Чтобы всегда получить версию v1, следует использовать файлы заголовка в <boost/metaparse/v1/...>.
Библиотека не использует встроенные пространства имен для работы на компиляторах, которые их не поддерживают.
 
Макрос, определенный библиотекой, префиксируется с BOOST_METAPARSE_V1_. Например BOOST_METAPARSE_V1_STRING. Он определяется в <boost/metaparse/v1/string.hpp> заголовок файла. Библиотека предоставляет <boost/metaparse/string.hpp> заголовок, который включает в себя определение этого макроса и содержит следующее определение:
#define BOOST_METAPARSE_STRING BOOST_METAPARSE_V1_STRING
Это позволяет использовать макрос как  BOOST_METAPARSE_STRING. Будущие версии библиотеки могут определять другие версии этого макроса (например, BOOST_METAPARSE_V2_STRING). BOOST_METAPARSE_STRING будет относиться к последней версии.
Эта версия не влияет на макросы, которые могут быть переопределены кодом с использованием библиотеки. (например, BOOST_METAPARSE_LIMIT_STRING_SIZE)