eXtensible Hypertext Markup Language

Anuncio
XHTML
1
eXtensible Hypertext Markup Language
XHTML

Es el lenguaje de marcado pensado para sustituir
a HTML como estándar para las páginas web. En
su versión 1.0, XHTML es solamente la versión
XML de HTML, por lo que tiene, básicamente, las
mismas funcionalidades, pero cumple las
especificaciones, más estrictas, de XML.
2
VERSIONES (I)








http://www.w3.org/2003/03/recsslide.svg
GML (Generalized Markup Language)
SGML (Standard Generalized Markup Language). La ISO
lo normalizó en 1986. HTML es una instancia de SGML.
HTML Nivel 0 : Contenedor principal <HTML>. Secciones
principales <head> y <body>. Estilo lógicos, listas,
enlaces, imágenes, cabeceras y conj. caracteres.
HTML 1.0 (1992): Estilo físicos y nuevos estilos lógicos.
HTML 2.0 (1995): Formularios (CGIs).
HTML 3.0 (1996): A partir de las propuestas de Netscape.
Demasiado extenso.
HTML 3.2 (1997): Creado por W3C. Tablas, applets, etc. 3
VERSIONES (II)





HTML 4.01 (1999): Frames, CSS, scripts.
http://www.w3.org/TR/html401
HTML 5.0: en desarrollo. Esta especificación está destinada
a sustituir las especificaciones HTML4, XHTML 1.0 y
DOM2 HTML.
http://www.w3.org/TR/html5/
XHTML 1.0 (2000): reformulación de html 4.0 en XML 1.0.
http://www.w3.org/TR/xhtml1
XHTML 1.1 (2001): reformulación de XHTML 1.0 Strict
incluyéndole el uso de módulos XHTML
http://www.w3.org/TR/xhtml11/
XHTML 2.0: Siguiente versión en desarrollo (Working
Draft - 8).
http://www.w3.org/TR/xhtml2/
4
DIFERENCIAS ENTRE HTML Y XHTML (I)

La sintaxis de XHTML es mucho más rígida

Las etiquetas y los atributos siempre se ponen en
minúsculas.



Los valores de los atributos van entrecomillados.




Ej. HTML: <BODY BgColor=“#ff00ff”>
Ej. XHTML: <body bgcolor=“#ff00ff”>
Ej. HTML: <TABLE BORDER=0 align=“center”>
Ej. XHTML: <table border=“0” align=“center”>
No se pueden dejar instrucciones por cerrar

Ej. HTML:

Ej. XHTML:
<P>Un párrafo.
<p>Otro párrafo.
<p>Un párrafo</p>
<p>Otro párrafo</p>
Deben cerrarse correctamente.


Ej. HTML: <p>Ejemplo<b>caracteres en negrita</p></b>
Ej. XHTML: <p>Ejemplo<b>caracteres negrita</b></p>
5
DIFERENCIAS ENTRE HTML Y XHTML (II)

XHTML añade nuevos elementos (XML).

Al igual que en cualquier otro documento XML, la primera
línea del documento índica la versión de XML empleada.
<?xml version="1.0" encoding="UTF-8"?>

A continuación se indica el tipo de documento (DTD).
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Strict//EN"
Y a continuación se define el espacio de nombres con el
atributo xmlns de la directiva <html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang=“es" lang=“es">

Es obligatorio cerrar todas las directivas, incluso las vacías.

Ej. HTML:
<img src=“http://www.san.gva.es/images/home/base.gif”>

Ej. XHTML:
<img src=“http://www.san.gva.es/images/home/base.gif” />
6
EJERCICIO

Valida los siguientes xhtml
http://jorbartu.webcindario.com/xhtml_correcto.xhtml
http://jorbartu.webcindario.com/xhtml_incorrecto.xhtml
7
XHTML 1.0 – CABECERA

Version de xml: <?xml version="1.0" encoding="UTF-8"?>
La declaración XML de la primera línea es obligatoria cuando la
codificación del documento es diferente de UTF-8 o UTF-16. En
cualquier caso siempre es recomendable incluirla.

Tipo de documento. Comentario especial SGML que hace
referencia al DTD (Data Type Document)

Strict DTD: Todos los componentes estándares menos frames, y
aquellos desaconsejables de versiones anteriores (para usar con CSS).
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Transitional DTD: Incluye todos los elementos (incluidos los
desaconsejables pero validos en HTML 4) menos frames.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Frameset DTD: Todos los componentes estándares y frames.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
8
XHTML 1.0 – ETIQUETA HTML

Elemento documento (<html> ... </html>)

Atributos: xmlns (obligatorio), xml:lang y lang.
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang=“es" lang=“es">
El atributo xmlns asocia los elementos y atributos XML con su
definición de tipo correspondiente. Es posible especificar más
de uno, por ejemplo en un documento que incluya elementos
de SVG o MathML.
9
XHTML 1.1 – CABECERA

