w3c procedura ustalania standardow ach te internety

W3C – procedura ustanawiania standardów

W3C (Word Wide Web Consortium) to organizacja, która zajmuje się ustanawianiem standardów tworzenia stron WWW. Dodatkowo dba o szereg innych okołointernetowych kwestii, np. prawa autorskie, bezpieczeństwo w sieci. W3C oferuje też bezpłatne walidatory HTML i CSS, dzięki którym możemy sprawdzić czy dana strona jest zgodna ze standardami.

No właśnie – standardy.

Czasami rozwiązaniem naszych codziennych developerskich problemów są funkcjonalności nie należące do grupy standardów W3C. Opisane tajemniczymi hasłami „Candidate Recommendation” albo „Proposed Recommendation” budzą nasze wątpliwości i zniechęcają do ich użycia. Dziś chciałabym rozszyfrować owe tajemnicze statusy poprzez krótką analizę procedury ustanawiania standardów W3C.

Na samym wstępie chciałabym zaznaczyć, iż wszystkie tłumaczenia zawarte w tym artykule to tylko i wyłącznie moja luźna interpretacja oficjalnej, angielskiej nomenklatury.

Technical Report

Określenie dokumentu specyfikacji (również standardu), bez względu na jego poziom dojrzałości (maturity level).

Pod tym adresem https://www.w3.org/TR/ znajduje się wyszukiwarka wszystkich raportów technicznych opublikowanych przez W3C. Są to zarówno standardy (web standards), jak i szkice (drafts) starające się o miano rekomendacji (recommendation). Comandeer jednak słusznie zwraca uwagę na to, iż te raporty są opóźnione w porównaniu do ich wersji na stronie W3C na githubie. Wracając do oficjalnej strony W3C – umożliwia ona znalezienie dokumentu wg tytułu, tagu, statusu, wersji. Przyjrzyjmy się dokładnie statusom.

Status, Maturity level (Poziom dojrzałości)

Określenie „status” odnosi się tylko i wyłącznie do wspomnianej wyżej wyszukiwarki. Znajdziemy tam hasła odpowiadające poziomom dojrzałości. Dodatkowy status Retired odpowiada za dokumenty porzucone lub przestarzałe. Część z nich była częścią standardów W3C, jednak została z nich wykluczona z pewnych powodów (bezpieczeństwa, dostępności lepszego rozwiązania, prywatności, itd.).

Maturity levels (poziomy dojrzałości wg mojego frywolnego tłumaczenia) to ważny termin w procedurze ustanawiania standardów. Są one wnikliwie opisane w dokumencie W3C Process Document w podrozdziale 6.1.1 (lub też w nieco bardziej przejrzystej formie na githubie W3C). Informują nas o statusie prac nad dokumentem. Zanim dany dokument stanie się wszechobecnym standardem (rekomendacją), musi przejść długi (często wieloletni) proces standaryzacji. Dzięki statusom jesteśmy w stanie szybko stwierdzić, na jakim etapie znajduje się konkretna specyfikacja.

Poziomy dojrzałości, jakie są przypisane różnym dokumentom W3C, to głównie RECPRCRWD, NOTE. Listę wszystkich skrótów, z którymi możesz się spotkać, znajdziesz tutaj.

Poniżej widzicie generalny schemat procesu standaryzacji dokumentów W3C.

Procedura ustanawiania standardów W3C
Żródło: https://www.w3.org/2019/Process-20190301/

Jak widzimy, dokument może skakać pomiędzy różnymi poziomami. Ścieżka standaryzacji tylko w teorii jest prosta i przyjemna. Porozmawiajmy sobie teraz o tych poziomach dojrzałości. Po kolei.

Zacznijmy od tego, że W3C jest obecnie zrzeszeniem ponad 400 organizacji, firm, agencji rządowych i uczelni z całego świata. Każda organizacja należąca do W3C ma prawo złożyć tzw. draft, czyli propozycję zmiany starego lub ustanowienia nowego standardu. Draft może być odrzucony od razu przez odpowiedni dla niego zespół. Może również, po spełnieniu ściśle określonych warunków, zostać opublikowany przez W3C jako Working Draft (WD). I tutaj właśnie wchodzimy na główną ścieżkę standaryzacji W3C.

