시맨틱 웹, 그리고 링크드 데이터

링크드 데이터는 2006년 웹의 창시자이자 시맨틱웹의 창시자인 Tim Berners-Lee의 Linked Data Design Issue(http://www.w3.org/DesignIssues/LinkedData.html)를 통해 처음 소개되었다. 2009년을 거치면서 몇몇 성공적인 링크드 데이터 구축사례를 통해 (특히, data.gov.uk의 덕분에) 매우 급속하게 시맨틱 웹 진영에 퍼지게 되었고, 아마도 링크드 데이터의 실현이 시맨틱 웹이라는 기술의 성공 여부를 가늠하게 될 것 같다.
그런데, 시맨틱 웹도 잘 모르는데 링크드 데이터라니? 게다가 심심치 않게 데이터 웹, 또는 Web of Data라는 용어까지 등장한다. 각각의 개념과 그 관계를 어떻게 정리할 수 있을까?

2001년에 Tim Berners-Lee, Ora Lassila, 그리고 Jim Hendler가 쓴 유명한 시맨틱웹에 관한 논문 “The Semantic Web”(Scientific American, May 2001)에서 시맨틱웹은 다소 이상적으로 보인다. 데이터의 의미를 알아서 해석하고 이에 따라 자동화된 처리를 알아서 수행하는 웹 에이전트로 그려지는 시맨틱 웹에 대한 개념은 매우 추상적이다. RDF라는 시맨틱웹 표준은 데이터베이스 라는 관게형 데이터 모델에 갇혀 있는 사람들에게 그래프 모델의 확장성과 다양한 데이터의 통합 능력이라는 장점을 이해시키기 어려웠고, 다른 한편으로는 OWL이 가지는 추론 능력에 대한 지나친 기대가 오히려 시맨틱웹은 너무 어렵다는 인상을 낳게 했다.

그런 상황에서 맨 처음 시맨틱웹을 주창했던 Tim Berners-Lee를 비롯한 연구자들은 시맨틱웹이 가진 원래의 목적과 장점을 부각시킴으로써 어떻게 시맨틱웹을 현실화 시킬 것인가 고민했고, 그 대안으로서 Linked Data를 제시한 것이다.

[시맨틱웹은 연결된 데이터(linked data)의 웹이다]

Linked Data Design Issue에서 밝힌 Linked Data의 네가지 원칙을 보면 Linked Data란 무엇인지 파악이 가능하다.

‘Linked Data’의 네가지 원칙

1. 개체를 식별하기 위해서 URIs(Unique Resource Identifiers)를 사용한다.
2. 이들 개체가 이용자에 의해 참조하거나 참조되기 위해 HTTP URIs를 사용한다.
3. URI가 참조되었을 때 그 개체에 대한 유용한 정보를 제공한다.
4. 웹상에서 관련 있는 다른 정보를 발견하기 위해 데이터 내에서 다른 개체로의 링크를 포함한다.

즉, 실세계의 사물(thing)에 대응되는 웹 상의 개체(entity)에 URI를 부여하고 이에 대한 디스크립션(메타데이터, 또는 설명)을 기술한 후, HTTP를 통해 접근할 수 있도록 발행함으로써 HTTP URL과 유사한 방식으로 URI에 대해 “http://~~~”라고 웹에서 요청(request)을 보내면 해당하는 유용한 정보를 리턴하는 것이다.

곧, 이전의 웹에서의 HTML document -> RDF data 로, URL -> URI 로, 단순 링크는 다양한 의미적 속성(property)를 가진 링크로 바뀐 것이다. 이렇게 HTML이라는 문서가 아니라 RDF라는 형식으로 된 데이터는 그 의미를 구별하게 됨으로써(HTML 태그가 아니라 RDF 디스크립션을 통해서), 기계가 이해가능한(machine-readable) 데이터가 되는 것이다.

“시맨틱웹은 단지 데이터를 웹으로 제공하는 것이 아니라, 데이터 간의 링크를 만듦으로써, 인간이나 기계 모두 데이터의 웹을 탐험할 수 있도록 해준다. Linked data를 통해 유용한 데이터를 얻게 되면, 그 데이터에 관계된 데이터로 계속되는 항해가 가능하다.” – Tim Berners Lee, Linked Data Design Issue

TBL의 동료이자 data.gov의 시맨틱 웹 프로젝트(http://www.data.gov/semantic/index)를 이끌고 있는 Jim Hendler의 블로그 포스트(http://blogs.nature.com/jhendler/2010/06/01/linked-open-government-data-and-the-semantic-web)에서 Jim은 시맨틱 웹의 목적은 “현재의 문서 웹과 유사한 ‘데이터의 월드 와이드 웹’을 만들기 위해 웹 상의 데이터베이스들을 서로 연결(link)시킬 수 있는 시스템을 만드는 것”이라고 분명히 밝히고 있다. 그러므로, 링크드 데이터는 원래의 시맨틱 웹의 목적인 “데이터의 웹”을 실현하기 위한 더욱 구체화된 방법이고, 수단이며, 기술이다.

링크드 데이터 < 데이터의 웹 <= 시맨틱 웹?


지난 SemTech 2009에서 Alexandre Passant[1]가 발표한 자료에서는 다음과 같은 그림을 통해 이들 간의 관계를 설명한다. 데이터의 웹은 시맨틱 웹과 정확히 일치하는 같은 개념은 아니며, 포함관계로 설명할 수 있다. 앞에서 말했듯이 링크드 데이터는 데이터의 웹을 구현하기 위한 기술이며, 방법으로서 그 구성요소라고 할 수 있다.

데이터를 기계가 이해가능하도록 RDF화 하고 공통의 어휘(common vocabularies- 예를 들어, SKOS, DBPedia, FOAF 등)이용해 데이터를 디스크립션하고,서로 연결(link)한다. 웹으로 발행함으로써 데이터를 웹에 공개한다. 이러한 링크드 데이터 원칙에 따라 Linked Open Data(LOD, 즉, data cloud)가 형성된다. 이것이 바로 데이터가 거미줄처럼 얽히는 (시맨틱) 데이터의 웹 세상이다.

이러한 데이터의 웹 세상이 되면 내가 만든 데이터 뿐만 아니라 남이 만든 데이터도 링크를 통해 재사용이 가능하다. 따라서 다양한 데이터를 융합한 새로운 데이터를 쉽게 만들어 낼 수 있다(mashup). 이렇게 융합된 데이터는 또다시 웹을 통해 공개되고 발행된다. 이것이 바로 시맨틱 웹이 꿈꾸는 디지털 데이터의 생태계이고 유통환경이다. 그러한 시맨틱 데이터의 생태계가 조성된다면, 한편에서는 시맨틱 데이터를 이용해서 기계와 기계 간의 데이터가 자유롭게 교환되고, 온톨로지 및 규칙 기반의 추론을 통해 그 의미가 해석되고 처리됨으로써 자동화된 서비스로 우리에게 제공되는 궁극적인 시맨틱 웹 세상, 진정한 유비쿼터스 세상이 도래하지 않을까?

[references]

1. Tim Berners-Lee, “Design Issues: Linked Data“, 2006, http://www.w3.org/DesignIssues/LinkedData.html
2. Tom Heath, “Linked Data? Web of Data? Semantic Web? WTF?http://tomheath.com/blog/2009/03/linked-data-web-of-data-semantic-web-wtf/
3. Passant, Alexandre, Tummarello, “Hello, Open Data World!”, Giovanni SemTech 2009, T2_MON_0830_Passant_Alexandre_Tummarello_Giovanni_Color.pdf
4. Jim Hendler, “Linked Open Government data and the Semantic Web”, http://blogs.nature.com/jhendler/2010/06/01/linked-open-government-data-and-the-semantic-web