당신의 친절한 이웃, 코딩맨

#12 HTML의 역사 그리고 정의 본문

Today I Learn (TIL)

#12 HTML의 역사 그리고 정의

이웃집 친구 2020. 6. 23. 11:54
반응형

'보통 역사는 되풀이된다고들 한다.'

'과거를 알면 미래가 보인다고 한다.'

그래서 난 새로운 지역을 갈때, 그 지역의 역사를 알아보러 박물관에도 가곤 하는데, HTML을 하다 보니, 어떻게 생겨났는지, 과거엔 어땠는지 문득 궁금해졌다.


 

 

두둥 등장

생각보다 HTML의 원형은 물리학자가 제안했다. 팀 비너리스라는 물리학자가 CERN(유럽 입자 물리 연구소)에서 연구하던 당시 HTML의 원형인 인콰이어를 제안했다. 인콰이어는 CERN의 연구원들이 문서를 이용하고 공유하기 위한 체계였다.

그러던 중 1989년 (정말 최근이다) 팀 버너스리는 인터넷 기반 하이퍼 텍스트 체계를 제안하는 메모를 작성했다.

 

하이퍼텍스트는 독자가 문서에서 다른 문서로 즉시 접근할 수 있는 텍스트이다. 주로 컴퓨터나 다른 전자기기에 표시된다.

 

1991년 버너스리가 처음으로 인터넷에서 문서를 "HTML 태그(tag)로 부르면서 시작되었다.

 

HTML의 초기 모습은 CERN자체의 SGML기반 문서화 포맷인 SGML GUID에 강하게 영향을 받았고, 상대적으로 단순한 디자인이었다. 또한 이중 20개의 초기 요소들 중 13개는 HTML4 버전에서도 존재한다.

IETF(국제 인터넷 표준화 기구)에 의하여 1993년 중반, HTML규격에 대한 최초의 제안을 간행물로 정의했다.

이 초안은 6개월 후 만료되지만, NCSA 모자이크 브라우저의 인라인 이미지를 내장하는 사용자 정의 태그의 사례는 주목할 만 했고, 성공적인 프로토타입에 대한 표준을 기반한 IETF의 철학을, 데이브 라그렛의 경쟁 인터넷 초안인 HTML+(하이퍼텍스트 마크업 포맷) 1993년 말에 테이블과 기입 양식 같은 요소들을 이미 구현하여 표준화 제안을 했다.

 

1994년 초 HTML과 HTML+ 초안은 만료되었고, IETF는 HTML작업 그룹을 설립해 1995년에 HTML 2.0을 완성한다.

드디어 RFC 1996년에 HTML2.0은 HTML과 HTML+ 초안의 아이디어가 포함됐다고 발표했는데, 이유는 이전의 초안들로부터 새로운 버전을 구별하기 위해서였다. 하지만 IETF의 후원하에 개발은 상충하는 이해관계 때문에 지연되었다. 그래서 1996년 HTML 규격은 상용 소프트웨어 제작사의 투입으로 월드 와이드 웹 컨소시엄(W3C)에서 유지해 왔다.

하지만 2000년부터에서는 HTML 또한 국제 표준이 되었다. 현재 W3C에 의해 발표된 최신 규격은 1999년 말에 발표된 HTML 4.01 권고안이며 2001년에 문제와 오류들이 수정되오 발표된 안이 최종 승인되었다.

 

월드 와이드 웹 컨소시엄은 월드 와이드 웹을 표준을 개발하고 장려하는 조직이다.

   1994년에 설립되었으며 여러 기관들이 협력하여 웹 표준을 개발하는 국제 컨소시엄이다.

 

HTML은 HTML 요소(Elements)와 속성(attributes)과 문자 기반 데이터 형태와 문자 참조와 엔티티 참조를 포함하는 몇 가지 핵심 구성 요소로 이루어져 있다.

한 가지 더 중요한 구성요소로는 문서 형식 정의(DTD, Document Type Definition)를 명시하는 문서 형식 선언이다.

차기 HTML5에서는 DTD를 지정하지 않아도 되고 오직 레이아웃 모드로 지정된다. 즉 프로그래밍 언어, 스크립트 언어가 아닌 마크업 언어라는 이야기가 된다.

 

 

※ 문서 형식 정의(Document Type Definition) - 

문서 형식 선언(Document Type Declaration) 또는 DOCTYPE이란

어떤 SGML이나 XML 기반 문서 내에 그 문서가 특정 문서 형식을 따름을 지정하는 것이다.

따라서 HTML 문서 형식 선언을 이용해서 어떤 웹페이지가 모든 웹 브라우저에서 같은 레이아웃으로 제공되도록 할 수 있다. 현재는 HTML5은 SGML과 호환될 수 없어서 문서 형식 선언은 불필요하지만, 웹 브라우저들의 표준 모드를 활성화하기 위해 최소한의 형태로 유지되었다.

웹 브라우저는 문서 형식 선언이 없는 HTML 문서를 쿼크 모드로 랜더링 하지만 문서 형식 선언이 있는 HTML 문서를 표준 모드로 랜더링 하기 때문에, 문서 형식 선언을 이용해 어떤 웹페이지가 모든 웹 브라우저에서 같은 레이아웃으로 제공되도록 할 수 있다.

 

※ ※ 쿼크 모드(Quirks mode)는 오래된 웹 브라우저를 위하여 디자인된 웹페이지의 하위 호환성을 유지하기 위해 W3C나 IETF의 표준을 엄격히 준수하는 표준 모드를 대신하여 쓰이는 웹 브라우저 기술을 가리킨다. 그래서 HTML 문서는 문서 형식 선언으로 시작해야 한다. 이는 랜더링 모드를 지시하는 것이며, '쿼크 모드를 피하기 위한 목적도 있다.'

→ <! DOCTYPE html>

 

  SGML( Standard Generalized Markup Language)은 문서용 마크업 언어를 정의하기 위한 메타언어이다. 

 

그래서!

 

 

"HTML은 HTML요소로 구성되어 있고, 태그와 속성들로 웹페이지를 표현하는 마크업 언어형식이다."

 

 

Comments