Reformulación de XHTML 1.0 Strict incluyéndole el uso de
módulos XHTML.

Diferencias entre XHTML 1.1 y XHTML 1.0 Strict
En cada elemento, el atributo “lang” ha sido eliminado en favor del
atributo “xml:lang”.
 En los elementos “a” y “map”, el atributo “name” ha sido eliminado en
favor del atributo “id”.
 Se ha añadido la colección de elmentos “ruby“: ruby, rbc, rtc, rb, rt, rp
(sirve para realizar anotaciones breves sobre un texto base, muy usado
en Japón y China para mostrar la pronunciación).


Declaración DOCTYPE correspondiente a XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

El empleo de los módulos se realiza declarándolos como DTDs
en el encabezado del documento XHTML.
10
XHTML 1.1 (I)

Elementos desaprobados
applet
basefont
center
dir
font
frame (F)
frameset (F)
iframe (T)
isindex
menu
noframes (F)
s
strike
u
T: Elementos permitidos en los documentos de tipo XHTML 1.0 transitional
F: Elementos permitidos en los documentos de tipo XHTML 1.0 frameset.
11
XHTML 1.1 (II)

Atributos desaprobados
align, en: caption, img, input, object,
legend, table, hr, div, h1, h2, h3, h4, h5,
h6, p
alink
background
bgcolor
border, en: img, object
clear, en: br
compact
height, en: td, th.
hspace
lang (1.1)
language
link
name (1.1 en: a, map)
noshade
nowrap
size, en: hr
start
style (1.1)
target (T)
text
type, en: li, ol, ul.
value, en: li.
version
vlink
vspace
width, en: hr, td, th, pre
T: Atributos permitidos en los documentos de tipo XHTML 1.0
transitional.
1.1: Atributos obsoletos en la especificación XHTML 1.1.
No se incluyen los atributos correspondientes a elementos
obsoletos.
12
MODULARIZACIÓN DE XHTML 1.1






Conjuntos bien definidos de elementos XHTML que se pueden
combinar y ampliar por los autores del documento.
Permite la extensión de la distribución XHTML y las
capacidades de presentación, con la extensibilidad de XML, sin
romper el estándar XHTML.
Un tipo de documento XHTML se define como un conjunto de
módulos resumen.
Esta jerarquía permite definir nuevas versiones que utilicen
unos u otros módulos en función del propósito del documento y
de las posibilidades de las plataformas de destino, como es el
caso del XHTML basic, encauzado a su utilización en
dispositivos con limitaciones, como los teléfonos móviles.
http://www.w3.org/TR/2001/REC-xhtml-modularization20010410
http://www.w3.org/TR/2009/PER-xhtml11-20090507/
13
MÓDULOS DEFINIDOS PARA XHTML 1.1 Y
SUS CORRESPONDIENTES ELEMENTOS







Modulo Estructural: body, head, html, title
Modulo Texto: abbr, acronym, address, blockquote, br, cite, code, dfn, div, em, h1, h2, h3, h4, h5, h6, kbd,
p, pre, q, samp, span, strong, var.
Modulo Hipertexto: a
Modulo Lista: dl, dt, dd, ol, ul, li
Modulo Objeto: object, param
Modulo Presentación: b, big, hr, i, small, sub, sup, tt
Modulo Editar: del, ins

Modulo Texto Bidireccional: bdo
Modulo Formas: button, fieldset, form, input, label, legend, select, optgroup, option, textarea
Modulo Tablas: caption, col, colgroup, table, tbody, td, tfoot, th, thead, tr.
Modulo imagen: img
Modulo Mapa lado Cliente: area, map

Modulo Mapa lado Servidor: Attribute ismapon img





Modulo eventos intrínsecos: Atributos Events
Modulo Metainformación: meta
Modulo de Scripts: noscript, script
Modulo Hoja de estilos: elementos style
Modulo Atributo Style: Deprecated : atributo style
Modulo link: link

Modulo base: base





14
XHTML 1.1 DTD
<!-- ....................................................................... -->
<!-- XHTML 1.1 DTD ........................................................ -->
<!-- file: xhtml11.dtd-->
....................
<!-- Modular Framework Module (required) ......................... -->
<!ENTITY % xhtml-framework.module "INCLUDE" ><![%xhtml-framework.module;[<!ENTITY % xhtmlframework.mod
PUBLIC "-//W3C//ENTITIES XHTML Modular Framework 1.0//EN"
"http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-framework-1.mod" >
%xhtml-framework.mod;]]>
....................
<!-- Hypertext Module (required) ................................. -->
<!ENTITY % xhtml-hypertext.module "INCLUDE" ><![%xhtml-hypertext.module;[<!ENTITY % xhtmlhypertext.mod
PUBLIC "-//W3C//ELEMENTS XHTML Hypertext 1.0//EN"
"http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-hypertext-1.mod" >
%xhtml-hypertext.mod;]]>
....................
<!-- Lists Module (required) .................................... -->
<!ENTITY % xhtml-list.module "INCLUDE" ><![%xhtml-list.module;[<!ENTITY % xhtml-list.mod
PUBLIC "-//W3C//ELEMENTS XHTML Lists 1.0//EN"
"http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-list-1.mod" >
%xhtml-list.mod;]]>
15
TECNOLOGÍAS XML (I)

