Se ofrecen a continuación unas posibles soluciones de los ejercicios de Documentos bien formados. Estos ejercicios se pueden resolver de varias maneras. En las soluciones siguientes se proponen algunas posibilidades, pero otras son aceptables.
Error at line 4, column 24: not well-formed (invalid token)
Se podría corregir escribiendo esos términos como valores de un atributo:
<deporte nombre="Atletismo" />
...
<deporte nombre="Natación" />
o como texto dentro de la etiqueta:
<deporte>Atletismo</deporte>
...
<deporte>Natación</deporte>
Error at line 10, column 3: mismatched tag
Se podría corregir cerrándola:
<deportista>
<deporte Atletismo />
<nombre>Jesse Owens</nombre>
</deportista>
<deportista>
...
<?xml version="1.0" encoding="UTF-8"?>
<deportistas>
<deportista>
<deporte nombre="Atletismo" />
<nombre>Jesse Owens</nombre>
</deportista>
<deportista>
<deporte nombre="Natación" />
<nombre>Mark Spitz</nombre>
</deportista>
</deportistas>
Error at line 6, column 1: junk after document element
Se podría corregir añadiendo una etiqueta raíz, cuyo nombre puede ser cualquiera, mientras no coincida con otra etiqueta, por ejemplo <peliculas>:
<?xml version="1.0" encoding="UTF-8"?> <peliculas> <pelicula> <titulo>Con faldas y a lo loco</titulo> ... <autor />barto</autor> </peliculas>
Error at line 11, column 17: mismatched tag
Se podría corregir borrando la barra:
<autor>barto</autor>
<?xml version="1.0" encoding="UTF-8"?>
<peliculas>
<pelicula>
<titulo>Con faldas y a lo loco</titulo>
<director>Billy Wilder</director>
</pelicula>
<pelicula>
<director>Leo McCarey</director>
<titulo>Sopa de ganso</titulo>
</pelicula>
<autor>barto</autor>
</peliculas>
Error at line 3, column 38: mismatched tag
Se podría corregir modificando la etiqueta de apertura o la de cierre, por ejemplo:
<titulo>XML explicado a los niños</titulo>
Error at line 8, column 10: not well-formed (invalid token)
Se podría corregir eliminando esos caracteres, por ejemplo:
<http>www.example.org</http>
<?xml version="1.0" encoding="UTF-8"?>
<texto>
<titulo>XML explicado a los niños</titulo>
<párrafo>El <abreviatura>XML</abreviatura>define cómo crear
lenguajes de marcas.</párrafo>
<párrafo>Las marcas se añaden a un documento de texto
para añadir información.</párrafo>
<http>www.example.org</http>
</texto>
Error at line 2, column 19: not well-formed (invalid token)
Se podría corregir modificando la etiqueta de apertura o la de cierre, por ejemplo:
<geografia_mundial> ... </geografia_mundial>
o
<geografia-mundial> ... </geografia-mundial>
Error at line 6, column 24: not well-formed (invalid token)
Se podría corregir escribiendo el valor en el interior de la etiqueta, por ejemplo:
<capital>Madrid</capital>
<?xml version="1.0" encoding="UTF-8"?>
<geografia-mundial>
<pais>
<pais>España</pais>
<continente>Europa</continente>
<capital>Madrid</capital>
</pais>
</geografia-mundial>
Error at line 3, column 45: duplicate attribute
Se podría corregir uniendo los atributos en un único atributo, por ejemplo:
<programa nombre="Firefox" licencia="GPL MPL" />
o duplicando las etiquetas, por ejemplo:
<programa nombre="Firefox" licencia="GPL" /> <programa nombre="Firefox" licencia="MPL" />
Error at line 4, column 46: not well-formed (invalid token)
Se podría corregir añadiendo comillas, por ejemplo:
<programa nombre="Inkscape" licencia="GPL" />
<?xml version="1.0" encoding="UTF-8"?>
<programas>
<programa nombre="Firefox" licencia="GPL MPL" />
<programa nombre="LibreOffice" licencia="LGPL" />
<programa nombre="Inkscape" licencia="GPL" />
</programas>
Error at line 4, column 10: not well-formed (invalid token)
Se podría corregir añadiendo un nombre de atributo, por ejemplo:
<pais nombre="España" />
o escribiendo el valor como contenido de la etiqueta, por ejemplo:
<pais>España</pais>
Error at line 5, column 6: not well-formed (invalid token)
Se podría corregir añadiendo un nombre de etiqueta, por ejemplo:
<año valor="1982" />
o escribiendo el valor como contenido de una etiqueta, por ejemplo:
<año>1982</año>
<?xml version="1.0" encoding="UTF-8"?>
<mundiales-de-futbol>
<mundial>
<pais>España</pais>
<año>1982</año>
</mundial>
</mundiales-de-futbol>
Error at line 3, column 26: not well-formed (invalid token)
Se podría corregir escribiendo la entidad de carácter correspondiente, por ejemplo:
<bicicleta velocidad="v<100km/h" />
Error at line 4, column 23: not well-formed (invalid token)
Se podría corregir modificando el nombre del atributo, por ejemplo:
<patinete velocidad-maxima="50 km/h"
Error at line 5, column 1: not well-formed (invalid token)
Se podría corregir añadiendo los caracteres /> finales, por ejemplo:
<patinete velocidad-maxima="50 km/h" />
<?xml version="1.0" encoding="UTF-8"?>
<mediosDeTransporte>
<bicicleta velocidad="v<100km/h" />
<patinete velocidad-maxima="50 km/h" />
</mediosDeTransporte>