반응형
[ 서론 ]

Semantic Web 이란... W3C 즉 World Wide Web의 창시자인 팀버너스리 가 창안한 Web 3.0 에서의 패러다임이다. Web2.0 이니 , Web3.0 이니 하는것들은 특정 기술이 아니며, 그 시대적 배경에 맞게 필요한 기술들의 동향을 가리키는 패러다임 인것을 명심하도록 하자. 아무튼, Web3.0 패러다임의 모토가 되는 개념이 바로 Semantic Web이다.

과거 Web2.0이 대두되었던 시절 Ajax Flex등등과 같은 RIA 관련 기술들이 많이 나왔고 지금 현재 현업에서 많이 사용중에 있다. 그렇다면, Web3.0 기반의 모토인 Semantic 에서의 주된 기술은 무엇이며, 또한 Semantic Web이 지향 하고자 하는 패러다임은 어떤것들인지 아래 글을 통해 한번 적어보도록 하겠다.


[ 본론 ]

(1) Semantic Web의 정의

W3C의 창시자인 팀버너스리는 Web3.0에 대해 아래와 같이 말했다.


 "The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation."

-- Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001

위 글을 해석해 보면 이렇다 ( 뭐 맞는지 안맞는지는 모르지만, 내가 이해하기론 이렇다는 것이다. )
" 시멘틱 웹이란, 각각의 정보에 의미를 주어 컴퓨터와 사람간의 의사소통에 더 낳은 조화를 이룰 수 있도록 현재 웹을 확장한 것이다."

음.. 얼추 맞는듯하다. 위 말이 정의 이다. 위 정의를 보고 이해하겠는가? ㅋㅋㅋ 아마 못하는 사람들이 많은 것이다.

제대로 된 정의를 한국어로 표현하면  아래와 같다.

[ 시맨틱 웹 의 정의 ]
 Semantic Web은 (Semanteme + Web)을 합친 용어로 말그래로 의미론적 웹이다. 즉, 분산환경 시스템에서 리소스가 되는, 정보와 정보 사이의  association(관계) 와 의미정보(Semanteme) 를 컴퓨터가 처리할 수 있는 온토롤지 형태로 표현하고, 이를 자동화 기기가 처리하도록 하는 프레임워크 이자 기술이다.
여기서 자동화 기기가 처리한다는 것은 (추론)을 의미한다.


나도 물론 그랬기 때문이다. 우선 정의는 여기까지 하고 아래 예제 및 필요성 등등에 대해 적은걸 보면서 이해하길 바란다.

(2) Semantic Web 의 예시 및 필요성

위 정의에서 말했듯이 Semantic Web의 Key가 되는 정의는 "정보에 의미를 준다." 라는 말이다. 즉,  이 말이 무엇인가.? Web2.0 시대 이전부터 계속적인 발전을 거듭해온것이 검색엔진 이다. 비단 검색엔진 뿐만 아니라 시맨틱 웹은 여러 분야에서 적용가능하지만, 단편적인 예로 검색엔진을 예시로 들겠다.

예를 들어 우리가 google에서 "테스트" 라는 단어를 검색했다고 가정하자. 우선 "테스트" 라는 단어가 우리 생활에서 사용되는 의미가 몇가지가 있는지 알아보자.

1) 시험 의 의미 ex) 연합고사, 학기말 고사 , 모의고사 등등
2) 어떤한 사물을 개발 후 , 품질 테스트 의 의미.
등 등등

여러 의미가 있다. 그렇다면 혹자는 "테스트" 라는 단어를 검색시 2) 의 품질테스트 에 대한 정보를 얻고 싶다. 하지만, 혹자 입장에서는 원치않는 1) 검색의 결과또한 가지게 된다. 이것이 현재 Web 검색의단점이다. 만약 각각의 정보에 의미를 두어 , 각 정보들 간의 연관관계를 표현 후 , 그 관계를 통해 검색이 되어진다면,  인공지능적인 즉 과거 Turing Test 와 같은 기계가 의미론적인 검색이 가능해 질것이다.

