OWL을 지원하는 온라인 기반 온톨로지 저작과 통합 시스템의 설계와 초보적 개발

Design of Online based Ontology Management System and It's Preliminary Implementation

Dong-Jin Kim1, Hong-Gi Ahn1, Kyung-Mo Park1

1 Department of Biomedical Engineering, Kyunghee University.

Abstract: 현재 온톨로지 구축과 더불어 관리 시스템의 개발이 활발히 진행되고 있다. 이에 논문은 온라인 통한 편리한 온톨로지 구축 또는 관리할 수 있는 도구를 개발하고, 온토로지 사이의 통합을 가능하게 하는 방법의 모색과 구현에 초점을 두고 있다.

In ontological engineering, they are making an issue of ontology management including ontology merging and integration. We developed the system which consists of the Korean OWL ontology editing tool, the ontology integration tool and the tool for the RDF to OWL transformation.

Keyword: Integration, RDFS, OWL, Description Logic,

I. 배경

현재 많은 분야에서 자신의 영역에서 축적된 지식을 표현하기 위한 하나의 방법으로 온톨로지에 관심을 보이고 있다. 온톨로지는 원래 ‘존재들에 대한 설명들’이란 의미를 말하며, 정보과학 측면에서는 특정 영역의 용어들과 그들 간의 관계를 명시적이고 정형화한 명세를 의미한다.[1] 이러한 시도는 아직까진 그 시작단계에 있으며, 온톨로지를 정의하는 언어도 계속 연구되고 확장되고 있는 상황이다. 그러나 앞으로도 온톨로지를 구축할려는 요구는 커질 것으로 보인다. 따라서 온톨로지를 구축을 포함한 관리도구의 필요성이 대두되고 있으며, 연구 개발이 진행되고 있다. 이러한 온톨로지 관리도구의 연구분야로는 온톨로지 구축, 구축된 온톨로지 사이의 머징(Merging)[eqn: BULLET]통합(Integration)[2], 버전관리, 온라인을 통한 온톨로지 관리 등 다양하다. 온톨로지 머징[eqn: BULLET]통합이 고려되고 있는 이유는 다방면의 영역에서 구축된 온톨로지들이 표현 용어 혹은 방법의 차이로 서로 호환이 되지 않아 발생하는 문제를 해결하기 위함이다. 따라서 향후 머징과 통합의 중요성은 더 큰 비중을 차지할 것이다.

또한, 인터넷의 발달로 온라인상에서 온톨로지를 관리할 수 있는 도구개발이 시도되고 있는데, 이러한 온라인 관리 도구는 몇 가지 추가적인 요구를 만족시킬 필요가 있다. 첫째는 쉽게 예상할 수 있는 것처럼 언제 어디서든 온라인을 통해서 쉽게 온톨로지를 구축하거나, 구축된 온톨로지에 접근하여 수정하고자 하는 요구가 커지고 있다. 둘째로는 이렇게 많은 사용자(End-User)들이 웹을 통해 온톨로지를 구축하거나 구축된 온톨로지에 자신의 지식을 첨가하거나 수정하게 되면 온톨로지의 버전을 관리하는 문제가 대두되게 되며 이러한 문제를 해결해야할 솔류션이 필요하다. 셋째, 온톨로지 제작에 사용되고 있는 저작툴들이 DL(Description Logic)을 바탕으로 하고 있기 때문에 이러한 DL 구조에 대해 익숙하지 않은 개별 도메인의 전문가들이 온톨로지를 관리할 때 DL을 이해하기위한 별도의 노력을 요구하고 있다. 따라서, 이것은 향후에 온톨로지 공학의  사용성 문제에 대한 심각한 도전이 될 수도 있다. 따라서, 개별 도메인 전문가들이면서 한국어 사용자인 일반 사용자들을 위한 고려가 필요하다.

따라서 본 논문은 크게 두 가지 초보적인 시도로 구분되어질 수 있다. 하나는 온톨로지 변환과 통합 측면에서 기존의 저작도구를 사용해 구축된 온톨로지가 언어자체의 확장으로 인해, 제한되어 표현되었던 지식을 표현력이 높은 확장된 언어(OWL)[3]로 나타내어질 수 있게 하고, 여러 독립된 온톨로지를 하나로 묶을 수 있는 방법을 모색하는데 그 목적이 있다. 다른 하나는 온라인기반의 저작도구 측면으로 볼 때, 기존의 도구들은 DL 구조를 잘 아는 영어 사용자만을 그 대상으로 하고 있기 때문에 한국어로 온톨로지를 구축하는 일은 DL 구조의 어려움과 익숙하지 않은 언어 구조를 다루어야 하는 이중적인 문제를 해결하여야만 한다. 이에 한국어로 쉽고 빠르게 온톨로지를 작성하도록 하는 것과, 온라인 기반으로 온톨로지를 관리함으로써 선이 연결된 어디에서든 온톨로지를 사용하게 하고 그로 인해 여러 사용자가 한 온톨로지를 사용할 때 생기는 일관성 문제 해결방안 모색에 그 목적이 있다.

