Definición de XML y su aplicación en los negocios

Qué es XML

Desde hace algún tiempo comenzamos a convivir con unas nuevas siglas en el mundo tecnológico: XML (Extensible Markup Language) o Lenguaje de marcas extensible. Pero en qué consiste este nombre tan poco significativo a nuestros oídos. A continuación mostraré las ventajas competitivas de utilizar esta tecnología en las aplicaciones empresariales.

¿XML en mi aplicación?

XML o Extensible Markup Language, es un lenguaje de Tags o etiquetas que permite definir de un modo muy sencillo la estructura jerárquica a la que pertenece un dato, así como HTML permite definir la forma en que se muestra un dato en nuestro navegador

Hasta ahora el déficit más importante a la hora de integrar aplicaciones desarrolladas en distintos lenguajes o sobre distintas plataformas, era que cada forma de trasmitir los datos era propietaria de la aplicación que la generaba, y en muchos casos la forma de transmisión no permitía que la comunicación fuera fluida. Este problema sucede incluso al intentar integrar aplicaciones sobre una misma plataforma desarrolladas en un mismo lenguaje. En el mejor de los casos, una vez establecida la comunicación de datos, nos encontrábamos con un verdadero problema a la hora de estructurarlos jerárquicamente de acuerdo al modelo de origen.

XML permite, de un modo sumamente sencillo, estructurar la información de modo de enviarla con total seguridad de que el receptor sabrá que ese dato tiene una relación con otro dato dentro de la misma estructura enviada, también puede saber qué tipo de dato es el que está recibiendo (XML Schema), puede establecer cómo mostrarlo (XSL) e incluso cómo tiene que devolverlo (SOAP)

Así XML permite la comunicación de una aplicación a otra, o recibir y enviar datos estructurados mediante Internet sin tener que idear mecanismos complejos o excesivamente pesados para rearmar la información como en su origen.

XML tiene múltiples utilizaciones. La transmisión de datos es su origen, pero integrada con XML Schema se puede definir el tipo de dato que está viajando, o si se permiten valores nulos, repetidos, decimales o si se trata de un dato que mantiene una integridad referencial con otra información en el mismo documento transmitido.

XML es la fuente de SOAP, un protocolo basado en el estándar que permite el envío de paquetes de información bidireccional para la integración de aplicaciones remotas. Pudiendo de este modo transmitir datos por referencia e incluso en una transacción.

XML con XSL permite modelar la información visualmente para su presentación de modo de generar presentaciones dinámicas principalmente orientadas a B2C

XML es un modo de parametrizar aplicaciones de forma sencilla, legible y comprensible tanto por aplicaciones como por personas y fácilmente accesible desde cualquier tipo de aplicación

El 99% de las aplicaciones de escritorio actuales soporta lectura, escritura, importaciones y exportaciones a este formato para persistir la información de manera consistente, y con cada nueva versión XML se integra más en el Back Office de los sistemas de escritorio, gestión, Web, etc.

Todo esto con un modelo descriptivo en formato de texto, y basado en estándares de la industria definidos por el W3C (World Wide Web Consortium), que garantiza que la información podrá ser transmitida por Internet sin ningún tipo de traba (Firewalls) y que la interpretación de la misma es universal más allá de plataformas o lenguajes de desarrollo.

Una solución hoy día, no debiera cerrar la posibilidad de integración o comunicación con nuevas aplicaciones, módulos, funcionalidad o dispositivos. Tener en cuenta la transmisión e integración de información utilizando XML es un requisito necesario a la hora de establecer los alcances de una solución.

Por todo esto una solución tecnológica no es tal si no se ha analizado convenientemente la utilización de la infraestructura XML en la misma.

El análisis, fundamental

Como cualquier otra herramienta, arquitectura, metodología, etc. relacionada con proyectos, no solo informático, sino de cualquier índole, el elemento inicial e indispensable es la detección de una necesidad en un determinado momento y el posterior análisis de la misma.

En este análisis, donde se definen las necesidades de que dan origen a la solución, se deben medir las posibilidades inmediatas y futuras de utilizar XML. Pero su utilización puede variar drásticamente según el escenario en el cual se quiera implementar la solución.

A continuación se plantean algunos ejemplos prácticos que nos encontramos en los proyectos que desarrollamos en Improven Consultores y que muestran claramente las posibilidades reales de XML en la integración de aplicaciones de gestión en la empresa.

