검수요청.png검수요청.png

하이퍼텍스트

해시넷
이동: 둘러보기, 검색

하이퍼텍스트(hypertext)란 일반 텍스트와 달리 문장이나 단어 등이 링크를 통해 서로 연결된 네트워크처럼 구성된 문서를 말한다. 1960년대 테오도르 넬슨(Theodore Nelson)이 만든 용어이다. 일반 텍스트 문서는 정보를 순차적으로 인식하도록 나열되어 있지만, 하이퍼텍스트 문서는 사용자가 원하는 대로 쉽게 이동할 수 있도록 하이퍼링크(hyperlink)가 걸려 있다. 대표적인 하이퍼텍스트에는 HTML 문서가 있다.

개요[편집]

하이퍼텍스트는 컴퓨터 디스플레이나 독자가 즉시 액세스 할 수 있는 다른 텍스트에 대한 참조(하이퍼 링크)가 있는 기타 전자 장치에 표시되는 텍스트이다. 하이퍼텍스트 문서는 일반적으로 마우스 클릭, 키 누르기 세트 또는 화면 터치에 의해 활성화되는 하이퍼 링크로 상호 연결된다. 텍스트 이외에도 "하이퍼텍스트"라는 용어는 때때로 하이퍼 링크가 통합된 표, 이미지 및 기타 프리젠테이션 콘텐츠 형식을 설명하는 데 사용된다.

하이퍼텍스트는 최근 주화이다. '하이퍼'는 '과도한'(과잉 행동)의 의학적 의미보다는 수학적 확장 및 일반성(하이퍼 스페이스, 하이퍼 큐브와 같은)에 사용된다. 크기에 대한 의미는 없다. 하이퍼텍스트는 500단어 정도만 포함할 수 있다. '하이퍼'는 크기가 아닌 구조를 나타낸다.

하이퍼텍스트 용어는 'hyper(초월한)'와 'text(문서)'의 합성어로, 1960년대 미국 철학자 '테드 넬슨(Ted Nelson)이 구상한 용어이다. 영어 접두사 "hyper-"는 그리스어 접두사 "ὑπερ-"에서 유래하며 "over"또는 "beyond"를 의미한다. 라인터에서 유래한 접두사 "super-"가 있는 공통 원점을 가지고 있다. 테드 넬슨은 하시퍼텍스트를 현실화하기 위해 '재나두 프로젝트(Project Xanadu)'를 진행했다. 재나두 프로젝트란 세상의 모든 정보를 모아 서로 연계되고 이어지는 정보의 흐름을 만들자는 프로젝트다. 이 프로젝트는 훗날 팀 버나스 리(Tim Beners-Lee)가 인터넷의 기반인 '월드 와이드 웹(WWW)'을 개발하는 데 큰 영향을 줬다.[1]

