Если вы хотите преобразовать XML из Java, я бы предложил использовать XSLT.Для простых задач вы можете использовать процессор XSLT 1.0, который поставляется с JDK;для более сложных задач вы можете загрузить реализацию XSLT 3.0, такую как Saxon.
Однако XSLT предполагает, что входные данные XML правильно сформированы.Пример, который вы показали, не так, потому что он использует префикс пространства имен p1, который не был объявлен.Это наводит на мысль о том, что проблема еще выше в конвейере обработки, и вместо того, чтобы избавиться от этого префикса, вы, возможно, должны сначала рассмотреть, как он туда попал: ошибки, которые создают неверные данные, должны быть исправлены в источнике, а не восстанавливать данные позже.