Sistemas de información Heterogéneos

Un ejemplo clásico y muy importante es el uso de XML en la integración de sistemas de información heterogéneos.

En la actualidad el mercado está inundado de aplicaciones específicas y/o verticales que junto a la existencia de aplicaciones generales y/o horizontales, lleva a que muchas veces se deban integrar aplicaciones desarrolladas sobre plataformas, modelos de datos y lenguajes distintos.

Así, habitualmente nos encontramos tres opciones cuando se plantea este tipo de problemas:

  • Mantener las aplicaciones que funcionan correctamente e integrar con XML.
  • Cambiar todos los sistemas para conseguir una integración “de fábrica”.
  • No integrar manteniendo las aplicaciones independientes.

Es lógico que la decisión tomada deba sustentarse tecnológicamente y en relación Coste – Beneficio.

La tercera opción, es decir, la existencia de aplicaciones no integradas es muy problemática debido a las ineficiencias que se genera en los procesos de la empresa por lo que esa opción se debe descartar aunque se encuentra en la realidad más veces de lo que sería aconsejable.

La segunda opción, es decir, cambiar todos los sistemas tiene un impacto muy importante en cuanto a costes y en cuanto a cambios en las empresas por lo que muchas veces también es desestimada.

Frente a las otras dos opciones, la utilización de XML permite desarrollar una solución integradora (MiddleWare) para que puedan comunicarse entre sí los sistemas que están probados y funcionando correctamente, otorgando la ventaja de lograr la mejor integración, con un coste contenido y con las ventajas de lograr resultados en corto plazo.

En este sentido la arquitectura que se presentaría en le integración de los sistemas es como sigue:

XML en los negocios

Ejemplo: Gestión de catálogos en Internet

XML también ofrece importantes oportunidades para la gestión de catálogos electrónicos a través de Internet.

Frente a otros lenguajes, la utilización de XML permite que la gestión del contenido se limite a su carga en base de datos y no hay que hacer artesanalmente cada página del catálogo.

Los catálogos se deben gestionar con la utilización de XML como medio de transporte de los datos de artículos, familias, categorías, descripciones, etc., y los formatos de su visualización estarán dados por XSL y su lenguaje XPath, que permite dinámicamente armar los contenidos de un catálogo.

De esta manera, encontramos distintos escenarios:

Escenario con un origen de datos y varias presentaciones posibles (distintas plantillas de presentación en función de determinados parámetros):

XML en los negocios

Este concepto permite dar formato visual distinto a los datos vertidos por un XML con determinada estructura, de modo de poder mostrar los datos bajo distintas plantillas. La potencia de este concepto permite gestionar múltiples tiendas electrónicas desde una única fuente de datos.

Escenario con varios orígenes de datos y un modelo de presentación (concepto catálogo):

XML en los negocios

En este caso la estructura de datos recibida en XML se combina con la plantilla en XSL dando como resultado una visualización similar para todos los datos que se reciban en dicha estructura. El catálogo electrónico es el caso por excelencia donde todos los productos con sus descripciones y características siempre se muestran con el mismo formato.

Dispositivos móviles

En la actualidad la movilidad del personal de una empresa es en muchos casos vital para su funcionamiento. La principal complicación en estos escenarios consiste normalmente en dotar al usuario del dispositivo móvil de información Inmediata, Oportuna y Actualizada proveniente del centro de datos.

Además, el usuario debe tener la posibilidad de modificar dicha información y actualizarla en el centro de datos sin tener que trasladarse físicamente, conectarse a la red y actualizar.

La tecnología móvil nos permite actualmente utilizar PDAs, Portátiles, teléfonos móviles, etc. que se puede comunicar con un servidor intercambiando información en con XML, WML y Servicios Web, y así optimizar la dinámica de la empresa contando con información fiable y actualizada en todo momento.

Servicios Web (Web Services)

Quizás la tecnología que más dará que hablar en el futuro inmediato es la relacionada con los Servicios Web. Esta nueva forma de transmisión de datos permite la comunicación bidireccional, con lo cual se pueden establecer comunicaciones entre aplicaciones utilizando protocolos estándares basados en XML como SOAP (Simple Object Access Protocol), y especificaciones (aunque no estándares aún) como UDDI (Universal Description, Discovery and Integration) y WSDL (Web Service Definition Language).

