둘로 나뉜 웹 표준, 하나로 합쳐진다

"W3C와의 기술 표준화 주도권 싸움에서 WHATWG 승리"

컴퓨팅입력 :2019/05/31 20:30    수정: 2019/06/02 12:34

HTML 표준을 제정하는 두 단체, 월드와이드웹컨소시엄(W3C)과 웹하이퍼텍스트애플리케이션기술 작업반(WHATWG)이 제각각 만들던 HTML과 문서객체모델(DOM) 규격을 단일 버전으로 내놓기로 했다.

제프 자페 W3C 최고경영자(CEO)는 지난 28일 W3C 공식 블로그를 통해 "W3C와 WHATWG가 HTML과 DOM 규격을 단일 버전으로 개발하는 데 협력하는 합의안에 서명했다"고 밝혔다. [원문보기 ☞ W3C and WHATWG to work together to advance the open Web platform]

이어 "규범이 되는 두 별개의 HTML 및 DOM 규격을 두는 건 커뮤니티에 일반적으로 해롭다고 봄직하다"면서 "다시 함께 일하고 싶다는 바람에서, W3C와 WHATWG는 다음(합의안) 조건에 동의했다"고 덧붙였다.

2018년 4월부터 별도 HTML 및 DOM 표준을 만들던 두 웹표준화 단체 W3C와 WHATWG가 다시 하나의 표준을 내놓기로 합의했다. 합의 내용을 뜯어보면 WHATWG가 W3C로부터 주도권을 완전히 가져왔다는 평가가 나오고 있다.

WHATWG와의 합의에 따라 향후 W3C는 자체 표준화를 진행하던 작업과 HTML 5.3 및 DOM 4.1 버전 문서 발간 계획을 중단한다.

WHATWG는 현재 주류 브라우저 개발업체인 애플, 구글, 마이크로소프트, 모질라, 네 회사 중심으로 만들어져 돌아가는 웹 기술 표준화 조직이다. W3C에도 브라우저 개발업체 쪽 기술 전문가들이 있지만, 웹 기술을 활용하는 세계 각지의 나라별, 업종별 수백개 기업과 단체들도 참여해 논의를 진행한다는 점에서 WHATWG와 근본적인 차이가 있다.

지난 28일 이 소식을 다룬 미국 지디넷은 "브라우저 개발업체가 HTML 및 DOM 표준 영역에서 벌인 W3C와의 전쟁에서 승리했다"면서 "W3C가 HTML와 DOM 표준 개발(권한)을 WHATWG에 넘겨 줬다"고 표현했다. [원문보기 ☞ Browser vendors win war with W3C over HTML and DOM standards]

■ "HTML 및 DOM 표준화 주도권 놓고 W3C와 겨룬 WHATWG의 승리"

미국 지디넷은 이 합의 소식을 놓고 W3C와 표준화 주도권 싸움에서 WHATWG가 승리한 것이라고 평했다. 보도는 "애플, 구글, 마이크로소프트, 모질라, 네 주류 브라우저 개발업체가 만든 산업그룹이 월드와이드웹 표준화 기구'인 W3C와의 줄다리기에서 승리함으로써, 그들의 도움 없이는 W3C가 웹 표준을 규율할 능력이 없음을 효과적으로 증명했다"고 썼다.

WHATWG 그룹은 더 현대적인 HTML 표준을 개발하기에 너무 느린 W3C의 페이스와, W3C가 XML같은 구조를 띠는 HTML, 'XHTML'이라 알려졌으며 브라우저 개발업체들이 당시 동의하지 않았던 변형(규격)으로 이행하는 계획으로 인해 (별도로) 2004년 만들어졌다. 당시 W3C 주도 세력엔 웹 개발 커뮤니티 참여에 진정성을 갖지 않는 비 브라우저 관련 단체도 껴 있었는데, WHATWG는 W3C 주도 세력이라 여겨졌던 애플, 모질라, 오페라 소속 멤버로 구성됐다.