(3) 시맨틱 웹을 구현하기 위한 기술

1) RDF (Resource Discription Framework) 
   => 정의
   RDF란 웹 상에서 존재하는 리소스를 묘사하기 위한, 기술, 메타데이터, 어의, 구문 및 강조에 대한 공통규칙을 지원하
   는 기법을 통해 웹 상에 존재하는 기계가 이해하도록 정보를 교환하기 위해 W3C에서 제안, 메타 데이터간의 효율적인
   교환 및 상호호환을 목적으로 한다.

   => XML VS RDF
   XML 은 문서의 문법은 구성하고 있지만, 그 문서가 가지고 있는 의미를 Process가 처리하도록 만드는데 한계가
   있기 때문에 의미를 정해줄 새로운 구문이 필요했으며, 그걸 RDF가 해주고 있다.
   즉 특정 메터데이터를 의미론적으로 표현시 문법은 XML을 따르되 , 의미론적 정의는 RDF를 따른다고 할 수 있다.
   
   => 우리는 왜 RDF에 관심을 가지는지 이해
   RDF가 기본적으로 가지고 있는 기능을 이해해야, 왜 RDF에 관심을 가지는지 파악 가능하다.
   (기능)
   . 메타데이터를 Process가 이해할 수 있는 의미를 지닌다. => 요기능이 젤 중요하다.
   . 단순 문자 검색보다 정확히 리소스를 찾을 수 있다. => 즉 의미론적 검색이 가능하다는 것이다.
   . 스키마를 발전 시킴으로서 차후의 APP 업그레이드가 가능하다.
   
   (RDF 적용분야)
   . 검색엔진 : 메타 데이터 기반의 검색을 통해 , 의미론적으로 보다 정확한 검색이 가능하다.
   . 카다로그 & 분석 : 온톨로지의 중요 기능중 하나인 관계(Association)을 통해 데이터 간의 상호 관계를 기술 
     가능하다.
   
    
    (현재 HTML에 RDF를 부여하는 방법)
    . <HEAD></HEAD> 사이에 아래 내용을 추가한다.
       
 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#3" xmlns:dc="http://purl.org/dc/elements/1.1/">
 <rdf:Description rdf:about="http://doc" dc:creator="Joe Smith" dc:title="My document" dc:description="Joe's ramblings about this summer vacation." dc:date="1999-09-10" />
</rdf:RDF>
    
     . about : 문서 자체의 Web주소를 가르킨다. (변경가능)
     . creator : 문서 제작자의 이름을 기술한다.
     . xmlns : 속성의 값은 수정불가하다.

    (RDF 기본 데이터 모델)
    RDF는 3가지 구성요소로 이루어져있따.(리소스(Resource), 특성(Property), 구문(statement))
    Resource : RDF로 기술되는 모든 사물이다. ( 항상 URI + ID 의 결합으로 명명된다)
    Property : 리소스를 기술하는데 사용된 특수한 관점이나, 성질, 관계를 말한다.
                  특정한 의미를 가지고, 리소스가 가질수 있는 값을 정의하고, 다른 특성과의 관계를 가진다.
    Object or Literal : 리소스의 특성과 특성값을 의미한다.

    요건 바로 예제를 보도록 하겠다. 우선 아래와 같은 문장이 있다.
    "성랑이는 컴퓨터를 산다" 이런 문장이 있다고 가정하자. 그럼 아래와 같은 결과를 얻을 수 있다.

   Resource  => 성랑이는
   Property  => 산다
   Object or Literal => 컴퓨터
   이렇게 묵이게 된다. 이렇게 한 묶음을 Triple 또는 RDF모델 이라고 한다.


2) OWL (Web Ontology Language)






[ 참고문헌 ]
반응형

'Semantic Web > 용어정리' 카테고리의 다른 글

NameSpace란?  (5) 2010.09.14
[RDFWeb] FOAF 란?  (0) 2010.09.13

+ Recent posts