Revert "Revert "xml""

This reverts commit d0d1b8b4eb9a28b12f6a5bfb83e60aac765fd080.
Revert "xml only"

This reverts commit 74f5597310d08c9938028e83ce4038823f3c39b4.