Можно использовать XSLT для преобразования всех вариантов старых форматов к новому. То есть, для каждай новой версии создается файл, описывающий преобразования, которые необходимо произвести для конвертации xml предыдущей версии к текущей. Таким образом, если нужно конвертировать файл версии 2 к текущей версии 5, то необходимо выполнить цепочку преобразований 2->3->4->5, где каждое преобразование осуществляется соответствующим XSLT-файлом.