역사[편집]

  • 1941년 : Jorge Luis Borges는 "포킹 패스의 정원(The Garden of Forking Paths)"출판, 이는 종종 하이퍼 텍스트 개념에 대한 영감으로 간주되는 단편이다.[2]
  • 1945년 : 부쉬는 "마치 우리가 생각하는 것 처럼 ...(As we may think)"이라는 제목의 글을 통해 "기억 확장기(Memory Extender)"라고 이름붙인 문서 관리 장치를 제안하였다.[3]
  • 1963년 : Ted Nelson은 링크로 된 콘텐츠를 작성하고 사용하기 위해 개발 한 모델의 일부로 '하이퍼 텍스트' 및 '하이퍼 미디어' 라는 용어를 만들어 냈다.[2]
  • 1967년 : Ted Nelson과 Andries van Dam은 브라운대학교(Brown University)에서 하이퍼 텍스트 편집 시스템을 개발했다.[2]
  • 1968년 12월 : 엥겔바트는 "모든 데모스의 어머니"로 알려지게 된 것에서 처음으로 대중에게 '하이퍼텍스트' 인터페이스를 시연했다.[2]
  • 1982년 : 개인용 컴퓨터를 위한 최초의 즁요한 하이퍼텍스트 시스템인 Guide는 1982년 UKC에서 Peter J. Brown에 의해 개발되었다.[2]
  • 1983년 : 메릴랜드대학교 휴먼 - 컴퓨터 상호작용 연구소의 벤 슈나이더만은 코넥틱스사가 상용화한 하이퍼타이즈 시스템을 개발한 그룹을 이끌었다.[2]
  • 1980년 ~ 1987년 : 팀 버너스 리는 ENQUIRE를 만들었는데, ENQUIRE는 위키와 비슷하지만 하이퍼텍스트 구두점이 없는 초기 하이퍼텍스트 데이터베이스 시스템을 만들었는데, 이 시스템은 1987년까지 발명되지 않았다.[2]
  • 1987년 8월 : 애플 컴퓨터는 맥월드 컨벤션에서 맥킨토시 라인용 하이퍼카드를 출시했다. 그 영향은 Peter J. Brown의 Guide와 브라운대학교의 Intermedia에 대한 관심과 결합이 되어 하이퍼텍스트, 하이퍼미디어, 데이터베이스, 그리고 새로운 미디어에 대한 폭넓은 관심과 열정으로 이어졌다.[2]
  • 1987년 11월 : 채플힐 NC에서 최초의 ACM 하이퍼텍스트(하이퍼텍스트와 데이터베이스) 학술회의가 열렸으며, 여기서 밀렵된 문학작성 소프트웨어 스토리 스페이스를 포함한 많은 다른 응용 프로그램도 시연되었다.[2]

형태[편집]

챗을 비롯한 기존 인쇄물의 경우 한 문서에서 다른 문서로 넘어가는 과정은 모두 선형적으로 이루어진다. 다시 말해 A에서 B로 건너가려면 A와 B 사이에 있는 모든 페이지들을 거치게 되어 있다. 물론 책갈피 등을 이용하면 한 번에 넘어갈 수도 있기는 하지만 종이라는 물리적 한계 덕에 한 포스트에서 다른 포스트로 순간이동되는 하이퍼텍스트와는 다르다.[4]

하이퍼텍스트는 하이퍼링크를 통해 각 텍스트가 비선형적으로 연결된다. 예를 들어 지금 이 문장의 하이퍼링크 문서로 통하는 링크를 누르는 동안 당신은 굳이 월드 와이드 웹이나 HTML이나 초끈이론 페이지를 들르지 않아도 된다. 저 링크를 통해 이 문서와 하이퍼링크 문서는 사이에 아무것도 거치지 않고 연결된다.

다만 하이퍼링크가 존재한다고 무조건 하이퍼텍스트인 것은 아니다. 웹툰과 웹소설과 마찬가지로 하이퍼링크를 통해 넘어가지만 내용 자체가 선형성을 지닐 경우 하이퍼텍스트로 보기 애매해진다.

종류와 용도[편집]

하이퍼 텍스트 문서는 정적(사전 준비 및 저장) 또는 동적(동적 웹 페이지와 같은 사용자 입력에 대응하여 지속적으로 변경)일 수 있다. 정적 하이퍼텍스트는 문서, 소프트웨어 응용 프로그램 또는 CD에 있는 잘 구성된 시스템은 메뉴와 명령줄과 같은 다른 사용자 인터페이스 규약을 포함할 수 있다. 하이퍼텍스트 문서에 사용되는 링크는 일반적으로 현재 하이퍼텍스트 조각을 대상 문서로 대체한다.

덜 알려진 특징으로는 StretchText가 있는데, 이것은 콘텐츠를 확장하거나 축소하여 표시된 문서의 세부 수준을 결정할 때 독자에게 더 많은 권한을 준다. 일부 구현은 텍스트나 다른 내용이 참조에 의해 포함되고 자동으로 제자리에 렌더링되는 transclusion을 지원한다.

하이퍼텍스트는 링크와 상호 참조의 매우 복잡하고 동적인 시스템을 지원하기 위해 사용될 수 있다. 하이퍼텍스트의 가장 유명한 구현은 1990년 마지막 달에 쓰여 1991년에 인터넷에 공개된 월드 와이드 웹이다.

