Emmanuel Sánchez Ramírez

Universidad  de  Colima

 

Tema de Investigación para la

Memoria para derecho a ordinario.

 

Facultad de Telemática

 

XML

La información aquí presentada se

refiere a:

-Microsoft Visual Basic for Windows, versión 4.0

Introducción.

En este artículo vamos a ver:

    
-   XML. 
 

El XML  o Extensible Markup Language, es un 
derivado del lenguaje SGML que es la base 
para el conocido por todos HTML, aunque a 
diferencia del SGML el XML es más simple y 
más corto.

Si lo comparamos con el HTML, el XML resulta
 más poderoso, especialmente por una 
característica especial, en XML es posible 
definir la cantidad de tags que queramos, es 
decir, que no tiene la limitación del HTML en 
donde se cuenta con una serie limitada de 
tags, como <h1>, <td>, <pre>, etc

MÁS INFORMACIÓN

XML y SGML

 

XML, como SGML es un meta lenguaje para

describir diferentes tipos de documentos,

aunque las especificaciones de XML son

menores en tamaño que el SGML. El XML

no es un remplazo del SGML, algunas

características de este último, fueron

transladadas hacia XML de manera más

simple.

 

XML y HTML

 

Tampoco el XML es un remplazo del HTML,

pero resulta mucho más poderoso, debido a las

características de manejo de Applets Java,

manipulación de datos y la posibilidad de definir

tags con propiedades específicas.

 

Por qué XML?

Este artículo trata sobre el uso de XML como formato

estándar para datos. Ofrece una visión general de XML,

de los motivos de su creación y de por qué es una

tecnología muy útil y valiosa para la representación y

el intercambio de datos.

Por qué utilizar XML?

El Web nos ha permitido comunicarnos con cualquier

persona de cualquier lugar. Los estándares de amplia

aceptación, fundamentales para aprovechar todo el

potencial del Web, permiten la comunicación por el Web

a través de muchas capas de tecnología interoperativa.

Una capa importante es la presentación visual y la interfaz

de usuario, ejemplificada en los estándares actuales,

como HTML, GIF y JScript™.

Dichos estándares permiten crear una página una sola

vez y mostrarla en momentos distintos para varios

receptores. Aunque los estándares visuales y de interfaz

de usuario son una capa necesaria, no son suficientes

para representar y administrar los datos. En la actualidad,

Internet es un simple medio de acceso a texto e imágenes.

No hay ningún estándar establecido para la búsqueda

inteligente, el intercambio de datos, la presentación

adaptable ni para la personalización. Internet debe ir

más allá del establecimiento de un estándar de acceso

y presentación de información. Tiene que establecer un

estándar para la comprensión de la información, una

forma común de representar los datos para que el software

pueda buscar, desplazar, presentar y manipular mejor los

datos ocultos en una oscuridad contextual.

HTML no puede hacerlo porque es un formato que describe

la apariencia que debería tener una página Web, pero no

representa datos. Por ejemplo,

HTML no: ofrece una forma estándar para que un médico

pueda enviar una receta a un farmacéutico.

Habilita a un laboratorio médico para publicar datos

estadísticos en un formato que puedan analizar todos

los receptores.

Describe un pago electrónico de forma que todos los

receptores puedan descodificarlo y procesarlo. ofrece una

forma estándar de buscar documentos de pleitos sobre un

tema determinado en bibliotecas legales.

Especifica cómo se pueden transmitir los datos del catálogo

de una empresa de forma que un comercial pueda trabajar

fuera de línea, mostrar el catálogo a los clientes, recibir

pedidos ni enviar dichos pedidos en un formato estándar.

En resumen: aunque HTML ofrece amplias facilidades de

presentación, no ofrece ninguna forma basada en los

estándares para administrar los datos. Un estándar de

representación de datos ampliaría Internet del mismo modo

que el estándar HTML de visualización lo hizo hace pocos

años.

El estándar de datos sería el vehículo para las transacciones

comerciales, la publicación de perfiles de preferencias

personales, la colaboración automatizada y el uso compartido

de bases de datos. Los historiales médicos, los datos de

investigación farmacéutica, las hojas de piezas

semiconductoras y los pedidos de compra se escribirían

todos en el mismo formato. Permitirá una gran variedad de

usos nuevos, todos basados en una representación estándar

para el desplazamiento de datos estructurados por todo el

Web tan fácilmente como desplazamos las páginas HTML hoy

en día.

El estándar de datos es XML y las extensiones XML.

