Anda di halaman 1dari 23

compatibilidad de HTML5 en agentes de usuario

Informe realizado por el Departamento de Ingeniera Telemtica (DIT) ETSI Telecomunicacin Universidad Politcnica de Madrid

Compatibilidad de HTML5 en agentes de usuario

Contacto:
Jos Mara del lamo Yod Samuel Martn Universidad Politcnica de Madrid e: social@dit.upm.es w: http://www.upm.es

El presente documento est sujeto a lo establecido por el Real Decreto Legislativo 1/1996, de 12 de abril para la proteccin de documentos, no estando permitido la reproduccin o copia del mismo sin el consentimiento de los autores.

Informe realizado por la Universidad Politcnica de Madrid para Global-Line Consultores S.L. Informe coordinado por el rea de Innovacin, Comercializacin y Creacin de Empresas Vicerrectorado de Investigacin Universidad Politcnica de Madrid 22 de febrero de 2012 Autores: Jos Mara del lamo, Yod Samuel Martn, Juan Carlos Yelmo Todos los derechos estn reservados. Se autoriza la reproduccin total o parcial de este informe con fines educacionales, divulgativos y no comerciales citando la fuente. La reproduccin para otros fines est expresamente prohibida sin el permiso de los propietarios del copyright. Los nombres de los navegadores y de otros productos citados en este documento son marcas registradas de sus respectivos propietarios. De los textos: los autores. De las ilustraciones: los autores.

Contacto Universidad Politcnica de Madrid:


Coordinacin: rea de Innovacin, Comercializacin y Creacin de Empresas Vicerrectorado de Investigacin Universidad Politcnica de Madrid e: innovacion.tecnologica@upm.es

w: http://www.upm.es

Compatibilidad de HTML5 en agentes de usuario

ndice
Resumen ejecutivo ............................................................................................................................... 4 1 Introduccin .................................................................................................................................... 4 2 Descripcin de HTML5..................................................................................................................... 5 3 Caractersticas del estudio .............................................................................................................. 6
3.1 Plataformas ............................................................................................................................................. 6 3.2 Navegadores............................................................................................................................................ 7 3.3 Pruebas.................................................................................................................................................... 7

4 Ejecucin de las pruebas ................................................................................................................. 7


4.1 Soporte bsico a la especificacin........................................................................................................... 7 4.2 Elementos estructurales.......................................................................................................................... 8 4.3 Marcado semntico................................................................................................................................. 8 4.4 Formularios ............................................................................................................................................. 9 4.5 Contenidos ............................................................................................................................................ 10 4.6 Interactividad ........................................................................................................................................ 10 4.7 Hojas de estilo ....................................................................................................................................... 11 4.8 Interfaces de programacin de dispositivo ........................................................................................... 11 4.9 Interfaces de programacin para contenido......................................................................................... 12 4.10 Caractersticas avanzadas para el procesamiento........................................................................... 12

5 Evaluacin de resultados............................................................................................................... 12 Referencias ......................................................................................................................................... 15 Anexo I. Resultados de las pruebas. .................................................................................................. 16 Anexo II. Procesamiento de resultados ............................................................................................. 23

Compatibilidad de HTML5 en agentes de usuario Sin embargo, incluso este potencial se puede quedar limitado ante las nuevas necesidades tecnolgicas y de gestin de la informacin. La ltima actualizacin importante del estndar HTML es la versin 4.01 [2], en la cual se basan la mayora de los contenidos de la Web, que se produjo en 1999. La primera especificacin de HTML se haba publicado tan solo 8 aos antes de esa versin 4.01; mientras que desde entonces ya han transcurrido otros 13 aos, y la industria de los contenidos web an sigue basndose en esa especificacin (con mnimas modificaciones). Haciendo una analoga con la industria editorial, esto sera comparable a que se siguieran utilizando los sistemas de impresin de mediados del siglo XVII. Lgicamente, una situacin as no concuerda con la evolucin que todos conocemos que ha tenido la Web durante estos aos. La estabilidad de HTML se ha venido a ver complementada con distintas tecnologas accesorias que han ido evolucionando rpidamente. Por ejemplo, durante este tiempo se han universalizado tecnologas de scripting mediante las que los elementos de una pgina web pueden implementar comportamientos que no estaban considerados por la especificacin de HTML. Los navegadores ofrecen interfaces para la programacin de aplicaciones (APIs) como XmlHttpRequest [3], que permiten que estos scripts se comuniquen en segundo plano con el servidor para refrescar dinmicamente regiones individuales de la pgina, siguiendo las tcnicas englobadas bajo el trmino AJAX. Bibliotecas como jQuery [4] encapsulan patrones de programacin y hacen ms sencillo manipular dinmicamente los contenidos de las pginas. A todo esto hay que aadirle una multitud de tecnologas especficas que han ido introduciendo sus propias extensiones a las caractersticas de HTML, para enriquecer sus modelos de datos mediante anotaciones semnticas (microformatos [5], RDFa) o integrarlo con las capacidades del sistema cliente en aplicaciones locales (widgets, extensiones de navegador, etc.) All donde HTML no poda llegar, han surgido tecnologas propietarias que venan a cubrir el hueco, como es el caso de Flash para aplicaciones de alta interactividad y complejidad grfica, o las distintas plataformas de aplicaciones

Resumen ejecutivo
El presente documento refleja el resultado de un estudio en el que se han analizado varios modelos de navegadores existentes en el mercado para comprobar en qu medida son compatibles con el estndar HTML5 [1]. Para llevarlo a cabo se ha preparado una batera de pruebas que ponen de manifiesto si el navegador soporta distintas caractersticas definidas en la nueva especificacin. Cada una de las pruebas se pondera con un peso relativo. La agregacin de los resultados ponderados permite determinar la valoracin total del navegador bajo estudio. El estudio se ha realizado con distintos navegadores para ordenadores porttiles y tabletas de distintos fabricantes. Los resultados obtenidos han sido analizados para extraer una serie de conclusiones sobre la compatibilidad de cada uno de ellos. El anlisis de los resultados muestra que Google Chrome 16 es el navegador para PC ms compatible con la especificacin HTML5. En la categora de navegadores para tabletas, BlackBerry PlayBook 2.0 destaca como el navegador con mayor soporte de HTML5.