미국 지디넷은 "그들(브라우저 개발업체)은 반란을 일으켰고 이후 HTML5 표준이 된 규격을 개발했다"며 "W3C는 브라우저 개발업체들이 그걸 지원한 이후에 HTML5 표준을 HTML 웹 표준의 주요 차기 버전으로 공식 승인했다"고 설명했다. 이어 "두 단체는 수년에 걸쳐 협력했지만, 웹 표준 관련 작업 대부분은 W3C에서 공식 표준으로 제안되기 전에 WHATWG에서 처음 만들어진 것이었다"고 지적했다.

또 "많은 경우 제안된 표준은 W3C에서 최종 확정하고 공식 승인하기에 앞서 종종 (구글)크롬과 모질라(파이어폭스)에 탑재됐다"며 "대개의 경우 브라우저 개발업체는 W3C 승인을 그저, WHATWG에서 그들끼리 결정한 표준에 거의 영향을 주지 않는, 공식성을 획득하는 절차쯤으로 여겼음을 보여 준다"고 묘사했다.

여기까진 형식적으로나마 협력 관계가 존재했다고 볼 수 있다. 본격적인 균열은 1년 전쯤 발생했다. 미국 지디넷은 "2018년 4월 모든 WHATWG 멤버 - 애플, 구글, 마이크로소프트, 모질라 - 들이 W3C의 DOM 표준 4.1 버전 승인 계획을 적극적으로 뚜렷하게 반대했을 때, 두 조직은 공식적으로 대립했다"며 "W3C엔 다른 (WHATWG 멤버를 제외한) 회원단체 수백곳이 있음에도 DOM 4.1 버전 표준은 더 진전되지 않았고 현존 웹브라우저에 구현되지도 않았다. 이때부터 두 단체는 갈라진(divergent) 표준을 만들어 왔다"고 설명했다.

W3C의 표준화는 HTML5 전후로 WHATWG의 역할에 의존해 왔다. 그리고 두 단체가 별개의 표준을 만든들, WHATWG 멤버인 브라우저 개발업체가 W3C의 규격을 구현해주지 않으면 사실 표준이라는 의미가 없다.

그래서 미국 지디넷은 "이제 W3C와 WHATWG는 그들의 차이를 제쳐 놓고 새로운 MOU에 서명했다는 보도자료를 내놨다"며 "이 새로운 합의에 따라 W3C는 WHATWG를 위해 미래 HTML 및 DOM 표준을 공개하는 걸 공식적으로 포기하고, 브라우저 개발업체에 완전한 제어권을 되돌려줬다"고 썼다. 이어 "대신 W3C와 수백개 회원은 그들에게 필요한 기능을 담은 미래 웹 표준을 위한 '권고' 초안을 만들면 WHATWG는 그들 제품에 뭘 집어넣을지 결정할 것"이라고 덧붙였다.

보도는 또 "HTML 표준 공식 버전은 현재 WHATWG이 유지하는 'HTML 리빙 스탠더드'가 되고 'DOM 리빙 스탠더드'도 마찬가지"라며 "이날 발표는 가장 중요한 웹 표준의 책임이 W3C와 수백곳의 회원이 아니라 오로지 브라우저 개발업체에 있음을 의미하기 때문에, 웹 표준 지형에 거대한 변화"라고 강조했다.

■ W3C "함께 '오픈 웹 플랫폼'을 함께 발전시키기로 합의했다"

하지만 W3C의 실제 발표를 보면 WHATWG와 대등한 협력 관계처럼 묘사된다.

제프 자페 W3C CEO는 W3C 블로그 발표문을 통해 양측이 "'오픈 웹 플랫폼'을 함께 발전시키는 데 합의했다"면서 "WHATWG/W3C 공동작업체제(joint working mode)로써 함께 내놓은 양해각서(MOU)가 이 협력의 세부사항을 제공한다"고 밝혔다.

