Tutoriales de informática - Abrirllave.com

Abrirllave.com

Espacios en blanco en XML

En un documento XML, los espacios en blanco, las tabulaciones y los retornos de carro pueden ser tratados de un modo especial.

Espacios en blanco en el contenido (texto) de un elemento

EJEMPLO Dado el archivo XML "peliculas.xml":

<?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>

Al visualizar dicho archivo en Google Chrome, se verá algo parecido a:

Visualización del archivo peliculas.xml en Google Chrome - Ejemplo del tutorial de XML de {Abrirllave.com

Esto es debido a que, las tabulaciones, los retornos de carro y varios espacios en blanco contenidos en el texto de los elementos del documento, han sido representados como un único espacio en blanco.

Espacios en blanco en atributos

EJEMPLO De igual modo ocurre con los valores de los atributos. Por ejemplo, dado el archivo "series.xml":

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



   9
  12 15"/>
</series>

En un navegador web se podrá visualizar:

Visualización del archivo series.xml en Google Chrome - Ejemplo del tutorial de XML de {Abrirllave.com

Espacios en blanco entre elementos

EJEMPLO Obsérvese que, los siguientes documentos XML contienen la misma información, pero, escrita de distinta 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>

En todos los casos, en Google Chrome veremos:

Visualización del archivo datos.xml en Google Chrome - Ejemplo del tutorial de XML de {Abrirllave.com

Las aplicaciones que hacen uso de documentos XML suelen hacer este tratamiento de las tabulaciones, retornos de carro y espacios en blanco.

Uso del atributo xml:space

EJEMPLO Por otra parte, los elementos de un documento XML pueden contener el atributo predefinido xml:space con el valor "preserve" para indicar que los espacios que aparecen en el contenido (texto) de dicho elemento, y sus sucesores, deben ser preservados:

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

Los únicos valores que admite el atributo xml:space son "preserve" y "default", siendo este último su valor por defecto cuando no se escribe dicho atributo.

El valor "default" indica que la aplicación que haga uso del documento XML es la encargada de decidir cómo tratar los espacios en blanco. Ahora bien, aún indicando el valor "preserve", hay que tener en cuenta que no todos los programas que hacen uso de documentos XML reconocen este atributo.