1 Introduccin
La mayora de los contenidos que se pueden encontrar hoy en da en la Web estn definidos en un formato denominado HTML (HyperText Markup Language - Lenguaje de Marcas de Hipertexto). Se trata de un sencillo lenguaje que representa el contenido textual y los distintos elementos que conforman la estructura de una pgina web (ttulos, enlaces, imgenes, listas, tablas, etc.), mediante distintas "marcas" encerradas entre parntesis angulares (p. ej. <img> para una imagen). Esta sencillez permiti que la creacin de contenidos para la Web estuviera desde el principio al alcance de personas sin conocimientos tcnicos, y promovi la rpida difusin de herramientas de edicin web amigables. An con esta sencillez, se trata de un lenguaje con un gran potencial: basta con ver la inmensa variedad de contenidos que se pueden encontrar en la Web definidos en HTML.

Compatibilidad de HTML5 en agentes de usuario mviles para interactuar con las capacidades de los dispositivos. Parece obvio que esta dispersin de tecnologas no resulta mantenible a largo plazo. Los desarrolladores deben considerar las distintas APIs implementadas por los diferentes navegadores, o bien renunciar a la interoperabilidad que proporcionan las aplicaciones web y desarrollar para plataformas especficas. Ya en 2004, varios fabricantes de navegadores percibieron este problema y crearon el WHAT WG (Web Hypertext Application Technology Working Group) [6], una comunidad de personas interesadas en la evolucin de HTML y las tecnologas relacionadas. El WHAT WG empez a desarrollar una nueva especificacin de lenguajes para la descripcin de aplicaciones web, que acab derivando en la definicin de una nueva y radicalmente distinta versin de HTML, a la que llamaron HTML5. En 2008, el W3C (World Wide Web Consortium) encargado de las anteriores versiones de HTML y de la mayora de las especificaciones de tecnologas para la Web, agrupando a multitud de agentes industriales, acadmicos y de la comunidad de usuarios asumi la continuacin de los trabajos que el WHAT WG vena realizando en HTML5. El proceso de estandarizacin en W3C es relativamente lento hasta llegar a la versin definitiva de una recomendacin (nombre que reciben sus especificaciones), y se espera que en el caso de HTML5, esta fase no se alcance hasta 2014. Sin embargo, esto no quiere decir que hoy no se pueda usar HTML5: de hecho, la mayora de las caractersticas principales de HTML5 ya se encuentran en una situacin bastante estable en la ltima versin de la especificacin del W3C. Es ms, la mayora de los fabricantes de los navegadores ya soportan distintas caractersticas de HTML5 en sus productos. Por eso, cabe preguntarse, ha llegado la hora de HTML5? El presente estudio pretende guiar hacia la respuesta de esa pregunta, evaluando el soporte de las distintas caractersticas de HTML5 por los navegadores ms importantes. HTML5 ofrece novedosas caractersticas que hacen especialmente sencillo el desarrollo de aplicaciones enriquecidas para Internet ejecutables sobre cualquier plataforma. Complementado con otras tecnologas abiertas definidas por el W3C (como W3C widgets [7]), HTML5 puede llegar a reemplazar a las tecnologas propietarias de ejecucin de aplicaciones mviles en terminales mviles utilizadas por distintos fabricantes. Es ms, cada vez ms terminales mviles soportan HTML5, hasta el punto de que se espera que en 2013 se vendan mil millones de terminales compatibles con esta tecnologa. Por ello, el presente estudio pone un especial foco en el soporte de HTML5 en las principales plataformas de dispositivos mviles.

2 Descripcin de HTML5
HTML5 supone una reaccin racional a la evolucin desordenada de HTML y a la multitud de tecnologas que se haban convertido en estndares de facto. HTML5 sigue un enfoque mucho ms estructurado que las anteriores versiones de HTML: se han introducido nuevos elementos y atributos con una semntica ms refinada, se han depurado los elementos de presentacin (que quedan cubiertos por las hojas de estilos CSS), se han integrado desde el principio las APIs y el modelo de objetos (DOM), de manera coherente con el resto el estndar, etc. HTML5 recoge las necesidades que refleja la prctica habitual del uso de distintas tecnologas para la presentacin de grficos vectoriales, contenidos multimedia, etc.

A continuacin mostramos una breve descripcin de las principales novedades que introduce HTML5 elementos <video>, <audio>, <canvas> y <track> para la representacin de contenidos multimedia y APIs para su manejo, as como la integracin de grficos vectoriales en formato SVG (Scalable Vector Graphics), o contenidos matemticos en formato MathML. Hasta ahora, HTML slo indicaba la posibilidad genrica de incrustar objetos (mediante el elemento <object>), que luego estn implementados en tecnologas propietarias (como Flash) y que deban ser gestionados mediante plugins externos. Sin embargo, HTML5 ahora define claramente cmo representar y gestionar estos contenidos multimedia, con la ventaja de hacerlo de Nuevos 5

Compatibilidad de HTML5 en agentes de usuario manera abierta implementacin. e independiente de SEO (optimizacin para aparecer en los resultados de los buscadores), etc. Elementos y APIs para gestionar la interaccin con el usuario: <details>, <summary>, <command>, <menu>, attributo hidden, interfaces de programacin para seleccin, edicin, arrastrar y soltar (drag-and-drop), etc. APIs para el acceso a recursos locales del dispositivo (almacenamiento, historial de sesin y navegacin, cach de aplicacin, base de datos local, uso de aplicaciones sin conexin), gestin del contenido (manejadores de contenido, de esquemas, comunicacin entre documentos), gestin dinmica del procesamiento (scripts en segundo plano Workers, comunicacin bidireccional WebSockets, eventos de servidor, notificaciones), etc. Mejoras en la seguridad, sandboxing en el acceso a elementos externos, etc.

