W Sieci toczy się obecnie spór na miarę tego pomiędzy Świętym Cesarstwem Rzymskim a papiestwem. Po jednej stronie mamy WHATWG, po drugiej – W3C.

Wojna pozycyjna

Od dość dawna mamy dwa standardy HTML: jeden od W3C i jeden od WHATWG. Choć obydwa standardy wyrosły z jednego pnia, wkrótce zaczęły rozrastać się w dwie strony. WHATWG zaczęło standaryzować albo całkowite nowości (niekoniecznie z jakimikolwiek implementacjami), albo rzeczy, które powinny zostać zapomniane. W3C natomiast skupiło się na interoperacyjności HTML-a i dostępności. Może i HTML 5.x nie zawiera wszystkich najnowszych ficzerów, ale kładzie duży nacisk na to, by HTML działał dobrze dla wszystkich.

Niemniej WHATWG od dawna narzeka na to, że HTML 5.x w ogóle powstaje, uparcie we wszystkich możliwych sytuacjach nazywając specyfikację od W3C forkiem. Największym pragnieniem WHATWG zdaje się być wyeliminowanie z równania W3C – przynajmniej w zakresie rozwijania HTML-a. Stąd ostatnie powołanie do życia Steering Group czy zmiana licencji standardu HTML na mniej liberalną, co może utrudnić dalszy rozwój HTML 5.x.

Pomiędzy organizacjami standaryzującymi zdaje się toczyć wojna. WHATWG na własność chce zagarnąć jak najwięcej standardów – i to nie tylko od W3C. I udaje im się to, z prostej przyczyny: WHATWG to organizacja reprezentująca interesy 4 korporacji, które tworzą największe przeglądarki na rynku – Google, Mozilla, Microsoft i Apple. Bez ich zgody W3C czy IETF i tak nie mają jakiejkolwiek mocy sprawczej. I tym sposobem mamy pat.

Światełko w tunelu…

Jak już wspominałem, W3C skupia się w dużej mierze na dostępności. To w końcu ta organizacja rozwija WCAG czy ARIA. Nic zatem dziwnego, że w sporze o main to właśnie W3C reprezentuje tę stronę, która upiera się przy dostępnej wersji definicji tego elementu. WHATWG bardzo długo upierało się przy swoim, aż tu nagle… chce zmienić definicję main na bardziej dostępną. W propozycji pojawia się fragment:

The main element can be used as a container for the dominant contents of the document.

To sprawia, że w końcu element main w wersji od WHATWG jest zgodny z definicją roli main z ARIA. A to równocześnie przybliża nas zdecydowanie do rozwiązania sławetnego sporu pomiędzy WHATWG i W3C.

…które szybko zgasło

Niemniej diabeł – i to dosłownie! – tkwi w szczegółach. Nowa propozycja wciąż nie usuwa bowiem najbardziej kontrowersyjnego fragmentu definicji od WHATWG – możliwości wstawiania kilku main w obrębie jednej strony:

While there is no restriction as to the number of main elements in a document, web developers are encouraged to stick to a single element.

Żeby było śmieszniej, tego typu ostrzeżenia Domenic Denicola, redaktor WHATWG, krytykował w kontekście HTML 5.x.

Zastanawia także podejście redaktorów WHATWG do całej sprawy. Jak można wyczytać z opisu pull requesta, powstał on tylko i wyłącznie dlatego, że AT nie chcą współpracować:

there’s no reason to believe AT will change

Jeszcze ciekawszy obraz sytuacji wyłania się z komentarza do słynnego issue #100:

I also agree that the dominant advice (unless we can get browsers/AT to change per above) should be to have a single <main> per document.

Można wręcz odnieść wrażenie, że redaktorzy WHATWG trwają w świętym przekonaniu, że poza specyfikacją HTML nie istnieje nic innego i jest ona jedynym źródłem prawdy. A w rzeczywistości zmiana implementacji main w przeglądarkach tak, by była ona zgodna z definicją w specyfikacji WHATWG pociągnęłaby także za sobą konieczność zmiany definicji roli main w ARIA czy opisu bindingów w accessibility tree.

Oczywiście nie mogło także zabraknąć uszczypliwości w kierunku W3C:

It does seem like there may be a case for multiple <main>s when combined with hidden, as W3C’s fork of HTML already acknowledges.

Żeby było śmieszniej, od razu na nowo rozgorzała kłótnia o to, czy faktycznie definicję trzeba zmieniać, czy lepiej zmienić… implementacje w przeglądarkach i AT (sic!).

Oczywiście cała dyskusja zostałaby zakończona ponad 2 lata temu, gdyby WHATWG stwierdziło, że faktycznie definicja od W3C jest lepsza i “sforkowało” ją do swojej specyfikacji. Ale piekło jeszcze nie zamarzło, więc nie ma co na to liczyć.

Przesunięcie frontu

Niemniej sam ruch ze strony WHATWG w kierunku poprawienia dostępności HTML LS jest wielkim skokiem dla całej otwartej Sieci. Pytanie tylko, czy nie jest to skok w przepaść i w jaką stronę to wszystko ostatecznie zacznie zmierzać.

Bo prawdę mówiąc wolałbym, żeby nad rozwojem Sieci czuwało kilkadziesiąt korporacji niż tylko cztery, które i tak już dawno podzieliły ten rynek między siebie…