DBPIA-NURIMEDIA

Similar documents
정보기술응용학회 발표

Microsoft PowerPoint - kimswld ppt

PowerPoint 프레젠테이션

KCC2011 우수발표논문 휴먼오피니언자동분류시스템구현을위한비결정오피니언형용사구문에대한연구 1) Study on Domain-dependent Keywords Co-occurring with the Adjectives of Non-deterministic Opinion

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

DBPIA-NURIMEDIA

00-CourseSyllabus

Chap 6: Graphs

06_±è¼öö_0323

Microsoft PowerPoint 웹 연동 기술.pptx

Microsoft PowerPoint - MetadataandOntology.ppt

0125_ 워크샵 발표자료_완성.key

슬라이드 1

27 2, * ** 3, 3,. B ,.,,,. 3,.,,,,..,. :,, : 2009/09/03 : 2009/09/21 : 2009/09/30 * ICAD (Institute for Children Ability

Journal of Educational Innovation Research 2019, Vol. 29, No. 1, pp DOI: (LiD) - - * Way to

<313220BDC9C1D82DB0CBBBF620C5B0BFF6B5E520C8AEC0E5C0BB20C0CCBFEBC7D120BFC2C5E7B7CEC1F620C0DAB5BF20BBFDBCBA20BDC3BDBAC5DB20B0B3B9DF2E687770>


11¹Ú´ö±Ô

서현수

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

SchoolNet튜토리얼.PDF

3. 클라우드 컴퓨팅 상호 운용성 기반의 서비스 평가 방법론 개발.hwp

Microsoft PowerPoint Predicates and Quantifiers.ppt

<4D F736F F F696E74202D20C1A63135C0E520C0A520BDBAC5A9B7A1C7CE>

Microsoft Word - src.doc

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - semanticsoccer.docx

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

Journal of Educational Innovation Research 2018, Vol. 28, No. 4, pp DOI: A Study on Organizi

소프트웨어공학 Tutorial #2: StarUML Eun Man Choi

Software Requirrment Analysis를 위한 정보 검색 기술의 응용

DBPIA-NURIMEDIA

문헌분류이론 13 주차 ( 김유영 / ) p. 2 {0/1990/NU/S+ +4/ 년 /NN/S}; 10월 {6/10/NU/S+8/ 월 /UM/S}; 팀 {10/ 팀 /NN/S}; 버너스 {12/ 버너스 /NR/S}; 리에 {16/ 리에 /NR/S}; 의

<4D F736F F F696E74202D E20C0CEC5CDB3DD20C0C0BFEB20B9D720BCADBAF1BDBA20B1E2BCFA E >

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

슬라이드 1

PowerPoint 프레젠테이션

untitled

MVVM 패턴의 이해

웹기반의실시간장치관리시스템 권대건 부산대학교컴퓨터공학과 Abstract 유조선과같은큰선박에서는배의균형을위해항해중에탱크와펌프, 벨브를관리해야한다. 선박에서는관제시스템을이용하여탱크의상태를체크하고펌프와벨브를관리한다. 이러한관제시스템은대부분

<31325FB1E8B0E6BCBA2E687770>

<323420BEE7B0E6B8F02DC0A520B9AEBCADC0C720B8DEC5B8B5A5C0CCC5CD20B0FCB8AEB8A620C0A7C7D120584D5020B9D720BFC2C5E7B7CEC1F62E687770>

슬라이드 1

<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F32C2F7BDC32E >

정진명 남재원 떠오르고 있다. 배달앱서비스는 소비자가 배달 앱서비스를 이용하여 배달음식점을 찾고 음식 을 주문하며, 대금을 결제까지 할 수 있는 서비 스를 말한다. 배달앱서비스는 간편한 음식 주문 과 바로결제 서비스를 바탕으로 전 연령층에서 빠르게 보급되고 있는 반면,

2017 년 6 월한국소프트웨어감정평가학회논문지제 13 권제 1 호 Abstract

11월 2일자(다시).hwp

<C5D8BDBAC6AEBEF0BEEEC7D C1FD2E687770>

Journal of Educational Innovation Research 2016, Vol. 26, No. 3, pp DOI: Awareness, Supports

À±½Â¿í Ãâ·Â


untitled

001지식백서_4도

Ver. DS-2012.T3.DWS.STR-1.0 System Test Report for Digital Watch System Test Cases Specification Test Summary Report Project Team 이동아 Latest update on

¸ð¹ÙÀÏÇÖµµÅ¥

금오공대 컴퓨터공학전공 강의자료

Microsoft Word WP_9.Linked Open Data_2010_3.doc

위해 사용된 기법에 대해 소개하고자 한다. 시각화와 자료구조를 동시에 활용하는 프로그램이 가지는 한계와 이를 극복하기 위한 시도들을 살펴봄으로서 소셜네트워크의 분석을 위한 접근 방안을 고찰해 보고자 한다. 2장에서는 실험에 사용된 인터넷 커뮤니티인 MLBPark 게시판

UNIST_교원 홈페이지 관리자_Manual_V1.0

PowerPoint Presentation

[Brochure] KOR_TunA

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

PowerPoint Template

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - 26.pptx

HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을

Microsoft PowerPoint - chap01-C언어개요.pptx

Something that can be seen, touched or otherwise sensed

System Recovery 사용자 매뉴얼

슬라이드 1

목순 차서 v KM의 현황 v Web2.0 의 개념 v Web2.0의 도입 사례 v Web2.0의 KM 적용방안 v 고려사항 1/29

DocsPin_Korean.pages

?털恬묵

ISO/IEC 의온톨로지와메타데이터 표준화동향 한국과학기술정보연구원 김장원

제목 레이아웃

Portal_9iAS.ppt [읽기 전용]

MySQL-.. 1

본문01

Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer

DW 개요.PDF

목차 I. 검색엔진의 발전 II. 개인화 서비스 III. 검색 개인화 IV. 오픈베이스의 개인화 검색 V. 결론 검색의 진화와 개인화의 역할 KM&ECM CONFERENCE

PowerPoint Template

PowerPoint Template

PowerPoint 프레젠테이션

Microsoft PowerPoint - 27.pptx

APOGEE Insight_KR_Base_3P11

Week13

SNS 명예훼손의 형사책임

<313820B9DABFEBBAF32DB8F0B9D9C0CFB1E2B1E B8A620C0CCBFEBC7D120452D4C E696E672E687770>

0. 들어가기 전

¿À¸®ÄÞ40

Dialog Box 실행파일을 Web에 포함시키는 방법

PowerPoint Presentation

°í¼®ÁÖ Ãâ·Â

160322_ADOP 상품 소개서_1.0

gnu-lee-oop-kor-lec06-3-chap7

Social Network

PowerPoint 프레젠테이션

Journal of Educational Innovation Research 2018, Vol. 28, No. 3, pp DOI: NCS : * A Study on

Intro to Servlet, EJB, JSP, WS

Transcription:

온톨로지생성과공유를위한시맨틱웹기반위키시스템 703 온톨로지생성과공유를위한시맨틱웹기반위키시스템 (A Semantic Web-enabled Wiki System for Ontology Construction and Sharing) 김현주 최중민 (Hyunjoo Kim) (Joongmin Choi) 요약시맨틱웹은컴퓨터가처리가능한의미정보를표현하고공유할수있는보편적인매체를개발하는것이목적이며, 따라서시맨틱웹에서는이러한의미정보를표현하는온톨로지를웹에배포하여이용가능하게만드는것이매우중요하다. 하지만현존하는대부분의온톨로지저작도구는웹이아닌환경에서운용되기때문에작성된온톨로지를바로웹에배포할수없으며온톨로지를여러사람이공동으로저작할수없다는단점이있다. 이논문에서는위키 (Wiki) 를이용하여온톨로지를쉽게웹에배포할수있고온톨로지생성과공유를용이하게해주는기반구조를제안한다. 위키는사람을대상으로하는지식공동저작과공유를위한기반구조중하나로서웹에서운용되며, 위키의내용은웹문서서식을위한간단한마크업언어와자연어로구성된다. 이논문은보다용이한온톨로지생성과공유를위해기존의위키시스템에시맨틱웹요소를추가하여인간을위한지식공동저작과공유를위한시스템인동시에에이전트소프트웨어도쉽게접근하여온톨로지정보를얻을수있는시맨틱웹기반구조를제안하였으며이를통해시맨틱조회, 시맨틱탐색, 시맨틱질의를실현하고자하였다. 키워드 : 시맨틱웹, 온톨로지, 정보공유, 위키, 시맨틱위키 Abstract The Semantic Web has the objective of developing universal media in which machine-processable semantic information can be represented and shared, and it is therefore important to distribute ontologies that represent this kind of semantic information to the Web and make them available to multiple parties. However, the current ontology authoring tools are not operating on the Web, which makes it difficult to distribute ontologies directly to the Web and to create and edit them collaboratively with other people. This paper proposes a framework that facilitates the ontology construction and sharing, realizing easy distribution of ontologies to the Web. Wiki is one of the frameworks for collaborative construction and sharing of knowledge on the Web, and Wiki contents consist of natural language texts and simple markup language for visualization. For better collaboration in creating and sharing ontologies, this paper suggests the Semantic Wiki that embodies the Semantic Web features to the existing Wiki system. The Semantic Wiki framework facilitates the collaboration in ontology co-authoring and sharing for people, and at the same time, makes it possible for the agent software to easily manage the ontology information. Eventually, the Semantic Wiki system accomplishes various tasks including the semantic view, the semantic navigation, and the semantic query. Key words :Semantic Web, Ontology, Information Sharing, Wiki, Semantic Wiki 1. 서론 이논문은정부 ( 교육인적자원부 ) 의재원으로한국학술진흥재단의지원을받아수행된연구임 ( 과제번호 R05-2003-000-10223-0) 학생회원 : 한양대학교컴퓨터공학과 hjkim@cse.hanyang.ac.kr 종신회원 : 한양대학교컴퓨터공학과교수 jmchoi@cse.hanyang.ac.kr 논문접수 : 2005년 6월 21일심사완료 : 2006년 6월 2일 시맨틱웹은 HTML 언어를기반으로한기존의웹의한계점을극복하고컴퓨터가처리가능한의미정보를표현할수있도록보편적인매체를개발하고자하는프로젝트이다 [1,2]. 시맨틱웹에서온톨로지는의미정보를나타내기위해필요한개념 (concept) 과관계 (relation-

704 정보과학회논문지 : 소프트웨어및응용제 33 권제 8 호 (2006.8) ship) 를정의한정형적명세 (formal specification) 이다 [3]. 시맨틱웹의온톨로지를기술하는언어로 RDF와 OWL 이있으며, 온톨로지는 (Subject, Predicate, Object) 또는 (Resource, Property, Value) 와같은트리플단위로나타낼수있다 [4,5]. 트리플구조는 Subject와 Object 를그래프의노드 (node) 로, Predicate을레이블이있는그래프의아크 (arc) 로묘사하여그래프구조로나타낼수있다. 하지만, 이러한언어를사용하여온톨로지를웹에배포하려면시맨틱웹에대한지식외에도 XML 과웹에대한사전지식을요구한다. 현재 Protégé나 OntoEdit와같은뛰어난온톨로지저작도구가존재하나, 웹이아닌환경에서동작하고, 여러명이공동으로온톨로지를저작할수없으며이러한도구를사용하여온톨로지를직접웹에배포할수없다는단점이있다. 시맨틱웹이전에제안된, 사람이웹에서지식을공동저작하고공유하기위한기반구조로위키 (Wiki) 가있다 [6]. 위키는하나의웹사이트로서문서서식을위한간단한마크업언어와자연어로작성된텍스트를저장한다. 위키에접근하는사람이면누구나위키의내용을자유롭게추가하고수정할수있다. 위키는웹에서자연어로표현가능한지식을저장하는데용이한기반구조이다. 위키의페이지는 HTML의하이퍼링크와유사한링크로서로연결되며, 위키전체를페이지가노드이고링크가아크인그래프구조로나타낼수있다. 이논문은시맨틱웹의온톨로지와위키시스템을그래프구조로나타낼수있다는점에착안하여기존의위키시스템에시맨틱웹요소를추가하여시맨틱웹문서를웹에서자유롭게저작하고공유할수있는웹기반구조를제안하였다. 이기반구조에서는자연어로표현된지식과함께시맨틱웹언어를위한메타데이타를저장하고처리할수있다. 시맨틱웹에대한관심이고조되는가운데시맨틱웹을이용한지식정보저장소의모델은현재의시맨틱웹의연구방향에새로운전환점을제시하는사례가될수있을것이다 [7]. 다. 일반적인웹사이트는기획단계에서미리설계된정적인구조를따라서구성된다. 이와달리위키는페이지의생성과갱신이자유로우며시간이지날수록진화하는그래프구조로볼수있다. 페이지와링크는사용자가자유롭게추가와삭제를할수있기때문에시간이지남에따라위키의구조가동적으로바뀐다. 위키의내용은그림 1에나타낸것과같이일반텍스트와 HTML에비하여단순한마크업언어로구성되어있다. 이것을이용하여시각적인표현을쉽게할수있고페이지의생성과수정을편리하게할수있다. 이러한위키에시맨틱웹요소를추가하려는시도가이전에도있었는데그중하나가 Platypus 위키이다 [9]. Platypus 위키의기본구조는일반적인위키의구조와동일하며, 차이점은기존의위키에서사용하던일반위 (a) 위키마크업언어 (b) HTML로변환된내용 2. 관련연구 위키 는 빨리 를뜻하는하와이원주민어로, 빠르게배우고사용할수있는특성을나타낸다. 위키는사용자가위키의어느한페이지가구성또는내용이잘못되어있다고생각되면원래그페이지의저자가아니더라도누구나그것을수정하여바로잡을수있도록하는최초설계원칙을잘반영하고있다 [8]. 이러한원칙은점진적으로위키의내용을진화하는방향으로발전시키고신뢰할수있도록해준다. 위키의내용이개선되는방향으로진화하는것과같이, 위키의구조도자유롭게진화하는방향으로발전한 (c) 브라우저에표시되는내용 그림 1 위키페이지와마크업언어

온톨로지생성과공유를위한시맨틱웹기반위키시스템 705 키페이지와 RDF/XML 데이타를가지고있는시맨틱웹페이지가분리된형태로공존하며편집도독립된다른창을통하여행해진다는것이다. 일반위키페이지에서 rdfs:class와같은형식으로주소공간 (namespace) 과자원 (resource) 의이름을표기하면다른페이지로접근하는새로운링크로해석한다. 그러나일반페이지와 RDF/XML 페이지가완벽하게독립적으로존재하기때문에일반위키편집창에서 rdfs:class라고기록한다고해서자동으로 RDF/XML 페이지에메타데이타가갱신된다거나혹은그반대로 RDF/XML 편집창에서새로운 Class를선언했다고해서일반페이지에그에대한사항이자동으로나타나지않는다. 그리고탐색이일반위키페이지의링크를중심으로이루어지기때문에일반위키페이지에서다른페이지로접근하는링크가사라지게될경우, 링크가사라진다른페이지에접근하여 RDF/XML 온톨로지데이타를조회를하려면여러단계를거쳐야한다. 본논문은 Platypus 위키의단점을보완한개선된시맨틱위키를제안한다. 참고로시맨틱위키와유사하게웹에서온톨로지를자유롭게생성하고공유할수있는프로그램으로시맨틱블로거 (Semantic Blogger) 가있다 [10]. 블로그 (Blog) 는개인사용자가웹에시간순으로글을출판할수있는시스템이다. 게시물을분류별, 시간별로조회할수있으며표준화된 XML/RPC 블로그 API를제공한다. 이 API를이용하여다른블로그의글에대한주석을자신의블로그에적을수있고, 주석의대상인글이있는블로그는이사실을알수있다. 블로그는매우단순한구조와사용법을제공하기때문에컴퓨터와웹에대한사전지식이없어도누구나손쉽게사용할수있으며, 전세계적으로개인홈페이지에탑재되어활발하게사용되고있다. 시맨틱블로거는일반블로그에시맨틱웹요소를결합한것이다. 시맨틱블로거의글은 RDF 형태로저장된다. RDF로저장되는내용은글의제목, 분류, 작성자, 작성시각, 내용, 글의 URI, 고유번호이다. 이렇게저장된의미정보를담고있는메타데이타와온톨로지를이용하여기존블로그에서불가능했던시맨틱조회 (Semantic View), 시맨틱탐색 (Semantic Navigation), 시맨틱질의 (Semantic Query) 가가능해졌다. 3. 시맨틱위키의설계 3.1 시맨틱위키의특징먼저 OWL로표현된자원과위키페이지를표현하는방법에대하여고려해야한다. Platypus 위키에서는 OWL 클래스와속성등모든자원에 1:1로대응하도록위키페이지와온톨로지를분리된형태로저장하였다. 여기서탐색의기준이되는링크는위키페이지의링크이다. 이 방법은위키페이지의 URL과 OWL 자원의 URI가일치하고, OWL 자원에대한속성이바로위키페이지사이의링크가될수있다는장점이있지만현실적으로표현하고자하는온톨로지가복잡해질경우, 시맨틱위키자체의복잡도가지나치게증가하고, OWL 자원의구조와상관없는자연어로된지식을다루기어려우며, 위키페이지가갱신되면서링크가사라질경우, 사라진링크와연결된페이지의온톨로지에접근할수없게되는단점이있다. 따라서이논문에서는위키의일반페이지에온톨로지메타데이타가포함되는형태로페이지의내용을구성하도록설계했다. 이구조는일반위키텍스트의내용과온톨로지메타데이타사이의링크가독립적으로존재하는단점이있다. 그러나위키페이지의내용과온톨로지메타데이타가동일한물리적위치에함께저장되며, 현실적으로먼저언급한구조보다유연하게지식을나타낼수있다는장점이있다. 이러한구조에서위키페이지의일반텍스트내용을그페이지가가지고있는온톨로지에대한주석으로생각할수있다. 그림 2는시맨틱위키의편집화면으로, 자연어와위키마크업언어로구성된내용과함께 {{{ }}} 로둘러싸인영역에 OWL Concrete Abstract Syntax[11,12] 로표현된온톨로지를볼수있다. 시맨틱탐색을가능하게하기위하여온톨로지메타데이타가포함된페이지의경우, 사용자가페이지를조회할때페이지하단에페이지가포함하는온톨로지를참조하는다른페이지의자원에대한정보와이동가능한링크를표시하게하였다. 이렇게함으로써사용자는전통적으로위키에서링크로알려진 CamelCaseLink 뿐만이아닌, 페이지에포함된온톨로지가참조하는다른문서를조회할수있다. 이링크를이용하여사용자는레이블이있는양방향링크를따라서위키페이지를탐색할수있다. 사용자가이링크를따라서탐색을하면, 해당페이지의온톨로지메타데이타에대한정의와함께그와관련된자연어로작성된설명을볼수있다. 따라서사용자는생소한개념을접하더라도그개념에대하여쉽게정보를얻을수있다. 위키의가장두드러진특징은누구나임의의페이지내용을편집할수있다는것이다. 시맨틱위키에서는일반페이지를편집하는창을통하여 OWL Concrete Abstract Syntax로온톨로지를표현할수있다. 따라서어떤사용자라도표현된온톨로지의내용을일반위키페이지를편집하는것과마찬가지로별다른특별한프로그램이없이웹에서자유롭게생성하고수정할수있다. OWL Concrete Abstract Syntax에서외부의자원을참조하는방식은 OWL RDF/XML에서사용하는방

706 정보과학회논문지 : 소프트웨어및응용제 33 권제 8 호 (2006.8) 그림 2 시맨틱위키의편집화면 식과동일하다. 따라서어떠한온톨로지데이타라도 RDF 또는 OWL RDF/XML 형태로표현되어있으면시맨틱위키에서이를자유롭게참조할수있고, 이를참조하는온톨로지를생성할수있다. 3.2 시맨틱위키의구조시맨틱위키는그자체로서하나의웹사이트이다. 따라서모든작업은웹인터페이스를통한사용자의요청에의해이루어진다. 시맨틱웹기반구조는내용의조회, 생성, 편집, 삭제, 검색과온톨로지메타데이타출력의모든기능을웹에서처리한다. 이러한기능을수행하도록본논문에서제안하는시맨틱위키시스템의구조는그림 3과같다. 그림 3 시맨틱위키시스템의구조 시맨틱위키페이지저장소 (Semantic Wiki Page Repository) 는일반위키문서에 OWL Concrete Abstract Syntax로표현된온톨로지가포함된형태의시맨틱위키페이지를저장하는곳이다. 이렇게저장된문서를웹인터페이스 (Web Interface) 를통하여사용자에게보여준다. HTML 변환기 (Translator) 는시맨틱위키페이지의내용중일반텍스트에해당하는부분을 HTML로변환하고, 페이지가포함하고있는온톨로지에대한정보를 HTML로표시하여웹인터페이스에전달한다. OWL Concrete Abstract Syntax 변환기 (Translator) 는시맨틱위키페이지에포함된온톨로지를추출하는모듈이다. 이렇게추출된온톨로지는 OWL RDF/ XML 변환기 (Translator) 를이용하여 RDF/XML 형태로변환이가능하다. 외부에서 OWL RDF/XML로변환된온톨로지를요청할때 OWL RDF/XML 변환기를통하여웹환경을통해제공한다. 사용자에의해시맨틱위키페이지가생성, 편집, 삭제될때마다해당페이지에포함된온톨로지의내용이 Jena 온톨로지 API[13] 를통하여온톨로지저장소 (Ontology Repository) 에저장된다. 온톨로지저장소에는온톨로지의내용이 (Subject, Predicate, Object) 형태의트리플단위로저장된다. 이렇게저장된트리플은시맨틱조회와검색을할때이용된다. 사용자는웹인터페이스가제공하는시맨틱질의생성기 (Semantic Query Builder) 기능을이용하여트리플형태로표현된시맨틱질의를생성할수있으며, 이

온톨로지생성과공유를위한시맨틱웹기반위키시스템 707 렇게생성된질의는시맨틱질의처리기 (Semantic Query Processor) 를통해수행되어결과를볼수있다. 사용자는웹인터페이스를통하여온톨로지와자연어로구성된내용을자유롭게생성, 편집, 삭제할수있으며, 온톨로지의내용을 OWL Concrete Abstract Syntax 또는 OWL RDF/XML, HTML의형태로조회할수있고, 시맨틱질의에대한결과를볼수있다. 4. 시맨틱위키의구현시맨틱위키는자바언어를사용하여 Apache Tomcat 어플리케이션서버에탑재되는 Servlet/JSP 형태로작성되었다. 자바언어를사용하면프로그램을플랫폼에독립적으로작성할수있으며, 기존에존재하는 Jena, Sesame, RDFAccess, OWLAP와같은시맨틱웹을프로그래밍할때유용하고편리한라이브러리를사용할수있다. 4.1 시맨틱위키페이지의저장과출력시맨틱위키는일반위키페이지내용뿐만이아닌시맨틱온톨로지메타데이타도함께저장하고불러올수있다는점에서기존의위키와다르다. 이절에서는 3장에서논의한사항들이구체적으로어떻게구현되었는지 설명한다. 4.1.1 시맨틱위키페이지와마크업언어시맨틱위키에서사용하는위키마크업언어는매우단순하며, 일반적인위키가그러하듯대부분시각적효과를위한태그이다. 표 1은위키마크업언어에서사용되는태그를나열하고있다. 이러한위키마크업언어를이용한위키페이지의내용은그림 4와같이 XML 형태로저장된다. 위키페이지의루트요소 (root element) 인 <page> 요소는시맨틱위키페이지의내용을담고있는 <content> 요소와시맨틱위키페이지임을나타내는 <des- 항목 표 1 위키페이지마크업언어 태그사용예 강조 emphasize 굵은글씨 bold 제목 == Title == 목록 ^^^^* (^ =, 0x20 공백문자 ) 수평구분 ---- 링크 CamelCaseLink 또는 http://hostname 직접입력 온톨로지 {{{ Class(l:Mouse partial l:animal) }}} 메타데이타 그림 4 XML 형태로저장된시맨틱위키페이지

708 정보과학회논문지 : 소프트웨어및응용제 33 권제 8 호 (2006.8) criptor> 요소로구성된다. <content> 요소는내용의고유한식별자인 id, 작성된날짜와시간을알수있는 date, 작성한사람에대한정보를알수있는 changedby, 그리고온톨로지메타데이타가있는지여부를알수있는 hasontology 속성을가지고있다. 하나의 <page> 요소는여러개의 <content> 요소를가질수있으며, 페이지가갱신될때마다새로운 <content> 요소를추가하기때문에 <content> 요소의비교로해당페이지가갱신된이력에대하여알수있다. <content> 요소의 id 속성은고유한식별자이며동시에해당내용이파일에기록되는순간의타임스탬프이다. 4.1.2 시맨틱위키페이지의생성과갱신기본적으로위키페이지의생성과갱신은작업이전의페이지존재여부를제외하면동일한작업이다. 원하는내용을편집한후저장하면먼저서버에 XML 형태로페이지데이타를저장한다. 그리고나서해당페이지가온톨로지를가지고있을경우, 온톨로지저장소에서해당하는트리플을갱신한다. 페이지를생성할때기본적으로 rdf:, rdfs:, owl:, xsd: 와같은자주쓰이는주소공간과함께해당페이지의기본주소공간을 l: 로정해준다. 그리고 OWL Concrete Abstract Syntax의문법에따라사용자가자유롭게추가적인주소공간을지정할수있다. OWL Concrete Abstract Syntax는 OWL Web Ontology Language Semantics and Abstract Syntax[6] 에서소개하는 OWL Abstract Syntax를확장하고 Literal의표현과같은부분을보다구체적으로정의한문법이다. 주소공간을지정하기위해새로운 Namespace 라는키워드가추가되었으며 OWL Concrete Abstract Syntax에서는 N3와다르게 prefix name에 _ 을허용하지않는다. OWL Concrete Abstract Syntax는기존의 OWL 데이타의표현방법이 XML이나 RDF로되기때문에 readability가떨어져서보다간단하면서개념을명확히표현하기위한구문구조이다. 이것은 W3C에서표준으로제안한것이다. 하지만기본적인표현구조는 XML이므로 abstract syntax를 XML로바꾸어주는 translator가필요한데, 이 translator는저자가구현한것이다. 4.1.3 OWL Concrete Abstract Syntax와 OWL RDF/ XML 온톨로지조회시맨틱위키에서 http://hostname/context/owlabs/ PageName으로접근하면위키페이지저장소에서페이지의내용을읽어와서 {{{ }}} 위키마크업태그사이에존재하는 OWL Concrete Abstract Syntax의내용을취합하여출력한다. 이때 RDF, RDFS, OWL, XML Schema와해당페이지에대하여주소공간이주어진다. 사용자또는에이전트가 http://hostname/context/ owlxml/pagename로접근하면 OWL RDF/XML로작성된온톨로지메타데이타를얻을수있다. 이 XML 데이타는바로위에서언급한 OWL Concrete Abstract Syntax를 RDF/XML 데이타로변환한것이다 4.1.4 웹브라우저를통한시맨틱위키페이지의조회웹브라우저를통하여 http://hostname/context/ PageName으로접근하면그림 5와같이위키페이지와유사한시맨틱웹위키페이지를 HTML로볼수있다. HTML로변환된일반위키페이지의내용과함께, 해당페이지가온톨로지를포함한경우포함하고있는온톨로지메타데이타의자원에대한정보를페이지하단에출력한다. 정보를출력하는부분에서굵은글씨로되어있고 l: 로시작하는것이페이지가포함하고있는자원이다. 온톨로지에대한정보는다음과같이출력된다. 먼저온톨로지저장소를검색하여페이지에포함된자원이저장된트리플중에서 Subject에위치하는경우에는이트리플에대한정보를출력한다. 검색된트리플의 Predicate이나 Object가해당페이지에속하지않는경우, 즉시맨틱위키의다른페이지에속하거나시맨틱위키외부에존재하는자원인경우, 직접접근가능한 HTML 링크를표시한다. 해당페이지에속하지않으나시맨틱위키의다른페이지에속하는경우에는 HTML 로조회할수있는위키페이지의 HTML 링크를표시한다. 그런다음, 포함하는자원이트리플에서 Object에있는경우에해당하는트리플을검색하여이에대한정보를출력한다. 페이지에포함된모든온톨로지자원에대하여이러한작업을반복하여정보를출력한다. 이정보를이용하여사용자는해당페이지에포함된온톨로지메타데이타자원이다른자원과어떠한관계가있는지알수있으며, 시맨틱위키에포함된자원의경우위키페이지를방문하여보다자세한정보를얻을수있다. 4.2 시맨틱검색일반적인위키시스템의경우, 페이지가자연어로작성된일반텍스트형식의정보만을제공하기때문에위키에대한검색은페이지내용또는페이지제목에대한단순한텍스트비교또는정규표현식을이용한문자열검색방법이사용된다. 시맨틱위키는이와다르게페이지에온톨로지메타데이타내용을추가함으로써단순한텍스트매칭이아닌의미검색이가능하다. 시맨틱위키에서의시맨틱검색은 Jena 2 Ontology API를이용하여구현했다. OWL은 RDF의관점에서해

온톨로지생성과공유를위한시맨틱웹기반위키시스템 709 그림 5 시맨틱위키페이지예제 석할수있으며, RDF는온톨로지를 Subject, Predicate, Object로구성되는그래프구조로묘사한다. 시맨틱위키에서구현된시맨틱검색은온톨로지를그래프로바라보고, 일종의 Depth-First 방식의그래프탐색기법을사용하여사용자의질의에대한검색을수행한다. rdfs:subclassof 뿐만이아닌 owl:equivalentclass, owl:equivalentproperty, owl:sameas와같은 vocabulary에대해서확장된탐색을하며, 사이클이생기는경우에대한탐색은하지않는다. 시맨틱위키는 Jena 2 API의온톨로지를저장소에저장하고불러오는기능을이용한다. 검색조건은 (Subject, Predicate, Object) 의트리플형태로기술한다. 트리플에는변수또는자원의 URI, Value 부분에는 Literal이들어갈수있다. 그림 6에서구현된시맨틱검색인터페이스의화면을볼수있다. Subject, Predicate, Object에해당하는자원, 변수, 또는값을지정할수있으며, Add a statement 버튼을누르면지정된값에의한 Statement가아래의큰텍스트상자에입력된다. 결과값을보기를원 하는변수한개를 Result Variable에서지정할수있으며 Get Result 버튼을누르면그림 7과같은결과를볼수있다. 시맨틱검색의결과는해당하는자원의 URI와함께이자원이시맨틱위키내부의자원일경우, 자원이포함된위키페이지에접근할수있는 HTML 링크를표시한다. 따라서자원이시맨틱위키의일부일경우, 사용자는 XML로표현된정보뿐만이아닌위키페이지조회를통한보다자세한정보를알수있다. 예를들어 Mick이운전하는차의종류 를묻는질의는그림 8과같은그래프형태로생각할수있다. 이질의를세분화하면 Mick이라는사람이 x를운전하는데, x의종류가무엇인가? 라는질의와동일하다. 이것을시맨틱검색을위한트리플구조로변환하면그림 9와같으며, 결과값은변수?y에지정된다. 이질의에대한검색결과는앞의그림 6과 7에서확인할수있다. 보다복잡한유형의시맨틱검색에대한예는 4.3.2절에나와있다.

710 정보과학회논문지 : 소프트웨어및응용제 33 권제 8 호 (2006.8) 그림 6 시맨틱검색인터페이스 그림 7 시맨틱검색결과 그림 8 Mick이운전하는차의종류 에대한질의의그래프표현 4.3 시맨틱위키용례이절에서는구현된시맨틱위키시스템과예제온톨로지 [14] 을이용한가상의용례 (Use Case) 를통하여기존의위키시스템과같은지식공동저작시스템과어떤차이점이있는지설명한다. 여기서제시되는각온톨로지들은각각서로다른사용자들이입력한것이라고가정한다. 즉, 각온톨로지가제시되는순서대로서로다른사용자에게입력된다고보면, 이전에다른사용자가입력한온톨로지를바탕으로새로운사용자가추가온톨로지를생성하여입력할수있는상황을보여주는것이다. 4.3.1 온톨로지공동저작식물을좋아하는 Walt는시맨틱위키의 Plants라는페이지에식물에대한내용의온톨로지를기술하였다 ( 그림 10). 그림 9 Mick 이운전하는차의종류 에대한질의의트리플표현

온톨로지생성과공유를위한시맨틱웹기반위키시스템 711 그림 10 Walt 가생성한 Plant 온톨로지와위키페이지 그림 11 Mick 이수정한 Plant 온톨로지와위키페이지 그림 12 Mick 이생성한 Vehicle 온톨로지와위키페이지 이것을본 Mick은 part_of 속성의역속성 (inverseof) 을추가했다 ( 그림 11). 그리고운송수단에대해관심이많아서 Vehicle 페이지를생성하고이에대한온톨로지와자연어로된내용을입력했다 ( 그림 12). 신문에관심이많은 Fred는 Newspaper라는위키페이지를생성하고신문의종류에대한온톨로지와자연 어로된내용을입력했다 ( 그림 13). 동물을좋아하는 Fred는이번엔 Animals라는위키페이지를생성하고동물에대한온톨로지와자연어로된내용을입력했다 ( 그림 14). 이번에는 Mick이자기자신에대한시맨틱위키페이지를만들려다가사람에대한온톨로지가없다는사

712 정보과학회논문지 : 소프트웨어및응용제 33 권제 8 호 (2006.8) 그림 13 Fred 가생성한 Newspaper 온톨로지와위키페이지 그림 14 Fred 가생성한 Animals 온톨로지와위키페이지 실을깨닫고 Person 위키페이지와온톨로지를생성한다 ( 그림 15). 그다음, Mick은 People 이라는위키페이지를생성하여 Fred와 Walt와자신에대한온톨로지정보를작성하였다 ( 그림 16). 결과적으로 Mick, Fred, Walt가시맨틱위키에서생성하고편집한페이지는총 6개이며, 이시맨틱위키는그림 17과같은온톨로지와링크를가지고있다. 그림에 서페이지사이에레이블이붙은링크는다른페이지의온톨로지를참조하는시맨틱웹링크이며, 굵은선으로표시된링크는일반위키텍스트부분에서마크업언어로표시된보통의위키링크이다. 이가상의사용사례에서단 3명의사람이공동으로시맨틱위키에온톨로지와자연어로이루어진내용을작성한다고해도, 사용하는사람들이신중하게온톨로지를잘작성하면매우쉽게복잡한온톨로지를생성할수있음을알수있다.

온톨로지생성과공유를위한시맨틱웹기반위키시스템 713 그림 15 Mick 이생성한 Person 온톨로지와위키페이지 그림 16 Mick 이생성한 People 온톨로지와위키페이지 4.3.2 시맨틱검색어느날, 시맨틱위키에 Minnie라는할머니가등장하여그림 18과같은내용의온톨로지를 OldLady 페이지에작성하였다. Minnie는 People 페이지에그림 19와같은자신에대한온톨로지를추가하였다. 시맨틱위키를탐색하던 Mick은 Minnie라는사람에대한새로운온톨로지가추가되었다는사실을발견했다. 하지만 Minnie의애완동물인 Tom의 type이 Thing으로되어있어서구체적으로어떠한동물인지알수없었다. 그래서 Mick은시맨틱검색기능을이용하여그림 20과같은시맨틱질의를입력하여이를알아보기로

714 정보과학회논문지 : 소프트웨어및응용제 33 권제 8 호 (2006.8) 그림 17 전체온톨로지와위키페이지 하였다. 이질의에대한결과는그림 21과같다. 그림 19를보면 Minnie의애완동물인 Tom은종류가 owl:thing으로되어있다. 이것은 Minnie가직접추가한것이며, 이정보만가지고는 Tom이구체적으로어떤동물인지알수없다. 그림 18을보면 oldlady는 elderly, female, person의교집합을이루는 class와동등한클래스임을알수있다. 그런데그림 19에정의된 Minnie가바로 elderly, female, person 모두에해당하는 Individual 이다. 그러므로 Minnie는 oldlady인것이다. 그림 18을다시살펴보면 oldlady는애완동물을가지는클래스의하위클래스인데, 애완동물을여러마 리를가질때, 동물의종류가적어도하나는 animal인클래스와, 모든애완동물의종류가 cat인클래스의교집합클래스이다. 이조건으로부터 oldlady의애완동물은 animal이자동시에 cat임을알수있다. 따라서시맨틱검색을통한결과는원래정의된 owl:thing과더불어 OldLady 온톨로지에서정의된 oldlady의조건에따라서 cat과 animal도검색결과로출력된것이다. 이러한검색결과는일반텍스트데이타에대하여수행하는텍스트매칭기법으로는보여줄수없다. 4.3.3 웹에서지식교환과정보공유 OWL의특성상인터넷에 URI로존재하는모든온톨

온톨로지생성과공유를위한시맨틱웹기반위키시스템 715 그림 18 Minnie 가작성한 OldLady 온톨로지 그림 19 Minnie 가 People 에추가한온톨로지 그림 20 Minnie 의애완동물종류검색을위한시맨틱질의 그림 21 Minnie 의애완동물종류에대한검색결과 로지자원을특별한조작없이그대로사용할수있다. OWL을사용하는시맨틱위키또한다른시맨틱위키또는다른정적인 OWL RDF/XML 문서의온톨로지를참조하는것은특별한추가적인장치없이가능하다. 페이지를생성또는수정할때위키내부의자원에대한 URI를적는것과위키외부의자원에대한 URI를적는것은차이가없다. 5. 결론이논문에서제안한시맨틱위키는기존위키시스템에시맨틱웹을접목하여공동체단위에서유용하게사용할수있고공통으로사용하는어휘와정보, 온톨로지와일반적인지식을공동으로저작하고공유할수있는시스템이다. 시스템을구현하기위하여자바언어를사용했으며, 일반위키페이지의내용에 OWL 온톨로지가포함되는형태로페이지데이타를관리하도록하였다. 일반위키 의특징을그대로수용하면서동시에일반페이지링크와시맨틱웹링크가공존하는형태가되었고, 일반위키페이지의내용은포함된온톨로지데이타의주석문과같은역할을하게되었다. 또한온톨로지정보를이용한시맨틱검색으로인하여기존의위키또는지식관리시스템에서불가능했던의미정보에대한검색이가능해졌다. 그러나페이지에포함된온톨로지와위키텍스트가독립적으로존재하는문제점이있다. 이는시맨틱정보를기술할수있으면서동시에위키의링크를표시할수있는새로운마크업언어를고안하여해결가능하다. 그리고인공지능학습기법을이용하여위키페이지에대한주제를자동으로부여하고분류하면시맨틱위키의내용을더욱편하게탐색할수있을것이며, 시맨틱위키에추론엔진을접목하여시맨틱위키에포함된온톨로지에표현된의미정보를기초로하여보다많은정보를유추하면더욱다양한시맨틱검색기능이가능

716 정보과학회논문지 : 소프트웨어및응용제 33 권제 8 호 (2006.8) 할것이다. OWL의특성에의하여시맨틱위키에서외부에존재하는 OWL 자원을참조하는것은별도의추가적인장치없이가능하다. 그러나외부에어떠한자원이있는지쉽게알수있는방법이없다. 따라서시맨틱위키가가지고있는자원에대한정보를얻을수있는표준화된 Protocol 또는 API, 시맨틱위키가가지고있는온톨로지와함께웹에존재하는다른온톨로지자원에대한정보를제공할수있는온톨로지검색엔진과같은시스템이필요할것이다. 시맨틱위키에수록되는온톨로지는좋은방향으로관리가잘되면손쉽게훌륭한내용으로가득찰수있으나, 관리가조금만소홀해도내용의무결성에위배되는경우가발생할수있다. 온톨로지구축시에온톨로지엔지니어의입장에서는자신이구축한온톨로지에대한 validation 과정을반드시거쳐야한다. 이러한온톨로지 validation 이슈는사실시맨틱웹이일반에게알려진초기에는별로관심을갖지못한부분이었지만이제어느정도온톨로지의효용성이나타나고필요성이인식된시점에서는온톨로지의구축분량못지않게 integrity 도중요한부분으로여겨지고있다. 따라서 integrity에대한해결방법에대한시도는온톨로지추론도구의상용화제품이출시된근래에와서이루어지고있으며 RacerPro나 Fact와같은온톨로지추론엔진을이용해서구축된온톨로지사이의결함을발견하고수정하는작업으로이루어지고있다. 현재까지온톨로지 validation은온톨로지구축과이용이분리된환경에서구축을담당하는엔지니어에의해적용되었는데, 위키시스템의경우는위키데이타의구축과이용이별개로이루어지는것이아니고통합된형태로이루어지기때문에 validation 작업이어려운것이사실이다. 시맨틱위키가다루는온톨로지가특정도메인에국한된것이아닌일반적인것이기때문에온톨로지 validation이이루어지려면모든도메인정보에대한 restriction 모듈을구성해야하고현실적으로이를구성하는것이어렵다. 따라서현재는사용자의적극적참여를유도하거나, 또는소수의전문가집단에게온톨로지내용의평가를전담하게하여관리하도록하는방법이현실성이있을것이라고생각된다. 입력된온톨로지의내용이논리적으로맞는다하더라도잘못된근거를기반으로수립된논리적인사항은유용한온톨로지라고할수없다. 시맨틱위키의경우입력된데이타가기계가처리하기용이한메타데이타의형식을취하고있지만한계가있을수밖에없는것이다. 따라서이러한부분에대해서는기계가스스로판단을내릴수없으므로관리인력의개입이필수적이다. 시맨틱위키는일반사용자들을시맨틱웹의세계로안내하는중요한역할을할것이라고확신한다. 그리고 P2P, 블로그, 위키, 게시판과같은시스템에시맨틱웹요소가결합되면현재웹이시맨틱웹으로진화하는과정을더욱촉진시킬수있을것이다. 참고문헌 [ 1 ] Berners-Lee, T., Hendler, J. and Lassila, O., "The Semantic Web," Scientific American, 2001. [2] 최중민, 시맨틱웹의개요와연구동향, 정보과학회지, 제 21 권, 제 3 호, pp. 4-10, 2003. [3] Maedche, A., Ontology Learning for the Semantic Web, pp. 11-27, Kluwer Academic Publisher, 2002. [4] Decker, S., Melnik, S., van Harmelen, F., Fensel, D., Klein, M., Broekstra, J., Erdmann, M. and Horrocks, I., "The Semantic Web: the roles of XML and RDF," IEEE Internet Computing, Vol. 4, No. 5, pp.63-73, 2000. [ 5 ] McGuinness, D. L., and Harmelen, F., van, OWL Web Ontology Language Overview, World Wide Web Consortium(W3C) Recommendation, 2004, http:// www.w3.org/tr/2004/rec-owl-features-20040210/. [ 6 ] Wikimedia Foundation, WikiPedia: The Free Encyclopedia, http://wikipedia.org/ [7] 오우택, 지식검색과공유를위한온톨로지기반지식관리시스템구축, 한양대학교대학원, 2004. [8] Cunningham, W., Portland Pattern Repository, http:// www.c2.com/cgi/wiki [9] Tazzoli, R., Castagna, P., and Campanini, S. E., "Towards a Semantic Wiki Wiki Web," Proceedings of 3rd International Semantic Web Conference (ISWC2004), Hiroshima, Japan, 2004. [10] Reynolds, D., Cayzer, S., Shabajee, P., and Steer, D., "SWAD-Europe deliverable 12.1.8: SWAD-E Demonstrators - Lesson Learnt," World Wide Web Consortium, 2004, http://www.w3.org/2001/sw/europe/ reports/demo-lessons-report [11] Patel-Schneider, P. F., Hayes, P., and Horrocks, I., OWL Web Ontology Language Semantics and Abstract Syntax, World Wide Web Consortium (W3C) Recommendation, 2004, http://www.w3.org/ TR/owl-semantics/ [12] Bechhofer, S., Patel-Schneider, P. F., and Turi, D., OWL Web Ontology Language Concrete Abstract Syntax, University of Manchester, 2003, http://owl. man.ac.uk/2003/concrete/latest/ [13] HP Laboratory, Jena - A Semantic Web Framework for Java, 2004, http://jena.sourceforge.net/ [14] I. Horrocks, "Example Ontology," Tutorial of 2nd International Semantic Web Conference (ISWC2003), 2003, http://www.cs.man.ac.uk/~horrocks/iswc2003/ Tutorial/people+pets.abs

온톨로지생성과공유를위한시맨틱웹기반위키시스템 717 김현주 2003 년한양대학교전자컴퓨터공학부졸업 ( 학사 ). 2005 년한양대학교대학원컴퓨터공학과졸업 ( 석사 ). 2005 년 ~ 현재삼성 SDS 전자 CPC 파트. 관심분야는시맨틱웹, 정보검색, 인공지능, SOA 최중민 1984년서울대학교컴퓨터공학과졸업 ( 학사 ). 1986년서울대학교대학원컴퓨터공학과졸업 ( 석사 ). 1993년 State University of New York at Buffalo, Computer Science 졸업 ( 박사 ). 1993년~ 1995년한국전자통신연구원 (ETRI) 인공지능연구실선임연구원. 1995년~현재한양대학교컴퓨터공학과교수. 관심분야는지능형에이전트, 시맨틱웹, 인공지능, 웹정보추출