XSL : Lenguaje Extensible de Hojas de Estilo, es una familia de lenguajes
basados en el estándar XML que permite describir cómo la información
contenida en un documento XML debe ser transformada o formateada para su
presentación, por ejemplo en una ventana de un navegador Web o un
dispositivo móvil, o un conjunto de páginas de un catálogo, informe o libro.
Es capaz de transformar, ordenar y filtrar datos XML, y darles formato
basándolo en sus valores.
Esta familia está formada por tres lenguajes:




XSLT: eXtensible Stylesheet Language Transformations, es un lenguaje de
transformación. Se basa en Xpath.
XSL-FO: lenguaje de formateo de objetos, permite especificar el formato visual con el
cual se quiere presentar un documento XML, es usado principalmente para generar
documentos PDF.
XPath, es una sintaxis (no basada en XML) para acceder o referirse a porciones de un
documento XML, identifica partes de un documento XML concreto, como pueden ser
sus atributos, elementos, etc.
XLink : Lenguaje de Enlace XML, es un lenguaje que permite insertar
elementos en documentos XML para crear enlaces entre recursos XML. Xlink
describe un camino estándar para añadir hiperenlaces en un archivo XML. Es
decir, es un mecanismo de vinculación a otros documentos XML. Funciona de
forma similar a un enlace en una página Web, es decir, funciona como lo haría
<a href="">, sólo que a href es un enlace unidireccional. Sin embargo, XLink
permite crear vínculos bidireccionales, lo que implica la posibilidad de moverse
en dos direcciones.
<link xlink:type="simple" xlink:href=“trick1.xml">Hot trick #1</link>
16
TECNOLOGÍAS XML (II)


XPointer : Lenguaje de Direccionamiento XML, es un lenguaje que
permite el acceso a la estructura interna de un documento XML, esto
es, a sus elementos, atributos y contenido. Funciona como una
sintaxis que apunta a ciertas partes de un documento XML, es como
una extensión de XPath. Se utiliza para llegar a ciertas partes de un
documento XML. Primero, XLink permite establece el enlace con el
recurso XML y luego es XPointer el que va a un punto específico del
documento. Su funcionamiento es muy similar al de los
identificadores de fragmentos en un documento HTML ya que se
añade al final de una URI y después lo que hace es encontrar el lugar
especificado en el documento XML. Al ser XPointer una extensión de
XPath, XPointer tiene todas las ventajas de XPath y además permite
establecer un rango en un documento XML, es decir, con XPointer es
posible establecer un punto final y un punto de inicio, lo que incluye
todos los elementos XML dentro de esos dos puntos.
XQL : Lenguaje de Consulta XML, es un lenguaje que facilita la
extracción de datos desde documentos XML. Ofrece la posibilidad de
realizar consultas flexibles para extraer datos de documentos XML en
la Web. Se basa en operadores de búsqueda de un modelo de datos
para documentos XML que puede realizar consultas en infinidad de
tipos de documentos como son documentos estructurados, colecciones
de documentos, bases de datos, estructuras DOM, catálogos, etc.
17
EJERCICIO

La Web construida en el capítulo anterior,
reconvertirla a XHTML 1.0 Strict DTD (alojarla
en el servidor en “carpeta raiz/xhtml”.
1.
2.
3.
Realizar la “trasformación” manualmente.
Validarla: utilizando el navegador contra el DTD o
con herramientas online como
http://validator.w3.org/.
Realizar la trasformación utilizando herramientas
que manipulan xml: Amaya (o Tidy).
18
ENLACES





El W3C ofrece un servicio de validación en:
http://validator.w3.org/
HTML Tidy ofrece la opción de transformar cualquier documento
HTML en uno XHTML:
http://tidy.sourceforge.net/
Amaya es un navegador/editor que guarda documentos HTML como
XHTML, también se asegura de que el etiquetado sea correcto:
http://www.w3.org/Amaya/
Guía de Referencia XHTML:
http://www.w3c.es/Divulgacion/GuiasReferencia/XHTML1/
Guía breve:
http://www.w3c.es/divulgacion/guiasbreves/XHTML
19
Descargar