Nuevos elementos para representar de manera semntica elementos estructurales de una pgina: <section>, <article>, <header>, <nav>, <menu>, etc. En anteriores versiones, haba pocos elementos de este tipo, y generalmente se recurra a contenedores completamente genricos (<div> o <span>), o a clasificaciones basadas en el uso de valores opacos (elegidos por el desarrollador) en el atributo class. Modelo de procesamiento de errores claramente definido. En las anteriores versiones de HTML, si un documento contena un error, no estaba claro cmo deba comportarse el navegador. En algunos casos, se esperaba que el navegador rechazara el documento por completo lo que resulta poco prctico dada la cantidad habitual de errores. En otros casos, quedaba abierto a criterio del navegador qu hacer con el documento lo que resulta en una falta de compatibilidad entre distintas plataformas que tratan el mismo contenido de distinta manera (quirks), y redunda en que los desarrolladores usen trucos para lograr un comportamiento uniforme. HTML5 termina con esta indefinicin: queda claro cmo debe comportarse un navegador ante cualquier documento, incluidos los casos en los que este venga con errores. Formularios enriquecidos, con nuevos tipos de controles de entrada (cuadros de bsqueda, calendarios, selectores de colores, imgenes, listas de datos, generadores de claves, interfaces de salida, barras de progreso, medidores escalares), formatos de datos (URLs, nmeros de telfono, direcciones de e-mail), comportamientos (autofocus, autocompletar, redirigir el valor), y validacin de los campos (seleccin mltiple, patrones de validacin, placeholders, valores requeridos, validacin esttica), gestin de eventos, etc. Hasta ahora, estos comportamientos tan slo se podan emular mediante complejas y avanzadas tcnicas de scripting, que introducan problemas de compatibilidad entre distintos navegadores, problemas de accesibilidad para personas con discapacidad, dificultades para el

Ms all de la especificacin base de HTML5, existen otras tecnologas de apoyo, en distintas fases del proceso de estandarizacin de W3C y el WHAT WG que generalmente se consideran parte del concepto englobado bajo el paraguas del trminos "HTML5". Por ello, estas tecnologas han sido tambin objeto de este estudio, por ejemplo, WebGL [8] para generacin de grficos vectoriales en 3D, o Web Audio API [9] y Audio Data API [10] para gestin de contenidos sonoros, entre otras.

3 Caractersticas del estudio


A continuacin se describen las caractersticas ms relevantes del contexto de estudio.

3.1 Plataformas
Las pruebas se han realizado sobre distintos equipos incluyendo un ordenado y los ltimos modelos de tabletas de BlackBerry, Motorola, y Apple. El equipo porttil se trata de un Dell Vostro 3300, con procesador Intel Core i5 CPU M520 a 2.40 GHz y 6 GB de memoria RAM ejecutando un sistema operativo Windows 7 Professional de 64 bits con Service Pack 1 instalado. Para RIM se eligi el modelo RIM PlayBook en su versin 2.0, con procesador Texas Instruments 6

Compatibilidad de HTML5 en agentes de usuario OMAP 4430 (Cortex-A9 dual-core) a 1 GHz y 1 GB de memoria RAM ejecutando un sistema operativo BlackBerry Tablet OS 2.0. Para Motorola se eligi el modelo Xoom, con un procesador de doble ncleo y 1 GB de memoria RAM ejecutando un sistema operativo Android 3.2 (HoneyComb). Respecto a Apple, la tableta elegida ha sido el modelo iPad2, con un procesador Apple A5 de 1 GHz dual core y 512 MB de memoria RAM ejecutando un sistema operativo iOS 5.0.1. Por su parte, los terminales PlayBook 2.0 de BlackBerry incluyen de serie un navegador basado en el motor de renderizado WebKit. Para realizar las pruebas, todos los navegadores mantuvieron la configuracin por defecto del fabricante.

3.3 Pruebas
Las pruebas realizadas se han centrado en comprobar si los navegadores bajo estudio soportan algunas de las nuevas caractersticas definidas en la especificacin de HTML5. Para ello se someti a todos ellos a una exhaustiva batera de pruebas que incluy el control de 106 caractersticas distintas, que se describen en las siguientes secciones. Para la realizacin de las pruebas de HTML5 de manera automtica se utiliz el banco de pruebas ofrecido por The HTML Tests [11], realizando una ponderacin de los resultados. Adems, se realizaron pruebas adicionales para comprobar la compatibilidad con CSS3, utilizando el servicio ofrecido por css3.info [12].

3.2 Navegadores
Los navegadores probados en el equipo porttil han sido Google Chrome 16, Mozilla Firefox 10.0.1, Windows Internet Explorer 9.0 y Apple Safari 5.1. Respecto a las tabletas, los navegadores probados han sido Firefox 10.0.1 y Opera Mobile 11.5.5 en Motorola Xoom sobre Android 3.2; el navegador de serie en Android 3.2; Safari en un Apple iPad2 con un sistema iOS 5.0.1; y el navegador de serie en BlackBerry PlayBook 2.0. Chrome es un navegador web desarrollado por Google, basado en el motor de renderizado WebKit y su estructura de desarrollo de aplicaciones. Firefox es un navegador web de cdigo abierto desarrollado por la Fundacin Mozilla, que emplea el motor de renderizado Gecko. Internet Explorer, conocido comnmente como IE, es un navegador web desarrollado por Microsoft para el sistema operativo Microsoft Windows desde 1995. Safari es el navegador web desarrollado por Apple Inc., disponible para los sistemas operativos desarrollado por Apple como Mac OS X e iOS (el sistema usado por el iPhone, el iPod Touch y el iPad) y tambin para Microsoft Windows. Opera Mobile es el nombre que se le ha dado al navegador web para dispositivos mviles de la compaa Opera Software, que utilizan como sistema operativo Windows Mobile o Symbian OS para plataformas S60 o Android. Los terminales con sistema operativo Android disponen de un navegador de serie basado en el motor de renderizado de cdigo abierto WebKit, emparejado con el motor JavaScript V8 de Google Chrome.

4 Ejecucin de las pruebas


A continuacin se ofrece una descripcin de las pruebas realizadas junto con el resultado de las mismas. Los detalles de los resultados de cada test particular pueden consultarse en el Anexo I.

4.1 Soporte bsico a la especificacin


En primer lugar se ha analizado si el navegador dispone de soporte bsico al procesamiento de HTML5, y en qu medida. Para empezar, se ha comprobado de qu manera se realiza el procesamiento de los documentos HTML5: El prembulo <!DOCTYPE html> produce que el navegador pase al modo de procesamiento respetuoso con el estndar. Soporte al algoritmo de tokenizacin para procesar el documento. El rbol que representa el documento es construido de forma correcta.

Tambin se ha evaluado si permite las siguientes caractersticas ms avanzadas: 7

