Monografias | Introducción a XML (Extensible Markup Language)

Introducción a XML (Extensible Markup Language)

Resumen: HTML (Hypertex Markup Language) se ha convertido en un lenguaje de marcas de inmensa popularidad durante estos últimos años. También debemos anotar que nos hemos encontrado con sus propias limitaciones, que algunas de ellas se han querido subsanar con la incrustación de scripts, javascripts, Active X, HTML dinámico, hojas de estilo en cascada (CSS). Todo esto es insuficiente para crear una arquitectura abierta de tipo cliente/servidor, con lo que el W3C (Word Wide Web Consortium), organismo que vela por el desarrollo de la Word Wide Web, se ha replanteado crear un nuevo estándar llamado XML (eXtensible Markup Language), que parte de las amplias especificaciones del SGML (Standard Generalized Markup Language ) es el estándar internacional para la definición de la estructura y el contenido de diferentes tipos de documentos electrónicos. XML fue desarrollándose por el Grupo de Trabajo XML desde 1996 (en estos primeros años llamado SGML Editorial Review Board). La especificación XML 1.0 ha sido ratificada por la W3C el 10 de febrero de 1998, e interpretado como "un sistema para definir, validar y compartir formatos de documentos en la Web".

Publicación enviada por ACS Sergio Daniel Caballero


 

Indice
1. Introduccion
2. Desarrollo
3. Bibliografía

1. Introducción

HTML (Hypertex Markup Language) se ha convertido en un lenguaje de marcas deinmensa popularidad durante estos últimos años. También debemos anotar quenos hemos encontrado con sus propias limitaciones, que algunas de ellas se hanquerido subsanar con la incrustación de scripts, javascripts, Active X, HTMLdinámico, hojas de estilo en cascada (CSS). Todo esto es insuficiente paracrear una arquitectura abierta de tipo cliente/servidor, con lo que el W3C (WordWide Web Consortium), organismo que vela por el desarrollo de la Word Wide Web,se ha replanteado crear un nuevo estándar llamado XML (eXtensible MarkupLanguage), que parte de las amplias especificaciones del SGML (StandardGeneralized Markup Language ) es el estándar internacional para la definiciónde la estructura y el contenido de diferentes tipos de documentos electrónicos.XML fue desarrollándose por el Grupo de Trabajo XML desde 1996 (en estosprimeros años llamado SGML Editorial Review Board). La especificación XML 1.0ha sido ratificada por la W3C el 10 de febrero de 1998, e interpretado como"un sistema para definir, validar y compartir formatos de documentos en laWeb".

En el Futuro y actual presente de la red está en el comercio electrónico yen el uso de tecnologías de telefonía IP, WAP y UMTS. Ante este futuro y yapresente que puede también permanecer incierto, cuento menos en sus momentosiniciales, están comenzando a surgir lenguajes alguno de ellos propios adeterminada tecnología como el WML y WMLScript con la telefonía movil WAP.

2. Desarrollo

¿Qué es XML?.
Concepto:
XML es un lenguaje de metamarcado que ofrece un formato para la descripción dedatos estructurados. Esto facilita unas declaraciones de contenido más precisasy unos resultados de búsquedas más significativos en varias plataformas. Además,XML habilitará una nueva generación de aplicaciones para ver y manipular datosbasadas en el Web.

Representación estructural de los datos:
XML ofrece una representación estructural de los datos que se puede implementarampliamente y es fácil de distribuir. XML es un subconjunto de SGML optimizadopara el Web. Definido por el World Wide Web Consortium (W3C) (en inglés),XML garantiza que los datos estructurados sean uniformes e independientes deaplicaciones o fabricantes. La interoperabilidad resultante está creando rápidamenteuna nueva generación de aplicaciones de comercio electrónico en la Web.
XML, que proporciona un estándar de datos que puede codificar el contenido, lasemántica y los esquemas de una gran variedad de casos, desde los más simplesa los más complejos, sirve para marcar lo siguiente:

  • Un documento normal.
  • Un registro estructurado, como un registro de citas o un pedido de compra.
  • Un objeto con datos y métodos, como el formulario permanente de un objeto Java o de un control ActiveX.
  • Un registro de datos, como el conjunto de resultados de una consulta.
  • Metacontenido sobre un sitio Web, como el formato de definición de canal (CDF).
  • Representaciones gráficas, como la interfaz de usuario de una aplicación.
  • Entidades y tipos de esquema estándar.
  • Todos los vínculos entre datos y personas que hay en el Web.

Cuando los datos llegan al escritorio del cliente, se pueden manipular,editar y presentar en varias vistas, sin tener que regresar al servidor. Ahoralos servidores pueden ser más escalables, gracias a la reducción de las cargasde ancho de banda y computación. Además, dado que los datos se intercambian enel formato XML, se pueden combinar fácilmente desde distintas fuentes.
XML es muy valioso para Internet, así como para los entornos de intranetscorporativas de gran tamaño, pues proporciona interoperabilidad mediante unformato basado en estándares flexible y abierto, con formas nuevas de acceso alas bases de datos existentes y de entregar datos a clientes de Web. Lasaplicaciones se pueden generar más rápidamente, su mantenimiento es mássencillo y pueden ofrecer fácilmente varias vistas de los datos estructurados.
En un principio, no rivalizarán HTML y XML, estos se complementarán el uno alotro, anudándose ambas gramáticas. Este Lenguaje de marcas extensible (XML) esuna versión abreviada del SGML (Standard Generalized Markup Language).
Algunos de los objetivos planteados por el Grupo de Trabajo XML y el W3C son:

  • 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.
  • Los documentos XML deben ser fácilmente creables.
  • La brevedad en las marcas XML es de mínima importancia.

A estos fines se le une unos estándares como el Unicode e ISO/IEC 10646 paracaracteres, el Internet RCF 1766 para identificación de lenguajes, ISO 639 paracódigos de nombres de lenguajes y también el ISO 3166 para códigos de nombresde países, para la normal comprensión de esta versión de XML.

Tampoco tenemos que equivocarnos y pensar que el XML es un HTML .
Tanto el XML como el HTML tienen su base en el SGML. Es decir, es unmetalenguaje que nos permite definir lenguajes para definir la estructura y elcontenido de nuestros documentos. La definición de la estructura y el contenidode un tipo de documento se realiza en una DTD. En ella definimos los elementosque conformarán ese tipo de documentos y como tienen que estar organizados paraque sea correcto.
Un ejemplo de DTD es por ejemplo la que define cómo tendrán que ser losdocumentos HTML. Por tanto, el HTML no es más que un tipo de documento SGML quese utiliza en la Web, y esto es importante, ya que aquí radica su principaldiferencia con el XML.
El XML no es ningún tipo de documento SGML, sino que es una versión abreviadade SGML optimizada para su utilización en Internet. Esto significa que con élvamos a poder definir nuestros propios tipos de documentos (podremos definirnuestras propias etiquetas) y, por tanto, ya no dependeremos de un único einflexible tipo de documento HTML.


Diferencia entre el SGML, XML y HTML
El XML más que un HTML hay que considerarlo como un SGML-- optimizado para suutilización en Internet. Como escribió Richard Ligth en su libro PresentigXML, "XML ofrece el 80% de las ventajas del SGML con un 20% de sucomplejidad". Y es que los diseñadores de XML intentaron dejar fuera sóloaquellas partes que raramente se utilizan. Esta reducción resultó ser muyimportante: la especificación XML ocupa aproximadamente 30 páginas, frente alas 500 del SGML.

Estructura de XML.
Un documento XML tiene dos estructuras, una lógica y otra física. Físicamente,el documento está compuesto por unidades llamadas entidades. Una entidad puedehacer referencia a otra entidad, causando que esta se incluya en el documento.Cada documento comienza con una entidad documento, también llamada raíz. Lógicamente,el documento está compuesto de declaraciones, elementos, comentarios,referencias a caracteres e instrucciones de procesamiento, todos los cuales estánindicados por una marca explícita. Las estructuras lógica y física debenencajar de manera adecuada:

Los documentos XML se dividen en dos grupos, documentos bien formados ydocumentos válidos.
Un objeto textual o documento XML se dice que está bien formado si, considerándolocomo conjunto, encaja con las especificaciones XML de producción, lo queimplica:

  • Contiene uno o más elementos.
  • Hay exactamente un elemento, llamado raíz o elemento documento, de forma que ninguna parte del mismo aparece en el contenido de ningún otro elemento. Para todos los demás elementos, si la etiqueta inicial está en el contenido de otro elemento, la etiqueta final forma parte del contenido del mismo elemento. Dicho de forma más clara, los elementos, delimitados por una etiqueta de inicio y otra de final, se encuentran anidados correctamente.
  • Cumple todas las restricciones que proporciona su especificación a través del DTD.Si no se utiliza DTD, el documento debe comenzar con un Declaración de Documento único (SDD, Standalone Document Declaration) que indique:

<?XML version="1.0" standalone="yes"?>

  • Cada una de sus partes procesadas esta bien formada.
  • Todas las etiquetas deben estar balanceadas: esto es, todos los elementos que contengan datos de tipo carácter deben tener etiquetas de principio y fin (no está permitida la omisión excepto para los elementos vacíos.);
  • Todos los valores de los atributos deben ir entrecomillados (el carácter comilla simple [el apóstrofe] puede utilizarse si el valor contiene caracteres comillas dobles, y viceversa): si necesitas ambos, utiliza &apos; y &quot;
  • Cualquier elemento VACÍO (p.e. aquellos que no tienen etiqueta final como <IMG>, <HR>, y <BR> y otros de HTML) deben terminar con '/>' o debes hacerlos no VACÍOS añadiéndoles una etiqueta de fin;
    Ejemplo: <BR> se convertirá en <BR/> o en <BR></BR>.
  • No debe haber etiquetas aisladas (< ó &) en el texto (p.e. debe darse como &lt; y &amp;), y la secuencia ]]> debe darse como ]]&gt; si no ocurre esto como final de una sección marcada como CDATA;
  • Los elementos deben anidar dentro de sí sus propiedades (no se deben sobreponer etiquetas, como en el resto de SGML);
  • Los Archivos bien-formados sin-DTD pueden utilizar atributos en sus elementos, pero éstos deben ser todos del tipo CDATA, por defecto.

De un documento bien formado, se dice además que es válido, si tiene DTDcomo el resto de aplicaciones SGML. Un archivo XML válido comienza comocualquier otro archivo SGML, con una Declaración de Tipo de Documento:

<?xml version="1.0"?>
<!DOCTYPE anuncio SYSTEM "http://www.foo.org/ad.dtd">
<anuncio>
<titulo>...<foto/>...</titulo>
<texto>...</texto>
</anuncio>
Dado que XML está diseñado para ser un subconjunto de SGML, cualquierdocumento XML válido debe ser también un documento SGML válido.

Estructuras lógicas.
Cada documento XML contiene uno o más elementos, cuyos limites estándelimitados por etiquetas de comienzo y de final o, en el caso de elementos vacíos,por una etiqueta de elemento vacío.
Cada elemento tiene un tipo, identificado por un nombre, denominadoidentificador genérico, y puede tener un conjunto de especificaciones deatributos.
Cada especificación de atributo tiene un nombre y un valor. Estasespecificaciones no restringen la semántica, el uso o (mas allá de lasintaxis) los nombres de los tipos de los elementos y los atributos, excepto delos nombres que comienzan por XML, que se reservan para estandarizar etiquetas oatributos en versiones posteriores del estándar.

Estructuras físicas.
Un documento XML puede consistir en una o más unidades de almacenamientovirtual, llamadas entidades. Todas estas unidades tienen contenido y todas ellas(excepto la entidad documento y el subconjunto externo del DTD) estánidentificadas por un nombre. Cada documento XML contiene una entidad, llamadaentidad documento, que sirve como punto de comienzo para el procesador XML ypuede contener el documento completo.

Como hemos comentado, las entidades pueden ser analizadas o sin analizar(también llamadas procesadas o sin procesar). El contenido de una entidadanalizada se conoce también como texto de reemplazo, y es parte integrante deldocumento. Las entidades no analizadas son recursos (tales como enlaces) cuyocontenido puede o no ser texto, o en caso de que sea texto que no sea XML. Cadaentidad no asociada tiene una notación asociada, identificada por un nombre.Aparte de obligar al procesador XML a haga accesible a la aplicación el nombrede esta notación y sus identificadores asociados, XML no proporciona ningunaotra restricción sobre el contenido de estas entidades. La forma de invocarambos tipos de entidades es a través de su nombre, en el caso de las analizadasa través de su referencia a entidad y en el de las no analizadas a través desus atributos de entidad.

Las entidades generales, son entidades analizadas que se usan en el interiordel documento. Las entidades parametrizadas son entidades analizadas que se usanen el ámbito del DTD. Estos dos tipos de entidades usan distintos tipos dereferencias y se reconocen en contextos distintos.

XML consta de cuatro especificaciones (el propio XML sienta las bases sintácticasy el alcance de su implementación):

  • DTD (Document Type Definition): Definición del tipo de documento. Es, en general, un archivo(s) que encierra una definición formal de un tipo de documento y, a la vez, especifica la estructura lógica de cada documento. Define tanto los elementos de una página como sus atributos. El DTD del XML es opcional. En tareas sencillas no es necesario construir una DTD, entonces se trataría de un documento "bien formado" (well-formed) y si lleva DTD será un documento "validado" (valid).
  • XSL (eXtensible Stylesheet Language): Define o implementa el lenguaje de estilo de los documentos escritos para XML. Desde el verano de 1997 varias empresas informáticas como Arbortext, Microsoft e Inso vienen trabajando en una propuesta de XSL (antes llamado "xml-style") que presentaron a W3C. Permite modificar el aspecto de un documento. Se puede lograr múltiple columnas, texto girado, orden de visualización de los datos de una tabla, múltiples tipos de letra con amplia variedad en los tamaños. Este estándar está basado en el lenguaje de semántica y especificación de estilo de documento (DSSSL, Document Style Semantics and Specification Language, ISO/IEC 10179) y, por otro lado, se considera más potente que las hojas de estilo en cascada (CSS, Cascading Style Sheets), usado en un principio con el lenguaje DHTML. "Se espera que el CSS sea usado para visualizar simples estructuras de documentos XML (actualmente se ha conseguido mayor integración en XML con el protocolo CSS2 (Cascading Style Sheets, level 2) ofreciendo nuevas formas de composición y una más rápida visualización) y, por otra parte, XSL pueda ser utilizado donde se requiera más potencia de diseño como documentos XML que encierran datos estructurados (tablas, organigramas, etc.)(2)".
  • XLL (eXtensible Linking Language): Define el modo de enlace entre diferentes enlaces. Se considera que es un subconjunto de HyTime (Hipermedia/Timed-based structuring Language o Lenguaje de estructuración Hipermedia/basado en el tiempo, ISO 10744) y sigue algunas especificaciones del TEI (Text Encoding Initiative o Iniciativa de codificación de texto). Desde marzo de 1998 el W3C trabajo en los enlaces y direccionamientos del XML. Provisionalmente se le renombró como Xlink y a partir de junio se le nombra como XLL. Este lenguaje de enlaces extensible tiene dos importantes componentes: Xlink y el Xpointer. Va más allá de los enlaces simples que sólo soporta el HTML. Se podrá implementar con enlaces extendidos. Jon Bosak establece los siguientes mecanismos hipertextuales que soportará esta especificación:
  • Denominación independiente de la ubicación.
  • Enlaces que pueden ser también bidirecccionales.
  • Enlaces que pueden especificarse y gestionarse desde fuera del documento a los que se apliquen (Esto permitirá crear en un entorno intranet/extranet un banco de datos de enlaces en los que se puede gestionar y actualizar automáticamente. No habrá más errores del tipo "404 Not Found").
  • Hiperenlaces múltiples (anillos, múltiples ventanas, etc.).
  • Enlaces agrupados (múltiples orígenes).
  • Transclusión (el documento destino al que apunta el enlace aparece como parte integrante del documento origen del enlace).
  • Se pueden aplicar atributos a los enlaces (tipos de enlaces).
  • XUA (XML User Agent): Estandarización de navegadores XML. Todavía está en proceso de creación de borradores de trabajo. Se aplicará a los navegadores para que compartan todos las especificaciones XML.

Aplicaciones de XML.
Algunas de las aplicaciones de XML son:

  • Ofrecer mecanismos más versátiles de mostrar datos. Actualmente, bajo el nombre de DOM (Document Object Model) se está desarrollando una API que sea soportada por todos los procesadores de XML y HTML. La idea detrás de esta API es que podamos representar (a través de javascripts o JavaApplets) documentos XML en los navegadores Web, pero de una forma más sofisticada que los documentos HTML, ya que XML no solo proporciona una sintaxis, sino también una semántica.
  • Buscadores inteligentes. Debido a que la información en los documentos XML está etiquetada por su significado de forma precisa, podemos localizarla de forma mucho más clara que en documentos HTML. Con DTDs estandarizados para distintas aplicaciones (librerías, tiendas de deporte, catálogos de componentes,…) podríamos programar buscadores Web que recuperasen información sobre un producto de cualquier website en el mundo sabiendo que todos tendrán el mismo formato de datos (gracias al DTD), aunque no tengan necesariamente la misma representación gráfica (gracias al XML/XSL).
  • Intercambio de información entre sistemas heterogéneos. El fundamento es el mismo que para los buscadores inteligentes. Debido a que el DTD proporciona un formato estándar para representar la información de un tema específico, puede usarse para simplificar el intercambio de información entre distintas fuentes (actualmente existen ya dos DTD estandarizados uno para fabricantes de chips y otro para industrias químicas, llamado CML).