구현 기술[편집]

우리가 월드 와이드 웹(World Wide Web)이라고 부르는 것의 정의는 "하이퍼 텍스트 문서를 지원하는 인터넷 서버들의 범세계적인 집합"(the global collection of Internet servers which support hypertext documents)이다. 그리고 여기서 말하는 "하이퍼 텍스트 문서"의 기술적 의미는 HTML로 쓰여지고, HTTP를 통해 전송되는 전자 텍스트"를 말한다. HTML은 "하이퍼텍스트 표기 언어"(Hypertext Markup Language), HTTP는 "하이퍼텍스트 전송 규약"(Hypertext Transfer Protocol)의 약어이다. HTML로 쓰여져서 인터넷 서버에 저장된 전자 문서를 우리는 통상적으로 "웹 문서" 또는 "웹 페이지"라고 부른다. 하이퍼텍스트의 구현을 위해 먼저 알아야 할 것은 이러한 맥락의 "웹 문서"의 제작 방법일 것이다.

컴퓨터 프로그래밍 기술을 가지고 있는 사람이라면 월드 와이드 웹 환경을 떠나서도 얼마든지 개인적인 용도의 하이퍼텍스트를 구현할 수 있다. 한동안 폭발적인 인기를 모았던 애플사의 "하이퍼카드"도 웹환경과는 무관한 것이다. 그러나 "월드 와이드 웹"이 "인터넷"과 동일시 될 만큼 큰 영향력을 발휘하는 오늘날, 웹에서 운영될 수 있는 전자문서를 제작한 것은 곧 세계의 모든 자원과 소통할 수 있는 하이퍼텍스트 콘텐츠를 제작한다는 의미를 지니게 된다. 웹 문서를 제작하는 인구도 무수하리만큼 많기 때문에 그 편의성을 도모하기 위한 장치도 뛰어나다.[3]

하이퍼 링크와 HTTP[편집]

하이퍼텍스트를 이루는 텍스트 조각들 사이의 연결을 하이퍼링크라고 한다. 월드 와이드 웹을 구성하는 인터넷 서버 머신들은 다른 웹 문서로의 연결 고리를 포함하는 여러 개의 웹 문서를 저장하고 있다. 인터넷 세계의 정보를 탐색하고자 하는 이용자는 "웹 브라우저"(Web Browser) 라고 하는 소프트웨어를 이용하여 첫 번째 문서를 호출한다. 요즈음 많은 사람들이 웹 검색을 위해 사용하는 "인터넷 익스플로러"(Internet Explorer)나 그 이전에 쓰이던 "넷스케이프"(Netscape), "모자이크"(Mosaic) 등이 모두 "웹 브라우저"에 해당된다. 이용자 단말기에서 운영되는 "웹 브라우저"는 인터넷 서버 머신에서 운영되는 "웹 서버" 프로그램과 메시지를 주고 받으면서 서버 머신에 저장된 웹 문서를 이용자 단만기로 불러 오는 기능을 수행한다. 이 때 웹 브라우저와 웹 서버 두 소프트웨어가 주고 받는 신호에 대한 약속이 이른바 "하이퍼텍스트 전송 규약", 즉 HTTP이다. 이 약속이 있음으로서 이용자 쪽의 웹 브라우저와 서버 쪽의 웹 서버가 웹 문서릐 요청과 전송을 정확하게 수행할 수 있는 것이다.[3]

첫 번째 문서를 성공적으로 불러오게 되면, 이용자는 그 문서에 포함되어 있는 다른 문서로의 연결 고리(Hypertext Link Node)를 선택함으로써 내용적 연관성이 있는 다른 문서를 호출할 수 있다. 웹 브라우저는 또 다시 HTTP에 따른 요청 신호를 해당 웹 서버로 보내고, 그 신호를 받은 웹 서버는 자기 쪽 컴퓨터에 수록된 두 번째 웹 문서를 요청자에게 전송한다.[3]

HTML[편집]

