ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Semantic Web & Object Oriented Design
    카테고리 없음 2004. 3. 8. 16:38

    시맨틱웹의 데이터 모델 기술 언어인 웹 온톨로지 언어를 공부해 보면 객체 지향 모델과 유사한 점이 많다는 사실을 알 수 있게 된다. 그도 그럴 것이 웹 온톨로지 언어는 객체지향 모델과 마찬가지로 개념(concept)을 정의하고 개념 간의 관계(relations, roles)를 표현하는 언어이기 때문이다. 이것은 60년대에 나온 지식 모델인 시맨틱 네트웍(semantic network)과 프레임(frame) 모델로부터 유래되어 기술 논리(description logics)까지 이어져 온 데이터 표현 전략이며 웹 온톨로지 언어가 이를 이어받았다. 이 계통도(系統圖)의 어딘가에 객체 지향 언어로 뻗어난 가지의 접점이 존재할 것이다. 객체 지향 모델은 클래스(class)를 중심으로 속성(property)과 메쏘드(method)를 통해 클래스 간의 관계를 표현한다.

    그렇다면 웹 온톨로지와 객체 지향 모델의 차이를 어디서 찾을까? 난 이 둘이 같은 계통 안에 속한다고 생각한다. 따라서 근본적으로 두 표현 수단이 동일하다고 본다. 그렇다면 둘 사이의 차이는 두 표현 방법이 제공하는 표현 능력의 차이점에서 찾아야 할 것이다. 웹 온톨로지와 객체 지향 모델은 분명 표현력에 있어 차이를 보이고 있기 때문이다.

    다음은 웹 온톨로지 언어인 OWL에서는 표현 가능하지만 객체 지향 모델로는 손쉽게 표현할 수 없거나 표현이 불가능한 표현 능력들을 나열해 본 것이다.

    - 두 클래스가 서로 교차하지 않음(disjoint)을 표현할 수 없다.
    - 클래스의 교차(intersection) 및 클래스의 여(餘,complement)를 표현할 수 없다.
    - 최소 및 최대 관계차수(minimum & maximum cardinality)를 기술할 수 없다.
    - 속성(property)이 대칭적(symmetric), 이행적(transitive), 함수적(functional), 역함수적(inverse-functional)임을 표현할 수 없다.
    - 두 속성이 역(inverse) 관계임을 표현할 수 없다.
    - 실질적으로 동일(equivalent)하지만 서로 다른 이름을 갖는 클래스들을 생성할 수 없다.

    자세히 살펴보면 이 외에도 여러가지가 더 있을 것이나, 웹 온톨로지와 객체지향 모델이 어떻게 다른지 엿보는데 충분한 목록이라 생각한다. 즉, 시맨틱웹의 표현 언어는 객체지향모델의 표현력을 한층 논리적으로 확장하고 있다고 볼 수 있겠다.

    표현력의 확장이란 측면에서 시맨틱웹은 환영받을 만 하지만, 실용의 측면에서 보면 그 범용성을 의심하게 한다. 왜냐 하면, 확장된 표현력은 제대로 된 데이터 모델을 만드는 작업의 난이도를 높이기 때문이다. 잘 정의된 웹 온톨로지를 구축하는 작업은 전문가에게도 난해한 작업일 뿐더러 초보자에겐 거의 불가능에 가까운 작업이 아닌가 하고 난 생각한다......

Designed by Tistory.