WD (Working Draft)

To pierwsza publiczna wersja przyszłego standardu, która została opublikowana w celu zbierania recenzji, testów przez społeczność developerską. Należy jednak pamiętać o statusie dokumentu – informuje on nas o tym, iż prace nad nim cały czas trwają. Wobec tego nie jest to ostateczna wersja, jedynie szkic. Wszelkie zmiany w dokumencie należy uważać za bardzo prawdopodobne. Ten etap nie gwarantuje, że specyfikacja kiedykolwiek stanie się rekomendacją.

FPWD (First Public Working Draft)

Pierwsza wersja specyfikacji, która być może kiedyś stanie się standardem.

LC / LCWD (Last Call Working Draft)

Status nadawany niedługo przed przejściem specyfikacji na wyższy poziom dojrzałości.

CR (Candidate Recommendation)

Stabilna wersja WD, jednak należy liczyć się z potencjalnymi zmianami, zależącymi głównie od testów implementacyjnych.

Specyfikacja spełnia wymagania techniczne grupy odpowiedzialnej za standard tzw. Working Goup. Środowisko developerskie ma ostatnią szansę na podzielenie się recenzją dokumentu.

FPCR (First Public Candidate Recommendation)

Możesz spotkać się z określeniem FPCR, które oznacza pierwszą wersję CR.

PR (Proposed Recommendation)

Jest to CR, który zdobył pozytywne opinie po implementacji, został publicznie zaaprobowany przez Dyrektora W3C, a następnie został wysłany w celu formalnej recenzji do Komitetu Doradczego (Advisory Committee).

Dokument na obecnym etapie nie powinien się znacząco zmieniać.

REC (Recommendation)

Oznacza zakończenie procesu standaryzacji. Dokument pomyślnie przeszedł wszystkie etapy i został ostatecznie określony mianem rekomendacji. Specyfikacja należy do zaszczytnej grupy web standards.

Status Rekomendacji odzwierciedla aprobatę dyrektora oraz członków W3C, a także wskazuje na jednomyślność całej organizacji w temacie danego dokumentu. Technologie, pomysły w nim zawarte oficjalnie wspierają misję W3C oraz stają się odpowiednie do wdrożenia na skalę światową.

W miarę rozwoju technologii, standard też może się rozwijać.

Edited Recommendation

Rekomendacja, która została edytowana przez Working Group. Edycja może polegać zarówno na niewielkich poprawkach, jak i drobnych nowych funkcjonalnościach.

Amended Recommendation

Rekomendacja, w której została naniesiona drobna zmiana bez dodatku nowych funkcjonalności.

Superseded Recommendation

Specyfikacja, która została zastąpiona nową wersją.

Obsolete Recommendation

Przestarzała specyfikacja, którą W3C przestało rekomendować ze względów znikomego znaczenia na rynku. Mimo wszystko istnieje szansa na wznowienie statusu Rekomendacji, natomiast specyfikacja nie sprawia fundamentalnych problemów technologicznych.

Rescinded Recommendation

Przestarzała specyfikacja, którą W3C przestało rekomendować i istnieje nikłe prawdopodobieństwo wznowienia statusu Rekomendacji dla dokumentu.


Czasami spotkasz się ze statusem, którego nie znajdziesz w powyższym procesie. Mianowicie jest nim NOTE.

NOTE

Oznacza, iż dokument jest… notatką. Żyje ona totalnie poza procesem standaryzacji, jednak może być związana z konkretną specyfikacją. Publikowana przez Working Group albo Interest Group, ma charakter informacyjny. Oznacza to, iż dokument zawiera np. guideline, rekomendowane techniki, best practices, przypadki użycia konkretnych technologii, wyjaśnienie przerwania pracy nad danym dokumentem, dodatkowe wymagania wiążące się z konkretną specyfikacją.

Publikacja notatki nie wiąże się z rozpoczęciem szczególnych prac przez W3C. Może ona zostać edytowana w dowolnym czasie przez swojego autora.


Źródła: W3C Process Document, stackoverflow, wikipedia.

Artykuły, które mogą Ci się spodobać...

Wpisz hasło, którego szukasz i naciśnij ENTER, aby je wyszukać. Naciśnij ESC, aby anulować.

Dawaj na górę