1.1. Introducción
La mayoría de la ha oído hablar de XML (Lenguaje de Marcas Extensible, Extensible Markup Language), siendo muy corriente que se tenga la idea de que es una especie de HTML avanzado, por lo que siempre que sale el tema de XML surgen cuestiones fundamentales como: ¿qué es exactamente XML?, ¿es XML una nueva versión de HTML?, ¿para que sirve?, ¿cuáles fueron los motivos de su creación?, ¿tiene alguna aplicación en la actualidad?.
Como es sabido HTML (Hypertex Markup Language) se ha convertido en un lenguaje de inmensa popularidad durante los últimos años. También debemos notar que nos hemos encontrado con sus propias limitaciones, que algunas de ellas se han querido subsanar con scripts, javascripts, Active X, HTML dinámico, etc; pero en la realidad todas estas herramientas no aportan una solución global a las limitaciones del HTML. Hasta hace poco tiempoo actualmente cuando un web master diseña un programa de compras para una tienda virtual, basándose en HTML, debe invertir un arduo trabajo que muchas veces no puede exportarse para su uso por otras tiendas. Quizá su diseño estaba previsto para Windows NT y no funciona en plataformasUNIX, o hacía uso de Perl pero no se integraba con Java. La implantación de XML viene a eliminar este tipo de situaciones permitiendo la creación de herramientas más estructuradas.
En este artículo responderemos las interrogantes planteadas, y analizaremos la utilización de XML como formato estándar para el intercambio de datos y la forma de cómo este lenguaje de marcas nos proporciona un formato para describir datos estructurados, facilitando realizar declaraciones más precisas de contenido y permitiendo obtener de búsquedas con más significado. Además, estudiaremos de que forma XML habilitará una nueva generación de aplicaciones de manipulación y visualización de datos basadas en Web.
Para comprender plenamente cuales fueron las razones que llevaron a la creación del XML por parte del W3C, es necesario comenzar aclarando la evolución de Internet y del lenguaje HTML. El lenguaje HTML es originariamente un subconjunto del SGML ( Lenguaje de Marcas Estándar Generalizado, Standard Generalized Markup Language), especializado en la descripción de documentos en a través de marcas. El proyecto inicial se basaba en una de etiquetas que permitían describir documentos de texto y vínculos de hipertexto que permitían desplazarse entre diferentes documentos, siempre con independencia de la máquina. Conociendo las normas de actuación de estas etiquetas y disponiendo de un sencillo de textos ASCII, se pueden confeccionar fácilmente documentos HTML.
HTML, no es un lenguaje de programación, es un lenguaje de especificación de contenidos para un tipo específico de documentos SGML. Es decir, mediante HTML podemos especificar, usando un conjunto de marcas, cómo va a representarse la información en un navegador o browser. La facilidad de uso y la particularidad que no es propiedad de nadie, hizo al HTML el sistema idóneo para compartir información en Internet. La expansión de Internet le ha dado una posición de privilegio y ha hecho que la idea inicial se modifique considerablemente.
En principio, la intención de HTML era que las etiquetas fueran capaces de marcar la información de acuerdo con su significado, sin importar cómo se mostraban en la pantalla. Lo importante era el contenido y no la forma, o sea, que era un lenguaje de marcas orientado a describir los contenidos, dejando a cada navegador la tarea de dar el formato del documento según su criterio de interpretar las marcas. Esto producía presentaciones diferentes, pero permitía controlar fácilmente su contenido. Si una persona o un motor de búsqueda quería conocer el título del documento, el autor de la página o las cabeceras de los capítulos, siempre buscaba en el código las etiquetas TITLE, ADDRESS o Hx. Además, si a alguien no le gustaba la idea de dejar a cada aplicación la decisión de cómo mostrar el contenido de las etiquetas, siempre le quedaba la posibilidad de controlar el formato del documento con descripciones particulares, como es el caso de las hojas de estilo en cascada (CSS).
Por diversos motivos, los creadores de los navegadores fueron añadiendo más etiquetas HTML dirigidas a controlar la presentación, como FONT, I, CENTER, xCOLOR, etc., y los usuarios las utilizaron para que sus documentos estuviesen perfectamente formateados, sin permitir diferencias importantes entre visualizadores distintos, por lo que HTML pasó a ser un lenguaje de marcas más dirigido al control de la presentación [Montero R. XML].
Aunque los estándares visuales y de interfase de usuario son una capa necesaria, no son suficientes para representar y administrar los datos. Hasta hace pocos años, Internet era un simple medio de acceso a texto e imágenes. No había ningún estándar establecido para la búsqueda inteligente, el intercambio de datos, la presentación adaptable ni para la personalización.
Internet debía ir más allá del establecimiento de un estándar de acceso y presentación de información, de forma de poseer un estándar para la comprensión de la información, una forma común de representar los datos para que el software pueda buscar, desplazar, presentar y manipular mejor los datos ocultos en una oscuridad contextual. HTML no puede hacerlo porque es un formato que describe la apariencia que debería tener una página Web, pero no representa datos [MSDN en línea. Por qué XML]. Por ejemplo, HTML:
- No ofrece una forma estándar para que un médico pueda enviar una receta a un farmacéutico.
- No habilita a un laboratorio médico para publicar datos estadísticos en un formato que puedan analizar todos los receptores.
- No describe un pago electrónico de forma que todos los receptores puedan descodificarlo y procesarlo.
- No ofrece una forma estándar de buscar documentos de pleitos sobre un tema determinado en bibliotecas legales.
- No especifica cómo se pueden transmitir los datos del catálogo de una empresa de forma que un comercial pueda trabajar fuera de línea, mostrar el catálogo a los clientes, recibir pedidos ni enviar dichos pedidos en un formato estándar.
Aunque HTML ofrece amplias facilidades de presentación, no ofrece ninguna forma basada en estándares para administrar los datos. Un estándar de representación de datos ampliaría Internet del mismo modo que el estándar de visualización HTML lo hizo hace pocos años. El estándar de datos sería el vehículo para las transacciones comerciales, la publicación de perfiles de preferencias personales, la colaboración automatizada y el uso compartido de bases de datos. Los historiales médicos, los datos de investigación farmacéutica, las hojas de piezas semiconductoras y los pedidos de compra se escribirían todos en el mismo formato. Permitirá una gran variedad de nuevos usos, todos basados en una representación estándar para el desplazamiento de datos estructurados por todo la Web tan fácilmente como desplazamos las páginas HTML hoy en día.
En resumen, llegado a un punto en el que HTML dejó de servir para su función inicial, no le quedó más remedio al Consorcio World Wide Web (W3C) ladescripción de un nuevo subconjunto del SGML que sirva para describir contenidos de documentos, al que ha denominado XML, publicando las especificaciones de la versión 1.0 del mismo en 1998. Creo que en este momento podemos empezar a hablar de XML con un poco de visión retrospectiva de los motivos de su aparición.
1.3. ¿Qué es XML?
XML es un lenguaje de marcas que ofrece un formato para la descripción de datos estructurados, el cual conserva todas las propiedades importantes del antes mencionado SGML. Es decir, XML es un metalenguaje, dado que con él podemos definir nuestro propio lenguaje de presentación y, a diferencia del HTML, que se centra en la representación de la información, XML se centra en la información en si misma. La particularidad más importante del XML es que no posee etiquetas prefijadas con anterioridad, ya que es el propio diseñador el que las crea a su antojo, dependiendo del contenido del documento. De esta forma, los documentos XML con información sobre libros deberían tener etiquetas como , , , , etc., mientras que los documentos XML relacionados con educación incluyen etiquetas del tipo de , , , , etc.
Por ejemplo en la siguiente tabla se muestra la información incluida por un código típico HTML y su versión equivalente en XML. Se puede apreciar en este ejemplo, que es mucho más fácil de entender la representación en XML.
HTML
|
XML
|
Autor
Precio
AutoSketch
Ramón Montero
33
Windows 98
Jaime Perez
3.250
Web Graphics
Ron Wodaski
8.975
XML fue desarrollado por un grupo de trabajo bajo los auspicios del consorcio World Wide Web (W3C) a partir de 1996. Este fue constituido en 1994 con el objetivo de desarrollar protocolos comunes para la evolución de Internet. Se trata de un consorcio de la industria internacional con sedes conjuntas en el Instituto Tecnológico de Massachussets, de Estados Unidos, el Instituto Nacional de Investigación en Informática y Automática europeo y la Keio University Shonan Fujisawa Campus de Japón. El W3C tiene como misión la publicación para uso público de protocolos o estándares globales de uso libre. Al comenzar el proyecto, los objetivos planteados por el grupo de desarrollo del XML fueron diez puntos [Young M. 2000] :
- XML debe ser directamente utilizable sobre Internet.
- XML debe soportar una amplia variedad de aplicaciones.
- XML debe ser compatible con SGML.
- Debe ser fácil la escritura de programas que procesen documentos XML.
- El número de características opcionales en XML debe ser absolutamente mínimo, idealmente cero.
- Los documentos XML deben ser legibles por los usuarios de este lenguaje y razonablemente claros.
- El diseño de XML debe ser formal, conciso y preparado rápidamente.
- XML debería ser simple pero perfectamente formalizado.
- Los documentos XML deben ser fáciles de crear.
- La brevedad en las marcas XML es de mínima importancia.
No hay comentarios:
Publicar un comentario