Qué hace esta herramienta
Quita la indentación, y solo la indentación.
<biblioteca>
<libro>
<titulo>Dune</titulo>
</libro>
</biblioteca>
se convierte en <biblioteca><libro><titulo>Dune</titulo></libro></biblioteca>.
Qué conserva a propósito
Los espacios dentro del texto. <p>Hola <b>mundo</b> otra vez</p> sale sin cambios. En XML esos espacios son datos de carácter —no hay colapso de espacios como en HTML— y quitarlos pega las palabras.
Los valores de atributos. t=" mantener " se queda como está. El espacio de un valor de atributo solo se normaliza para los tipos no CDATA, que solo una DTD puede declarar; sin ella, cada espacio cuenta.
Un espacio aislado entre dos elementos de la misma línea. <b>x</b> <i>y</i> conserva el suyo. Nada en el documento dice que sea despreciable.
Comentarios, secciones CDATA, prólogo. La declaración vuelve con la versión, la codificación y el standalone que escribiste, el DOCTYPE sobrevive y una instrucción <?xml-stylesheet?> sigue donde estaba.
xml:space="preserve" suspende toda la operación para el elemento que lo lleva.
Qué cuenta como indentación
Un nodo de texto totalmente blanco, que contenga un salto de línea, situado en un elemento sin texto significativo propio. Esa es la definición, deliberadamente estrecha: lo que no entra ahí es contenido mientras no se demuestre lo contrario.
Cuánto se reduce
Menos de lo que esperabas, y decirlo vale más que dejarlo creer. La indentación suele ser un pequeño porcentaje de un documento XML; las etiquetas son el grueso, y acortarlas sería cambiar el documento.
Si el objetivo es el peso en la red, la compresión hace mucho más: gzip encuentra en los nombres de etiqueta una repetición que ningún minificador puede quitar. Minifica para un archivo que vas a guardar o incrustar, no para el transporte.
Privado por diseño
Todo se ejecuta localmente en tu navegador con JavaScript. Tus datos nunca se suben a un servidor, lo que hace que la herramienta sea segura para contenido sensible y funcione sin conexión.