|
| |
Introducción a XML (Extensible Markup Language)
Resumen: ¿Qué es XML?. Estructura de XML. Estructuras lógicas. Aplicaciones de XML. Utilidades de XML. Desarrollo de aplicaciones con XML. Instalación (Requerimientos de Hardware y Software).
Publicación enviada por Mendoza Francisco
Indice
1. Introducción.
2. ¿Qué es XML?.
3. Estructura de XML.
4. Estructuras lógicas.
5. Aplicaciones de XML.
6. Utilidades de XML
7. Desarrollo de aplicaciones con
XML
8. Instalación (Requerimientos
de Hardware y Software).
9. Bibliografía
1. Introducción.
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). 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".
2. ¿Qué es XML?.
Concepto:
XML es un lenguaje de metamarcado que ofrece un formato para la descripción
de datos estructurados. Esto facilita unas declaraciones de contenido más
precisas y 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 datos basadas en el Web.
Representación estructural de los datos:
XML ofrece una representación estructural de los datos que se puede implementar
ampliamente y es fácil de distribuir. XML es un subconjunto de SGML optimizado
para el Web. Definido por el World Wide Web Consortium (W3C) (en inglés),
XML garantiza que los datos estructurados sean uniformes e independientes de
aplicaciones o fabricantes. La interoperabilidad resultante está creando rápidamente
una 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,
la semántica y los esquemas de una gran variedad de casos, desde los más
simples a 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. Ahora
los servidores pueden ser más escalables, gracias a la reducción de las cargas
de ancho de banda y computación. Además, dado que los datos se intercambian en
el formato XML, se pueden combinar fácilmente desde distintas fuentes.
XML es muy valioso para Internet, así como para los entornos de intranets
corporativas de gran tamaño, pues proporciona interoperabilidad mediante un
formato basado en estándares flexible y abierto, con formas nuevas de acceso a
las bases de datos existentes y de entregar datos a clientes de Web. Las
aplicaciones se pueden generar más rápidamente, su mantenimiento es más
sencillo 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
al otro, anudándose ambas gramáticas. Este Lenguaje de marcas extensible (XML)
es una 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 para
caracteres, el Internet RCF 1766 para identificación de lenguajes, ISO 639 para
códigos de nombres de lenguajes y también el ISO 3166 para códigos de nombres
de países, para la normal comprensión de esta versión de XML.
3. 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 puede
hacer 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án
indicados por una marca explícita. Las estructuras lógica y física deben
encajar de manera adecuada:
Los documentos XML se dividen en dos grupos, documentos bien formados y
documentos válidos.
Un objeto textual o documento XML se dice que está bien formado si, considerándolo
como conjunto, encaja con las especificaciones XML de producción, lo que
implica:
- 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
' y "
- 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 < y &), y la secuencia ]]> debe darse como
]]> 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 DTD
como el resto de aplicaciones SGML. Un archivo XML válido comienza como
cualquier 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, cualquier
documento XML válido debe ser también un documento SGML válido.
4. Estructuras lógicas.
Cada documento XML contiene uno o más elementos, cuyos limites están
delimitados 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, denominado
identificador genérico, y puede tener un conjunto de especificaciones de
atributos.
Cada especificación de atributo tiene un nombre y un valor. Estas
especificaciones no restringen la semántica, el uso o (mas allá de la
sintaxis) los nombres de los tipos de los elementos y los atributos, excepto de
los nombres que comienzan por XML, que se reservan para estandarizar etiquetas o
atributos en versiones posteriores del estándar.
Estructuras físicas.
Un documento XML puede consistir en una o más unidades de almacenamiento
virtual, llamadas entidades. Todas estas unidades tienen contenido y todas ellas
(excepto la entidad documento y el subconjunto externo del DTD)
están identificadas por un nombre. Cada documento XML contiene una entidad,
llamada entidad documento, que sirve como punto de comienzo para el procesador
XML y puede 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 entidad
analizada se conoce también como texto de reemplazo, y es parte integrante del
documento. Las entidades no analizadas son recursos (tales como enlaces) cuyo
contenido puede o no ser texto, o en caso de que sea texto que no sea XML. Cada
entidad 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 nombre
de esta notación y sus identificadores asociados, XML no proporciona ninguna
otra restricción sobre el contenido de estas entidades. La forma de invocar
ambos tipos de entidades es a través de su nombre, en el caso de las analizadas
a través de su referencia a entidad y en el de las no analizadas a través de
sus atributos de entidad.
Las entidades generales, son entidades analizadas que se usan en el interior
del documento. Las entidades parametrizadas son entidades analizadas que se usan
en el ámbito del DTD. Estos dos tipos de entidades usan distintos tipos de
referencias y se reconocen en contextos distintos.
XML consta de cuatro especificaciones (el propio XML sienta las bases sintácticas
y 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.
5. 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;
- La 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).
6. Utilidades de XML.
Especificaremos algunas de las implementaciones/aplicaciones que se han
desarrollado con XML. Suponemos que se establezca alguna implementación propia
para Bibliotecas y Centros de Documentación; y con ello se pueda extraer la
información desde la misma red (no por métodos de infranet).
CDF (Channel Definition Format): Los canales creado por Microsoft en el
explorador IE4 con tecnología push.
RDF (Resource Description Framework): Esquema de descripción de recursos.
Una de las aplicaciones más importantes que permitirá describir los datos de
cada documento y definir las relaciones que hay entre los datos XML. Tratará de
los metadatos (metadata). Se les podría considerar como "los META del
XML". 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 de
software. Desarrollo de software en múltiples plataformas. Describe el reparto
de software a través de la Red. Las etiquetas XML con las que está descrito
definen los componentes, la versión que es, la plataforma en la que ha sido
creado, la relación con otros componentes, etc. Esto hará que se simplifique
el proceso de instalación para el usuario y permitir también un fácil uso de
las actualizaciones.
CML (Chemical Markup Language): Lenguaje de marcas para química. Describe,
entre otras formulas, las estructuras moleculares y cristalinas, los análisis
de 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 MathML
es un lenguaje de bajo nivel que tiene en cuenta la comunicación maquina a
maquina de datos estructurados como información de bases de datos. El lenguaje
MathML utiliza dos series de códigos progresivos: el primero presenta los
signos matemáticos en series crecientes, y el segundo transmite el significado
semántico de las expresiones matemáticas, lo que posibilita la codificación
de símbolos y signos tanto matemáticos como científicos.
EDI (Electronic Document Interchange): Intercambio electrónico de datos.
Lleva un tiempo en proceso de estudio, pero finalmente dará un espaldarazo con
el estándar XML. InfoVía Plus lo integra en uno de sus servicios (InfoEDI).
OFX (Open Financial Exchange): Intercambio financiero abierto. Marco de
trabajo enunciado actualmente en SGML, aunque Microsoft dice que pronto será
enunciado en XML. A través de software de gestión financiera (Quicken,
Microsoft Money, etc.) se podrá conectar con el banco para gestionar las
cuentas y extraer información de la cuenta bancaria. Esto se hará a través de
unos protocolos seguros.
TEI (Text Encoding Initiative): Iniciativa que partió de diversas
asociaciones profesionales en los campos de humanidades. Trata de establecer
etiquetas que propicien la descripción de textos científicos y literarios. En
principio solo está disponible para SGML(6).
7. 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 de
datos. Se hará posible la integración de bases de datos distribuidas en los
navegadores que admitan XML, pudiéndose modificar el contenido y la estructura
de esta. Actualmente implantado en amplias redes nacionales, sin embargo, se
limitan las posibilidades al establecerse una intranet/extranet y con amplias
bases de datos que sólo permiten la visualización de los datos en el
navegador. 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 y
flexibilidad a las aplicaciones basadas en la Web, proporcionando numerosas
ventajas 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ínimas
previstas, la pluviosidad prevista y su probabilidad (expresada en porcentaje).
Esta información adicional se puede trasladar a la vista del usuario sin que el
explorador 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.
Utilidades Futuras:
En su calidad de estándar del sector para expresar datos estructurados, XML
ofrece muchas ventajas a las organizaciones, desarrolladores de software, sitios
Web y usuarios finales. Las oportunidades aumentarán cuantos más formatos de
datos de mercado vertical se creen para mercados claves, como el mercado de búsqueda
avanzada 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 de
datos, las oportunidades serán extraordinarias.
Hoy en día, los servicios de atención al cliente están migrando de centros
de llamadas y sedes físicas a sitios Web, por lo que se beneficiarán de la sólida
funcionalidad de XML. Dado que la mayoría de estas aplicaciones empresariales
implican la manipulación o la transferencia de datos y registros de base de
datos, como pedidos de compra, facturas, información del cliente, citas, mapas,
etc., XML va a revolucionar las posibilidades de los usuarios finales en
Internet, permitiendo la implementación de un amplio abanico de aplicaciones
empresariales. 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 con
vocabularios basados en XML y orientados a intranets. Dichos vocabularios también
ayudan a las pequeñas y medianas empresas que necesiten intercambiar información
entre clientes y proveedores.
Un mercado vital y todavía por descubrir es el de las herramientas de
desarrollo que simplifican a los usuarios finales la creación de sus propios
sitios Web cooperativos, lo que incluye las herramientas para generar datos XML
heredados de información de bases de datos e interfaces de usuario ya
existentes. Además, se pueden desarrollar esquemas estándar para describir
portafolios u otros datos que podrían utilizar, por ejemplo, el diseño, los gráficos
y otras funciones de Excel o de otras hojas de cálculo existentes. Las
herramientas declarativas y visuales para describir XML generadas a partir de
bases de datos heredadas constituyen una oportunidad muy potente. Las
herramientas personalizadas para ver datos XML se pueden escribir en el sistema
de programación de Visual Basic®, en Java y en C++.
XML va a necesitar herramientas nuevas y potentes para la presentación de
datos XML ricos y complejos dentro de un documento. Esto se consigue asignando
una capa de presentación fácil de usar por encima de un conjunto complejo de
datos jerárquicos que pueden cambiar de forma dinámica. Entre los diseños que
se 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 cada
portafolio.
Los sitios Web pueden ofrecer cotizaciones de bolsa, artículos de prensa o
datos sobre el tráfico en tiempo real, los cuales se pueden conseguir a través
de un filtro de difusiones del Web o mediante un sondeo inteligente de un árbol
de servidores que repliquen dichos sitios. Con XML se puede evitar la sobrecarga
de información con sólo redactar normas personalizadas sobre el envejecimiento
de la información, igual que en el correo electrónico. Las herramientas
basadas en XML para que los usuarios creen dichas normas, así como el software
de cliente y servidor para ejecutarlas, constituyen una gran oportunidad. Un
modelo de objeto estándar no podría habilitar dichas funciones, normalmente
escritas en secuencias de comandos, para filtrar los mensajes entrantes,
examinar los mensajes almacenados, crear mensajes salientes, obtener acceso a
bases de datos, etc. Dichos agentes se pueden redactar de forma que se ejecuten
en cualquier lugar de forma automática.
8. Instalación (Requerimientos de Hardware y Software).
Software:
Para desarrollar aplicaciones basadas en XML es suficiente Con un editor de
textos ASCII (el Bloc de notas, por ejemplo) y con un visualizador que incluya
un parser adaptado a XML (Microsoft Internet Explorer 5, por ejemplo), se pueden
crear y ver documentos XML.
No obstante, existen muchas nuevas herramientas que facilitan un poco la
labor del diseñador, algunas de ellas gratuitas, como el "Microsoft XML
Notepad", que aprovecha los motores internos del Explorer para trabajar.
La versión 4.x del Netscape Navigator no soporta XML, y aunque se supone que
la versión 5 sí lo permitirá, la política comercial actual de Netscape no
permite asegurar cuándo ni cómo será.
Existen otros varios visualizadores/navegadores que admiten XML, como Amaya,
HotMetal o HyBrick, aunque casi cada día están saliendo nuevos productos
(analizadores, visualizadores, motores, editores, DTDs, etc.).
Aunque la versión 1.0 de XML es ya definitiva, no pasa lo mismo con las demás
normativas que le acompañan, que poco a poco van pasando del estado de
"borrador de trabajo" al de "recomendación"
(http://www.w3c.org). Este es otro de los motivos por los que XML no termina de
generalizarse, ya que las empresas se piensan mucho invertir en productos que no
están soportados por estándares definitivos.
Hardware:
Ya están empezando a aparecer servidores de Internet especialmente diseñados
para satisfacer los requerimientos de XML. Entre sus funciones destacan el
almacenamiento y manipulación de datos XML, características mejoradas en la búsqueda
de datos, integración de fuentes diversas de información en bases de datos XML
unificadas.
Un ejemplo de este tipo de servidor será el BizTalk Server de Microsoft,
especialmente diseñado para el comercio electrónico. Empresas como Bluestone
Software ( www.bluestone.com ), Object Design Inc ( www.objectdesign.com ) , o
webMethods (www.webmethods.com ), disponen ya de soluciones XML Server.
Microsoft pretende establecer por medio de BizTalk un marco para el comercio
electrónico de empresa a consumidor. El objetivo de BizTalk es el de
desarrollar una red dentro de su portal Microsoft Network, que permita poner en
contacto a empresas y consumidores.
9. 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.
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:
Mendoza Francisco.
frankmch@latinmail.com
Compartir 
Publicación enviada por Mendoza Francisco
Contactar mailto:frankmch@latinmail.com
Código ISPN de la Publicación EpZVVZpkZAvMQlxLEY
Publicado Saturday 31 de January de 2004
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.
|