En verdad. Lo ideal es que el documento XML se conforme, adicionando nodos de principio a fin; es lo correcto.
No obstante, adicionar espacios de nombres y atributos, fue al final un Calvario difícil de recorrer, porque surgen inconvenientes con poca y nada de documentación.
Al final: concatenar, usar la cadena para cargar un documento XML, verificar que sea un XML bien formado; ha sido lo que pienso que la mayoría hemos podido hacer.
No digo que conformar el XML sea imposible, pero digo que por tantos espacios de nombres y compliques con poca y nada de documentación; es una tarea muy difícil.
Y este proceso de factura electrónica es como en el cálculo: Varias formas de llegar a la respuesta correcta.