Html5 gaat op papier de wereld, of in ieder geval de webwereld, verbeteren. Het maakt video-plugins overbodig, zet AJAX aan de kant, gooit Flash overboord, en helpt browserverschillen en –incompatibiliteit te overkomen. De nieuwe versie van de webtaal zorgt nog net niet voor wereldvrede. Maar dat alles is slechts in theorie. Vijf luchtkastelen over html5 afgebroken.

Geen standaard

Html5 lijkt een echte, officiële standaard. Het is niet opgedrongen vanuit één leverancier, het is geen technologie die door marktaandeel de facto dé standaard is. Alleen is het nog maar de vraag wat html5 wanneer omvat. Wat nu ‘html5 ready’ of ‘html5 capable’ is, is dat straks niet meer. In afwachting van de officiële snapshot is html5 onderhevig aan veranderingen.

Webstandaardenorganisatie W3C waarschuwt daar zelf voor. “Implementeerders moeten zich ervan bewust zijn dat deze specificatie niet stabiel is.” Bedrijven en ontwikkelaars die html5 implementeren, maar niet deelnemen aan de W3C-discussies over de standaard, lopen grote kans dat “de specificatie onder hun voeten vandaan wordt veranderd op incompatibele wijze”.

Het W3C adviseert dan ook meedoen. “Leveranciers die de specificatie willen implementeren voordat het de status van ‘candidate recommendation’ bereikt, moeten deelnemen aan de mailinglijsten en discussies van de W3C-werkgroep.” Alleen gaat die html-werkgroep van de standaardenorganisatie niet over de html5-standaard. Pardon? Ja, dat is deze week duidelijker geworden.

Vaag toezicht

Wie gaat er eigenlijk over html5? Je zou denken de html-werkgroep van webstandaardenorganisatie W3C. Maar nee, die werkgroep laat html5 vallen. Het heeft deze week aangekondigd niet langer aan ‘html5’ te werken. Het werkt voortaan aan …. ‘html’.

Maar dat betekent niet dat html5 een witte walvis, of heilige graal, is geworden. Ja, de html-standaard van de W3C-werkgroep blijft voortaan eeuwig in ontwikkeling, is dus nooit af en kan nooit door browsers of websites ‘gehaald’ worden. Maar de échte html5-standaard valt onder het W3C.

En dat W3C is vorig jaar al met de eerste officiële browsertest gekomen. Die echter nogal beperkt is, dus valt er makkelijk op te scoren. Bovendien is die test nog niet helemaal af, of eigenlijk: helemaal niet af. Geeft het W3C naderhand toe, na felle kritiek van webdevelopers en ook van html-werkgroepvoorzitter Ian Hickson.

Is het wel zo slim om zaken die nog niet af zijn, en waar veel over te doen is, al naar buiten te brengen? En te voorzien van een officieel logo, compleet met luchtpraat als: “Het staat krachtig en waarachtig, veerkrachtig en universeel net als de markup die jullie schrijven. Het schijnt net zo helder en krachtig als de voorwaartsdenkende, toegewijde webdevelopers die jullie zijn.”

Nog lang niet af

Zowel de html5-standaard zelf als de browsertest zijn dus nog in ontwikkeling. Beide komen er wel van, hoor. Wanneer? Nou, het schiet al best op. Het gestelde doel van een W3C ‘candidate recommendation’ in 2012 ligt nog op schema. Na het bereiken van de officiële status van bijna-klaar, zeg maar release candidate, breekt de volgende fase in de ontwikkeling aan.

In die fase is er ruimte voor feedback en daarna moeten er twee verschillende implementaties van de standaard komen. Deze implementaties moeten 100 procent compleet zijn en volledig interoperabel. Die compleetheid en ‘zuiverheid’ worden dan getest door elk van de twee html5-implementaties duizenden tests te laten ondergaan. De html-werkgroep noemt 20.000 tests voor de hele specificatie nog een “conservatieve schatting”.

Dus is het eerst wachten op de makers van webbrowsers en webservers, dan op de makers van html5-testcases en vervolgens op het uitvoeren van al die tests. Daarna kan het wel vlot afgerond worden: zo tegen 2022. Schat de voorzitter van de html-werkgroep Ian Hickson, die dus niet helemaal over de echte html5-standaard gaat. Dat doet het overkoepelende W3C.

