웹. 넌 뭐냐?
글 목차
웹에 대한 이상한 생각. 문서 구조에 대하여.
사실 웹표준이라는 걸 익히고 사용한지 좀 됐다고는 하지만 뭔가 정답을 찾지 못해서 헤매고 있는 건 아닐까 하는 불안함이 여전히 있다. CSS Hack도 그렇지만, IE의 나쁜 버릇을 고쳐주는 여러 가지 방법은 계속 나오고 있는데, 업무가 바쁘다는 이유로 익숙한 방식으로 계속 작업하게 되고, 이건 정체되어있는 건 아닌가 하는 걱정을 만든다.
딱 꼬집어 말하진 못해도 하루에 다섯번쯤은 지금 내가 옳은 방법을 사용하고 있는지에 대해 자문하게 된다. 어쨌든 지금의 내 생각을 조금 정리해보자면.
웹은 정보를 효율적으로 전달하고 관리할 수 있는 방법으로써 고안되었다.
일단 웹이 고안되기 이전에는 모든 정보의 저장 수단이 문서라고 봐도 무방할 정도가 아니었을까 하는 점이 웹에 대한 내 생각의 시작이다. 물론, 웹이 생기기 이전에도 컴퓨터는 있었고, 플로피 디스크 등의 저장 매체도 있었지만 그것은 결국 용적의 측면에서 대대적인 확장이었을 뿐이고 전달 방식(종이뭉치를 우편으로 보내고 받아야했던, 그래서 어쩌면 유행이 지난 소식을 주고 받게되던)에 따르는 시간적-공간적 제약에 묶여있는 것은 종이와 마찬가지였다. 인터넷이라는 수단이 생기고 웹이라는 채널이 열리면서 이런 시공의 제약이 사라졌다고 보는 것이다.
그 처음이 바로 HTML이었고, 이는 표준 문서 처리 포맷인 SGML에 서 출발하지 않았던가. 그래서 나는 일반 문서와 웹문서의 구조적인 차이는 없다고 본다. 사람이 정리해내는 문서의 작성 방식이란 제목과 내용으로 구별되는 형태로 내용 중에는 그림이나 표, 일단의 목록이 들어갈 수도 있다. 내 생각에 웹이 일반 문서에 비해 좋은 점은 바로 하이퍼링크라는 기능적인 측면이 생겼다는 점이 아닐까 한다. 네트워크의 이점을 잘 살린 방식이기도 하고, 이를 통해 화면상에서 단일 문서를 뛰어넘을 수 있는 수단이 우리 손에 들어왔다고 생각한다.
물론, HTML에선 메타데이터라는 것도 굉장히 중요하다. 이를 통해 표준적인 문서 처리가 가능한 것이고 사람 뿐만 아니라 기계가 인식하고 처리하기 쉬울테니. 하지만, 사람이 만든 모든 것은 사람이라는 존재를 중심에 두고 시작하지 않을까.
문서의 구조 : 문서에 제목을 쓰는 건 당연한건가?
그렇다면 제목에 차등(Level)을 주는 것 역시 너무나 당연한 것이다. 대제목이 있으면 중제목, 소제목도 있다. 일반적으로 대제목과 중제목의 관계는 상하 종속적이며, 중제목간의 관계는 수평적 관계다. 이를 전체적으로 도식화해보면 피라미드 구조를 띄게 되는데, 논리적으로 표현되는 문서는 대개 이 틀을 벗어나지 않는다. 그리고, 이 제목 아래에서 어떤 것에 대한 설명을 하기 위한 표현 방법은 매우 다양해진다.
예를 들자면, 사전처럼 어떤 단어를 설명하기 위해서 dl이라는 태그가 고안되었으리라 짐작할 수 있다. 하지만 사전의 종류나 편집자에 따라서, 또 단어 자체의 특징(다의어 같은)에 따라서 설명에 할애하는 분량이 크게 달라질 수도 있다. 어쩌면 그 단어를 설명하기 위해 여러 가지 뜻을 나열(li)하거나, 여러 단락(p)으로 이루어진 긴 설명 문장이 들어가거나, 예문(blockquote)이 있어야만 설명이 가능한 경우도 있을 것이다.
순수하게 정보를 구조화하고 배치한다는 점에서 나는 문서와 웹페이지를 대입하곤 한다. 그래서 사이트를 한권에 책에 대입해보기도 한다. 네비게이션을 책의 목차와 함께, 대개는 왼쪽 상단에 배치되는 사이트 로고는 책의 제목과 함께 슬쩍 놓아본다.
내가 이런 방식에 주목하게 된 이유는 글씨 크기를 CSS 등으로 제어하지 않고 헤딩 태그를 사용했을 때 표시되는 제목의 글씨 크기 때문인데, h1부터 h3까지는 일반 글씨보다 크게 나오고, h4는 같은 크기에 굵게, h5~h6은 더 작게 나오기 때문이다. 이는 HTML이 만들어질 때 제목이 사용될 수 있는 곳을 생각해서 고안한 것이라 추측해봤다. 그래서 메뉴 구조상에서 각 페이지에 사용할 제목 레벨을 정하고, 정보를 배치해 실제 사이트 작업에 들어간 적이 있다.
사실 이런 기준으로 두가지 포맷을 대입한다면 h6까지 있는 헤딩 태그는 모자란 감이 없지 않다. 그것은 단일 문서인 경우와 하나의 주제를 가진 여러 문서의 묶음일 경우의 차이 때문인데, 묶음일 경우는 그 묶음에 제목이 부여되어 있는가 하는 점이 중요해지기 때문이다. 묶음의 제목(책 제목 같은)이 존재한다면, 각각의 문서는 논리적으로 따지자면 중제목부터 시작해야 한다. 결과적으로 페이지의 기준점을 어디에 두는지가 중요해진다.
Semantic markup. 그 장미빛 미래, 하지만…
그 동안 사이트를 제작해온 경험에 비추어 보면, 제목은 있지만 구조는 없는 경우도 왕왕 발생한다. 예를 들자면, 제목보다 강조되는(특히 시각적으로) 내용이 있는 경우라던가, 같은 형식의 내용이 표시되어야 함에도 불구하고 틀이 달라져버린다거나… 심지어는 전체 구조에서 봤을 때 문서마다 제목 레벨이 달라지는 경우가 그렇다.
지금 시점에 Semantic markup이라는 걸 많은 사람들에게 인식시키기는 꽤 어려워 보인다. Semantic이라는 단어의 가치를 인식 못하는 사람들에게 그것은 단지 중요하지 않은 것 중 하나일 뿐이니까. 우리 나라에서 웹사이트란 이쁘고 깔끔하고 화려하고. 그러면 된다. 플래시만으로 만들어진 사이트라던가, 엉뚱하게 확장되는 메뉴구조를 가진 사이트라거나. 그래도 된다.
정리하기 어려운 사이트가 너무 많다. 아 정말 쓰다보니 글이 꼬인다… 논리적인 구조고 뭐고 사람들의 생각을 나름대로의 실험성이라고 인정해버릴까?
[푸념 하나] 아… 일단은 이런 글을 써버렸는데. 과연 시간이 지나서 정답이라는 무언가가 무엇인지 정확히 알게될 날은 올까?
[푸념 둘] 젠장.













Bar Camp에서 조편성이 바뀌어서 같은 조에 포함되었더라고. ^^ 발표 기대되네.
윽… 조편성 바뀐건 보긴 봤는데… 글쎄… 기대는 말아줘~