Ventajas de XML.

  • Los autores y proveedores pueden diseñar sus propios tipos de documentos usando XML, en vez de limitarse a HTML. Los tipos de documentos pueden ser explícitamente 'hechos a la medida de una audiencia', por lo que las difíciles manipulaciones que debes hacer con HTML para conseguir efectos especiales serán cosa del pasado: autores y diseñadores serán libres de inventar sus propias etiquetas;
  • 7La información contenida puede ser más 'rica' y fácil de usar, porque las habilidades hipertextuales de XML son mayores que las de HTML.
  • XML puede dar más y mejores facilidades para la representación en los visualizadores.
  • Elimina muchas de las complejidades de SGML, en favor de la flexibilidad del modelo, con lo que la escritura de programas para manejar XML será más sencilla que haciendo el mismo trabajo en SGML.
  • La información será más accesible y reutilizable, porque la flexibilidad de las etiquetas de XML pueden utilizarse sin tener que amoldarse a reglas específicas de un fabricante, como es el caso de HTML.
  • Los archivos XML válidos son válidos también en SGML, luego pueden utilizarse también fuera de la Web, en un entorno SGML (una vez la especificación sea estable y el software SGML la adopte).

Desarrollo de aplicaciones con XML
Existen cuatro tipos de aplicaciones que impulsarán el desarrollo del XML:
Aplicaciones que exijan que el cliente Web medie entre dos o más bases dedatos. Se hará posible la integración de bases de datos distribuidas en losnavegadores que admitan XML, pudiéndose modificar el contenido y la estructurade esta. Actualmente implantado en amplias redes nacionales, sin embargo, selimitan las posibilidades al establecerse una intranet/extranet y con ampliasbases de datos que sólo permiten la visualización de los datos en elnavegador. XML establecerá una arquitectura de 3 niveles (three-tier) que estárepresentada de la siguiente manera:

  • Se irá pareciendo cada vez más a una arquitectura cliente-servidor.
  • Aplicaciones que intentan transferir una parte significativa de la carga del proceso del servidor al cliente Web. Funcionará con un subprograma Java que se insertará en el PC del cliente. Esta carga hará que muchas de las funciones de modificación puedan desarrollarse desde el mismo navegador Web del cliente. Por ejemplo, dentro de una intranet con una aplicación de gestión bibliotecaria sobre los documentos disponibles en el centro bibliotecario. Se establecerán categorías específicas como los datos de la ficha catalográfica, fecha de préstamo, fecha de devolución, nombre del usuario, número de registro, etc. Todos estos ítems se pueden agrupar por categorías y estarán descritos externamente desde los "esquemas" (schemas) o los RDF del XML. Permite actualizarse en el acto y con la posibilidad interactiva por parte del usuario en el pedido, gestión y modificación de documentos desde su lejano navegador. El lado más negativo es que se necesitará mayor ancho de banda y mayor potencia del procesador del equipo para poder soportar esta arquitectura de tres-niveles.
  • Aplicaciones que precisen que el cliente Web presente diferentes versiones de los mismos datos a diferentes usuarios. Se podría aplicar un manual de diferentes grados (iniciación, intermedio y avanzado) con sus diferentes idiomas, etcétera. Esto hará que este manual se pueda personalizar por los usuarios y extraer la información requerida de un capítulo determinado, con una ordenación y formatos concretos.
  • Aplicaciones en las que agentes Web inteligentes intentan adaptar la búsqueda de información a las necesidades de los usuarios individuales. Habrá una interacción entre la información requerida y las preferencias del usuario de la aplicación. Con el XML vendrá una segunda generación de robots que permitirá una mayor precisión de la búsqueda requerida. Actualmente podemos encontrar aplicaciones de medios de comunicación como los periódicos personalizados. Por otro lado, el impulso de los motores de búsqueda con XML y la creación de buscadores de lenguaje natural.
  • Otras aplicaciones que se desarrollarán son las operaciones para comercio electrónico con la normativa EDI. Se puede hacer ya comparación de precios entre los distintos tiendas virtuales.

Además de esto es importante destacar que XML aporta mucha potencia yflexibilidad a las aplicaciones basadas en la Web, proporcionando numerosasventajas a los programadores y usuarios, como lo son:

  • Búsquedas con más significado: Los datos se pueden etiquetar de forma exclusiva con XML, lo que permite que un cliente especifique libros escritos por Winston Churchill, en lugar de sobre Winston Churchill. Las búsquedas que utilizan los métodos actuales, por el contrario, probablemente mezclarían ambos tipos de libros. Sin XML, es necesario que la aplicación de búsqueda comprenda el esquema de cada base de datos, en el que se describe cómo se ha generado. Esto es prácticamente imposible, pues cada base de datos describe sus datos de una forma distinta. Sin embargo, con XML los libros se pueden clasificar fácilmente en categorías estándar por autor, título, ISBN u otros criterios. De esta forma, los agentes podrían buscar libros sobre Winston Churchill en estos sitios de librerías de una forma coherente.
  • Programación de aplicaciones Web flexibles: Una vez encontrados los datos, el XML se puede distribuir a otras aplicaciones, objetos y servidores de nivel medio para continuar su procesamiento, o bien se puede entregar al escritorio para su visualización en un explorador. XML, junto con HTML para la presentación, las secuencias de comandos para la lógica y un modelo de objeto común para la interacción con los datos y la presentación, ofrece todas las tecnologías necesarias para el desarrollo de flexibles aplicaciones Web de tres niveles.
  • Integración de datos procedentes de fuentes dispares: La capacidad de buscar en varias bases de datos no compatibles entre sí es, hoy en día, prácticamente imposible. XML permite combinar fácilmente los datos estructurados procedentes de fuentes distintas. Se pueden utilizar agentes de software para integrar los datos en un servidor de nivel medio desde bases de datos de fondo y otras aplicaciones. A continuación, dichos datos se pueden entregar a clientes u otros servidores para su agregación, procesamiento y distribución. La capacidad de ampliación y la flexibilidad de XML le permiten describir los datos contenidos en una gran variedad de aplicaciones muy diversas, desde las recopilaciones descriptivas de páginas Web hasta los registros de datos. Además, dado que los datos basados en XML son autodescriptivos, se pueden intercambiar y procesar sin necesidad de una descripción incorporada de los datos entrantes.
  • Computación y manipulación locales: Después de entregarlos al cliente, los datos en formato XML se pueden analizar, editar y manipular de forma local, siendo las aplicaciones clientes quienes realizan los cálculos. Los usuarios pueden manipular los datos de diversas formas, y no limitarse a presentarlos. El Modelo de objeto de documento (DOM) de XML también permite manipular datos con secuencias de comandos u otros lenguajes de programación. Los cálculos relativos a los datos se pueden realizar sin volver al servidor. La separación entre la interfaz de usuario que ve los datos y los propios datos permite crear, de forma natural, potentes aplicaciones para el Web que antes sólo se encontraban en bases de datos avanzadas, todo con un formato simple, flexible y abierto.
  • Varias vistas de los datos: Una vez entregados los datos al escritorio, se pueden ver de varias formas. Al describir los datos estructurados de una forma simple, abierta y extensible, XML sirve de complemento para el HTML, que se utiliza ampliamente para describir las interfaces de usuario. Una vez más, mientras que el lenguaje HTML describe el aspecto de los datos, XML describe los propios datos. Dado que la presentación está separada de los datos, la definición de dichos datos en XML permite especificar varias vistas, lo que significa que los datos se pueden representar de la forma adecuada. Los datos locales se pueden presentar de una forma dinámica determinada por la configuración del cliente, las preferencias del usuario u otros criterios. CSS y XSL proporcionan mecanismos declarativos para describir una vista de los datos en particular.
  • Actualizaciones granulares: Los datos se pueden actualizar de forma granular con XML, por lo que no es necesario volver a enviar un conjunto completo de datos estructurados cada vez que cambia parte de dichos datos. Sólo es preciso enviar el elemento modificado del servidor al cliente, y los datos modificados se pueden presentar sin necesidad de actualizar toda la interfaz de usuario. En la actualidad, aunque sólo cambie un elemento de los datos, es preciso volver a construir toda la página, incluso si la vista permanece igual, lo que reduce drásticamente la escalabilidad del servidor.

Asimismo, XML permite agregar otros datos, como las temperaturas máximas y mínimasprevistas, la pluviosidad prevista y su probabilidad (expresada en porcentaje).Esta información adicional se puede trasladar a la vista del usuario sin que elexplorador tenga que enviar una vista nueva. Si se solicitan datos adicionales,como la presión atmosférica, se pueden enviar sin volver a generar la vista.

Ejemplos
Ejemplo de libro en amazón
Podemos observar como Amazón presenta en su Web información sobre los libros
El código en HTML es el siguiente:
<p>

<dt><b><a href="/exec/obidos/ASIN/0764531999/qid=919015337">Xml : Extensible Markup Language</a></b> ~ <NOBR><font color=#990033>Usually ships in 24 hours</font></NOBR><dd> Elliotte Rusty Harold / Paperback / Published 1998<br>Our Price: $31.99 ~ <NOBR><font color =#990033>You Save: $8.00 (20%)</font></NOBR><br><a href="/exec/obidos/ASIN/0764531999/qid=919015337"><i>Read more about this title...</i></a>

y en XML lo podríamos escribir de la siguiente manera:

<?xml version="1.0"?><libro> <titulo>Xml: Extensible Markup Language</titulo> <disponible tiempo="24" unidad="hours"/> <autor>Elliotte Rusty Harold</autor> <formato>Paperback</formato> <publicacion>1998</publicacion> <precio cantidad="31.99" moneda="dolar"/> <descuento cantidad="20"/> <enlacelibro href="/exec/obidos/ASIN/0764531999/qid=919015337"/></libro>

Es evidente que no hay que ser ningún programador experto para entender quecualquier programa informático podrá trabajar de forma más eficiente sobre elsegundo ejemplo que sobre el primero.

Esto permitirá, por ejemplo, realizar motores de búsqueda mucho máseficaces, lo que nos permitirá un acceso más rápido y eficiente a lainformación. Nos permitirá acceder a nuestras páginas favoritas desde nuestrotelefono mobil, o desde la radio de nuestro coche, en el momento en el que losprogramas de reconocimiento de voz trabajen con XML. Facilitará el intercambiode información y la cooperación entre las empresas facilitando el comercioelectrónico, etc. Y es que el XML busca precisamente crear la capacidad dehacerlo todo en la Web.
La potencia de esta forma de trabajar radica en que estamos etiquetando eidentificando el contenido, olvidándonos en un principio por la forma depresentarlo. ¡Ya nos encargaremos luego de darle un formato de salida!. El W3cestá trabajando actualmente en el desarrollo de un lenguaje de hojas de estiloque nos lo permitan, denominado XSL (Extensible Style Languaje). Mediante unaXSL podremos transformar un document XML en otro XML (por ejemplo en HTML) oconvertirlo a un formato de impresión: RTF, PDF, etc.

Comentarios
En su calidad de estándar del sector para expresar datos estructurados, XMLofrece muchas ventajas a las organizaciones, desarrolladores de software, sitiosWeb y usuarios finales. Las oportunidades aumentarán cuantos más formatos dedatos de mercado vertical se creen para mercados claves, como el mercado de búsquedaavanzada en bases de datos, banca en línea, médico, legal, comercio electrónico,etc. Cuando los sitios ofrezcan datos, en lugar de limitarse a las vistas dedatos, las oportunidades serán extraordinarias.
Hoy en día, los servicios de atención al cliente están migrando de centros dellamadas y sedes físicas a sitios Web, por lo que se beneficiarán de la sólidafuncionalidad de XML. Dado que la mayoría de estas aplicaciones empresarialesimplican la manipulación o la transferencia de datos y registros de base dedatos, como pedidos de compra, facturas, información del cliente, citas, mapas,etc., XML va a revolucionar las posibilidades de los usuarios finales enInternet, permitiendo la implementación de un amplio abanico de aplicacionesempresariales. Además, la información que ya esté almacenada en sitios Web,tanto si está guardada en documentos como en bases de datos, puede marcarse convocabularios basados en XML y orientados a intranets. Dichos vocabularios tambiénayudan a las pequeñas y medianas empresas que necesiten intercambiar informaciónentre clientes y proveedores.

Un mercado vital y todavía por descubrir es el de las herramientas dedesarrollo que simplifican a los usuarios finales la creación de sus propiossitios Web cooperativos, lo que incluye las herramientas para generar datos XMLheredados de información de bases de datos e interfaces de usuario yaexistentes. Además, se pueden desarrollar esquemas estándar para describirportafolios u otros datos que podrían utilizar, por ejemplo, el diseño, los gráficosy otras funciones de Excel o de otras hojas de cálculo existentes. Lasherramientas declarativas y visuales para describir XML generadas a partir debases de datos heredadas constituyen una oportunidad muy potente. Lasherramientas personalizadas para ver datos XML se pueden escribir en el sistemade programación de Visual Basic®, en Java y en C .

XML va a necesitar herramientas nuevas y potentes para la presentación dedatos XML ricos y complejos dentro de un documento. Esto se consigue asignandouna capa de presentación fácil de usar por encima de un conjunto complejo dedatos jerárquicos que pueden cambiar de forma dinámica. Entre los diseños quese podrán utilizar para los datos XML se incluyen los esquemas contraíbles,las vistas dinámicas de tablas dinámicas y una sencilla hoja para cadaportafolio.

Los sitios Web pueden ofrecer cotizaciones de bolsa, artículos de prensa odatos sobre el tráfico en tiempo real, los cuales se pueden conseguir a travésde un filtro de difusiones del Web o mediante un sondeo inteligente de un árbolde servidores que repliquen dichos sitios. Con XML se puede evitar la sobrecargade información con sólo redactar normas personalizadas sobre el envejecimientode la información, igual que en el correo electrónico. Las herramientasbasadas en XML para que los usuarios creen dichas normas, así como el softwarede cliente y servidor para ejecutarlas, constituyen una gran oportunidad. Unmodelo de objeto estándar no podría habilitar dichas funciones, normalmenteescritas en secuencias de comandos, para filtrar los mensajes entrantes,examinar los mensajes almacenados, crear mensajes salientes, obtener acceso abases de datos, etc. Dichos agentes se pueden redactar de forma que se ejecutenen cualquier lugar de forma automática.

Utilidades de XML.
Especificaremos algunas de las implementaciones/aplicaciones que se handesarrollado con XML. Suponemos que se establezca alguna implementación propiapara Bibliotecas y Centros de Documentación; y con ello se pueda extraer lainformación desde la misma red (no por métodos de infranet).
CDF (Channel Definition Format): Los canales creado por Microsoft en elexplorador IE4 con tecnología push.
RDF (Resource Description Framework): Esquema de descripción de recursos. Unade las aplicaciones más importantes que permitirá describir los datos de cadadocumento y definir las relaciones que hay entre los datos XML. Tratará de losmetadatos (metadata). Se les podría considerar como "los META delXML". Muchas compañías en Internet se están adhiriendo a esta aplicación.RDF Posee las siguientes virtudes:

  • Mejores motores de búsqueda. Se han adherido a esta especificación Yahoo!, Altavista, Excite, Lycos, WebCrawler, Amazon, etc.
  • La capacidad de describir los contenidos y sus relaciones en una biblioteca digital o sede Web. Permitirá el acceso a una parte concreta del documento y se facilitará el intercambio de los datos.
  • Se pueden calificar los contenidos para establecer la protección infantil y de la propia intimidad, desarrollado a través de las marcas (tags) de PICS (Platform for Internet Content Selection).
  • Establece los derechos de propiedad intelectual en las propias páginas Web.

OSD (Open Software Description Format): Formato abierto de descripción desoftware. Desarrollo de software en múltiples plataformas. Describe el repartode software a través de la Red. Las etiquetas XML con las que está descritodefinen los componentes, la versión que es, la plataforma en la que ha sidocreado, la relación con otros componentes, etc. Esto hará que se simplifiqueel proceso de instalación para el usuario y permitir también un fácil uso delas actualizaciones.

CML (Chemical Markup Language): Lenguaje de marcas para química. Describe,entre otras formulas, las estructuras moleculares y cristalinas, los análisisde espectros y otros objetos de interés para los químicos.
MathML (Mathematical Markup Language): Lenguaje de marcas para matemáticas.Apto para codificar signos matemáticos, símbolos científicos, etc. El MathMLes un lenguaje de bajo nivel que tiene en cuenta la comunicación maquina amaquina de datos estructurados como información de bases de datos. El lenguajeMathML utiliza dos series de códigos progresivos: el primero presenta lossignos matemáticos en series crecientes, y el segundo transmite el significadosemántico de las expresiones matemáticas, lo que posibilita la codificaciónde símbolos y signos tanto matemáticos como científicos.
EDI (Electronic Document Interchange): Intercambio electrónico de datos. Llevaun tiempo en proceso de estudio, pero finalmente dará un espaldarazo con el estándarXML. InfoVía Plus lo integra en uno de sus servicios (InfoEDI).

3. Bibliografía

  • ALADRO GARCÍA, A. El lenguaje XML: la nueva forma de estructurar los contenidos. Net Magazine, 1998, año IV, nº 34, p. 74-77.
    PEÑA TRESANCOS, J. "Estándar XML 1.0: tecnologías para Internet". PC World, nº 144, junio 1998, p. 281-288.
  • JOSE CERRANO PEREZ, "PROGRAMACION CON ASP3", p. 207-237
    http://sunsite.unc.edu/pub/sun-info/standards/xml/why/xmlapps.htm
    http://users.ox.ac.uk/~drh97/Papers/Sperberg.html
    http://www.cs.caltech.edu/~adam/papers/xml/ascent-of-xml.html
    http://www.csclub.uwaterloo.ca/u/relander/XML/Wave/xml_mw.html
    http://www.gca.org/conf/xml/xml_what.htm
    http://www.poet.com/xml/xml_lib.html
    http://www.w3.org/XML/
    http://www.xml.com/xml/pub
    http://www.sil.org/sgml/xml.html
    http://www.geocities.com/SiliconValley/Peaks/5957/xml.html

 

 

Trabajo enviado por:
ACS Sergio Daniel Caballero
sergio@caballero.net.ar

Indice
1. Introduccion
2. Desarrollo
3. Bibliografía

1. Introducción

