El Problema
Las Causas
La Solución
|
-
Internet, y el Web en concreto están suponiendo una de las grandes
revoluciones tecnológicas equiparable a la que causó el descubrimiento
de la máquina de vapor.
- Con la máquina de vapor se pudo empezar a viajar
con cierta rapidez, y esto permitió la comunicación entre la gente.
- Con Internet y el Web, la gente se puede comunicar con los demás
con cierta rapidez.
-
Ahora todos nos podemos comunicar con todos, pero no nos
entendemos:
- Internet es una red rapidísima que sólo nos permite ir a
gatas.
- La cantidad de información disponible crece exponencialmente,
pero somos incapaces de encontrar lo que buscamos.
- Cada uno entiende las cosas a su manera: demasiados idiomas,
demasiadas formas de decir lo mismo.
- HTML: HyperTex Markup Language.
- HTML es el lenguaje de publicación más exitoso jamás
inventado: es fácil de aprender.
- Es demasiado superficial: sólo describe el cómo no el qué.
- WYSIWYG: What You See Is What You Get se convierte en
"lo que ves es todo lo que tienes ".
- Los navegadores son demasiado generosos, se tragan todo lo que se
parezca a un documento HTML.
- HTML es estático, no se puede modificar, adaptar a nuestras
necesidades.
- Esto hace que los servidores Web sean poco más que expendedores de
páginas, faxes; es difícil conseguir servicios Web interactivos y
flexibles.
- Es difícil saber si una página será interesante antes de
descarlaga y verla, lo que genera tráfico innecesario.
- Utilizar etiquetas que expresen de qué información se trata,
no cómo se ha de representar.
- XML: eXtensible Markup Language.
- XML puede ser leido tanto por máquinas como por personas.
- Los documentos XML siguen unas reglas de generación sencillas
pero bien definidas que les hace fácilmente procesables.
- XML utiliza el conjunto de caracteres UNICODE, lo que facilita la
internacionalización.
- Ayuda a descongestionar Internet, ya que gran parte del
procesamiento se puede hacer en el cliente.
- Facilita encontrar lo que se está buscando: exactitud y
agilidad.
- Permite el intercambio de información sobre Internet.
|
Arriba...
|
Superando a HTML
Extensible
Docs. Válidos
Estilo
Ejemplos
|
-
Si sólo se quiere mostrar texto, nada que objetar a HTML.
-
Si se quiere automatizar el procesamiento de la información Web, se
necesita extender HTML añadiendo nuevas etiquetas, programas en el
servidor, en los clientes, etc.
- El problema es que HTML no es unilateralmente extensible.
- XML es un subconjunto simplificado pero estricto de SGML
(Standard Generalized Markup Language):
- Extensible: se pueden definir nuevas etiquetas.
- Estructurado: cada modelo de documento está contenido en un
DTD, Document Type Definition.
- Validable: cada documento se puede validar frente a un DTD, o en
su defecto, se puede declarar bien formado.
- XML es fácil de aprender y de usar.
- Los documentos XML son fácilmente procesables y
compartidos en Internet.
- XML no es compatible con HTML, pero los documentos HTMLv4.0 son
fácilmente convertibles a XML.
- Se pueden crear tantas etiquetas se necesiten.
- Marcado descriptivo: las etiquetas delimitan una porción del
documento y dicen lo que es.
- Ejemplo: un correo electrónico
<!doctype email system "http://www.sitio.es/DTDs/email.dtd">
<email>
<head>
<from>
<name>Jesús Vegas</name>
<address>jvegas@infor.uva.es</address>
</from>
<to>
<name>Fulanito</name>
<address>fulanito@unsitio.es</address>
</to>
<subject>Introducción a XML</subject>
</head>
<body>
<p>Este es el guión de la conferencia sobre XML.
Mira a ver qué te parece. Saludos, jvegas.</p>
<attach encoding="mime" name="xml.html" />
</body>
</email>
- Se se quisiera procesar este correo electrónico para mostrarlo en
una patalla grande o en un teléfono móvil solo habría que escribir las
reglas de transformación necesarias en cada caso.
- La idea es separar la sintaxis y la semática del documento de
su presentación.
- El conjunto de reglas que define los documentos del tipo correo
electrónico puede ser el siguiente:
<!element email (head, body)>
<!element head (from, to+, cc*, subject)>
<!element from (name?, address)>
<!element to (name?, address)>
<!element cc (name?, address)>
<!element name (#PCDATA)>
<!element address (#PCDATA)>
<!element subject (#PCDATA)>
<!element body (p | attach)*>
<!element p (#PCDATA)>
<!element attach EMPTY>
<!attlist attach encoding (mime|binhex) "mime"
name CDATA #REQUIRED>
Un DTD establece tanto los elementos que forman un tipo de
documento dado, como las relaciones que se dan entre ellos.
Un documento XML está constituido por elementos, que tendrán una
etiqueta de inicio, y pueden tener atributos y valores, y una etiqueta de fin.
Un DTD puede estar en la misma máquina que el documento asociado
o en otra distinta.
Un documento XML puede estár distribuido a lo largo de varios
ficheros:
<!doctype libro system "libro.dtd"
[
<!entity indice system "indice.xml">
<!entity cap1 system "capitulos/cap1.xml">
<!entity cap2 system "capitulos/cap2.xml">
]>
<libro>
<cabecera>
<&indice;>
</cabecera>
<cuerpo>
<&cap1;>
<&cap2;>
</cuerpo>
</libro>
Incluso el concepto de hiperenlace se puede extender permitiendo
varias posibilidades, en lugar de ir directamente a otro documento.
- Un documento es válido si es conforme con el DTD.
- Los documentos pueden ser validados fácilmente por
parses (existen muchos y son fácilmente programables debido a
la naturaleza arborescente de la estructura de los documentos
XML).
- Si no se dispone de DTD, se puede cualificar el documento como
bien formado o no:
- Están todas las etiquetas.
- Todas las etiquetas están pareadas, excepto aquellas que
corresponden a elementos vacíos, que acaban con /> .
- Todos los valores de los atributos están entrecomillados.
- Todas las entidades están declaradas.
- Los navegadores son muy tolerantes con la calidad de
etiquetado de los documentos HTML, aunque esto impide un procesamiento
adecuado de los mismos (hogeneidad en la presentación, buscar, etc,
etc..).
- Es fácil saber si un documento XML es válido, o en ausencia
de DTD, o si está bien formado, y procesarle adecuadamente o
desecharle en otro caso.
- No todo el mundo está obligado a escribir sus propios DTDs, se
pueden utilizar DTDs creados por otros (RDF).
- XML no da pistas sobre el modo de mostar cada elemento de
información.
- Esto es una ventaja: "escribir una vez y publicar donde
sea".
- XSL eXtensible Stylesheet Language permite transformar el
documento para mostrarlo de la manera adecuada.
- También se pueden aplicar las hojas de estilo propias de HTML: CSS
Cascade StyleSheets.
- Utilizar CSS cuando se pueda, y XSL cuando se deba.
© W3 consortium
- RDF, Resource Description Framework, es un marco de
trabajo que permite la codificación, intercambio y reutilización de
metadatos estructurados.
- OFX, Open Financial Exchange, formato utilizado por
Quichen y Microsoft Money para comunicarse con los bancos.
- CML, Chemical Markup Language, lenguaje para el
intercambio de descripción de moléculas, fórmulas y otros elementos
químicos.
- MML, Mathematical Markup Language, diseñado para soportar
la escritura de fórmulas matemáticas.
- OSD, Open Software Distribution, de Marimba y Microsoft.
|
Arriba...
|
Qué son?
Iniciativas
|
- Metadatos: información sobre los datos.
- En las bibliotecas existen desde tiempos inmemoriales en forma de
fichas de catálogo, que facilitan la localización de los documentos.
- En Internet esto no es tan fácil: los metadatos deben ser
adecuados para la interpretación tanto por parte de las personas como
por los robots de búsqueda.
- Además deben ser tan fáciles de crear que cualquier autor pueda
describir el contenido de sus páginas: accesibilidad y utilidad.
- TEI, Text Encoding Initiative tiene mucha experiencia en
la estandarización de la descripción de documentos electrónicos.
- Sus esquemas son complejos y requieren cierta experiencia en el
tema para su utilización.
- La etiqueta META del HTML.
- Altavista utiliza esta etiqueta: keyworks para indexar y
devuelve description en lugar de las dos primeras líneas del documento.
-
<META NAME="description"
CONTENT="XML, formatos para Internet">
<META NAME="keyworks"
CONTENT="XML, Internet, ebusiness">
- DC, Dublin Core, es capaz de describir la mayoría de los
recursos disponibles en Internet.
- Es muy fácil de usar y de interpretar.
- Está compuesto por 13 elementos extensibles: Subject,
title, author, publisher, etc.
|
Arriba...
|
Hacia el Comercio
Intercambiando Docs.
EDI
EAI
ebXml
|
- Aunque el Web nació y explotó entorno a la ciencia y a la
educación, ha sido el comercio el que le ha lanzado al estrellato.
- Los sitios donde se pueden comprar bienes y servicios (B2C)
se han desarrollado expectacularmente.
- Otro tipo de comercio entre empresas (B2B) está también
desarrollándose, aunque no de forma tan evidente como el anterior para
el público en general.
- Durante siglos, los negocios se han hecho intercambiando
documentos normalizados como recibos, facturas, albaranes, etc.
- Parece evidente que el comercio electrónico se apoyará en el
intercambio de documentos sobre Internet, y XML es el lenguaje en que
estarán definidos.
- Procesar datos de otros departamentos o empresas debería ser fácil
dados los conocimientos de comunicaciónes y procesamiento que
tenemos, pero no es así.
- Validar el formato de los datos para asegurarnos de su corrección
es el mayor impedimento para un intercambio automatizado de datos.
- Utilizar XML puede ayudar a solucionar el problema:
- Se disponen de parsers de dominio público.
- Junto con el DTD, un parser puede asegurarse de que están
todos los campos requeridos y en el orden preciso.
- La validación se puede hacer en una máquina diferente a la de
procesamiento: se pueden acceptar o denegar los datos en la recepción,
sin llegar más allá en el proceso.
- XML junto con Java permite contruir aplicaciones para el
intercambio de datos:
- Para Java es fácil establecer conexiones TCP/IP.
- Ambos soportan Unicode.
- EDI es una categoría de intercambio de datos que utiliza X12 oA
EDIFACT para describir los documentos intercambiados.
- EDI es un entorno muy caro de instalar y de adaptar.
- Existen intentos de utilización de XML para establecer el
vocabulario y el formato de los documentos X12 y EDIFACT.
- EAI, Enterprise Application Integration trata de hacer
que varias aplicaciones funcionen como si fueran una sóla
aplicación.
- Requiere que los datos sean replicados y distribuidos a los
sistemas apropiados en el momento preciso.
- Ej. ventas-contabilidad.
- Las aplicaciones pueden intercambiar mensajes con una estructura
acordada: XML.
- Objetivo: proveer de una infraestructura abierta basada en XML que
permita el uso global de la información comercial de un modo
interoperable, seguro y consistente.
- UN/CETACT United Nations body for Trade Facilitation and
Electronic Business y OASIS Organization for the Advancement
of Structured Information Standards.
- Facilitar la entrada en el comercio electrónico de las PYMES y de
los paises en desarrollo.
|
Arriba...
|