우선 양측이 합의한 주요 내용은 다음 네 가지다.

하나, 양측은 HTML과 DOM 규격 단일 버전을 함께 개발하기로 했다.

둘, WHATWG은 '살아있는 표준(Living Standard)'을 유지하되, 앞으로 WHATWG 저장소에서 이 표준, 검토 초안, 스냅샷을 W3C와 함께 만든다.

셋, WHATWG 저장소에서, W3C는 참여자들의 커뮤니티를 서로 연결하고, 커뮤니티 차원의 표준화 작업을 촉진한다. 커뮤니티 차원의 작업이란 사용 사례 발굴, 이슈 문서화, 테스트 작성, 이슈 해소 과정의 중재 등을 의미한다. 넷, W3C는 그간 HTML과 DOM 관련 규격의 지정목록(designated list)을 독자적으로 발행했는데, 이를 중단한다. 대신 WHATWG의 검토 초안(Review Drafts) 규격을 W3C 표준(Recommendation)으로 수용하는 역할을 맡는다.

자페 CEO는 발표문에 이 협력의 '부가적인 측면'에 해당하는 일곱 가지 항목을 보탰다.

하나, 앞서 언급된 WHATWG 검토 초안은 이들이 살아있는 표준을 만들면서 생산할 특정 기간별 스냅샷(periodic snapshot)을 의미한다. W3C는 이 검토 초안을 선별해 권고후보(Candidate Recommendation 표준안으로 만든다. W3C 표준화 절차상, 권고후보 표준안은 권고안(Proposed Recommendation)을 거쳐 확정 표준을 의미하는 권고(Recommendation) 규격이 된다.

둘, W3C 웹사이트에서 제공하던 모든 표준과 초안 문서는 향후 WHATWG 웹사이트의 HTML과 DOM 규격 문서를 가리키게 된다.

셋, 표준화 논의 과정에서 계속 참여자간 합의가 이뤄지지 않는 사안을 해소하는 절차가 마련된다. 해당 사안을 WHATWG 스티어링그룹(Steering Group) 논의 회부, 테크니컬아키텍처그룹(TAG) 리뷰, W3C 디렉터 등이 맡는 방식이다. 여기서도 합의에 이르지 못하고 양쪽이 갈라진 규격을 게재하면 이 합의가 종료될 수 있다.

다음 네 가지도 부가적인 측면으로 꼽힌 항목들이다. 다섯, 검토 초안 및 권고 단계의 규격을 담은 단일 문서 저작권과 브랜딩을 공동으로 사용하기. 여섯, 구현 경험이 없는 기능에는 주석을 쓰기. 일곱, WHATWG 웹사이트상의 W3C 권고 규격엔 다른 서식을 쓰기. '살아있는 표준' 안에서 안정화한 기능을 참조할 수 있도록 W3C의 규범 참조 정책(Normative Reference Policy)으로 업데이트하기.

실제 W3C와 WHATWG의 향후 협업 계획과 절차적 방법은 지난 28일 게재된 MOU 전문에 자세히 소개돼 있다. 다음 링크에서 HTML 및 DOM 규격 제정 방향, 협력 절차, 분쟁시 해법, 발행될 표준 문서의 서식, 오류 관리, 기존 W3C 문서의 인터넷주소(URL) 전환 계획 등 세부내용을 확인할 수 있다. [바로가기 ☞ Memorandum of Understanding Between W3C and WHATWG]

■ 이게 다 무슨 얘기인지 모르겠다면

HTML는 웹 문서의 표시 방법을 정의한 규격이다. 사람들은 이 표준에 맞춰 문서를 작성하고, 브라우저 개발업체는 이 표준에 맞춰 문서를 처리한다. 인터넷 이용자들이 서로 다른 개발업체에서 만들어진 브라우저로 비슷한 웹페이지 레이아웃을 표시할 수 있게 해주는 기반 요소다.

DOM은 HTML 문서 내용과 레이아웃을 동적으로 처리하게 해주는 프로그래밍 인터페이스 규격이다. 개발자는 브라우저별 DOM이 제공하는 인터페이스를 활용해 웹페이지의 구조, 내용, 서식을 변경할 수 있다. 여러 브라우저로 비슷한 웹 애플리케이션 실행 결과를 얻게 해주는 기반 요소다.

인터넷 사업자들이 이용자 브라우저 종류에 상관 없이 웹페이지와 웹애플리케이션을 작성하고 개발한 의도대로 제공하려면 단일한 HTML과 DOM 표준이 있어야 한다. 지난 15년간 W3C와 WHATWG라는 별개 단체는 나름대로 협력의 틀을 갖고 공통된 HTML과 DOM 표준을 만들어 왔는데, 약 1년 전부터 동떨어진 결과물을 내놓기 시작했다.

W3C는 웹기술을 활용하는 각국 표준기관과 기업 소속 기술전문가들이, WHATWG는 웹플랫폼을 구현하는 브라우저 개발업체들이 주축인 단체였다. 그래서 둘의 성격이 달랐다. 굳이 나눠 보자면 W3C는 웹의 안정성과 조화를, WHATWG은 웹의 빠른 발전과 실용성을 중시했다. 이런 다른 성격을 띤 채 각자 다른 속도로 표준화 작업을 진행해 왔다.

W3C가 2014년 내놓은 'HTML5' 규격은 외부의 WHATWG에서 만든 주요 표준안 규격 일부를 모아 수용한 것이었다. WHATWG가 만든 최신 규격을 W3C가 커뮤니티 논의를 거쳐 안정화하고 최종 표준으로 합의하기까지 상당한 시차가 있었다.

W3C는 1989년 이후 웹의 발전 흐름에 따라 필요해진 표준 개발을 맡기 위해 1994년 설립됐다. 초기 미국, 프랑스, 일본의 연구소를 주관기관으로 추가하며 대륙별 활동을 확대하고 2002년이래로 현재까지 세계 각지 기술 기업과 관련 공공기관 등 440여곳을 회원으로 두고 있다.

WHATWG은 지난 2004년 결성된 브라우저 개발업체의 연합이다. 결성 초기 브라우저 개발업체들은 W3C의 보수적인 표준화 방식에 답답함을 느끼고, 그들끼리 현대적인 HTML 표준과 관련 신기술의 실험적 시도, 빠른 개발 및 표준화에 초점을 맞춰 활동하기 위해 뭉쳤다.

WHATWG는 W3C 외부에서 1999년 만들어진 'HTML4.01'의 후속 표준화 작업을 먼저 시작했다. 그 구상안은 W3C가 2014년 확정한 HTML5 표준 규격으로 발표됐다. 이를 위해 W3C 내부에 WHATWG와 협력하는 'HTML 작업반(W3C HTML Working Group)'이 만들어졌다.

관련기사

HTML 작업반이 만들어진 이후에도 WHATWG의 표준안 개발 작업 결과물은 W3C 커뮤니티로 빠르게 포함되지 못한 것으로 평가됐다. 설립 배경과 구성원들이 판이한만큼 W3C와 WHATWG의 활동양상과 이들이 내놓는 결과물의 성격에도 차이가 컸기 때문으로 풀이된다.

결국 WHATWG는 '리빙(living) HTML'라 불리는 표준 개발 작업에 집중하게 됐다. 개발된 표준에 버전을 명시하는 대신, 최신 기능 구현에 초점을 맞춰 끊임없이 변화하는 규격이란 의미에서다. 리빙 HTML 개발 작업의 결과물 중 특정 시점에 포착된 완성된 규격이 모여 W3C 표준으로 나왔다.