Saltar al contenido principal

Espacios en blanco

En un documento XML, los espacios en blanco, las tabulaciones y los retornos de carro (salto de línea) pueden ser tratados de un modo especial.

Interpretado de los espacios en blanco

En este apartado, se analizará el comportamiento predeterminado de los espacios en blanco, tabulaciones y retornos de carro en las diferentes ítems de XML.

Contenido

Varios espacios en blanco en el contenido de un elemento, se interpretan como uno solo.

Por ejemplo, los dos siguientes documentos se interpretarían de la misma forma:

<?xml version="1.0" encoding="UTF-8"?>
<peliculas>
<pelicula>El discurso del rey</pelicula>
<pelicula>En tierra hostil</pelicula>
<pelicula>Una
mente

maravillosa</pelicula>
</peliculas>
<?xml version="1.0" encoding="UTF-8"?>
<peliculas>
<pelicula>El discurso del rey</pelicula>
<pelicula>En tierra hostil</pelicula>
<pelicula>Una mente maravillosa</pelicula>
</peliculas>
Probar en el navegador

Atributos

De igual modo ocurre con los valores de los atributos.

Por ejemplo, los dos siguientes documentos se interpretarían de la misma forma:

<?xml version="1.0" encoding="UTF-8"?>
<series>
<serie numeros="2 4 6 8"/>
<serie numeros="3
6



9
12 15"/>
</series>
<?xml version="1.0" encoding="UTF-8"?>
<series>
<serie numeros="2 4 6 8"/>
<serie numeros="3 6 9 12 15"/>
</series>
Probar en el navegador

Elementos

Los espacios en blanco entre elementos no se tienen en cuenta.

Por ejemplo, los tres siguientes documentos se interpretarían de la misma forma:

<?xml version="1.0" encoding="UTF-8"?>
<datos>
<dato>1</dato>
<dato>2</dato>
<dato>3</dato>
</datos>
<?xml version="1.0" encoding="UTF-8"?>
<datos><dato>1</dato><dato>2</dato><dato>3</dato></datos>
<?xml version="1.0" encoding="UTF-8"?>
<datos><dato>1</dato> <dato>2</dato>


<dato>3</dato></datos>

xml:space

Para modificar el interpretado de los espacios en blanco, tabulaciones y retornos de carro en un documento XML, se puede utilizar el atributo predefinido xml:space con el valor preserve. De esta forma, se le indica al intérprete que los espacios en blanco en el contenido de dicho elemento (y de sus hijos) deben ser conservados.

<clasificacion xml:space="preserve">
1 Fernando Alonso 1:55.341
2 Lewis Hamilton 1:55.729
3 Sebastian Vettel 1:56.122
</clasificacion>
Probar en el navegador

Los valores que acepta el atributo xml:space son:

  • preserve
  • default

El valor default indica al intérpete que es él quien decide cómo tratar los espacios en blanco.

Soporte

Aún indicando el valor preserve, hay que tener en cuenta que no todos los intérpretes reconocen este atributo. Es el caso de Mozilla Firefox y Google Chrome.