XML mas que un lenguaje es como una herramienta de desarrollo para crear nuevos lenguajes. Con XML puedes crear otro tipo de lenguajes de metaetiquetas (HTML es un ejemplo de lenguaje de metaetiquetas)
XML facilita el entendimiento entre el lenguaje que entiende la computadora y el que entiende los humanos. Gracias a que es posible definir nuevos lenguajes, pudieras crear tu propia definicion para una aplicacion que mande correos o cosas asi, evitando tener que aprender la sintaxis especifica de algun otro lenguaje.
Aqui te pongo un ejemplo XML extraido de wikipedia:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE Edit_Mensaje SYSTEM "Lista_datos_mensaje.dtd"
[<!ELEMENT Edit_Mensaje (Mensaje)*>]>
<Edit_Mensaje>
<Mensaje>
<Remitente>
<Nombre>Nombre del remitente</Nombre>
<Mail> Correo del remitente </Mail>
</Remitente>
<Destinatario>
<Nombre>Nombre del destinatario</Nombre>
<Mail>Correo del destinatario</Mail>
</Destinatario>
<Texto>
<Parrafo>
Este es mi documento con una estructura muy sencilla
no contiene atributos ni entidades....
</Parrafo>
</Texto>
</Mensaje>
</Edit_Mensaje>
Como vez esta usando tags definidos por el autor. Este es el archivo de definicion:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!-- Este es el DTD de Edit_Mensaje -->
<!ELEMENT Mensaje (Remitente, Destinatario, Asunto, Texto)*>
<!ELEMENT Remitente (Nombre, Mail)>
<!ELEMENT Nombre (#PCDATA)>
<!ELEMENT Mail (#PCDATA)>
<!ELEMENT Destinatario (Nombre, Mail)>
<!ELEMENT Nombre (#PCDATA)>
<!ELEMENT Mail (#PCDATA)>
<!ELEMENT Asunto (#PCDATA)>
<!ELEMENT Texto (Parrafo)>
<!ELEMENT Parrafo (#PCDATA)>
Debido a que cualquiera puede crear sus propias definiciones, creo que es lo que origina la "complejidad" de XML. Hay cientos de aplicaciones XML, y muchas de ellas sin sentido pues pudieron haber hecho las cosas con otras tecnologias y obtener los mismos o mejores resultados. Te recomiendo estudiar cuidadosamente XML antes de decidir usarlo.
En mi caso, XML solo me es util cuando quiero definir una aplicacion que se comunique con otras, y a la vez que tengo mas personas colaborando conmigo en el desarrollo de esa aplicacion. Con XML se pueden definir los elementos estandar con los que trabajamos en conjunto, aunque tiene muchos otros tipos de usos, pero es necesario estudiar cuales son y cuando aplicarlos.
Puedes continuar tu aprendizaje aqui:
Para ver este enlace Registrate o Inicia Sesion