Estas tecnologías encapsulan el XML en paquetes de transmisión o mensajes (SOAP), permiten la ubicación en internet de los Servicios Web existentes cual si se tratase de unas Páginas Amarillas de Web Services (UDDI), y dan la posibilidad de que la aplicación que hace uso del Servicio Web comprenda las interfaces de comunicación de este último (WSDL).

Este conjunto de definiciones permiten que las aplicaciones distribuidas se basen en tecnología abierta basada en estándares a diferencia de protocolos propietarios como DCOM o CORBA.

El resultado es la posibilidad de que aplicaciones de escritorio o Web se comuniquen con otras aplicaciones remotas para obtener datos o gestionarlos, como si se tratase de una aplicación local, sin importar la plataforma en que se encuentra cada una en tanto se respeten los estándares citados.

XML en los negocios

Así, si nuestra aplicación requiriese de la cotización actual de determinada Empresa, se puede buscar mediante UDDI un Servicio Web que brinde dicha información, utilizar las interfaces programáticas del mismo con WSDL, y finalmente comunicar nuestra aplicación con el Web Service mediante SOAP, sin necesidad de tener que preocuparse por cortafuegos (firewalls) que pudieran interrumpir la comunicación por tratarse de un estándar basado en texto plano y que se comunica por un protocolo montado sobre HTTP.

Moda o Solución

Quizás el hecho de escuchar tanto acerca de XML, XSL, SOAP, Servicios Web, nos puede llevar a la conclusión errónea de que no es más que una simple moda producto de la escasez en los resultados tecnológicos de los últimos tiempos.

La verdad es que XML es una tecnología que promete quedarse entre nosotros por mucho tiempo.

Como dijimos en la entrega anterior, las principales empresas de software a nivel mundial han apostado todas sus fichas a la integración de sistemas y dispositivos. El objetivo a corto – medio plazo es que las aplicaciones sirvan datos que puedan ser visualizados indistintamente en páginas Web, Teléfonos móviles, PDAs, Portátiles, Televisión, Electrodomésticos, etc. Y la única forma posible de integración hasta el momento es la transmisión de datos por XML y la comunicación por SOAP (Servicios Web).

Un estudio realizado por Giga Group muestra que durante el año 2002 se ha utilizado XML en un 45% de las aplicaciones denominadas críticas, lo cual da clara idea del peso de esta tecnología en el desarrollo de aplicaciones actual.

Conclusión

XML es una herramienta que se debe tener en cuenta a la hora de establecer soluciones tecnológicas. Los escenarios presentados en este artículo no son más que algunas de la infinidad de posibilidades que presenta este lenguaje.

XML tampoco es la solución ideal en todos los casos debido a que tiene su cuello de botella en la performance de ejecución y que los costes de ancho de banda no son los ideales para el uso de esta tecnología, aunque día a día se hacen más accesibles.

Asimismo las empresas líderes de tecnología como Sun, Microsoft, IBM, etc. soportan XML en todas las líneas de productos software y tienen sus propios marcos de trabajo (frameworks) para el desarrollo de Servicios Web XML.

La tendencia a futuro está claramente marcada.

Hazle saber al autor que aprecias su trabajo

Tu opinión vale, comenta aquíOculta los comentarios

Comentarios

comentarios

Compártelo con tu mundo

Escrito por:

Cita esta página
Balbuena Marcelo. (2004, abril 14). Definición de XML y su aplicación en los negocios. Recuperado de https://www.gestiopolis.com/definicion-xml-aplicacion-negocios/
Balbuena, Marcelo. "Definición de XML y su aplicación en los negocios". GestioPolis. 14 abril 2004. Web. <https://www.gestiopolis.com/definicion-xml-aplicacion-negocios/>.
Balbuena, Marcelo. "Definición de XML y su aplicación en los negocios". GestioPolis. abril 14, 2004. Consultado el 22 de Febrero de 2018. https://www.gestiopolis.com/definicion-xml-aplicacion-negocios/.
Balbuena, Marcelo. Definición de XML y su aplicación en los negocios [en línea]. <https://www.gestiopolis.com/definicion-xml-aplicacion-negocios/> [Citado el 22 de Febrero de 2018].
Copiar
Imagen del encabezado cortesía de mahadeva en Flickr