월드 와이드 웹의 플렛폼은 이미 확립되어 있고, 또 그것은 누구나 참여할 수 있도록 개방되어 있으므로, 새로운 콘텐츠의 제작을 위해서 우리가 해야 할 일은 월드 와이드 웹에서 통용될 수 있는 형식의 "전자 문서"를 만드는 일이다. 이 말은 바꿔 말해, "웹 브라우저" 와 "웹 서버"가 읽을 수 있는 형태의 문서를 만드는 것이라고 할 수 있으며, 더 구체적으로는 HTML로 쓰여진 문서를 만드는 것이라고 할 수 있다.[3]

HTML은 월드 와이드 웹에서 통용되는 하이퍼텍스트 문서를 만드는 수단이다. HTML은 문서의 내용을 다양한 형태로 이용자에게 보여줄 수 있는 기능을 지원하는데, 정보 요소의 시작과 끝 부분에 태그(Tag)라고 불리는 표시를 부가하는 형식을 취한다. HTML 문서에서 태그로 둘러싸인 부분은 웹 브라우저 상에서 표시될 때, 그 태그가 지시하는 바에 따라 특별한 모양으로 표시된다.[3]

〈b〉홍길동〈/b〉 = 홍길동   //굵은 글씨로 표시//
〈font color="red"〉붉은 홍길동〈/font〉 = 붉은 홍길동    //붉은 색으로 표시//

HTML 태그의 대부분은 이처럼 문서의 모양을 꾸미는 기능을 지원하지만 그러한 태그들은 사실상 "하이퍼텍스트"의 본령과는 무관한 것이다. HTML 태그 가운데 HTTP에 기반한 문서간 연결을 가능케 하는 태그는 "닻"(anchor)이라는 이름을 가진, "〈b〉...〈/b〉"라는 형태의 태그이다.

〈a href="http://www.hash.kr/search/index.htm"〉...〈/a〉

HTML의 "앵커"(<a>) 요소는 반드시 "href"라는 이름의 속성을 갖는다. "href"는 "하이퍼텍스트 참조"(hypertext Reference)를 의미하며, 그 속성 값으로 하이퍼 링크 목적지의 주소를 기입하게 되어있다.

http://www.hash.kr/search/index.htm
                         
서버에게 요청하는 서비스의 종류 서버 장비의 인터넷 주소: 찾고자 하는 웹 문서의 파일 이름

HTML에서 하이퍼 링크를 위한 연결 고리를 "앵커"(anchor), 즉 "닻"이라고 부르는 이유는 "월드 와이드 웹"의 세계에서 이 문서를 읽다가 저 문서로 옮겨 가는 행위를 마치 대양을 항해하는 배가 이 항구를 들렸다가 다시 저항구에 정박하는 것에 비유한 데서 비롯된다. "앵커"는 웹의 세계를 항해하는(Navigate) 배가 앞으로 "닻"을 내려야 할 곳을 지목한다. 하나의 웹 문서 속에 여러 개의 "앵커"가 포함되어 있다면, 그 항해의 다음 기착지를 여러 곳으로 제안하는 것이다.[3]가기.png HTML에 대해 자세히 보기

XML[편집]

XML(eXtencible Mark-up Language)은 문서의 구조적인 형식과 내용 요소들이 컴퓨터가 식별할 수 있는 명시적 정보로 기술될 수 있도록 하기 위한 전자문서 마크업 언어이다. 월드 와이드 웹의 표준화를 주도하고 있는 W3C(World Wide Web Consortium)는 1998년 최초의 XML 권장안을 제시하였으며, 최근에 이르기까지 여러 단계의 개선안과 함께 다양한 응용 기술의 표준화 방안을 제공하고있다. 하이퍼텍스트와 인터넷의 만남에서 파생된 것이 HTML이라고 한다면, XML은 HTML과 "구조적인 지식 콘텐츠"의 결합을 위해 태어난 것이라고 할 수 있다.