¿Qué es XML?

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 el 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.

Documentos XML

XML es un formato basado en texto, parecido al HTML en

muchos aspectos, específicamente diseñado para

almacenar y transmitir datos.

Un origen XML se compone de elementos XML, cada uno

de los cuales consta de una etiqueta de inicio () y de

los datos comprendidos entre ambas etiquetas

(el contenido). Al igual que los documentos HTML, un

documento XML contiene texto anotado por etiquetas.

Sin embargo, a diferencia de HTML, XML admite un

conjunto ilimitado de etiquetas, no para indicar el

aspecto que debe tener algo, sino lo que significa.

Por ejemplo: un elemento XML puede estar etiquetado

como precio, número de pedido o nombre.

El autor del documento es quien decide qué tipo de

datos va a utilizar y qué etiquetas son las más

adecuadas. Los documentos XML son fáciles de crear.

Si está familiarizado con HTML, aprenderá muy

rápidamente a crear documentos en XML. En este

ejemplo se utiliza XML para describir un parte

meteorológico. Este archivo se puede guardar con

una extensión de XML, por ejemplo Tiempo.xml.

Ejemplo

 

En lugar de describir el orden y la disposición de la

presentación de los datos, las etiquetas indican qué

significa cada elemento de datos (si es un elemento ,

un elemento , etc.). Cualquier receptor de

estos datos puede descodificar el documento y utilizarlo

para sus propios fines. Por ejemplo: un particular puede

utilizarlo para planificar el día, mientras que un

meteorólogo puede utilizarlo como datos para un registro

histórico de Seattle.

Extensible

En XML se puede definir un conjunto ilimitado de etiquetas.

Mientras que las etiquetas HTML se pueden utilizar para

mostrar una palabra en negrita o en cursiva, XML ofrece un

marco de trabajo para etiquetar datos estructurados. Un

elemento XML puede indicar que los datos asociados son un

precio de venta, un impuesto de ventas, un índice de

pluviosidad o cualquier otro elemento de datos.

Dado que las etiquetas XML son iguales en toda una

organización y para todos los usuarios de Internet, existirá

la capacidad de buscar y manipular datos

independientemente de las aplicaciones en las que se

encuentren. Una vez encontrados los datos, se pueden

entregar a través de la red y presentar en un explorador

de muy distintas formas, o bien se pueden pasar a otras

aplicaciones para procesarlos y verlos.

Una etiqueta representa una parte de los datos. A menudo

corresponde a un campo de una tabla. No obstante, esto

no es necesario en absoluto. La etiqueta puede ser una

columna calculada (precio por cantidad). Un archivo XML

no tiene por qué representar los datos de una tabla. Es

igual de frecuente que un archivo XML represente los

resultados de una consulta efectuada en varias tablas.

Siempre y cuando la aplicación receptora pueda descifrar

los datos del archivo XML, la procedencia de los datos y

su llegada al archivo XML es indiferente.

 


Ventajas de XML 
XML aporta mucha potencia y flexibilidad a las aplicaciones 
basadas en el Web, proporcionando numerosas ventajas a 
los programadores y usuarios:

Búsquedas con más significado 
Programación de aplicaciones Web flexibles 
Integración de datos procedentes de fuentes dispares 
Computación y manipulación locales de los datos 
Varias vistas de los datos 
Actualizaciones granulares 

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.

PRECAUCIÓN: CUALQUIER UTILIZACIÓN POR

SU PARTE DEL CÓDIGO INCLUIDO EN ESTE

ARTÍCULO SE HARÁ A SU CUENTA Y RIESGO.


 

 


Última revisión: 5-Julio-2000
© 2000 Microsoft Corporation.

Todos los derechos reservados.



 

PROGRAMA DE EJEMPLO

Ejemplo básico de XML:

<CONTACTO>

<NOMBRE>JUAN PEREZ </NOMBRE>

<ID>100</ID>

<COMPANIA>XML NETWORKS</COMPANIA>

<EMAIL>[email protected]</EMAIL>

<TELEFONO>621-9233</TELEFONO>

<PAIS>MEXICO</PAIS>

</CONTACTO>

 

<CONTACTO>

<NOMBRE>EMMANUEL SANCHEZ</NOMBRE>

<ID>101</ID>

<COMPANIA>LA PRIMERA S.A.</COMPANIA>

<EMAIL>[email protected]</EMAIL>

<TELEFONO>412-3644</TELEFONO>

<PAIS>MEXICO</PAIS>

</CONTACTO>

 