HTML (Hypertex Markup Language) se ha convertido en un lenguaje de marcas deinmensa popularidad durante estos últimos años. También debemos anotar quenos hemos encontrado con sus propias limitaciones, que algunas de ellas se hanquerido subsanar con la incrustación de scripts, javascripts, Active X, HTMLdinámico, hojas de estilo en cascada (CSS). Todo esto es insuficiente paracrear una arquitectura abierta de tipo cliente/servidor, con lo que el W3C (WordWide Web Consortium), organismo que vela por el desarrollo de la Word Wide Web,se ha replanteado crear un nuevo estándar llamado XML (eXtensible MarkupLanguage), que parte de las amplias especificaciones del SGML (StandardGeneralized Markup Language ) es el estándar internacional para la definiciónde la estructura y el contenido de diferentes tipos de documentos electrónicos.XML fue desarrollándose por el Grupo de Trabajo XML desde 1996 (en estosprimeros años llamado SGML Editorial Review Board). La especificación XML 1.0ha sido ratificada por la W3C el 10 de febrero de 1998, e interpretado como"un sistema para definir, validar y compartir formatos de documentos en laWeb".

En el Futuro y actual presente de la red está en el comercio electrónico yen el uso de tecnologías de telefonía IP, WAP y UMTS. Ante este futuro y yapresente que puede también permanecer incierto, cuento menos en sus momentosiniciales, están comenzando a surgir lenguajes alguno de ellos propios adeterminada tecnología como el WML y WMLScript con la telefonía movil WAP.

2. Desarrollo

¿Qué es XML?.
Concepto:
XML es un lenguaje de metamarcado que ofrece un formato para la descripción dedatos estructurados. Esto facilita unas declaraciones de contenido más precisasy unos resultados de búsquedas más significativos en varias plataformas. Además,XML habilitará una nueva generación de aplicaciones para ver y manipular datosbasadas en el Web.

Representación estructural de los datos:
XML ofrece una representación estructural de los datos que se puede implementarampliamente y es fácil de distribuir. XML es un subconjunto de SGML optimizadopara el Web. Definido por el World Wide Web Consortium (W3C) (en inglés),XML garantiza que los datos estructurados sean uniformes e independientes deaplicaciones o fabricantes. La interoperabilidad resultante está creando rápidamenteuna nueva generación de aplicaciones de comercio electrónico en la Web.
XML, que proporciona un estándar de datos que puede codificar el contenido, lasemántica y los esquemas de una gran variedad de casos, desde los más simplesa los más complejos, sirve para marcar lo siguiente:

  • Un documento normal.
  • Un registro estructurado, como un registro de citas o un pedido de compra.
  • Un objeto con datos y métodos, como el formulario permanente de un objeto Java o de un control ActiveX.
  • Un registro de datos, como el conjunto de resultados de una consulta.
  • Metacontenido sobre un sitio Web, como el formato de definición de canal (CDF).
  • Representaciones gráficas, como la interfaz de usuario de una aplicación.
  • Entidades y tipos de esquema estándar.
  • Todos los vínculos entre datos y personas que hay en el Web.

Cuando los datos llegan al escritorio del cliente, se pueden manipular,editar y presentar en varias vistas, sin tener que regresar al servidor. Ahoralos servidores pueden ser más escalables, gracias a la reducción de las cargasde ancho de banda y computación. Además, dado que los datos se intercambian enel formato XML, se pueden combinar fácilmente desde distintas fuentes.
XML es muy valioso para Internet, así como para los entornos de intranetscorporativas de gran tamaño, pues proporciona interoperabilidad mediante unformato basado en estándares flexible y abierto, con formas nuevas de acceso alas bases de datos existentes y de entregar datos a clientes de Web. Lasaplicaciones se pueden generar más rápidamente, su mantenimiento es mássencillo y pueden ofrecer fácilmente varias vistas de los datos estructurados.
En un principio, no rivalizarán HTML y XML, estos se complementarán el uno alotro, anudándose ambas gramáticas. Este Lenguaje de marcas extensible (XML) esuna versión abreviada del SGML (Standard Generalized Markup Language).
Algunos de los objetivos planteados por el Grupo de Trabajo XML y el W3C son:

  • 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.
  • Los documentos XML deben ser fácilmente creables.
  • La brevedad en las marcas XML es de mínima importancia.

A estos fines se le une unos estándares como el Unicode e ISO/IEC 10646 paracaracteres, el Internet RCF 1766 para identificación de lenguajes, ISO 639 paracódigos de nombres de lenguajes y también el ISO 3166 para códigos de nombresde países, para la normal comprensión de esta versión de XML.

Tampoco tenemos que equivocarnos y pensar que el XML es un HTML .
Tanto el XML como el HTML tienen su base en el SGML. Es decir, es unmetalenguaje que nos permite definir lenguajes para definir la estructura y elcontenido de nuestros documentos. La definición de la estructura y el contenidode un tipo de documento se realiza en una DTD. En ella definimos los elementosque conformarán ese tipo de documentos y como tienen que estar organizados paraque sea correcto.
Un ejemplo de DTD es por ejemplo la que define cómo tendrán que ser losdocumentos HTML. Por tanto, el HTML no es más que un tipo de documento SGML quese utiliza en la Web, y esto es importante, ya que aquí radica su principaldiferencia con el XML.
El XML no es ningún tipo de documento SGML, sino que es una versión abreviadade SGML optimizada para su utilización en Internet. Esto significa que con élvamos a poder definir nuestros propios tipos de documentos (podremos definirnuestras propias etiquetas) y, por tanto, ya no dependeremos de un único einflexible tipo de documento HTML.

 


Diferencia entre el SGML, XML y HTML
El XML más que un HTML hay que considerarlo como un SGML-- optimizado para suutilización en Internet. Como escribió Richard Ligth en su libro PresentigXML, "XML ofrece el 80% de las ventajas del SGML con un 20% de sucomplejidad". Y es que los diseñadores de XML intentaron dejar fuera sóloaquellas partes que raramente se utilizan. Esta reducción resultó ser muyimportante: la especificación XML ocupa aproximadamente 30 páginas, frente alas 500 del SGML.

Estructura de XML.
Un documento XML tiene dos estructuras, una lógica y otra física. Físicamente,el documento está compuesto por unidades llamadas entidades. Una entidad puedehacer referencia a otra entidad, causando que esta se incluya en el documento.Cada documento comienza con una entidad documento, también llamada raíz. Lógicamente,el documento está compuesto de declaraciones, elementos, comentarios,referencias a caracteres e instrucciones de procesamiento, todos los cuales estánindicados por una marca explícita. Las estructuras lógica y física debenencajar de manera adecuada:

Los documentos XML se dividen en dos grupos, documentos bien formados ydocumentos válidos.
Un objeto textual o documento XML se dice que está bien formado si, considerándolocomo conjunto, encaja con las especificaciones XML de producción, lo queimplica:

  • Contiene uno o más elementos.
  • Hay exactamente un elemento, llamado raíz o elemento documento, de forma que ninguna parte del mismo aparece en el contenido de ningún otro elemento. Para todos los demás elementos, si la etiqueta inicial está en el contenido de otro elemento, la etiqueta final forma parte del contenido del mismo elemento. Dicho de forma más clara, los elementos, delimitados por una etiqueta de inicio y otra de final, se encuentran anidados correctamente.
  • Cumple todas las restricciones que proporciona su especificación a través del DTD.Si no se utiliza DTD, el documento debe comenzar con un Declaración de Documento único (SDD, Standalone Document Declaration) que indique:

<?XML version="1.0" standalone="yes"?>

  • Cada una de sus partes procesadas esta bien formada.
  • Todas las etiquetas deben estar balanceadas: esto es, todos los elementos que contengan datos de tipo carácter deben tener etiquetas de principio y fin (no está permitida la omisión excepto para los elementos vacíos.);
  • Todos los valores de los atributos deben ir entrecomillados (el carácter comilla simple [el apóstrofe] puede utilizarse si el valor contiene caracteres comillas dobles, y viceversa): si necesitas ambos, utiliza &apos; y &quot;
  • Cualquier elemento VACÍO (p.e. aquellos que no tienen etiqueta final como <IMG>, <HR>, y <BR> y otros de HTML) deben terminar con '/>' o debes hacerlos no VACÍOS añadiéndoles una etiqueta de fin;
    Ejemplo: <BR> se convertirá en <BR/> o en <BR></BR>.
  • No debe haber etiquetas aisladas (< ó &) en el texto (p.e. debe darse como &lt; y &amp;), y la secuencia ]]> debe darse como ]]&gt; si no ocurre esto como final de una sección marcada como CDATA;
  • Los elementos deben anidar dentro de sí sus propiedades (no se deben sobreponer etiquetas, como en el resto de SGML);
  • Los Archivos bien-formados sin-DTD pueden utilizar atributos en sus elementos, pero éstos deben ser todos del tipo CDATA, por defecto.

De un documento bien formado, se dice además que es válido, si tiene DTDcomo el resto de aplicaciones SGML. Un archivo XML válido comienza comocualquier otro archivo SGML, con una Declaración de Tipo de Documento:

<?xml version="1.0"?>
<!DOCTYPE anuncio SYSTEM "http://www.foo.org/ad.dtd">
<anuncio>
<titulo>...<foto/>...</titulo>
<texto>...</texto>
</anuncio>
Dado que XML está diseñado para ser un subconjunto de SGML, cualquierdocumento XML válido debe ser también un documento SGML válido.

Estructuras lógicas.
Cada documento XML contiene uno o más elementos, cuyos limites estándelimitados por etiquetas de comienzo y de final o, en el caso de elementos vacíos,por una etiqueta de elemento vacío.
Cada elemento tiene un tipo, identificado por un nombre, denominadoidentificador genérico, y puede tener un conjunto de especificaciones deatributos.
Cada especificación de atributo tiene un nombre y un valor. Estasespecificaciones no restringen la semántica, el uso o (mas allá de lasintaxis) los nombres de los tipos de los elementos y los atributos, excepto delos nombres que comienzan por XML, que se reservan para estandarizar etiquetas oatributos en versiones posteriores del estándar.

Estructuras físicas.
Un documento XML puede consistir en una o más unidades de almacenamientovirtual, llamadas entidades. Todas estas unidades tienen contenido y todas ellas(excepto la entidad documento y el subconjunto externo del DTD) estánidentificadas por un nombre. Cada documento XML contiene una entidad, llamadaentidad documento, que sirve como punto de comienzo para el procesador XML ypuede contener el documento completo.

Como hemos comentado, las entidades pueden ser analizadas o sin analizar(también llamadas procesadas o sin procesar). El contenido de una entidadanalizada se conoce también como texto de reemplazo, y es parte integrante deldocumento. Las entidades no analizadas son recursos (tales como enlaces) cuyocontenido puede o no ser texto, o en caso de que sea texto que no sea XML. Cadaentidad no asociada tiene una notación asociada, identificada por un nombre.Aparte de obligar al procesador XML a haga accesible a la aplicación el nombrede esta notación y sus identificadores asociados, XML no proporciona ningunaotra restricción sobre el contenido de estas entidades. La forma de invocarambos tipos de entidades es a través de su nombre, en el caso de las analizadasa través de su referencia a entidad y en el de las no analizadas a través desus atributos de entidad.

Las entidades generales, son entidades analizadas que se usan en el interiordel documento. Las entidades parametrizadas son entidades analizadas que se usanen el ámbito del DTD. Estos dos tipos de entidades usan distintos tipos dereferencias y se reconocen en contextos distintos.

XML consta de cuatro especificaciones (el propio XML sienta las bases sintácticasy el alcance de su implementación):

  • DTD (Document Type Definition): Definición del tipo de documento. Es, en general, un archivo(s) que encierra una definición formal de un tipo de documento y, a la vez, especifica la estructura lógica de cada documento. Define tanto los elementos de una página como sus atributos. El DTD del XML es opcional. En tareas sencillas no es necesario construir una DTD, entonces se trataría de un documento "bien formado" (well-formed) y si lleva DTD será un documento "validado" (valid).
  • XSL (eXtensible Stylesheet Language): Define o implementa el lenguaje de estilo de los documentos escritos para XML. Desde el verano de 1997 varias empresas informáticas como Arbortext, Microsoft e Inso vienen trabajando en una propuesta de XSL (antes llamado "xml-style") que presentaron a W3C. Permite modificar el aspecto de un documento. Se puede lograr múltiple columnas, texto girado, orden de visualización de los datos de una tabla, múltiples tipos de letra con amplia variedad en los tamaños. Este estándar está basado en el lenguaje de semántica y especificación de estilo de documento (DSSSL, Document Style Semantics and Specification Language, ISO/IEC 10179) y, por otro lado, se considera más potente que las hojas de estilo en cascada (CSS, Cascading Style Sheets), usado en un principio con el lenguaje DHTML. "Se espera que el CSS sea usado para visualizar simples estructuras de documentos XML (actualmente se ha conseguido mayor integración en XML con el protocolo CSS2 (Cascading Style Sheets, level 2) ofreciendo nuevas formas de composición y una más rápida visualización) y, por otra parte, XSL pueda ser utilizado donde se requiera más potencia de diseño como documentos XML que encierran datos estructurados (tablas, organigramas, etc.)(2)".
  • XLL (eXtensible Linking Language): Define el modo de enlace entre diferentes enlaces. Se considera que es un subconjunto de HyTime (Hipermedia/Timed-based structuring Language o Lenguaje de estructuración Hipermedia/basado en el tiempo, ISO 10744) y sigue algunas especificaciones del TEI (Text Encoding Initiative o Iniciativa de codificación de texto). Desde marzo de 1998 el W3C trabajo en los enlaces y direccionamientos del XML. Provisionalmente se le renombró como Xlink y a partir de junio se le nombra como XLL. Este lenguaje de enlaces extensible tiene dos importantes componentes: Xlink y el Xpointer. Va más allá de los enlaces simples que sólo soporta el HTML. Se podrá implementar con enlaces extendidos. Jon Bosak establece los siguientes mecanismos hipertextuales que soportará esta especificación:
  • Denominación independiente de la ubicación.
  • Enlaces que pueden ser también bidirecccionales.
  • Enlaces que pueden especificarse y gestionarse desde fuera del documento a los que se apliquen (Esto permitirá crear en un entorno intranet/extranet un banco de datos de enlaces en los que se puede gestionar y actualizar automáticamente. No habrá más errores del tipo "404 Not Found").
  • Hiperenlaces múltiples (anillos, múltiples ventanas, etc.).
  • Enlaces agrupados (múltiples orígenes).
  • Transclusión (el documento destino al que apunta el enlace aparece como parte integrante del documento origen del enlace).
  • Se pueden aplicar atributos a los enlaces (tipos de enlaces).
  • XUA (XML User Agent): Estandarización de navegadores XML. Todavía está en proceso de creación de borradores de trabajo. Se aplicará a los navegadores para que compartan todos las especificaciones XML.

Aplicaciones de XML.
Algunas de las aplicaciones de XML son:

  • Ofrecer mecanismos más versátiles de mostrar datos. Actualmente, bajo el nombre de DOM (Document Object Model) se está desarrollando una API que sea soportada por todos los procesadores de XML y HTML. La idea detrás de esta API es que podamos representar (a través de javascripts o JavaApplets) documentos XML en los navegadores Web, pero de una forma más sofisticada que los documentos HTML, ya que XML no solo proporciona una sintaxis, sino también una semántica.
  • Buscadores inteligentes. Debido a que la información en los documentos XML está etiquetada por su significado de forma precisa, podemos localizarla de forma mucho más clara que en documentos HTML. Con DTDs estandarizados para distintas aplicaciones (librerías, tiendas de deporte, catálogos de componentes,…) podríamos programar buscadores Web que recuperasen información sobre un producto de cualquier website en el mundo sabiendo que todos tendrán el mismo formato de datos (gracias al DTD), aunque no tengan necesariamente la misma representación gráfica (gracias al XML/XSL).
  • Intercambio de información entre sistemas heterogéneos. El fundamento es el mismo que para los buscadores inteligentes. Debido a que el DTD proporciona un formato estándar para representar la información de un tema específico, puede usarse para simplificar el intercambio de información entre distintas fuentes (actualmente existen ya dos DTD estandarizados uno para fabricantes de chips y otro para industrias químicas, llamado CML).

Ventajas de XML.

  • Los autores y proveedores pueden diseñar sus propios tipos de documentos usando XML, en vez de limitarse a HTML. Los tipos de documentos pueden ser explícitamente 'hechos a la medida de una audiencia', por lo que las difíciles manipulaciones que debes hacer con HTML para conseguir efectos especiales serán cosa del pasado: autores y diseñadores serán libres de inventar sus propias etiquetas;
  • 7La información contenida puede ser más 'rica' y fácil de usar, porque las habilidades hipertextuales de XML son mayores que las de HTML.
  • XML puede dar más y mejores facilidades para la representación en los visualizadores.
  • Elimina muchas de las complejidades de SGML, en favor de la flexibilidad del modelo, con lo que la escritura de programas para manejar XML será más sencilla que haciendo el mismo trabajo en SGML.
  • La información será más accesible y reutilizable, porque la flexibilidad de las etiquetas de XML pueden utilizarse sin tener que amoldarse a reglas específicas de un fabricante, como es el caso de HTML.
  • Los archivos XML válidos son válidos también en SGML, luego pueden utilizarse también fuera de la Web, en un entorno SGML (una vez la especificación sea estable y el software SGML la adopte).