물론, 이러한 일련의 연구는 하나의 방법을 제시하고, 그것을 바탕으로 시스템을 구현해보는 수준에 제한된다.

Fig 2. OWL syntax를 사용한 문서로의 자동변환된 결과

II. 방법

온톨로지 언어사이의 변환을 위해 예제로는 Protege-2000[4]으로 작성된 RDFS[5] 기반의 온톨로지[6]를 사용하였으며, RDFS syntax를 의미(Semantic)를 바탕으로 OWL 언어 매핑하는 작업을 시도하였다. 이를 위한 방법으로 온톨로지 언어를 파싱(Pasing)할 수 있는 JENA2 API가 사용되었다. 또한 온톨로지 사이의 통합은 본 연구에서 구상한 알고리즘을 바탕으로  통합을 시도하였다.

온라인 기반의 온톨로지 저작툴 개발을 위한 방법으로 템플릿을 이용한 한글을 온톨로지 구축 언어(OWL)로 변환될 수 있게 하는 방법을 택했으며, 웹상에서 구현되게 하기 위해 구현된 어플리케이션을 웹서버를 통해 접근가능하도록 하였다.

1. 수정된 RDFS 문서에서 OWL 문서로의 변환

변환하고자 하는 온톨로지는 Protege 2000이라는 저작툴로 작성되었는데, 이 온톨로지 내에는 W3C에서 권고한 언어뿐만 아니라 저작툴이 자체적으로 제공하고 있는 문법이 공존하고 있다. 따라서 변환에서 고려할 사항이 두 가지 단계로 나뉘어진다. 첫째는 W3C에서 권고한 표준언어인 RDFS를 OWL로 변환하는 단계이고, 둘째는 저작툴내에서 정의된 언어를 OWL로 변환하는 단계이다

W3c에서 권고한 RDFS syntax를 OWL로 확장하는 것은 쉽게 변환 가능하다. 예를 들면, <rdfs:Class>에 정의된 개념을 <owl:Class>로 변환하거나, <rdfs:Property> 속성을 domain과 range를 고려해서 <owl:DatatypeProperty> 또는 <owl:ObjectProperty>로 변환한다. 위의 Fig 1.과 Fig2.가 그 결과이다.

Fig 1. RDFS syntax에 의해 작성된 문서

하지만, 프로티지 자체의 언어를 OWL로 확장하기 위해서는 온톨로지 제작에 사용된 syntax의 의미를 기초로 변환 가능한 구문으로 매핑이 이루어져야 한다. 그렇지 않는 경우 의미가 다른 표현을 낳을 수 있다.  Fig 3과 Fig 4가 그 변환의 결과이다.

Fig 3. Protege language syntax에 의해서 작성된 문서

Fig 4. OWL syntax로 변환된 문서

2. Ontology Integration

온톨로지 통합은 본 연구에서 구상된 알고리즘을 사용해 기본 온톨로지에 다른 온톨로지를 포함시키는 방향으로 그 작업이 수행되었다.

통합과정은 두 개의 서로 다른 온톨로지를 불러들여 두 온톨로지 상에 존재하는 같은 개념들의 리스트를 기반으로 통합작업이 이루어진다.

Ffig 5. 온톨로지 통합의 예

통합과정에 있어 두가지 측면이 고려되었다. 첫째, 사용자 스스로 통합범위를 제한할 수 있게 온톨로지 상의 개념의 hierarcy만을 포함시키거나 또는 개념의 속성만을 포함시킬 수 있고, 개념과 속성을 같이 포함시킬 수 있도록 고려하였다. 이는 온톨로지를 통합하고자 하는 사용자의 요구가 다양할 수 있기 때문이다. 물론 사용자가 더 지능적이고 자동적인 통합을 요구할 수도 있으나, 본 연구에서는 기능을 극히 제한하였다.

둘째, 통합과정에서 발생할 수 있는 개념과 속성의 동일성의 문제를 해결하기 위해, 부가적으로 동일성 체크를 판별할 수 있는 옵션을 두었다. 이는 통합하고자 하는 개념이 통합될 온톨로지 내에 이미 존재하는 경우 추가적으로 통합하는 작업은 불필요한 작업이며, 데이터(개념들)의 중복을 피할 수 있기 때문이다. 속성의 경우 역시 그 속성이 갖는 값이 통합할 온톨로지 내에 존재하면 불필요하게 속성의 값까지 가져오는 것보다 통합할 온톨로지내의 리소스와 직접적으로 연결을 하는 것이 더 효과적이다.

3. Ontology Editing Tool