Compatibilidad de HTML5 en agentes de usuario Introducir atributos personalizados, para ser utilizados por la pgina que los define. Estos atributos son definidos utilizando la semntica data-*. Modificar dinmicamente la estructura de un documento HTML5. Para ello se pueden utilizar atributos de un elemento como outerHTML, que permite recuperar y fijar el cdigo HTML que representa elemento y su contenido. Tambin se puede utilizar el mtodo insertAdjacentHTML(), que permite introducir nuevos nodos dentro de un documento.
Soporte bsico
100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% 100% 90% 100% 100% 100% 100% 60% 40% 90%

Tambin se ha comprobado el soporte a elementos para definicin de agrupaciones de contenidos: figure, indica que el elemento se trata de una figura; figcaption, indica que el elemento se trata de un pie, ttulo o leyenda de figura; atributo reversed del elemento ol, permite indicar un orden inverso en una lista ordenada.
Elementos estructurales
100% 80% 60% 40% 20% 0% 90% 90% 90% 90% 90% 90% 70% 90% 90%

Figura 2. Soporte de elementos estructurales.

4.3 Marcado semntico


Figura 1. Soporte bsico a HTML5.

4.2 Elementos estructurales


A continuacin se ha validado hasta qu punto el navegador tiene soporte para los elementos estructurales que define la especificacin. En primer lugar se han probado los siguientes elementos que definen secciones del documento: section, marca una seccin como genrica; nav, marca una seccin como navegable; article, marca autocontenida; una seccin como

Este conjunto de pruebas mide hasta qu punto el navegador soporta marcado semntico a nivel de texto y tambin mediante la introduccin de microdatos. Los elementos que definen la semntica a nivel de texto que se han probado han sido: mark, anota un texto como destacado; ruby, anota un texto con una tipografa oriental. Puede incluir las siguientes etiquetas: o o rt, indica el texto dentro de la anotacin Ruby; rp, introduce parntesis alrededor del texto anotado;

aside, marca una seccin como independiente del contexto que la rodea; hgroup, indica que se trata de una agrupacin de cabeceras, por ejemplo, ttulos; header, indica que se trata de un encabezado; footer, indica que se trata de un pie.

time, anota el texto como fecha; wbr, indica que se trata de un texto largo pero divisible, para que el navegador lo pueda mostrar de la forma ms adecuada posible.

Respecto a los microdatos, se ha comprobado si el navegador soporta la especificacin HTML Microdata [5]. 8

Compatibilidad de HTML5 en agentes de usuario


Marcado semntico
100% 80% 60% 40% 20% 0% 57% 57% 57% 57% 57% 57% 29% 29%

Tambin se ha verificado que el navegador admite atributos para definir el comportamiento del campo ante los datos introducidos: Poner el foco en el elemento de forma automtica (autofocus); Completar el campo con informacin anterior (autocomplete); Indicar la direccin de lectura del texto, que dependiendo del lenguaje podra ser de izquierda a derecha o de derecha a izquierda (dirname); Permitir valores mltiples en una seleccin (multiple); Permitir expresiones regulares para comprobar el valor del campo (pattern); Introducir un indicador de contenido para que el usuario entienda qu tipo de contenido se espera en un campo (placeholder); Indicar que es obligado introducir un valor para un campo (required).

57%

Figura 3. Soporte al marcado semntico.

