ahi te va lo que yo he entendio, xml es un formato muy util para intercambiar informacion entre diferentes sistemas.
Por ejemplo tienes un sistema en linux en mexico, y otro sistema de windows en usa, para intercambiar informacion de productos entre los 2 productos o lo que sea entre un sistema y otro una solucion que para mi es rapida es xml, ya que es un estandar y la mayoria de los legugajes de programacion tienen librerias o informacion de como leer un archivo xml
Xml es un leguage parecido al html se basa en etiquetas
por ejemplo seria algo asi no recuerdo bien la sintaxis
<?xml version=1.0 encoding=utf8">
<root>
<producto>
<nombre>Enzo Ferrari</nombre>
<modelo>2005</modelo>
<precio>15000</precio>
</produtco>
</root>
asi podrias enviar la informacion de los precios de un sistema a otro,
La principal utilidad es en el comercio electronico y en los servicios web
Por ejemplo amazon tiene un servicio web en el cual por ejemplo con .net agregas una referencia que te da amazon y con algo asi como miServico.BuscaLibro("titulo del libro") te manda un archivo con todos los libros y precios ya nada mas lo muestras en tu pagina, algo asi cualquier duda mandame un mail o busca en internet
Se puede hacer un sistema con xml pero lo veria muy dificil o no seria su utilidad, su utilidad yo la veo para intercambiar informacion entre diferentes sistemas