Desarrollo de aplicaciones con XML
Existen cuatro tipos de aplicaciones que impulsarán el desarrollo del XML:
Aplicaciones que exijan que el cliente Web medie entre dos o más bases dedatos. Se hará posible la integración de bases de datos distribuidas en losnavegadores que admitan XML, pudiéndose modificar el contenido y la estructurade esta. Actualmente implantado en amplias redes nacionales, sin embargo, selimitan las posibilidades al establecerse una intranet/extranet y con ampliasbases de datos que sólo permiten la visualización de los datos en elnavegador. XML establecerá una arquitectura de 3 niveles (three-tier) que estárepresentada de la siguiente manera:

  • Se irá pareciendo cada vez más a una arquitectura cliente-servidor.
  • Aplicaciones que intentan transferir una parte significativa de la carga del proceso del servidor al cliente Web. Funcionará con un subprograma Java que se insertará en el PC del cliente. Esta carga hará que muchas de las funciones de modificación puedan desarrollarse desde el mismo navegador Web del cliente. Por ejemplo, dentro de una intranet con una aplicación de gestión bibliotecaria sobre los documentos disponibles en el centro bibliotecario. Se establecerán categorías específicas como los datos de la ficha catalográfica, fecha de préstamo, fecha de devolución, nombre del usuario, número de registro, etc. Todos estos ítems se pueden agrupar por categorías y estarán descritos externamente desde los "esquemas" (schemas) o los RDF del XML. Permite actualizarse en el acto y con la posibilidad interactiva por parte del usuario en el pedido, gestión y modificación de documentos desde su lejano navegador. El lado más negativo es que se necesitará mayor ancho de banda y mayor potencia del procesador del equipo para poder soportar esta arquitectura de tres-niveles.
  • Aplicaciones que precisen que el cliente Web presente diferentes versiones de los mismos datos a diferentes usuarios. Se podría aplicar un manual de diferentes grados (iniciación, intermedio y avanzado) con sus diferentes idiomas, etcétera. Esto hará que este manual se pueda personalizar por los usuarios y extraer la información requerida de un capítulo determinado, con una ordenación y formatos concretos.
  • Aplicaciones en las que agentes Web inteligentes intentan adaptar la búsqueda de información a las necesidades de los usuarios individuales. Habrá una interacción entre la información requerida y las preferencias del usuario de la aplicación. Con el XML vendrá una segunda generación de robots que permitirá una mayor precisión de la búsqueda requerida. Actualmente podemos encontrar aplicaciones de medios de comunicación como los periódicos personalizados. Por otro lado, el impulso de los motores de búsqueda con XML y la creación de buscadores de lenguaje natural.
  • Otras aplicaciones que se desarrollarán son las operaciones para comercio electrónico con la normativa EDI. Se puede hacer ya comparación de precios entre los distintos tiendas virtuales.

Además de esto es importante destacar que XML aporta mucha potencia yflexibilidad a las aplicaciones basadas en la Web, proporcionando numerosasventajas a los programadores y usuarios, como lo son:

  • Búsquedas con más significado: Los datos se pueden etiquetar de forma exclusiva con XML, lo que permite que un cliente especifique libros escritos por Winston Churchill, en lugar de sobre Winston Churchill. Las búsquedas que utilizan los métodos actuales, por el contrario, probablemente mezclarían ambos tipos de libros. Sin XML, es necesario que la aplicación de búsqueda comprenda el esquema de cada base de datos, en el que se describe cómo se ha generado. Esto es prácticamente imposible, pues cada base de datos describe sus datos de una forma distinta. Sin embargo, con XML los libros se pueden clasificar fácilmente en categorías estándar por autor, título, ISBN u otros criterios. De esta forma, los agentes podrían buscar libros sobre Winston Churchill en estos sitios de librerías de una forma coherente.
  • Programación de aplicaciones Web flexibles: Una vez encontrados los datos, el XML se puede distribuir a otras aplicaciones, objetos y servidores de nivel medio para continuar su procesamiento, o bien se puede entregar al escritorio para su visualización en un explorador. XML, junto con HTML para la presentación, las secuencias de comandos para la lógica y un modelo de objeto común para la interacción con los datos y la presentación, ofrece todas las tecnologías necesarias para el desarrollo de flexibles aplicaciones Web de tres niveles.
  • Integración de datos procedentes de fuentes dispares: La capacidad de buscar en varias bases de datos no compatibles entre sí es, hoy en día, prácticamente imposible. XML permite combinar fácilmente los datos estructurados procedentes de fuentes distintas. Se pueden utilizar agentes de software para integrar los datos en un servidor de nivel medio desde bases de datos de fondo y otras aplicaciones. A continuación, dichos datos se pueden entregar a clientes u otros servidores para su agregación, procesamiento y distribución. La capacidad de ampliación y la flexibilidad de XML le permiten describir los datos contenidos en una gran variedad de aplicaciones muy diversas, desde las recopilaciones descriptivas de páginas Web hasta los registros de datos. Además, dado que los datos basados en XML son autodescriptivos, se pueden intercambiar y procesar sin necesidad de una descripción incorporada de los datos entrantes.
  • Computación y manipulación locales: Después de entregarlos al cliente, los datos en formato XML se pueden analizar, editar y manipular de forma local, siendo las aplicaciones clientes quienes realizan los cálculos. Los usuarios pueden manipular los datos de diversas formas, y no limitarse a presentarlos. El Modelo de objeto de documento (DOM) de XML también permite manipular datos con secuencias de comandos u otros lenguajes de programación. Los cálculos relativos a los datos se pueden realizar sin volver al servidor. La separación entre la interfaz de usuario que ve los datos y los propios datos permite crear, de forma natural, potentes aplicaciones para el Web que antes sólo se encontraban en bases de datos avanzadas, todo con un formato simple, flexible y abierto.
  • Varias vistas de los datos: Una vez entregados los datos al escritorio, se pueden ver de varias formas. Al describir los datos estructurados de una forma simple, abierta y extensible, XML sirve de complemento para el HTML, que se utiliza ampliamente para describir las interfaces de usuario. Una vez más, mientras que el lenguaje HTML describe el aspecto de los datos, XML describe los propios datos. Dado que la presentación está separada de los datos, la definición de dichos datos en XML permite especificar varias vistas, lo que significa que los datos se pueden representar de la forma adecuada. Los datos locales se pueden presentar de una forma dinámica determinada por la configuración del cliente, las preferencias del usuario u otros criterios. CSS y XSL proporcionan mecanismos declarativos para describir una vista de los datos en particular.
  • Actualizaciones granulares: Los datos se pueden actualizar de forma granular con XML, por lo que no es necesario volver a enviar un conjunto completo de datos estructurados cada vez que cambia parte de dichos datos. Sólo es preciso enviar el elemento modificado del servidor al cliente, y los datos modificados se pueden presentar sin necesidad de actualizar toda la interfaz de usuario. En la actualidad, aunque sólo cambie un elemento de los datos, es preciso volver a construir toda la página, incluso si la vista permanece igual, lo que reduce drásticamente la escalabilidad del servidor.

Asimismo, XML permite agregar otros datos, como las temperaturas máximas y mínimasprevistas, la pluviosidad prevista y su probabilidad (expresada en porcentaje).Esta información adicional se puede trasladar a la vista del usuario sin que elexplorador tenga que enviar una vista nueva. Si se solicitan datos adicionales,como la presión atmosférica, se pueden enviar sin volver a generar la vista.

Ejemplos
Ejemplo de libro en amazón
Podemos observar como Amazón presenta en su Web información sobre los libros
El código en HTML es el siguiente:
<p>

<dt><b><a href="/exec/obidos/ASIN/0764531999/qid=919015337">Xml : Extensible Markup Language</a></b> ~ <NOBR><font color=#990033>Usually ships in 24 hours</font></NOBR><dd> Elliotte Rusty Harold / Paperback / Published 1998<br>Our Price: $31.99 ~ <NOBR><font color =#990033>You Save: $8.00 (20%)</font></NOBR><br><a href="/exec/obidos/ASIN/0764531999/qid=919015337"><i>Read more about this title...</i></a>

y en XML lo podríamos escribir de la siguiente manera:

<?xml version="1.0"?><libro>  <titulo>Xml: Extensible Markup Language</titulo>  <disponible tiempo="24" unidad="hours"/>  <autor>Elliotte Rusty Harold</autor>  <formato>Paperback</formato>  <publicacion>1998</publicacion>  <precio cantidad="31.99" moneda="dolar"/>  <descuento cantidad="20"/>  <enlacelibro href="/exec/obidos/ASIN/0764531999/qid=919015337"/></libro>

Es evidente que no hay que ser ningún programador experto para entender quecualquier programa informático podrá trabajar de forma más eficiente sobre elsegundo ejemplo que sobre el primero.

Esto permitirá, por ejemplo, realizar motores de búsqueda mucho máseficaces, lo que nos permitirá un acceso más rápido y eficiente a lainformación. Nos permitirá acceder a nuestras páginas favoritas desde nuestrotelefono mobil, o desde la radio de nuestro coche, en el momento en el que losprogramas de reconocimiento de voz trabajen con XML. Facilitará el intercambiode información y la cooperación entre las empresas facilitando el comercioelectrónico, etc. Y es que el XML busca precisamente crear la capacidad dehacerlo todo en la Web.
La potencia de esta forma de trabajar radica en que estamos etiquetando eidentificando el contenido, olvidándonos en un principio por la forma depresentarlo. ¡Ya nos encargaremos luego de darle un formato de salida!. El W3cestá trabajando actualmente en el desarrollo de un lenguaje de hojas de estiloque nos lo permitan, denominado XSL (Extensible Style Languaje). Mediante unaXSL podremos transformar un document XML en otro XML (por ejemplo en HTML) oconvertirlo a un formato de impresión: RTF, PDF, etc.

