XML, estructura vs. presentación - Soluciones XML/XSL
La motivación principal de XML/XSL era crear una forma de crear y transmitir documentos estructurados en el Web, esto debido a que el lenguaje estándar (HTML - Hyper Text Markup Language) para el web adolesce de numerosas limitaciones, siendo la principal de ellas la imposibilidad de definir marcadores propios para aplicaciones específicas.
Ahora veamos como una colección grande de problemas, todos relacionados con la necesidad de transmitir y procesar información de manera coherente, se resuelven con el uso de XML y XSL.
La idea de conseguir desplegar información y realizar búsquedas es central al mundo científico y a la necesidad de poder compartir reportes y papers de carácter técnico, que de por sí poseen una estructura compleja.
Por ejemplo, la única posibilidad de un matemático de poner una fórmula en el web es recurriendo al truco de crear la fórmula en algún programa, sacarle una "foto", es decir, tomar sólo una imágen de la fórmula y ponerla en su página.
Esto significa que otro matemático no puede tomar directamente la fórmula o ecuación, copiarla de la página y pegarla en algún software de algebra, cálculo o gráficos para analizarla.
XML al rescate. Con XML, es posible la existencia de MathML (Mathematics Markup Language - Lenguaje de marcadores matemáticos)
Tomemos la ecuación "X2 + 4X + 4 = 0" y veamos su representación en alguno de los dos "sabores" de MathML, que son el descriptivo y el conceptual, sólo a manera de ejemplo.
Desde el punto de vista descriptivo, una posible forma de marcar la ecuación utiliza los átomos <CODE><MI></CODE> (identificador matemático) <MO> (operación matemática) y <MN> (número matemático), junto <MROW> para juntar términos y <MSUP> para denotar superíndice.
<mrow> <mrow> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo> <mrow> <mn>4</mn> <mo>&invisibletimes;</mo> <mi>x</mi> </mrow> <mo>+</mo> <mn>4</mn> </mrow> <mo>=</mo> <mn>0</mn> </mrow>
Desde el punto de vista conceptual, utilizamos <APPLY> (aplicar operación) <TIMES> (multiplicar) <PLUS> (sumar) junto a <CI> (identificador conceptual) y <CN> (número conceptual).
<apply> <plus/> <apply> <power/> <ci>x</ci> <cn>2</cn> </apply> <apply> <times/> <cn>4</cn> <ci>x</ci> </apply> <cn>4</cn> </apply>
Así como existe MathML, hay esfuerzos en desarrollar:
ChemML, para modelamiento y representación de moléculas AML, para datos astronómicos AIML, para operación de instrumentos astronómicos BioSequenceML, para datos genéticos
Y se espera que con el tiempo se desarrollen más aplicaciones en esta línea. Hay un artículo muy interesante al respecto en la revista Scientific American (Mayo 1999).
Hay un apodo divertido para el World Wide Web, aun cuando encierra un poco de crueldad: World Wide WAIT (espera mundial); y al momento de buscar responsabilidades todos los dedos acusadores se levantan y apuntan al ancho de banda (la capacidad física instalada de las líneas telefónicas) como el gran culpable.
Pero existe otro motivo que no es menor. Cuando un cliente desea hacer una compra en Internet y agrega un producto a su orden de compra y saber cual es el total (¡una simple operación de suma!) debe presionar un botón, enviar su orden parcial al servidor de la empresa que está ofreciendo el producto y esperar la respuesta. Esto explica lo lento que funciona comprar libros, CDs u otros productos a través de Internet. Cada vez que se realiza cualquier operación sencilla el servidor debe re-enviar toda una página de vuelta. Este problema puede ser resuelto transfiriendo parte del trabajo al navegador del cliente por medio de información estructurada.
Otro punto que también crea desánimo y molestia en los usuarios de un sitio web es que muchos diseñadores, al ver todas las limitaciones de HTML, optan por llenar el sitio de grandes imágenes gráficas, que obtienen un resultado visualmente atractivo pero absolutamente poco práctico para quien está conectado desde su casa. Esto causa el abandono de los usuarios de gran cantidad de sitios.
El uso intensivo de XML y XSL permitirá mejorar simultáneamente la presentación y la velocidad de transmisión, lo que sumado al incremento, más modesto, del ancho de banda disponible, permitirá acercar aún más a las empresas y sus clientes.
Un último asunto es el siguiente: veamos qué pasa si varias empresas ofrecen un producto y publican en Internet sus respectivos catálogos de producto. Un ejemplo del mismo aviso de dos vendedores distintos:
- Peugeot 505 1995 impecable 18.000km, sólo 2560000 llamar al fono 666 1995
- 1.500.000 Peugeot 505 excelente estado, sólo 10000km llamar 2560000 conversable
Usted y yo probablemente con sólo estas dos opciones nos decidiríamos por el segundo. ¿Pero que pasa si hay 80 avisos ofreciendo el mismo automóvil?. No se puede pedir a un programa computacional que busque "el más barato" porque le sería imposible distinguir ciertas cosas (el teléfono y el precio, por ejemplo) que son evidentes para un humano, en cambio, se puede crear una versión estructurada del mismo aviso:
<AVISO> <MARCA>Peugeot> <MODELO>505> <ESTADO> <USADO>15000</USADO> <UNIDAD>Kilómetros</UNIDAD> </ESTADO> <PRECIO> <VALOR>2560000</VALOR> <UNIDAD>Pesos Chilenos</UNIDAD> </PRECIO> <VENDEDOR> <TELEFONO>6668822</TELEFONO> </VENDEDOR> </AVISO>
Esta situación crea un escenario completamente distinto, amplía las posibilidades del comprador y crea un mejor ambiente de competencia que el existente actualmente, además, si usted quiere cambiar el formato en que se presenta el catálogo de productos, no necesita cambiar el aviso.
Existe un lenguaje en desarrollo basado en XML para avisaje de productos, creado por la asociación norteamericana de periódicos, para ser utilizado en el web. Más información en esta línea está disponible en el sitio de XML.COM, perteneciente a un grupo privado dedicado a difundir aplicaciones tecnológicas y posibilidades de XML.
|
Opiniona sobre 'XML, estructura vs. presentación - Soluciones XML/XSL' (0)
Opina sobre este monografía |


