Para poder intercambiar cualquier documento XML es necesario que el receptor conozca la definición del DTD ,basándose en la siguiente gráfica :
El proceso que lleva acabo el documento es el siguiente:
Definir el documento y su DTD o Schema (Definición de TAGS).
Se procesa ("parse") el documento vía "DOM" (Document Object Model), "SAX" (Simple API for XML) o "JDOM".
Se aplica un "XSL" (Extensible Stylesheet Language).
Estos tres pasos son los que garantizan que el mismo documento escrito en XML pueda ser llevado de un punto a otro sin ningún conflicto. Las posibilidades que pueden surgir a partir de esto son interminables, a continuación algunas de las más utilizadas.
Si alguna vez ha desarrollado una aplicación de cliente compleja seguramente ha experimentado algún conflicto con el tipo de "Navegadores" que visitan su página, los ejemplos más claros de estos conflictos están en la utilización de "Frames" en HTML o "JavaScript". Para resolver estos problemas una de las soluciones ( si es que puede ser llamada solución!) más comunes es recomendar al usuario final cual navegador (Netscape 4.x, Explorer 5.0) utilizar para experimentar el sitio de una manera apropiada.
Otra manera más eficiente es mediante la revisión de los "Headers" enviados en la requisición HTTP del cliente, esta revisión de "Headers" es realizada por el servidor de páginas y una vez conocido el "Navegador" que esta solicitando la Información se envía la información apropiada.
Una desventaja de esta metodología es que deben existir tantas versiones como número de Navegadores sean esperados,esto es, si la información generada en la aplicación de servidor (ASP,ADP,JSP..) o aplicación de cliente (JavaScript,Java...) afecta como será desplegada en el cliente (Netscape o Explorer) deben ser definidas diferentes versiones para cada tipo de navegador, inclusive si se espera acceso de aparatos inalámbricos deben ser definidos aún mayor número de versiones.
Utilizando XML es posible definir un solo documento global con TAGS generales y definir varios XSL "Extensible Style Sheet's" para cada navegador que sea esperado. Aparentemente es la misma solución que fue descrita anteriormente, pero no lo es así.
Debido a que existe un SOLO documento que define los datos es posible concentrar los esfuerzos de administración y programación en este solo documento maestro (XML),para enviar información a los diferentes navegadores es necesario crear XSL Stylesheets lo cual es una labor mucho más sencilla que aquella definida anteriormente,estos XSL Stylesheets definen que tipos de datos del documento global (XML) deben ser enviados al navegador: Sea "Netscape", "Explorer", un aparato inalámbrico, PDA u otro, además recuerde que como ya posee la información en XML, el día que sea necesario ofrecerle esta información a un proveedor o cliente vía cualquier otro medio , esta estará disponible de una manera inmediata a diferencia que esta estuviera en HTML.