Comentarios
En su calidad de estándar del sector para expresar datos estructurados, XMLofrece muchas ventajas a las organizaciones, desarrolladores de software, sitiosWeb y usuarios finales. Las oportunidades aumentarán cuantos más formatos dedatos de mercado vertical se creen para mercados claves, como el mercado de búsquedaavanzada en bases de datos, banca en línea, médico, legal, comercio electrónico,etc. Cuando los sitios ofrezcan datos, en lugar de limitarse a las vistas dedatos, las oportunidades serán extraordinarias.
Hoy en día, los servicios de atención al cliente están migrando de centros dellamadas y sedes físicas a sitios Web, por lo que se beneficiarán de la sólidafuncionalidad de XML. Dado que la mayoría de estas aplicaciones empresarialesimplican la manipulación o la transferencia de datos y registros de base dedatos, como pedidos de compra, facturas, información del cliente, citas, mapas,etc., XML va a revolucionar las posibilidades de los usuarios finales enInternet, permitiendo la implementación de un amplio abanico de aplicacionesempresariales. Además, la información que ya esté almacenada en sitios Web,tanto si está guardada en documentos como en bases de datos, puede marcarse convocabularios basados en XML y orientados a intranets. Dichos vocabularios tambiénayudan a las pequeñas y medianas empresas que necesiten intercambiar informaciónentre clientes y proveedores.

Un mercado vital y todavía por descubrir es el de las herramientas dedesarrollo que simplifican a los usuarios finales la creación de sus propiossitios Web cooperativos, lo que incluye las herramientas para generar datos XMLheredados de información de bases de datos e interfaces de usuario yaexistentes. Además, se pueden desarrollar esquemas estándar para describirportafolios u otros datos que podrían utilizar, por ejemplo, el diseño, los gráficosy otras funciones de Excel o de otras hojas de cálculo existentes. Lasherramientas declarativas y visuales para describir XML generadas a partir debases de datos heredadas constituyen una oportunidad muy potente. Lasherramientas personalizadas para ver datos XML se pueden escribir en el sistemade programación de Visual Basic®, en Java y en C .

XML va a necesitar herramientas nuevas y potentes para la presentación dedatos XML ricos y complejos dentro de un documento. Esto se consigue asignandouna capa de presentación fácil de usar por encima de un conjunto complejo dedatos jerárquicos que pueden cambiar de forma dinámica. Entre los diseños quese podrán utilizar para los datos XML se incluyen los esquemas contraíbles,las vistas dinámicas de tablas dinámicas y una sencilla hoja para cadaportafolio.

Los sitios Web pueden ofrecer cotizaciones de bolsa, artículos de prensa odatos sobre el tráfico en tiempo real, los cuales se pueden conseguir a travésde un filtro de difusiones del Web o mediante un sondeo inteligente de un árbolde servidores que repliquen dichos sitios. Con XML se puede evitar la sobrecargade información con sólo redactar normas personalizadas sobre el envejecimientode la información, igual que en el correo electrónico. Las herramientasbasadas en XML para que los usuarios creen dichas normas, así como el softwarede cliente y servidor para ejecutarlas, constituyen una gran oportunidad. Unmodelo de objeto estándar no podría habilitar dichas funciones, normalmenteescritas en secuencias de comandos, para filtrar los mensajes entrantes,examinar los mensajes almacenados, crear mensajes salientes, obtener acceso abases de datos, etc. Dichos agentes se pueden redactar de forma que se ejecutenen cualquier lugar de forma automática.

Utilidades de XML.
Especificaremos algunas de las implementaciones/aplicaciones que se handesarrollado con XML. Suponemos que se establezca alguna implementación propiapara Bibliotecas y Centros de Documentación; y con ello se pueda extraer lainformación desde la misma red (no por métodos de infranet).
CDF (Channel Definition Format): Los canales creado por Microsoft en elexplorador IE4 con tecnología push.
RDF (Resource Description Framework): Esquema de descripción de recursos. Unade las aplicaciones más importantes que permitirá describir los datos de cadadocumento y definir las relaciones que hay entre los datos XML. Tratará de losmetadatos (metadata). Se les podría considerar como "los META delXML". Muchas compañías en Internet se están adhiriendo a esta aplicación.RDF Posee las siguientes virtudes:

  • Mejores motores de búsqueda. Se han adherido a esta especificación Yahoo!, Altavista, Excite, Lycos, WebCrawler, Amazon, etc.
  • La capacidad de describir los contenidos y sus relaciones en una biblioteca digital o sede Web. Permitirá el acceso a una parte concreta del documento y se facilitará el intercambio de los datos.
  • Se pueden calificar los contenidos para establecer la protección infantil y de la propia intimidad, desarrollado a través de las marcas (tags) de PICS (Platform for Internet Content Selection).
  • Establece los derechos de propiedad intelectual en las propias páginas Web.

OSD (Open Software Description Format): Formato abierto de descripción desoftware. Desarrollo de software en múltiples plataformas. Describe el repartode software a través de la Red. Las etiquetas XML con las que está descritodefinen los componentes, la versión que es, la plataforma en la que ha sidocreado, la relación con otros componentes, etc. Esto hará que se simplifiqueel proceso de instalación para el usuario y permitir también un fácil uso delas actualizaciones.

CML (Chemical Markup Language): Lenguaje de marcas para química. Describe,entre otras formulas, las estructuras moleculares y cristalinas, los análisisde espectros y otros objetos de interés para los químicos.
MathML (Mathematical Markup Language): Lenguaje de marcas para matemáticas.Apto para codificar signos matemáticos, símbolos científicos, etc. El MathMLes un lenguaje de bajo nivel que tiene en cuenta la comunicación maquina amaquina de datos estructurados como información de bases de datos. El lenguajeMathML utiliza dos series de códigos progresivos: el primero presenta lossignos matemáticos en series crecientes, y el segundo transmite el significadosemántico de las expresiones matemáticas, lo que posibilita la codificaciónde símbolos y signos tanto matemáticos como científicos.
EDI (Electronic Document Interchange): Intercambio electrónico de datos. Llevaun tiempo en proceso de estudio, pero finalmente dará un espaldarazo con el estándarXML. InfoVía Plus lo integra en uno de sus servicios (InfoEDI).

3. Bibliografía

  • ALADRO GARCÍA, A. El lenguaje XML: la nueva forma de estructurar los contenidos. Net Magazine, 1998, año IV, nº 34, p. 74-77.
    PEÑA TRESANCOS, J. "Estándar XML 1.0: tecnologías para Internet". PC World, nº 144, junio 1998, p. 281-288.
  • JOSE CERRANO PEREZ, "PROGRAMACION CON ASP3", p. 207-237
    http://sunsite.unc.edu/pub/sun-info/standards/xml/why/xmlapps.htm
    http://users.ox.ac.uk/~drh97/Papers/Sperberg.html
    http://www.cs.caltech.edu/~adam/papers/xml/ascent-of-xml.html
    http://www.csclub.uwaterloo.ca/u/relander/XML/Wave/xml_mw.html
    http://www.gca.org/conf/xml/xml_what.htm
    http://www.poet.com/xml/xml_lib.html
    http://www.w3.org/XML/
    http://www.xml.com/xml/pub
    http://www.sil.org/sgml/xml.html
    http://www.geocities.com/SiliconValley/Peaks/5957/xml.html

 

 

Trabajo enviado por:
ACS Sergio Daniel Caballero
sergio@caballero.net.ar

Compartir Enviar a menéame  Añadir a tus marcadores de Google  Enviar a noticias Top    Añadir a del.icio.us     Añadir a tus marcadores en Yahoo! 


Publicación enviada por ACS Sergio Daniel Caballero
Contactar mailto:sergio@caballero.net.ar


Código ISPN de la Publicación EpyuVuukApFHGqPYNh
Publicado Thursday 25 de September de 2003

Ultimas Publicaciones en ilustrados.com


ilustrados.com nace con el fin difundir el conocimiento publicando trabajos de investigación, monografias, tesis, presentaciones powerpoint y afines. Publicar trabajos en ilustrados.com ha alcanzado prestigio y reconocimiento internacional siendo cada vez más el número de académicos, empresas, investigadores, científicos que consultan las publicaciones de nuestro portal.


Administración y Finanzas
Agricultura y Ganadería
Anatomía
Antropología
Arqueología y Paleontología
Arquitectura
Arte y Cultura
Astronomía
Biografías
Biología
Ciencia y Tecnología
Computación e Informática
Comunicaciones
Contabilidad
Deportes y Educación Física
Derecho
Derechos Humanos
Ecología
Economía
Educación
Enfermedades
Estadística
Filosofía y Ontología
Física
Geografía
Hardware
Historia
Ingeniería
Internet
Lenguaje y Literatura
Marketing y Publicidad
Mitología
Matemática y Lógica
Música
Nutrición y Ciencias Alimentarias
Política
Programación
Psicología
Química
Recursos Humanos
Redes
Religión
Salud y Medicina
Sistemas Operativos
Sociología
Software
Turismo
Zoología