4.4 Formularios
HTML5 introduce numerosas novedades en la definicin y uso de formularios, incluyendo la definicin de nuevos tipos de entradas de datos, la estandarizacin del comportamiento esperado de algunos campos, la gestin de los eventos generados, la definicin de nuevos elementos, y la validacin esttica de valores introducidos. Para los campos de entrada de datos de un formulario, se han probado los distintos tipos de datos que el campo puede adoptar como: Texto (input type=text); Bsqueda (input type=search); Nmero de telfono (input type=tel); URL absoluto (input type=url); Correo electrnico (input type=email); Fecha y hora global (input type=datetime): Fecha y hora local (input type=datetimelocal); Fecha (input type=date); Mes (input type=month); Semana (input type=week); Hora (input type=time); Nmero (input type=number); Nmero en rango (input type=range); Color (input type=color); Casilla de type=checkbox); verificacin (input

Otras de las pruebas realizadas han comprobado si el navegador gestiona de forma adecuada los eventos relacionados con la introduccin de datos en los campos de un formulario: oninput, generado cuando se introduce una entrada; onchange, generado cuando se modifica una entrada; oninvalid, generado cuando el dato no es vlido.

Tambin, se ha validado si el navegador admite nuevos elementos para un formulario como: Agrupacin de controles (fieldset); Conjunto (datalist); de opciones predefinidas

Generador de par de claves pblicaprivada (keygen); Resultado de un clculo (output); Progreso de una tarea (progress); Indicador de medida (meter).

Imagen como botn (input type=image).

Para finalizar el anlisis de la compatibilidad de formularios, se ha comprobado si el navegador acepta los siguientes mecanismos de validacin esttica: 9

Compatibilidad de HTML5 en agentes de usuario Mtodo de validacin esttica de restricciones (checkValidity()); Indicacin de no validacin de un campo (noValidate).
Formularios
100% 80% 60% 40% 20% 0% 85% 74% 66% 94% 85% 84% 65% 97%

Elemento svg para soporte a grficos vectoriales.

Los formatos de audio y vdeo que se han comprobado son: Audio: AAC, mp3, ogg, PCM, WebM,. Vdeo: ogg, H.264, WebM, H.264.

18%

Por ultimo, se ha comprobado si el navegador ya tiene soporte para algunas caractersticas avanzadas, no especificadas en HTML5 pero que pueden estarlo en un futuro cercano: Soporte a representacin dimensiones con WebGL [8]; para 3

Deteminar la visibilidad de la pgina (Page Visibility [13]); Soporte a (requestAnimationFrame); animaciones

Figura 4. Caractersticas avanzadas en formularios.

4.5 Contenidos
Para evaluar el soporte a distintos tipos de contenido se ha comprobado si el navegador permite algunos de los nuevos elementos para incrustacin de contenido que define la especificacin, la diversidad de formatos de audio/vdeo admitidos, y algunas caractersticas avanzadas no contempladas en la especificacin de HTML5 en su momento actual pero que podrn estarlo en un futuro prximo. Respecto al contenido incrustado, los elementos probados han sido los siguientes: Elemento iframe con soporte avanzado para despliegue de contenido en zona segura (sandbox) e integracin transparente (seamless). Elemento video para integracin de vdeo, pelcula o audio con leyenda. Elemento audio, para integracin de flujo de sonido. Elemento track, para alojamiento de una pista de texto asociada a un contenido multimedia (por ejemplo, de tipo subtitle). Elemento canvas, para representacin de elementos grficos Elemento canvas, para representacin en 2D. Elemento math para soporte a expresiones matemticas con MathML.

Interfaces para programacin de audio (Web Audio API) [9]; Interfaces para programacin de audio (Audio Data API) [10].
Contenidos

100% 80% 60% 40% 20% 0%

83% 61% 48% 35% 65% 52% 35% 48% 65%

Figura 5. Soporte a contenidos.

4.6 Interactividad
En este apartado se renen las pruebas que miden el soporte a interactividad del usuario. Estas pruebas vienen definidas por la capacidad de incluir elementos que pueden interactuar con el usuario, y distintas facilidad para ello. Respecto a los elementos interactivos se han comprobado los siguientes: Widget de informacin adicional (details); Resumen (summary); Orden que puede invocar el usuario (command); 10

Compatibilidad de HTML5 en agentes de usuario Lista de rdenes (menu).


100% 80% 60% 40% 20% 0% 100% 100% 50%

Las facilidades de interaccin que se han probado han sido: Soporte a atributo de elemento oculto (hidden); Elementos y documentos (contentEditable, designMode); APIs para edicin; APIs para seleccin (Page Visibility) [14]; Arrastrar y soltar elementos (drag and drop). El buen funcionamiento de este mecanismo viene determinado por una serie de atributos (draggable y dropzone) que definen elementos movibles y zonas que admiten la recepcin de estos elementos. Soporte a eventos de arrastrar/soltar (ondrag, ondragstart, ondragenter, ondragover, ondragleave, ondragend, ondrop).
Interactividad
100% 80% 60% 40% 20% 0% 85% 75% 60% 75% 70% 80% 60% 40% 60%

Hojas de estilo
100% 100% 100% 100% 100% 100%

editables

Figura 7. Soporte a hojas de estilo.

4.8 Interfaces de programacin de dispositivo


Con estas pruebas se evala si el navegador proporciona funcionalidades que pueden requerir los documentos y aplicaciones cargados: Acceso al historial de la sesin (history). Soporte al desarrollo de aplicaciones Web que pueden funcionar sin conexin.

Adems, se analizaron otra serie de facilidades no descritas en la especificacin de HTML5 pero que se consideran relevantes para el desarrollo de aplicaciones de vanguardia: Almacenamiento local en cliente (Web Storage [15]). API para geolocalizacin (Geolocation API [16]). Capacidad de personalizar proveedor de bsqueda. Acceso a sistema de ficheros (FileReader API y FileSystem API) [17] Almacenamiento de sesin (Web Storage [15]). Base de datos local (IndexDB [18]). Acceso a la cmara.

Figura 6. Caractersticas avanzadas de interactividad.

4.7 Hojas de estilo


Estas pruebas tienen por objeto comprobar hasta qu punto los navegadores son compatibles con los nuevos selectores definidos en CSS3, adems de comprobar si admiten los nuevos selectores dinmicos de HTML5.

11

Compatibilidad de HTML5 en agentes de usuario


APIs de dispositivo
100% 80% 60% 40% 20% 0% 90% 75% 40% 50% 50% 50% 50% 60% 80%

generacin de aplicaciones para navegadores al siguiente nivel: Ejecucin de scripts en segundo plano (Web Workers [20]). Comunicacin bidireccional entre una pgina y un servidor (WebSocket [21]). Recepcin PUSH de eventos disparados desde un servidor (Server-Sent Events [20]) Mejora del mecanismo de notificaciones a usuario (Web Notifications [23]).
Proceso dinmico
100% 80% 60% 40% 20% 0% 100% 63% 75% 100% 75% 50% 63%

Figura 8.Existencia de APIs de dispositivo.

4.9 Interfaces de programacin para contenido


Estas pruebas tienen por objeto comprobar si el navegador presenta algunas de las interfaces necesarias para interactuar con aplicaciones Web. En particular se ha evaluado: Que pginas y sitios Web se puedan registrar en el navegador para manejar un tipo particular de contenido (registerContentHandler). Que pginas y sitios Web se puedan registrar en el navegador para manejar un tipo particular de esquemas (por ejemplo, sms:) mediante el mtodo registerProtocolHandler. Comunicacin entre documentos (Web Messaging [19]).
APIs de contenido
100% 80% 60% 40% 20% 0% 100% 67% 33% 33% 33% 33% 33% 33% 100%

0%

0%

Figura 10. Existencia de capacidades avanzadas para el procesamiento.

5 Evaluacin de resultados
En la anterior seccin se ha mostrado el resultado detallado de la ejecucin de las distintas categoras de pruebas sobre todos los navegadores evaluados. Sin embargo, se trata de una gran cantidad de datos que requiere un mayor nivel de agregacin para proporcionar una informacin til. A continuacin resumimos las conclusiones de ese proceso. En las siguientes figuras se muestran sendos diagramas de Kiviat representando la cobertura de las distintas categoras de pruebas por cada navegador, separando los navegadores destinados a equipos con altas capacidades como PCs o porttiles, de los navegadores de tabletas. En los navegadores de PC, podemos comprobar cmo Internet Explorer es sensiblemente peor en casi todas las categoras, mientras que Chrome destaca sobre los dems, especialmente en las categoras de los elementos ms avanzados (APIs, etc.) En cuanto a los navegadores para tabletas, observamos cmo no todos siguen el mismo perfil entre las distintas categoras. 12

Figura 9.Existencia de APIs para contenido.

4.10 Caractersticas avanzadas para el procesamiento


Finalmente, se ha realizado un anlisis de aquellas caractersticas que pueden facilitar la vida de los desarrolladores de aplicaciones y llevar la

Compatibilidad de HTML5 en agentes de usuario


Comparativa navegadores PC
Soporte bsico Proceso dinmico APIs de contenido APIs de dispositivo Hojas de estilo Interactividad Chrome - PC IE - PC Firefox - PC Safari - PC Elementos estructurales Marcado semntico

Las figuras que acabamos de presentar sintetizan todas las pruebas realizadas; sin embargo, no sirven para hacer una evaluacin global. El motivo es doble: Las distintas categoras aparecen ponderadas con el mismo peso. En realidad, deberan ponderarse ms aquellas categoras ms bsicas, sin cuyo soporte no tiene sentido hablar de compatibilidad con HTML5; y menos las ms avanzadas (algunas de las cuales son an experimentales). La valoracin no debera ser lineal. As, el xito en el 50% de las pruebas de una categora puede parecer un "aprobado", cuando la realidad ms bien es que se ofrece un soporte pobre de dicha categora.

Formularios

Contenido

Figura 11.Comparativa de navegadores para porttil.

Estas figuras nos permiten encontrar tambin patrones en relacin con determinadas categoras: as, prcticamente todos los navegadores cumplen con todos los casos de prueba de hojas de estilos, y la mayora (salvo IE) cubren tambin muy positivamente con las pruebas los elementos ms bsicos de HTML5 (soporte bsico y elementos estructurales) y, en el caso de los navegadores para tabletas, en los formularios. Por el contrario, las categoras ms avanzadas estn pobremente soportadas; particularmente las APIs de contenido estn muy mal soportadas en general (salvo por Firefox), igual que sucede con las APIs de proceso dinmico (salvo por PlayBook y Chrome).
Comparativa navegadores tablets
Soporte bsico Proceso APIs de Elementos Marcado

Por tanto, nos parece ms adecuado utilizar un sistema de calificacin que pondere adecuadamente cada categora, y donde la calificacin se haga mediante estrellas, siguiendo el siguiente esquema (v. Anexo II para el procedimiento detallado de clculo).
Tabla 1. Sistema de calificacin empleado.

No soportado Pobre Limitado Parcial Bueno Excelente (Una estrella ms fina indica una categora intermedia)

APIs de Hojas de estilo Interactividad PlayBook 2.0 Android 3.2 Firefox Android 3.2

Formularios Contenido

iPad2 Opera Mob 11.5.5

Siguiendo este criterio, la siguiente tabla sintetiza los resultados del estudio. Podemos ver cmo el navegador para PC que ms puntuacin obtiene es Chrome, con cuatro estrellas, seguido muy de cerca por el navegador de PlayBook 2.0 en la categora de tabletas, con tres estrellas y media.

Figura 12.Comparativa de navegadores para tablets.

13

Compatibilidad de HTML5 en agentes de usuario


Tabla 2. Resumen comparativo del anlisis realizado en las distintas categoras.

Chrome - PC

Firefox - PC

IE - PC

Safari - PC

PlayBook 2.0

iPad2

Android 3.2

Opera Mob 11.5.5

Firefox Android 3.2

Soporte bsico Elementos estructurales Marcado semntico Formularios Contenido Interactividad Hojas de estilo APIs de dispositivo APIs de contenido Proceso dinmico

TOTAL

14

Compatibilidad de HTML5 en agentes de usuario

Referencias
[1] Ian Hickson (Ed.), HTML5: A vocabulary and associated APIs for HTML and XHTML, W3C Working Draft 25 May 2011, http://www.w3.org/TR/2011/WD-html5-20110525/ [2] Dave Raggett, Arnaud Le Hors y Ian Jacobs (Eds.), HTML 4.01 Specification, W3C Recommendation 24 December 1999, http://www.w3.org/TR/html4/ [3] Anne van Kesteren (Ed.), XMLHttpRequest Level 2, W3C Working Draft 17 January 2012, http://www.w3.org/TR/XMLHttpRequest/ [4] Sitio Web de jQuery, http://jquery.com/ [5] Ian Hickson (ed.), HTML Microdata, W3C http://www.w3.org/TR/2011/WD-microdata-20110525/ [6] Sitio Web de WHAT WG, http://www.whatwg.org/ [7] Marcos Cceres (Ed.), Widget Interface, W3C Candidate Recommendation 13 December 2011, http://www.w3.org/TR/widgets-apis/ [8] Chris Marrin (Ed.), WebGL Specification, Editor's http://www.khronos.org/registry/webgl/specs/latest/ Draft 27 January 2012, Working Draft 25 May 2011,

[9] Chris Rogers (Ed.), Web Audio API, W3C Audio Group Proposal, https://dvcs.w3.org/hg/audio/rawfile/tip/webaudio/specification.html [10]Audio Data API, https://wiki.mozilla.org/Audio_Data_API [11]Sitio Web de The HTML5 Test, http://html5test.com/ [12]Sitio Web de CSS3.info, http://www.css3.info/selectors-test/ [13]Jatinder Mann y Arvind Jain (Eds.), Page Visibility, W3C Working Draft 2 June 2011, http://www.w3.org/TR/2011/WD-page-visibility-20110602/ [14]Aryeh Gregor (Ed.), HTML Editing APIs, Work in Progress Last Update 19 January 2012, http://dvcs.w3.org/hg/editing/raw-file/tip/editing.html [15]Ian Hickson (Ed.), Web Storage, W3C Candidate Recommendation 08 December 2011, http://www.w3.org/TR/2011/CR-webstorage-20111208/ [16]Andrei Popescu (Ed.), Geolocation API Specification, W3C Candidate Recommendation 07 September 2010, http://www.w3.org/TR/2010/CR-geolocation-API-20100907/ [17]Arun Ranganathan y Jonas Sicking, File API, W3C Working Draft 20 October 2011, http://www.w3.org/TR/FileAPI/ [18]Nikunj Mehta, Jonas Sicking, Eliot Graff, Andrei Popescu y Jeremy Orlow (Eds.), Indexed Database API, W3C Working Draft 06 December 2011, http://www.w3.org/TR/IndexedDB/ [19]Ian Hickson (Ed.), HTML5 Web http://dev.w3.org/html5/postmsg/ Messaging, Editor's Draft 01 18 January 2012, 2011,

[20]Ian Hickson (Ed.), Web Workers, W3C Working http://www.w3.org/TR/2011/WD-workers-20110901/

Draft

September

[21]Ian Hickson (Ed.), The WebSocket API, W3C Candidate Recommendation 08 December 2011, http://www.w3.org/TR/2011/CR-websockets-20111208/ [22]Ian Hickson (Ed.), Server-Sent Events, W3C Working http://www.w3.org/TR/2011/WD-eventsource-20111020/ [23]John Gregg (Ed.), Web Notifications, http://www.w3.org/TR/notifications/ W3C Working Draft Draft 20 01 October March 2011, 2011,

15

Compatibilidad de HTML5 en agentes de usuario

Anexo I. Resultados de las pruebas.


A continuacin se muestran los resultados detallados de las pruebas realizadas.
Tabla 3. Resultados de las pruebas de soporte bsico a HTML5
Soporte bsico Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11.5.5 Firefox Android 3.2 El prembulo dispara el modo de procesamiento Standards <!DOCTYPE html> 1 1 1 1 1 1 1 1 1 Algoritmo de tokenizacin 1 1 0 1 1 1 1 0 1 Construccin del rbol 1 1 0 1 1 1 1 0 1 atributos personalizados (data-*) 1 1 0 1 1 1 1 1 1 Insercin dinmica de etiquetas 1 0,5 1 1 1 1 1 1 0,5 Subtotal 100% 90% 40% 100% 100% 100% 100% 60% 90% Stars 5,0 4,5 1,5 5,0 5,0 5,0 5,0 2,0 4,5

Tabla 4. Resultados de las pruebas de elementos estructurales de HTML5

Elementos estructurales Secciones del documento Seccin genrica (section) Seccin navegable (nav) Seccin autocontenida (article) Seccin independiente (aside) Cabeceras (hgroup) Encabezado (header ) Pie (footer) Agrupaciones de contenido Figura (figure) Pie de figura (figcaption) Orden inverso en lista ordenada (ol->reversed) Subtotal Stars

Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 1 1 0 0 0 70% 2,5 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 1 1 1 1 0 90% 4,5

16

Compatibilidad de HTML5 en agentes de usuario


Tabla 5. Resultados de las pruebas de marcado semntico en HTML5
Marcado semntico Semntica del texto Destacado (mark) Anotacin Ruby usada para tipografa oriental (ruby) Texto dentro de una anotacin Ruby (rt) Parntesis alrededor de texto Ruby (rp) Fecha (time) Texto contnuo fragmentable (wbr) Microdatos Anotacin de contenidos con microdata (HTML Microdata) Subtotal Stars 1 0,5 0,5 1 0 1 0 57% 2,0 1 0 0 0 0 1 0 29% 1,5 1 1 1 0 0 1 0 57% 2,0 1 0,5 0,5 1 0 1 0 57% 2,0 1 0,5 0,5 1 0 1 0 57% 2,0 1 0,5 0,5 1 0 1 0 57% 2,0 1 0,5 0,5 1 0 1 0 57% 2,0 1 0 0 0 1 1 1 57% 2,0 1 0 0 0 0 1 0 29% 1,5 Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2

17

Compatibilidad de HTML5 en agentes de usuario


Tabla 6. Resultados de las pruebas de formularios en HTML5
Formularios Tipos de entradas Texto (input type=text) Bsqueda (input type=search) Nmero de telfono (input type=tel) URL absoluta (input type=url) Correo electrnico (input type=email) Fecha y hora global (input type=datetime) Fecha (input type=date) Mes (input type=month) Semana (input type=week) Hora (input type=time) Fecha y hora local (input type=datetime-local) Nmero (input type=number) Nmero en rango (input type=range) Color (input type=color) Casilla de verificacin (input type=checkbox) Imagen como botn (input type=image) Atributos de definicin del comportamiento del campo Pone el foco en el elemento de forma automtica (autofocus) Completa el campo con informacin anterior (autocomplete) Direccin de lectura del texto (dirname) Permitir valores mltiples (multiple) Expresin regular para comprobar el valor del campo (pattern) Indicador de contenido (placeholder) Es obligado introducir un valor (required) Gestin de eventos de elementos Valor introducido (oninput) Valor modificado (onchange) Valor no vlido (oninvalid) Elementos Agrupacin de controles (fieldset) Conjunto de opciones predefinidas (datalist) Generador de par de claves pblica-privada (keygen) Resultado de un clculo (output) Progreso de una tarea (progress) Indicador de medida (meter) Validacin esttica Mtodo de validacin esttica de restricciones (checkValidity()) No validar (novalidate) Subtotal Stars 1 1 1 1 1 0 0 0 0 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 74% 3,0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0,5 1 1 0 1 1 66% 2,5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1,00 0 0 0 0 0 0 0 18% 1,0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 1 1 0 0 1 1 85% 4,0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 94% 5,0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 1 1 0 0 1 1 85% 4,0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 0,5 1 0 0 1 1 84% 4,0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 97% 5,0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 65% 2,0 Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2

18

Compatibilidad de HTML5 en agentes de usuario


Tabla 7. Resultados de las pruebas de manejo de contenidos de HTML5
Contenido Contenido incrustado Alojamiento de contenido en zona segura (iframe sandbox) Alojamiento de contenido de forma transparente (iframe seamless) Vdeo, pelcula o audio con leyenda (video) Flujo de sonido (audio) Pista de texto asociada a contenido multimedia p.e. subttulo (track) Lienzo de representacin grfica (canvas) Lienzo de representacin para 2 dimensiones (canvas 2D) Expresin matemtica con MathML (math) Grfico vectorial escalable con SVG (svg) Formatos de audio soportados AAC MP3 Ogg PCM WebM Formatos de vdeo soportados H.264 MPEG4 Ogg Theora WebM Otros Soporte a representacin para 3 dimensiones con WebGL (canvas 3D) Deteminar la visibilidad de la pgina (Page Visibility) Animaciones (requestAnimationFrame) Interfaces para programacin de audio (Web Audio API) Interfaces para programacin de audio (Audio Data API) Subtotal Stars Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 83% 4,0 0 0 1 1 0 1 1 1 1 0 0 1 1 1 0 0 1 1 0 1 1 0 1 61% 2,0 0 0 1 1 0 1 1 0 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 35% 1,5 1 0 0 1 0 1 1 1 1 1 1 0 1 0 1 1 0 0 0 0 0 0 0 48% 1,5 1 0 1 1 0 1 1 1 1 1 1 0 1 0 1 1 0 0 1 0 0 1 1 65% 2,5 1 0 1 1 0 1 1 1 1 1 1 0 1 0 1 1 0 0 0 0 0 0 0 52% 1,5 1 0 1 1 0 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 35% 1,5 0 0 1 1 0 1 1 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 48% 1,5 0 0 1 1 0 1 1 1 1 0 0 1 1 1 0 0 1 1 1 1 1 0 1 65% 2,5

19

Compatibilidad de HTML5 en agentes de usuario

Tabla 8. Resultados de las pruebas de capacidades de interactividad de HTML5

Interactividad Elementos interactivos Widget de informacin adicional (details) Resumen (summary) Orden que puede invocar el usuario (command) Lista de rdenes (menu) Facilidades de interaccin con el usuario Atributo de elemento oculto (hidden) Elementos y documentos editables (contentEditable, designMode) APIs para edicin APIs para seleccin Definicin de elementos arrastrables y aquellos que los aceptan (draggable/dropzone) Soporte a eventos de arrastrar/soltar Subtotal Stars

Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2 1 1 0 1 1 1 1 1 0,5 1 85% 4,0 1 0 1 0 1 1 1 1 0,5 1 75% 3,0 0 1 0 1 1 1 1 1 0 0 60% 2,0 0 1 0 1 1 1 1 1 0,5 1 75% 3,0 1 1 0 1 1 1 1 1 0 0 70% 2,5 0 1 0 1 1 1 1 1 0 0 60% 2,0 0 1 0 1 1 1 1 1 1 1 80% 3,5 0 1 0 1 1 0 0 1 0 0 40% 1,5 0 1 0 1 1 1 1 1 0 0 60% 2,0

Tabla 9. Resultados de las pruebas de soporte a hojas de estilo

Hojas de estilo Compatibilidad con selectores CSS3 Selectores dinmicos HTML5 Subtotal Stars

Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 100% 100% 50% 100% 100% 100% 100% 100% 100% 5,0 5,0 1,5 5,0 5,0 5,0 5,0 5,0 5,0

20

Compatibilidad de HTML5 en agentes de usuario


Tabla 10. Resultados de las pruebas de soporte a las APIs de dispositivo
APIs de dispositivo Capacidades del navegador Acceso al historial de sesin (history) Soporte a aplicaciones offline (application cache) Otras facilidades Almacenamiento local en cliente (Web Storage) API para geolocalizacin (Geolocation API) Personalizar proveedor de bsqueda Acceso a sistema de ficheros (FileReader API) Almacenamiento de sesin Base de datos local (IndexDB) Acceso a sistema de ficheros (FileSystem API) Acceso a la cmara Subtotal Stars Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2 1 1 1 1 1 1 1 1 1 0 90% 4,5 1 1 1 1 1 0,5 1 1 0 0 75% 3,0 0 0 1 1 1 0 1 0 0 0 40% 1,5 1 1 1 1 0 0 1 0 0 0 50% 1,5 1 1 1 1 0 0 1 0 0 0 50% 1,5 1 1 1 1 0 0 1 0 0 0 50% 1,5 0 1 1 1 0 1 1 0 0 0 50% 1,5 1 1 1 1 0 1 1 0 0 0 60% 2,0 1 1 1 1 1 1 1 1 0 0 80% 3,5

Tabla 11. Resultados de las pruebas de soporte a APIs de contenido


APIs de contenido Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2 Manejadores de contenido personalizables (registerContentHandler()) 0 1 0 0 0 0 0 0 1 Manejadores de esquemas personalizables (registerProtocolHandler()) 1 1 0 0 0 0 0 0 1 Comunicacin entre documentos (HTML5 Web Messaging) 1 1 1 1 1 1 1 1 1 Subtotal 67% 100% 33% 33% 33% 33% 33% 33% 100% Stars 2,5 5,0 1,5 1,5 1,5 1,5 1,5 1,5 5,0

Tabla 12. Resultados de las pruebas de capacidades para proceso dinmico


Proceso dinmico Scripts en segundo plano (Web Workers) Comunicacin bidireccional con servidor (WebSocket API) Recepcin PUSH de eventos de servidor (Server-Sent Events) Notificaciones a usuario (Web Notifications) Subtotal Stars Chrome - PC Firefox - PC IE - PC Safari - PC PlayBook 2.0 iPad2 Android 3.2 Opera Mob 11,5,5 Firefox Android 3.2 1 0,5 0 1 1 1 0 1 0,5 1 1 0 1 1 1 0 0 1 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 0 100% 63% 0% 75% 100% 75% 0% 50% 63% 5,0 2,0 0,0 3,0 5,0 3,0 0,0 1,5 2,0

21

Compatibilidad de HTML5 en agentes de usuario

22

Compatibilidad de HTML5 en agentes de usuario

Anexo II. resultados

Procesamiento

de

Segn hemos indicado en la seccin 5, los datos en bruto de los resultados de las pruebas no son suficientemente significativos si no se procesan adecuadamente. A continuacin indicamos el proceso llevado a cabo. En primer lugar, se han ponderado las distintas categoras, de modo que tuvieran ms peso las categoras ms bsicas para el soporte de HTML5, y menos peso las ms avanzadas o experimentales, segn se refleja en la siguiente tabla.
Tabla 13. Ponderacin de las categoras de pruebas.

En segundo lugar, se ha realizado una correspondencia no lineal entre el porcentaje de pruebas pasadas en cada categora (o en el total, una vez ponderadas) con un nmero del 0 al 5, representado en forma de estrellas. El objetivo es evitar la engaosa sensacin de que un 50% de pruebas pasadas es un "aprobado", cuando en realidad se corresponde a un soporte ms bien pobre. La funcin de correspondencia entre porcentajes y estrellas es una interpolacin polinmica entre los siguientes puntos que definimos.
Tabla 14. Correspondencia entre porcentajes y estrellas.

Categora Soporte bsico Elementos estructurales Marcado semntico Formularios Contenido Interactividad Hojas de estilo APIs de dispositivo APIs de contenido Proceso dinmico TOTAL

Ponderacin 16% 12% 12% 12% 12% 12% 6% 5% 5% 8% 100%

Pruebas superadas 0% 20% 60% 75% 85% 96%

Estrellas Repres. 0 1 2 3 4 5

Significado (soporte) No soporta Pobre Limitado Parcial Bueno Excelente

La funcin de interpolacin empleada en concreto es la siguiente (donde p corresponde al porcentaje de pruebas expresado de 0 a 100), redondeada a continuacin al mltiplo ms cercano de 0.5: -

23

Anda mungkin juga menyukai