Este pequeño ejemplo, muestra como se pueden definir tags propios, para agrupar tipos de datos de manera inteligente en XML, vale aclarar que </NOMBRE> O <PAIS> no son tags que vengan incluídos en el diccionario de XML, sinó que son creados por el programador para agrupar mejor los datos.

 

 

continuacion.....

 

Los datos están separados entre la presentación y el proceso La potencia y la belleza de XML residen en el hecho de que mantiene la separación entre la interfaz de usuario y los datos estructurados. HTML especifica la forma de presentar los datos en un explorador, mientras que XML define su contenido.

En HTML, las etiquetas se utilizan para indicar al explorador que presente los datos en negrita o en cursiva, mientras que en XML las etiquetas sólo se utilizan para describir los datos, como el nombre de la ciudad, la temperatura y la presión atmosférica. En XML se utilizan hojas de estilo, como el lenguaje de estilo extensible (XSL) y las hojas de estilo en cascada (CSS), para presentar los datos en un explorador.

XML separa los datos de la presentación y del proceso, lo que permite mostrar y procesar los datos a su gusto con sólo aplicar distintas hojas de estilo y aplicaciones. Esta separación entre los datos y la presentación permite una perfecta integración de los datos procedentes de varios orígenes. La información sobre clientes, los pedidos de compra, los resultados de búsquedas, los pagos de facturas, los registros médicos, los datos de catálogo y otros orígenes de datos pueden convertirse en XML en el nivel medio, lo que permite intercambiar los datos en línea con la misma facilidad con la que las páginas HTML muestran los datos hoy en día.

A continuación, los datos codificados en XML se pueden distribuir por el Web hasta el escritorio. No hace falta ninguna retroalimentación para la información previamente almacenada en bases de datos o documentos de grandes sistemas (mainframe). Además, puesto que se utiliza HTTP para distribuir el XML, esta función no requiere ninguna modificación. Conversión de los datos XML en autodescriptivos Con XML, se pueden incluir archivos de definición de tipo de documento (DTD) con un documento para definir sus normas, como los elementos que están presentes y la relación estructural entre los elementos.

Los archivos DTD ayudan a validar los datos cuando la aplicación receptora no tiene una descripción incorporada de los datos entrantes. No obstante, los DTD son opcionales con XML. Los datos enviados con un DTD se reconocen como XML válido. En este caso, un analizador de XML podría comparar los datos entrantes con las normas definidas en el DTD para comprobar que los datos se han estructurado correctamente.

Los datos enviados sin un DTD se reconocen como bien formados. Aquí se puede utilizar una instancia de documento basada en XML, como los datos meteorológicos estructurados jerárquicamente del ejemplo anterior, para describirse a sí misma de forma implícita.

Con el XML válido y el bien formado, los datos codificados en XML son autodescriptivos, pues las etiquetas descriptivas están entremezcladas con los datos. El formato abierto y flexible utilizado por XML permite su uso en cualquier lugar donde sea necesario intercambiar y transferir información. Esta capacidad lo hace extremadamente potente. Por ejemplo, se puede utilizar XML para describir información sobre páginas HTML o para describir los datos contenidos en reglas u objetos empresariales de una transacción de comercio electrónico, como facturas, pedidos de compra y formularios de pedido.

Dado que el XML es independiente del HTML, se puede insertar código XML en documentos HTML. El W3C ha definido un formato mediante el cual se pueden encapsular en páginas HTML los datos basados en XML, o islas de datos XML. Al incrustar datos XML en una página HTML, se pueden generar varias vistas a partir de los datos entregados, utilizando los datos semánticos que contiene el XML.

Asimismo, se puede utilizar XML para otras aplicaciones muy atractivas, como la impresión distribuida, la búsqueda en bases de datos, etc. Esquemas Un esquema es una especificación formal de las normas de un documento XML (es decir, los nombres de los elementos), que indica qué elementos se permiten en un documento y en qué combinaciones.

Los nuevos lenguajes de esquemas, definidos en las propuestas XML-Data (Datos de XML) y DCD (Descripción del contenido del documento) enviadas por el XML-Data Working Group (en inglés) al W3C, proporcionan las mismas funciones que un archivo DTD. No obstante, puesto que estos lenguajes de esquema son extensibles, los desarrolladores pueden ampliarlos con información adicional, como los tipos de datos, la herencia y las normas de presentación. Esto hace que los nuevos lenguajes de esquemas sean mucho más potentes que los DTD. Con XML-Data y DCD, Microsoft y otros fabricantes han propuesto vocabularios para que un documento XML exprese el esquema XML que utiliza.

