Download - Diferencias entre XML y HTML
Erik Farias P.
Universidad de Guayaquil
Sistemas Multimedia
Introducción ¿Qué es XML?
XML eXtensible Markup Language (Lenguaje Extensible de Marcas)
Lenguaje abierto, estándar (W3 Consortium) derivado de SGML, optimizado para su uso en la WWW.
Permite describir el sentido o la semántica de los datos.
El XML, a diferencia del HTML, separa el contenido de la presentación.
XML es un Meta-Lenguaje, que permite la definición de lenguajes concretos de representación de documentos.
¿Qué no es XML?
XML no es una “versión mejorada de HTML”.
XML no es un lenguaje para hacer mejores páginas web.
XML no es “difícil”.
Inconvenientes generales de HTML
Está diseñado para presentar información directamente a los humanos, y esto sin duda es algo bueno, pero es un lenguaje complicado de procesar para los programas informáticos.
No es bueno porque no indica lo que está representando, se preocupa principalmente de que eso tiene que ir en azul, o con un tipo de letra determinada, pero no te dice que lo que está mostrando es el título de un libro o el precio de un artículo.
Problemas de HTML
Define más la presentación que el contenido.
No es fácilmente procesable por “máquinas”.
Su estructura es “caótica”.
Su interpretación es ambigua según el software utilizado.
Su uso es la web.
Introducción
La idea que subyace bajo el XML es la de crear un lenguaje muy general que sirva para muchas cosas.
El XML describe el contenido de lo que etiqueta.
Cualquier programa de informática puede trabajar más eficientemente sobre XML que HTML.
¿Por qué XML?
Es un estándar.
No pertenece a ninguna compañía y su utilización es libre.
Permite la utilización efectiva de Internet.
Diferencia entre el SGML, XML y HTML
Características Utilizo mis propias etiquetas.
La sintaxis es estricta. La especificación XML determina claramente una serie de reglas que especifican cuando un documento está bien formado.
La utilización de una DTD (no es necesario, pero sí recomendable).
Los elementos vacíos. La propia etiqueta de inicio llevará una contrabarra al final que los identificará.
Ventajas de XML
Un estándar libre.
Un lenguaje extensible.
Fácilmente procesable por humanos y software.
Una tecnología ya implantada en el mercado.
Diseñado para ser utilizado en cualquier lenguaje o alfabeto.
Separa el contenido de su representación.
Ventajas de XML
HTML
XML
WML
RTF
Un documento muchas formas de
representacíón
Ventajas de XML
Formato ideal para transacciones B2B.
Permite la aplicación de técnicas de extracción de información y minería de datos.
Las estrictas reglas para la composición de un documento XML permiten su fácil análisis sintáctico.
Reseña histórica
Desarrollado a partir de 1996, como subconjunto de SGML.
Adoptado como estándar en Febrero 1998 por el World Wide Web Consortium (W3C)
World Wide Web Consortium (W3C)
Constituido en 1994 con el objetivo de desarrollar protocolos comunes para la evolución de Intermet.
Es un consorcio de industrias internacionales, y está participado por el MIT (EEUU), INRIA (Francia), y Keio University (Japón).
Cuenta con el soporte oficial de DARPA (EEUU) y la Comisión Europea.
Terminología XML eXtended Mark-up Language
SGML Standard Generalised Mark-up Language
XML "bien-formado"
Validación
DTD Document Type Definition
Schema
XSL eXtended Stylesheet Language
Parser Analizador sintáctico
Terminología
Elemento
Atributo
DOM Document Object Model
RDF Resource Description Frarnework
XLink, XPointer
SML Simple Mark-up Language
SMIL
XHTML
Tecnologías XML Especificación
Definición de documentos
Definición de estilos
Enlazado de documentos
Aplicaciones
XML v1.0
DTD o Schemas
XSL=XSLT+Xpath
XLL=XLink+XPointer
RDF, SMIL, HTML, etc.
¿Cómo construir documentos XML?
Los fundamentos del XML son muy sencillos y en principio, para ir empezando, las únicas herramientas que nos harán falta son:Un editor de textos, con el que escribir nuestros
documentos XML (el notepad en Windows y el xemacs en Linux)
Un procesador o parser XML (Explorer 5.X, Mozilla, XMLWriter)
Editor XML
Estructura de un documento XML Aunque a primera vista, un documento XML puede
parecer similar a HTML, hay una diferencia principal.
Un documento XML contiene datos que se autodefinen, exclusivamente.
Un documento HTML contiene datos mal definidos, mezclados con elementos de formato.
En XML se separa el contenido de la presentación de forma total.
Ejemplo
<pensamientos>
<autor> Gibran, Khalil </autor>
<cita> Para entender el corazón y la mente de una
persona, no te fijes en lo que ha hecho, no te fijes en lo
que ha logrado, sino en lo que aspira a hacer. </cita>
</pensamientos>
Una forma rápida de entender la estructura de un documento XML es viendo un ejemplo:
Ejemplo
<?xml version='1.0'?>
<album>
<titulo>Nos sobran los motivos</titulo>
<autor pais='ES'>SABINA</autor>
<formato>MP3</formato>
<localizacion>Varios CD5 </localizacion>
</album>
Estructura Cada documento XML posee una estructura lógica
y una física.
La estructura lógica del documento es una serie de declaraciones, elementos, comentarios, etc. que se indican en el documento mediante marcas explícitas.
La estructura física del documento es una serie de unidades llamadas entidades, es decir, indica los datos que contendrá el documento.
Las estructuras lógica y física deben anidarse de forma correcta.
Estructura jerárquica de los elementos
Los elementos deben seguir una estructura de “árbol” (estrictamente jerárquica).
Los elementos deben estar correctamente anidados.
Los elementos no se pueden superponer entre ellos.
Ejemplo de XML
Incorrecto
<?xml version='1.0'?>
<titulo>Nos sobran los motivos
Correcto
<?xml version='1.0'?>
<titulo>Nos sobran los motivos</titulo>
Estructura jerárquica
Sólo puede haber un elemento raiz, en el que estén contenidos todos los demás.
Ejemplo incorrecto
<?xml version='1.0'?>
<titulo>Nos sobran los motivos</titulo>
<autor pais='ES'>SABINA</autor>
<formato>MP3</formato>
<localizacion>Varios CD5 </localizacion>
Ejemplo correcto
<?xml version='1.0'?>
<album>
<titulo>Nos sobran los motivos</titulo>
<autor pais='ES'>SABINA</autor>
<formato>MP3</formato>
<localizacion>Varios CD5 </localizacion>
</album>
Documentos XML “bien-formados”
Se dice que un documento XML está “bien-formado” cuando cumple una serie de reglas descritas en la especificación oficial de XML v1.0
Ejemplo<?xml version="1.0"?>
<!DOCTYPE MENSAJE SYSTEM "mensaje.dtd">
<mensaje>
<remite>
<nombre>L. Alfonso Ureña</nombre>
<email>[email protected]</email>
</remite>
<destinatario>
<nombre>Reyes Magos</nombre>
<email>[email protected]</email>
</destinatario>
<asunto>Petición Reyes</asunto>
<texto>
<parrafo>Queridos Reyes, bla, bla, ....</parrafo>
</texto>
</mensaje>
El elemento y sus atributos
<autor pais='ES'>SABINA</autor>
Nombre del atributo Contenido del elemento
Nombre del elemento
Etiqueta de fin
Valor del atributo
Etiquetas
Todas las etiquetas tienen que estar debidamente “cerradas” es decir, con una etiqueta de cierre que se corresponda con la de apertura.
Las etiquetas “vacías” (es decir, sin contenido) tienen una sintaxis especial.
Ejemplos de XML incorrecto
<automovil> Mercedes
<modelo tipo="220 CDI">
<automovil> Alfa Romeo
<modelo tipo="156 JTD">
<automovil> Volkswagen
<modelo tipo="Golf">
Ejemplos de XML incorrecto
<automovil> Mercedes </automovil>
<modelo tipo="220 CDI">
<automovil> Alfa Romeo </automovil>
<modelo tipo="156 JTD">
<automovil> Volkswagen </automovil>
<modelo tipo="Golf">
Las etiquetas siempre tienen que estar cerradas
Versión más correcta
<automovil> Mercedes </automovil>
<automovil> Alfa Romeo </automovil>
<automovil> Volkswagen </automovil>
Las etiquetas sin contenido se cierran de la forma mostrada
<modelo tipo="220 CDI” />
<modelo tipo=”156 JTD” />
<modelo tipo=”Golf” />
Atributos
Los valores de los atributos de los elementos siempre deben estar marcados con las comillas dobles (“) o sencillas („)
<modelo tipo="220 CDI"> Esto es correcto </modelo>
<modelo tipo=‘156 JTD’> Esto es correcto </modelo>
<modelo tipo=Golf TDI> Esto es incorrecto </modelo>
Nombrando cosas
Un nombre de elemento, atributo, entidad etc. empieza por una letra, y continua con letras, dígitos, guiones, rayas, punto o dos puntos.
El acrónimo “XML” (o “xml” o “xMl”, etc.) no pueden usarse como caracteres iniciales de un nombre de elemento, atributo, entidad, etc.
Nombrando cosas
Según la especificación XML 1.0
Un nombre [empieza] con una letra o uno o más signos de puntuación, y [continúa] con letras, dígitos, guiones, rayas, dos puntos o puntos, denominados de forma global como caracteres de nombre. Los nombres que empiezan con la cadena "xml", se reservan para la estandarización de esta o de futuras versiones de esta especificación.
Tipo de letra y espacios en blanco El XML es sensible al tipo de letra utilizado (“case-
sensitive”), es decir, trata las mayúsculas y minúsculas como caracteres diferentes. no es lo mismo <automovil> que <Automovil>
La especificación XML 1.0 permite el uso de esos “espacios en blanco” para hacer más legible el código, y en general son ignorados por los procesadores XML.
En otros casos, los “espacios en blanco” resultan muy significativos, por ejemplo, para separar las palabras en un texto, o separar líneas de párrafos diferentes.
Marcado y datos
Las construcciones como etiquetas, referencias de entidad y declaraciones se denominan “marcas” (mark-up). Estas son las partes del documento que el analizador sintáctico (parser) espera comprender.
El resto del documento, que se encuentra entre las “marcas”, son los datos que resultan entendibles por las personas.
Marcado y datos
Es sencillo reconocer las marcas en un documento XML.
Son aquellas porciones que empiezan con “<” y acaban con “>”
En el caso de las referencias de entidad, empiezan por “&” y acaban con “;”.
Ejercicio
Realice un documento XML sobre libros de una biblioteca, que tenga título, autor, ISBN, editorial, año, número de ejemplares, biblioteca de destino, breve descripción del libro (las etiquetas las puede llamar como quiera).