De werkgroep stelt nu dan ook dat de genoemde datum van 2022 niet langer relevant is. Het benadrukt ook dat delen van de specificatie op dit moment al bruikbaar zijn. “Verschillende delen van de specificatie zitten op verschillende niveaus van volwassenheid. Sommige secties zijn al relatief stabiel en er zijn implementaties die al bijna af zijn, en die features (zoals de canvas-tag) kunnen vandaag al worden gebruikt. Maar andere secties zijn nog actief in ontwikkeling en veranderen geregeld, of zijn zelfs nog niet geschreven.”

Vervuiling

Het besluit van de werkgroep deze week om ‘html5’ voortaan aan het W3C over te laten, moet duidelijkheid scheppen en de al gehanteerde ontwikkelpraktijk weergeven. Hickson van de W3C-werkgroep stelt dat deze verandering in 2009 al is besloten, schrijft hij.

Van doorvoering is toen even afgezien omdat veel mensen de term html5 veel bezigden, aldus de html-voorzitter. “De term wordt nu echter gebruikt om alles aan te duiden wat gerelateerd is aan webstandaarden, dus het is tijd om door te gaan.”

Die vervuiling van de term wordt mede gepleegd door leveranciers als Microsoft, die webstandaard css (cascading style sheets) al onder de noemer html5 schaarde. Sinds deze week doet het W3C daar zelf ook aan mee. Het net onthulde officiële logo van het W3C voor html5, compleet met prominent versienummer, omvat ook andere webstandaarden.

Verwarrend? Het wordt nog erger. De html-standaard van de werkgroep, die voortaan continu in ontwikkeling is, loopt dus vóór op wat het W3C als standaard (html5) uitbrengt. Maar de echte html5-standaard (van het W3C dus) is niet alleen minder compleet dan waar de werkgroep aan werkt. Het kan ook weer méér bevatten, omdat er nog andere W3C-werkgroepen zijn.

“Dat is al een hele tijd zo. Niet alle onderdelen van WhatWG html5 (nu living html) zijn onderdeel van W3C html5”, legt de Nederlandse webdeveloper Niels Leenheer uit. “Dat leverde verwarring op, dus vandaar de naamswijziging.” Hij vertelt dat de html-standaard van de werkgroep ook W3C-standaarden omvat, al dan niet nog in ontwikkeling, zoals Canvas 2d, WebSockets, en Server-Sent Events. “Maar die zijn niet officieel onderdeel van de W3C html5-standaard.”

De eerste html5-test van het W3C is door onder meer Leenheer gehekeld, omdat het test op slechts een beperkt deel van de (komende) standaard. Die incompleetheid is later ook erkend door het W3C zelf. Leenheers eigen html5test is breder en neemt ook aanverwante webstandaarden mee, zoals WebGL. Het W3C schaart die met het officiële logo ook onder html5 (de klasse ‘graphics, 3D and effects’), zij het niet onder de officiële specificatie.

Kapers

Al met al zijn er dus genoeg mogelijkheden, eigenlijk: kansen, voor derde partijen om met html5 aan de haal te gaan. Dat gebeurt nu al wel, en daar lijkt geen einde aan te komen. Op dit moment zijn er al diverse claims dat browsers voldoen aan de ‘html5-standaard’, terwijl die er nog niet eens is. De claims hebben dan ook betrekking op bepaalde, soms ook verschillende, delen van die html-specificatie.

In de reacties onder de melding dat html5 (van de werkgroep) niet meer is, reageren developers positief, maar ook kritisch. Enerzijds kan het schrappen van versies de ontwikkelsnelheid ten goede komen. Anderzijds is er kritiek op het weglaten van snapshots en het daarmee ontbreken van duidelijke implementatiedoelen. Dat kan browsermakers discrepanties opleveren, die webdevelopers dan parten spelen.

Het W3C komt nog wel met snapshots, om de paar maanden, en wil dus in 2012 met een ‘release candidate’ komen. Kortom, webdevelopers kunnen zich voorlopig niet blindelings op html5-compliance richten. Zij moeten zich misschien dan maar richten op wat - en hoe - de meestgebruikte browsers html5 ondersteunen. Een praktische insteek, die al eerder is gehanteerd. Zo'n ‘de facto webstandaardisatie’ is namelijk al gebeurd met Internet Explorer 6.