Esto permite que sean los datos XML los que describan su propia estructura. La expresión de esquemas dentro de XML aumenta la potencia del formato XML, pues permite que el software examine determinados datos para comprender su estructura, sin necesitar ninguna descripción previa incorporada de la estructura de los datos. Con un esquema, un autor puede definir exactamente qué nombres de elementos se permiten en un documento y, dentro de cada elemento, qué subelementos, atributos y relaciones se admiten.

El autor puede importar fragmentos de otros esquemas, así como ampliar tipos a través de la herencia. Todo ello permite establecer relaciones complejas entre los elementos sin perder la simplicidad de la estructura de árbol léxico. Los autores pueden inventar sus propios esquemas o compartir los creados por otros autores. Los lectores pueden comprobar las referencias del esquema para verificar que el documento recibido es del tipo correcto.

También pueden utilizar la información del esquema para validar la estructura del documento de forma automática. Las empresas que deseen utilizar XML necesitan una manera sencilla de buscar la información del esquema, los documentos y los procesos empresariales compatibles con otras aplicaciones empresariales. Imagine el enorme coste que supondría para los consumidores y las empresas si cada empresa definiera su propia forma de publicar la información.

Incluso con el Web, los costes asociados a la configuración y el mantenimiento de un sitio Web superan la capacidad de algunas empresas. Al no haber ningún límite al número de empresas que podrían publicar esta información, la falta de estándares que definan el modo de publicarla de una forma segura y controlada tendría como consecuencia miles y miles de implementaciones, enfoques de exploración del Web y profundidad del contenido distintos.

La carga financiera que supondría permitir la propagación de este entorno "salvaje" llegaría hasta los consumidores. Microsoft ha optado por reducir al mínimo este problema, motivo por el que ha creado y administra http://www.biztalk.org/ (en inglés) . Este sitio crecerá hasta convertirse en un portal para localizar, administrar, publicar y obtener información sobre XML, XSL y los modelos de información utilizados en miles de aplicaciones. La publicación de un repositorio en línea plenamente funcional está prevista para principios de otoño de 1999.

Estándares abiertos XML se basa en una tecnología desarrollada a partir de estándares probados y optimizada para el Web. Microsoft está trabajando en colaboración con otras empresas líderes y con grupos de trabajo del W3C para garantizar la interoperabilidad y la asistencia a los programadores, autores y usuarios de varios sistemas y exploradores, así como para desarrollar el estándar XML.

La iniciativa XML consta de un conjunto de estándares relacionados entre sí: Extensible Markup Language (XML) (en inglés) es una Recomendación, la fase final del proceso de aprobación del W3C. Esto significa que el estándar es estable y que los desarrolladores de Web y de herramientas pueden adoptarlo plenamente. Namespaces in XML (en inglés) es una Recomendación que describe la sintaxis y la compatibilidad de los espacios de nombres para los analizadores XML que reconocen espacios de nombres.

Document Object Model (DOM) Level 1 Specification (en inglés) es una Recomendación que ofrece un estándar para el acceso mediante programación a los datos estructurados (a través de secuencias de comandos), de modo que los desarrolladores puedan interactuar de forma coherente con los datos basados en XML y computarlos. Extensible Stylesheet Language (XSL) Specification (en inglés) es todavía un borrador de trabajo. El XSL tiene dos secciones modulares: el lenguaje de transformación XSL y los objetos de formato XSL.

El lenguaje de transformación puede servir para transformar el XML de cara a su presentación. Puesto que las dos partes de XSL son modulares, el lenguaje de transformación se puede utilizar de forma independiente para transformaciones con fines generales, incluida la conversión de XML en HTML bien formado. CSS se puede aplicar a datos XML de estructura simple, pero no puede modificar el orden de presentación de la información. XML Linking Language (XLL) (en inglés) y su compañero XML Pointer Language (XPointer) (en inglés) , son todavía borradores de trabajo. XLL es un lenguaje de vinculación XML que ofrece vínculos en XML parecidos a los de HTML, pero más potentes. Con XLL, los vínculos pueden tener varias direcciones y pueden existir en el nivel de los objetos, no sólo en el nivel de las páginas. Internet Explorer 5 no tiene incorporada la compatibilidad con XLL.

 

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.

 

 

ID Artículo: DAO01

Última revisión:
5-JULIO-2000

Ofrecido por: Emmanuel Sánchez Ramírez