온톨로지 구축의 한글화를 지원해주기 위해 온톨로지 생성, 수정(Editing)과 관계된 OWL syntax를 한글과 매칭되도록 템플릿을 설정한 후, 사용자가 일정한 포맷에 맞는 문장을 작성할 경우 미리 생성해 놓은 템플릿의 조합을 통해 OWL 구문으로 바뀌게 된다.

또한 이렇게 개발된 도구가 웹상에서 동작되도록 하기 위해 사용자가 웹으로 접근해 자바의 JNLP(Java Network Launch Protocol)을 이용하여 웹서버에 올려진 프로그램을 설치한 뒤, 명령 프롬프트, 데스크탑 아니콘, 또는 설치된 JNLP 구현의 어플리케이션 매니저를 통해 프로그램이 실행 가능하다.

그리고 구축된 온톨로지의 버전관리를 위해 사용자가 웹상에서 이미 구축된 온톨로지에 접근하여 수정을 가한 후 저장할 경우 기존의 온톨로지상에 표현된 지식과 충돌이 있는지를 판별하여 만약 충돌이 발생하게 되면, 버전 컨트로 프로그램인 CVS와 OWL의 논리적 일관성 체크를 통해, 충돌이 일어난 부분에 대해 사용자에 알려 줄 수 있도록 하였다.

III. 결과

1. 온톨로지 언어 변환 및 통합

Fig 6. Protege-2.1.2 RDFS format으로 작성된 변환 전의 온톨로지를 보여주고 있다.

Fig 7. 구축된 RDFS 기반의 온톨로지를 OWL로 변환한 후 Protege-owl Editor로 변환 후의 결과를 보여주고 있다.

온톨로지 언어 변환의 경우 모든 RDFS syntax나 Protege 정의 언어를 OWL로 변환이 수행되어진 건 아니다. 다만, 변환에 사용된  온톨로지에 나타난 구문만을 위주로 OWL syntax로 매핑하였으며, 그 결과를 OWL editor로 확인하였다. Fig 6과 Fig 7가 그 결과이다.

Fig 8. 온톨로지 통합을 위한 인터페이스

Fig 8은 동일한 것으로 판명된 개념을 리스트한 초기화면을 보여주고 있다. 위의 통합에는 앞의 언어변환에 사용된 온톨로지와 필자가 테스트를 목적으로 구축한 온톨로지가 사용되었다. 통합시에 리스트된 동일 개념에 대해 사용자 스스로 통합하고자 하는 개념들을 선택할 수 있다. 또한 효과적인 통합을 위해 온톨로지를 수정할 경우가 있을 것에 대비해 간단히 에디팅 할 수 있도록 하고 있다.

IV. 결론 및 고찰

현재, 다방면의 분야에서 온톨로지를 구축하거나 구축된 온톨로지를 효과적으로 다루기 위한 방안이 다각적으로 모색되고 있다. 그 대표적인 예로 시멘틱웹에 대한 연구가 활발히 이루어지고 있으며, 본 연구팀은 이러한 시점에서 온톨로지를 활용하는 측면에 관심을 갖고 본 연구를 수행하였다.

온톨로지 언어 변환의 경우 가능한 OWL specification에 충실하도록 노력하였으며, 온톨로지 통합의 경우 자의적으로 구상된 알고리즘만을 취하기 때문에 상당히 그 기능이 제한되어 있다. 또한 온톨로지 구축에 있어 한글문장 사용에 있어서도 극히 제한된 형식과 구문만을 허용한다. 본 연구가 프로그램의 구현에 초점을 맞추었기 때문에, 프로그램 동작의 효율성에서는 상당한 제한이 있을 수 있다.

본 연구 결과가 얼마나 실용적이고 효율적인지에 대해서는 결과 부분에 대한 유효성을 측정할 수 있는 방안이 추가적으로 모색되어져야만 할 것이다. 그러나 이러한 연구를 바탕으로 기존에 구축되어 있는 온톨로지의 재사용을 가능하게 하고, 앞으로의 여러 온톨로지를 통합하고자 하는 요구와 온톨로지를 쉽게 구축 관리하고자 하는 사용자의 요구에 한 발 다가가는 계기가 될 것으로 생각한다.

감사의 글

This study was supported by a grant of the Korea Health 21 R&D Project, Ministry of Health & Welfare. (03-PJ1-PG10-51300-0003)

참고문헌

1. Gruber, T.R., A translation approach  to    Portable Ontology specification. Knowldege Acquisition, 1993;5:199-220

2. http://www.jfsowa.com/ontology/gloss.htm

3. http://www.w3.org/TR/2004/REC-owl/guide- 20040210/

4. http://protege.stanford.edu/

5. http://www.w3.org/TR/rdf-schema/

6. 박경모, 임희숙, 박종현, Protege를 이용한 한의학의 구조화된 증상 입력을 위한 온톨로지 개발, 동의생리병리학회지 2003;17(5):1151-1156