XML은 HTML과 SGML(Standard Generalized Markup Language)의 결합으로 만들어졌다. 보다 정확하게 말한다면, HTML이 약화시켰던 SGML의 중요한 목적을 XML이 다시 회복시킨 것이다. SGML은 문서에 담긴 정보 요소와 그 요소들간의 관계를 컴퓨터가 이해할 수 있도록 만든 마크업 언어인데, 1969넌 미국의 IBM 사의 찰스 골드파브(Charles Goldfarb)와 그 동료들에 의해 GML(Generalized Markup Language)이라는 이름으로 처음 만들어졌고, 그 후 지속적으로 발전하여 1986년 국제표준기구에 의해 구조적 데이터 표현의 표준안(ISO 8876)으로 인증되었다.[3]가기.png XML에 대해 자세히 보기

구현[편집]

Project Xanadu, Hypertext Editing System, NLS, HyperCard 및 World Wide Web 외에도 다양한 기능 세트를 가진 주목할만한 하이퍼 텍스트의 구현이 있다.[2]

  • FRESS : 1970년대 하이퍼텍스트 편집 시스템의 다중 사용자 후속 제품
  • ZOG : 카네기멜론대학에서 개발된 1970년대 하이퍼텍스트 시스템
  • 전자 문서 시스템 : 장비 수리 메뉴얼 및 컴퓨터 지원 지침과 같은 대화형 하이퍼텍스트를 위한 1980년대 초반 텍스트 및 그래픽 편집기
  • 정보 프레젠테이션 시설 : IBM 운영 체제에서 온라인 도움말 표시 하는데 사용
  • Intermedia : 1980년대 중반 그룹 웹 작성 및 정보 공유를 위한 프로그램
  • HyperTies : 1988년 7월 ACM 통신 및 하이퍼텍스트 Hands-On! 책을 포함한 수백 개의 프로젝트에 상업적으로 적용된 1980년대 중반 프로그램
  • Texinfo : GNU 도움말 시스템
  • KMS : 1980년대 ZOG의 후속 제품으로서 상용 제품으로 개발
  • 스토리 스페이스 : 1980년대 중반 하이퍼텍스트 설명 프로그램
  • Adobe의 휴대용 문서 형식 : 전자 문서용으로 널리 사용되는 출판 형식
  • Amigaguide : 1990년 코모도어 Amiga Workbench에서 출시
  • Windows 도움말 : 1990년대 Windows 3.0과 함께 출시
  • 위키 : 대부분의 웹 브라우저에서 통합 편집자의 부족을 보완하는 것. 다양한 위키 소프트웨어는 포맷에 대한 규약이 조금 다르며, 보통 HTML보다 간단하다.
  • PaperKiller : 하이퍼텍스트용으로 특별히 설계된 문서 편집기. 1996년 IPer로 시작(ED-Media 1997년 교육 프로젝트)
  • XLink 확장이 포함된 XML : HTML에서 도입된 기능을 확장하고 확장하는 새로운 하이퍼텍스트 마크업 언어

영향[편집]

하이퍼텍스트 환경은 인터넷과 월드 와이드 웹에서 적극 이용되었으며 사실상 인터넷의 '모든'페이지는 하이퍼텍스트의 형태를 가지고 있다. 웹툰과 웹소설도 콘텐츠가 선형적이라지만, 그 페이지 자체는 하이퍼텍스트로 구현된다. 하이퍼텍스트의 대표격이자 인터넷의 중추라고도 할 수 있는 검색 엔진의 경우 인터넷에서의 정보 접근 방식을 기성 미디어와는 완전히 바꾸어 놓았다. 책, 신문, 텔레비전, 라디오 등의 기존 매체에서 주어지는 정보를 단순히 받는 수동적인 위치에 있던 정보 소비자들이 자신에게 필요한 정보를 직접 찾아나서는 능동적인 존재로 변했다.[4]

각주[편집]

  1. 이상우 기자, 〈문서를 뛰어 넘는 문서, 하이퍼텍스트〉, 《아이티동아》, 2013-08-01
  2. 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 Hypertext〉, 《위키백과》
  3. 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 김현 교수, 〈하이퍼텍스트 구현 기술〉, 《북코리아》, 2006-03
  4. 4.0 4.1 하이퍼텍스트〉, 《나무위키》, 2019-09-08

참고 자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 하이퍼텍스트 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.