KR100704285B1 - 자원 디스크립션 프레임워크를 사용하여 제품 데이터온톨로지를 구성하는 장치 및 방법 - Google Patents

자원 디스크립션 프레임워크를 사용하여 제품 데이터온톨로지를 구성하는 장치 및 방법 Download PDF

Info

Publication number
KR100704285B1
KR100704285B1 KR20040040077A KR20040040077A KR100704285B1 KR 100704285 B1 KR100704285 B1 KR 100704285B1 KR 20040040077 A KR20040040077 A KR 20040040077A KR 20040040077 A KR20040040077 A KR 20040040077A KR 100704285 B1 KR100704285 B1 KR 100704285B1
Authority
KR
South Korea
Prior art keywords
file
data
product
rdf
ontology
Prior art date
Application number
KR20040040077A
Other languages
English (en)
Other versions
KR20050114947A (ko
Inventor
유상봉
이희재
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR20040040077A priority Critical patent/KR100704285B1/ko
Publication of KR20050114947A publication Critical patent/KR20050114947A/ko
Application granted granted Critical
Publication of KR100704285B1 publication Critical patent/KR100704285B1/ko

Links

Images

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

본 발명은 자원 디스크립션 프레임워크(RDF: Resource Description Framework)를 사용하여 제품 데이터 온톨로지를 구성하는 장치 및 방법에 관한 것으로서, 스텝 엔씨(STEP-NC: STEP data interface for Numeric Control) 파일이 입력되면, 상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출하고; 상기 추출한 정보 데이터와 상기 부가 데이터에 상응하게 상기 제품 데이터 온톨로지를 생성한 후 RDF 파일을 생성한 후; 상기 RDF 파일을 생성한 후 상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 웹 브라우저를 통해 디스플레이하며, 또한 상기 사이트 맵내의 특정 정보에 대해 상기 사이트 맵을 재구성하기를 요구하는 재구성 요구가 검출되면 상기 RDF 파일로부터 상기 재구성 요구된 정보에 상응하게 상기 사이트 맵을 재구성하여 상기 웹 브라우저를 통해 디스플레이함으로써 사용자의 제품 데이터 구성 및 접근의 용이성을 극대화시킨다.
STEP-NC, 온톨로지, 메타 데이터, 사이트 맵 재구성, 스키마

Description

자원 디스크립션 프레임워크를 사용하여 제품 데이터 온톨로지를 구성하는 장치 및 방법{APPARATUS AND METHD FOR CONSTRUCTING ONTOLOGY OF PRODUCT DATA USING RESOURCE DESCRIPTION FRAMEWORK}
도 1은 본 발명의 실시예에 따른 STEP-NC 파일을 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치의 내부 구조를 개략적으로 도시한 도면
도 2는 도 1의 STEP-NC 파일(111)로부터 생성 혹은 업데이트된 RDF 파일(123)을 개략적으로 도시한 도면
도 3은 도 1의 STEP-NC 파일(111)을 RDF를 사용하여 스키마로 구성하는 과정을 개략적으로 도시한 도면
도 4는 목적별 사이트 맵의 구성을 보여주는 도면
도 5는 도 3의 스키마 구조에서 특정 클래스를 중심으로 사이트 맵을 재구성하는 알고리즘을 개략적으로 도시한 도면
도 6은 트리 구성과정을 설명하기 위한 도면
도 7a는 도 3의 스키마 구조에서 모델 클래스를 중심으로 구성한 웹 사이트 화면을 디스플레이한 도면
도 7b는 도 7a의 웹 사이트 화면에서 특정 세부 정보를 선택한 화면을 디스 플레이한 도면
본 발명은 온톨로지 구성 장치 및 방법에 관한 것으로서, 특히 자원 디스크립션 프레임워크를 사용하여 제품 데이터 온톨로지를 구성하는 장치 및 방법에 관한 것이다.
일반적으로 원하는 설계 데이터에 대한 효율적인 검색과 접근은 제품 데이터의 활용 측면에서 매우 중요한 요소로 작용한다. 상기 설계 데이터에 대한 효율적인 검색과 접근은 데이터의 검색에 대한 정확성과 접근에 대한 용이성으로 평가될 수 있으며, 시스템에 대한 접근 환경 또한 제한이 없어 설계자 뿐만 아니라 일반 사용자들도 어디에서나 쉽게 원하는 데이터를 검색하고 접근할 수 있어야만 그 효율성이 극대화된다. 따라서, 데이터에 대한 효율적인 검색과 접근을 제공하기 위해서는 온톨로지(ontology)의 사용이 필수적이라 할 수 있다.
그러면 여기서 상기 온톨로지에 대해서 설명하면 다음과 같다.
상기 온톨로지라 함은 컴퓨터가 웹(Web) 문서의 의미를 인식할 수 있도록 각종 용어와 동의어, 반의어, 포함 관계 등 용어들을 집대성한 데이터 베이스(database)를 나타낸다. 정보 기술에서의 온톨로지는 전자 상거래와 같이 지식의 어떤 특정 영역 내에 있는 실체 및 상호 작용의 작업 모델을 의미한다. 즉, 상기 온톨로지는 특정한 도메인(domain)내의 지식을 개념화하고 이를 명세화한 것으로 그 도메인 내에 사용되는 표준 어휘들의 집합이라고 할 수 있다. 현재 온톨로지의 연구는 자연어 처리와 관련해서 연구 개발되고 있는데 기존의 다양한 언어 자원으로부터 자연어 처리용 온톨로지를 반자동으로 구축하는 방식을 중심으로 연구되어 한일/일한 기계 번역 시스템에서 어휘 의미 중의성 해소의 효과가 입증된 바 있는 가도카와 시소러스의 개념 분류 체계를 온톨로지의 기반으로 삼아, 여기에서 세종 전자사전과 기계번역 사전, 그리고 대규모 말 뭉치로부터 반자동으로 추출한 다양한 의미 관계들을 추가하여 실용적인 온톨로지를 구축하고 있다. 또한 이에 대규모 온톨로지 구축을 위한 지식 습득의 기본 자료를 국어사전과 백과사전으로 정하고, 국어사전과 백과사전이 가지고 있는 다양한 지식 정보를 온톨로지로 구축하는 방법을 통해서 울산대 NLP 연구소에서는 98년에 10만 여 명사를 대상으로 한국어 명사 의미계층 구조를 자동으로 구축한 바 있으며, 2002년부터 시작하여 한국어 의미망(KSN)이 구축 중에 있으며, 현재 국어사전과 백과사전을 이용한 온톨로지를 구축 중에 있다.
한편, 현재 도면 관리 시스템에서는 도면명과, 제품명과, 설계자와, 설계 날짜 및 관련 부서 등의 온톨로지를 사용해 검색에 이용하고 있으며, 제품 데이터 관리(PDM: Product Data Management) 시스템과 같은 어플리케이션(application)에서도 부품 번호와, 버전 번호와, 설계자 이름과, 승인 날짜와, 어셈블리(assembly) 구조 및 구성 데이터 등의 데이터를 가지고 인덱스(index)를 구성하여 구성해 사용하고 있다. 그러나, 상기 온톨로지에 대한 표현 형식이 시스템마다 상이하여 시스 템 확장이나 기존의 어플리케이션에 이미 구성되어 있는 온톨로지에 대한 접근이 용이하지 않다는 문제점이 있다. 또한 레포지터리에 저장된 제품 데이터들간의 관계를 기술한 온톨로지가 활용되지 않고 있다는 문제점이 있다. 상기 온톨로지는 제품의 구성은 물론 설계 의도를 포함하고 있어 지능적인 제품 데이터의 활용에 필수적이다.
한편, 자원 디스크립션 프레임워크(RDF: Resource Description Framework, 이하 'RDF'라 칭하기로 한다)는 온톨로지(ontology)간의 상호 운용성 제공을 목적으로 W3C(World Wide Web Consortium)에서 제정된 표준으로서, 온톨로지의 정의와 저장 및 교환을 위한 표준적인 메커니즘을 제공한다. 특히, 온톨로지의 저장과 교환을 위한 포맷으로 확장성 생성 언어(XML: Extensible Markup Language, 이하 'XML'이라 칭하기로 한다) 신택스(syntax)를 이용함으로써 웹(Web)을 통해 쉽게 접근할 수 있고, 서로 다른 시스템간의 정보 교환에 표준적인 데이터 포맷을 제공할 수 있다.
특히, IT(Information Technology) 산업의 발달로 컴퓨터와 인터넷을 통해 정보와 서비스가 제공되고 있으나 그 방대한 양은 사용자가 필요로 하는 정보와 서비스를 선택해 사용하는데 소요되는 시간과 노력을 증가시키고 있다. 따라서, 컴퓨터가 웹 문서의 용어들을 이해할 수 있게 함으로써 사용하자 필요로 하는 정보와 서비스를 선택하는 작업까지 컴퓨터가 직접 수행하도록 하는 지능형 웹, 즉 시맨틱 웹(Semantic Web) 방식에 대한 연구가 활발하게 진행되고 있다. 상기 시맨틱 웹 방식을 위해서 상기 온톨로지를 구축해야만 하는 것이며, 상기 온톨로지는 컴퓨터를 지능화시킬 수 있어 상기 시맨틱 웹 방식 뿐만 아니라 지능형 서비스를 위한 다양한 분야에서 사용될 수 있다.
한편, 상기 RDF는 상기 시맨틱 웹 방식과 관련되어 활발하게 연구되고 있는 방식이며, 기존의 확장성 생성 언어(XML: Extensible Markup Language)로 표현된 웹 컨텐츠(Web contents)와 상기 웹 컨텐츠에 부여된 RDF 메타 정보를 관리하기 위한 XML/RDF 컨텐츠 관리 시스템에 대한 연구 역시 활발하게 진행되고 있다. 또한, 정보 통합을 목적으로 상기 RDF를 사용하여 웹 온톨로지의 표준화 연구가 활발하게 진행되고 있으며, 전자 상거래에서 각종 서비스 및 보안 응용 프로그램상의 문제점들을 해결하기 위해 CommerceNet(인터넷을 이용한 전자 상거래(electronic commerce)의 보급 촉진을 목적으로 하는 컨소시엄)에서 제안한 전자 상거래 프레임워크인 eCo에서 서로 다른 프로토콜들 및 서로 다른 시스템들간의 상호 호환성을 확보하기 위해 비즈니스 웹(business Web)을 위한 데이터 처리 모델 및 프레임워크 구축과 온톨로지 브로커 시스템에 대한 연구와, 그리고 협업 비즈니스를 위한 비즈니스 프로세스 처리 모델에 대한 연구와, 전자 카탈로그와 상품 분류 체계 및 코드를 중심으로 하는 연구가 활발하게 진행되고 있다.
여기서, 상기 RDF를 기반으로 하는 다양한 국제 연구들에 대해 살펴보면 다음과 같다.
첫 번째로, Samizdat는 RDF를 기반으로하여 협업 체제 설정을 위한 엔진을 만드는 프로젝트로, 도서 분류, 등급 편집 및 공동 출판을 지원하며 2003년 12월 일반 공중 라이센스(GPL(General Public License), 이하 'GPL'이라 칭하기로 한다) 2 버전 0.5.0을 발표한 바 있다.
두 번째로, Sheperpa Calender 프로젝트는 Sherpa Suite 프로젝트의 일부로 RDF 기반의 연표와 하이퍼 텍스트 생성 언어(HTML: HyperText Markup Language) 발표를 윈도우(windows)에서 누구나 쉽게 논의하고 발표할 수 있도록 하는 프로젝트로서, 2003년 9월에 상업용 베타 트라이얼 버전의 어플리케이션을 발표한바 있다.
세 번째로, RDF GateWay는 RDF 데이터베이스, 웹 서버(Web server)와 어플리케이션을 포함하는 RDF와 같은 데이터의 관리를 MS windows XP/NT/2000 플랫폼에서 관리할 수 있도록 하는 시맨틱 웹에 관한 연구 프로젝트이다. 상기 RDF GateWay는 2003년 10월 12일 규칙, 쿼리, N3/N-Triples, 동적 모델, 그래프 병합, 사용자 보안과 하이퍼 텍스트 전송 프로토콜(HTTP: HyperText Transfer Protocol) 이벤트 기능을 향상시킨 버전 1.0.3 60일 한정판 상용 프로그램을 발표한바 있다.
한편, 인터넷의 급격한 확산으로 이용할 수 있는 자원의 양은 비약적으로 증가하고 있다. 또한 이런 자원을 관리하기 위한 온톨로지 역시 비약적으로 증가하고 있는데 이런 온톨로지 정보들을 쉽고 효율적으로 이용하기 위해서 이 온톨로지 정보들을 공통된 포맷으로 구성할 필요가 있고, 또한 이렇게 구성된 온톨로지를 검색이 쉽고 효과적으로 접근하기 위한 방법이 요구되고 있다. 또한, 웹 데이터를 효율적으로 활용하기 위한 사이트 맵(sitemap) 재구성 방안에 대한 필요성이 대두되고 있으며, 특히 온톨로지 정의 표준인 RDF를 사용하여 사이트 맵을 재구성하는 방안에 대한 필요성이 대두되고 있다.
따라서, 본 발명의 목적은 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 RDF를 사용하여 구성한 제품 데이터 온톨로지를 사용자 요구에 따라 재구성하는 장치 및 방법을 제공함에 있다.
상기한 목적들을 달성하기 위한 본 발명의 장치는; 자원 디스크립션 프레임워크(RDF: Resource Description Framework)를 사용하여 제품 데이터 온톨로지를 구성하는 장치에 있어서, 스텝 엔씨(STEP-NC: STEP data interface for Numeric Control) 파일이 입력되면, 상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출하는 STEP-NC 분석 모듈과, 상기 추출한 정보 데이터와 상기 부가 데이터에 상응하게 상기 제품 데이터 온톨로지를 생성한 후 RDF 파일을 생성하는 메타 데이터 추출 모듈과, 상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 웹 브라우저를 통해 디스플레이하는 사이트 맵 재구성 모듈을 포함함을 특징으로 한다.
상기한 목적들을 달성하기 위한 본 발명의 방법은; 자원 디스크립션 프레임워크(RDF: Resource Description Framework)를 사용하여 제품 데이터 온톨로지를 구성하는 방법에 있어서, 스텝 엔씨(STEP-NC: STEP data interface for Numeric Control) 파일이 입력되면, 상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출하는 과정과, 상기 추출한 정보 데이터와 상기 부가 데이터에 상응하게 상기 제품 데이터 온톨로지를 생성한 후 RDF 파일을 생성 하는 과정과, 상기 RDF 파일을 생성한 후 상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 웹 브라우저를 통해 디스플레이하는 과정을 포함함을 특징으로 한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
도 1은 본 발명의 실시예에 따른 스텝-엔씨(STEP-NC: STEP data interface for Numeric Control, 이하 'STEP-NC'라 칭하기로 한다) 파일을 자원 디스크립션 프레임워크(RDF: Resource Description Framework, 이하 'RDF'라 칭하기로 한다)를 사용하여 제품 데이터 온톨로지(ontology)를 구성하는 장치의 내부 구조를 개략적으로 도시한 도면이다.
상기 도 1을 참조하면, 상기 온톨로지 구성 장치는 STEP-NC 파일(111)과, 등록 모듈(module)(113)과, STEP-NC 분석 모듈(115)과, ST(steptool)--developer(117)와, 메타 데이터(meta data) 추출 모듈(119)과, Libgnurdf 라이브러리(library)(121)와, RDF 파일(123)과, 사이트 맵 재구성 모듈(125)과, 물리 평면(PHP: Physical Plane, 이하 'PHP'라 칭하기로 한다) 라이브러리(127)과, RAP-RDF-응용 프로그램 인터페이스(API: Application Program Interface) 라이브러리(129)와, 웹 브라우저(Web browser)(131)로 구성된다.
먼저, 사용자로부터 STEP-NC 파일(111) 및 부가 데이터(112)가 입력되면, 상기 입력되는 STEP-NC 파일(111) 및 부가 데이터(112)는 상기 등록 모듈(113)로 전달된다. 상기 등록 모듈(113)은 상기 입력되는 STEP-NC 파일(111) 및 부가 데이터(112)를 등록한 후, 상기 STEP-NC 파일(111) 및 부가 데이터(112)를 상기 STEP-NC 분석 모듈(115)과, 메타 데이터 추출 모듈(119)로 출력한다.
상기 STEP-NC 분석 모듈(115)은 상기 ST-developer(117)의 라이브러리를 사용하여 상기 등록된 STEP-NC 파일(111)의 STEP-NC 데이터로부터 온톨로지를 생성하기 위한 정보데이터를 추출한 후 그 정보 데이터를 상기 메타 데이터 추출 모듈(119)로 출력한다. 여기서, 상기 ST-developer(117)는 steptools사에서 개발된 라이브러리로서, 입력되는 STEP-NC 파일을 분석하여 정보 데이터를 추출하는 동작을 수행한다. 상기 메타 데이터 추출 모듈(119)은 상기 STEP-NC 분석 모듈(115)에서 출력한 정보 데이터와, 상기 사용자로부터 입력된 부가 데이터(112)를 사용하여 온톨로지를 생성한 후, 상기 Libgnurdf 라이브러리(121)를 사용하여 RDF 파일(123)을 생성하거나 혹은 업데이트(update)한다. 여기서, Libgnurdf 라이브러리(121)는 c 환경으로 구축되어 있으며, RDF 파일을 생성하거나 혹은 생성되어 있는 RDF 파일에 데이터를 추가하여 업데이트하는데 사용되는 라이브러리이다.
한편, 상기 생성 혹은 업데이트된 RDF 파일(123)은 상기 사이트 맵 재구성 모듈(125)로 전달되고, 상기 사이트 맵 재구성 모듈(125)은 상기 RDF 파일(123)을 입력받은 후, 상기 PHP 라이브러리(127)와 RAP-RDF-API 라이브러리(129)를 사용하여 상기 RDF 파일(123)로부터 값을 추출하고, 사이트 맵을 재구성한다. 그리고, 사이트 맵 재구성 모듈(125)은 상기 재구성된 사이트 맵을 디스플레이하기 위한 방법을 구성하고, 상기 구성한 디스플레이 방법에 상응하게 웹 브라우저(131)를 통해 디스플레이되도록 제어한다. 여기서, 상기 사이트 맵을 재구성하는 방식에 대해서는 하기에서 구체적으로 설명할 것이므로 여기서는 그 상세한 설명을 생략하기로 한다.
상기 도 1에서는 본 발명의 실시예에 따른 STEP-NC 파일을 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치의 내부 구조에 대해서 설명하였으며, 다음으로 도 2를 참조하여 도 1의 STEP-NC 파일(111)로부터 생성 혹은 업데이트된 RDF 파일(123)에 대해서 설명하기로 한다.
상기 도 2는 도 1의 STEP-NC 파일(111)로부터 생성 혹은 업데이트된 RDF 파일(123)을 개략적으로 도시한 도면이다.
상기 도 2를 설명하기에 앞서, 상기 스키마를 참조하여 온톨로지를 생성하기 위해서는 상기 STEP-NC 파일을 분석해야만 한다. 상기 STEP-NC 파일로부터 추출되는 데이터는 소속 기관, 제작자, 스키마, 그리고 형상 정보 등이 있는데, 상기 정보 들중 소속 기관, 제작자, 스키마 정보는 상기 STEP-NC 파일의 헤더 파일(header file)에 포함되어 있는 정보인 반면, 상기 형상 정보는 상기 STEP-NC 파일의 파일 본문에 포함되어 있는 정보이기 때문에 상기 형상 정보를 추출하기 위해서는 상기 도 1에서 설명한 바와 같이 ST-developer 라이브러리를 사용하게 된다. 상기 ST-developer 라이브러리는 STEP 포맷의 분석과 개발을 지원하기 위해 제공되는 라이브러리로서, 상기 STEP-NC 스키마를 사용할 경우 STEP-NC 포맷도 지원 가능하다. 여기서, 상기 ST-developer 라이브러리를 사용하여 STEP-NC 파일을 분석할 경우 상 기 ST-developer 라이브러리는 STEP 정보를 트리 구조를 가지는 자료 구조로 생성하여 메모리에 저장하게 된다. 상기 메모리에 저장된 자료 구조를 가지고 데이터 추출을 하게 되는데 이때 사용되는 중요한 클래스는 다음과 같다.
① RoseDesign
STEP-NC 디자인에 대한 클래스로서, 상기 STEP-NC 파일을 오픈할 때 STEP-NC 파일명을 인자로 넘겨주며 프로그램에서 수정하거나 사용하고자 하는 메인 디자인을 결정하는 클래스이다.
② RoseDesignCursor
메인 디자인에서 탐색하기 위한 하위 노드(node)들을 지정하는 클래스로서, 상기 탐색은 멤버 함수인 traverse()를 사용하여 중복없이 한 번만 수행되며, domain() 함수를 통해 원하는 엔터티(entity)만을 검색하는 것이 가능하다. 여기서, 노드들 각각간의 이동은 멤버 함수 next()를 통해서 수행된다.
③ RoseObject
특정 작업을 수행하기 위해 선택된 엔터티를 지정하는 클래스로서, 상기 엔터티 지정 방법은 RoseDesignCursor 클래스가 지정하는 노드를 ROSE_CAST() 함수를 통해서 전달받는 방법이다. 여기서, 상기 ROSE_CAST()는 엔터티 사이의 변환을 위한 정의(define) 함수이다.
그러면 여기서 메타 데이터를 생성하기 위한 형상 정보를 추출하는 과정에 대해서 설명하기로 한다.
먼저, 상기 메타 데이터를 생성하기 위한 형상 정보를 추출하기 위해서는 먼 저 STEP-NC 파일을 읽어 디자인 정보를 디자인 클래스에 저장한 다음 상기 RoseDesignCurso 클래스로 디자인이 가지는 트리의 각 노드를 탐색해 가면서 원하는 엔터티를 검색한다. 여기서, 상기 엔터티의 탐색은 RoseDesignCurso 클래스의 멤버 함수인 domain()에 의해서 실행되는데, 함수의 인자는 검색하고자 하는 형상의 문자열 값이 되며 반환값은 검색된 노드의 RoseObject 클래스 타입이다. 또한, 데이터의 추출은 형상에 정의하는 클래스의 멤버함수인 _its_Name() coordinates() 그리고 axis()등을 통해서 값을 추출하게 되는데 형상이 정의된 클래스는 RoseObject 클래스를 ROSE_CAST() Define 함수로 캐스팅된 것이다. 한편, 다음 형상을 검색하기 위해 RoseObject의 멤버함수 next()를 사용하는데 이 과정은 next() 함수가 NULL을 반환할 때까지 계속된다.
이렇게 추출된 데이터는 RDF 생성 모듈을 호출하여 RDF로 저장된다. 여기서, 상기 RDF를 생성하기 위해서는 상기 도 1에서 설명한 바와 같이 libgnurdf 라이브러리가 사용되며, 상기 libgnurdf 라이브러리는 XML 라이브러리를 기반으로 하고 있으며 C 언어를 지원한다. 또한, 상기 RDF 구조는 RdfSchema 클래스에 의해 정의되며 RdfNameSpace 클래스에 네임스페이스가 정의되며, RDFDescription은 Resource를 정의한다. RDF를 생성하거나 업데이트하기 위해서 refReadFile() 함수를 통해 입력된 RDF 정보 구조를 RdfSchema 클래스 변수에 저장하고, refGetNameSpace() 함수로 네임 스페이스를 추출하여 RdfNamespace 클래스 변수에 저장한다. 만약 RDF가 새로 생성되는 경우에는 rdfNewSchema()함수와 rdfNewNamespace() 함수를 통해 RdfSchema 클래스변수와 RdfNamespace 클래스 변수를 정의하게 된다. 이후, 입력하 고자 하는 resource들은 rdfAddDescription() 함수를 통해 정의되고 setRdfValue() 함수로 property를 입력하게 된다. 마지막으로 rdfWrite() 함수를 통해 RDF 파일로 저장하게 된다.
결과적으로, 상기에서 설명한 바와 같은 방식으로 생성된 RDF 파일이 상기 도 2에 도시되어 있는 RDF 파일이다.
상기 도 2는 도 1의 STEP-NC 파일(111)로부터 생성 혹은 업데이트된 RDF 파일(123)에 대해서 설명하였으며, 다음으로 도 3을 참조하여 상기 STEP-NC 파일(111)을 RDF를 사용하여 스키마(schema)로 구성하는 방법에 대해서 설명하기로 한다.
상기 도 3은 도 1의 STEP-NC 파일(111)을 RDF를 사용하여 스키마로 구성하는 과정을 개략적으로 도시한 도면이다.
상기 도 3을 설명하기에 앞서, 스키마는 RDF로 저장된 각 메타 데이터의 관계가 나타난 도식을 의미하며, 따라서 상기 스키마를 사용하여 상기 RDF로 저장된 각 메타 데이터의 관계를 추출 및 검색할 수 있다. 상기 도 3을 참조하면, 하나의 제품을 기술하기 위한 정보는 여러 개의 하위 목록들로 구분 될 수 있으며, 각각의 하위 목록들 각각은 자신의 정보를 가지며 그 구성된 정보로부터 메타 데이터를 추출하여 온톨로지를 구성할 수 있다. 여기서, 상기 메타 데이터는 상기에서 설명한 바와 같이 정보 데이터를 기술하는 데이터로, 제품 정보의 검색과 관리에 유용하게 사용된다.
상기 온톨로지는 상기 STEP-NC 파일에서 추출한 정보와, 상기 STEP-NC 파일 을 등록하면서 부가적으로 추가된 정보들에 상응하게 추출되며, 특히 상기 STEP-NC 파일의 헤더(header) 정보와 상기 STEP-NC 파일에 기술된 동작 단계(Working_step) 엔터티(entity)를 중심으로 추출이 된다. 상기와 같은 방식으로 추출된 온톨로지는 RDF로 표현이 된다. 상기 온톨로지를 구성하기 위해서 추출되는 데이터 항목은 상기 스키마를 참조하여 모델(Mode)과, 형상(Feature)과, 인물(Person)과, 도구(Tool) 정보를 추출하게 된다. 만약 상기 스키마에 해당하는 정보가 존재하지 않는다면, 상기 RDF 구성에서 해당 스키마는 제외된다. 그러면 여기서, 상기 온톨로지를 구성하기 위해 추출되는 데이터 항목 클래스(class)들에 대해서 설명하면 다음과 같다.
(1) 모델 클래스(Model class)
상기 모델 클래스는 제품 모델에 대한 정보를 기술하는 클래스이다. 여기서, 상기 모델은 제품을 구성하는 하나의 개체로서, 상기 모델 클래스가 포함하는 엘리먼트(element)들은 다음과 같다.
① matrial : 제품의 재료정보
② schema : 제품에 사용된 스키마
③ Image_Name : 이미지 이름, 제품의 가시적 정보를 포함하는 파일
④ Regist_Info : 모델의 등록 정보
⑤ Designer: 모델 제작자(디자이너)
⑥ Feature_Info : 모델에 포함된 형상 정보
⑦ File_Info : 모델이 기술된 파일
(2) 인물 클래스(Person Class)
상기 인물 클래스는 제품과 관련된 인물에 대한 정보를 기술하는 클래스이다. 여기서, 상기 인물은 제품을 구성하는 하나의 개체로서, 상기 인물 클래스가 포함하는 엘리먼트들은 다음과 같다.
① PersonName : 인물의 이름
② PersonMail : 인물의 메일 어드레스
③ PersonOrg : 인물의 소속 기관
④ Persion_ID : 인물의 식별자
⑤ PersionFile : 인물이 등록한 파일
(3) 파일 클래스(File Class)
상기 파일 클래스는 제품이 기술된 파일에 대한 정보를 기술하는 클래스이다. 여기서, 상기 파일은 제품을 구성하는 하나의 개체로서, 상기 파일 클래스가 포함하는 엘리먼트들은 다음과 같다.
① File_Name : 파일명
② File_ID : 파일 식별자
③ File_desc : 파일의 설명
④ File_Class : 파일의 종류(파일 클래스)
⑤ org : 파일이 만들어진 기관
⑥ Author : 파일의 제작자
(4) 형상 클래스(Feature Class)
상기 형상 클래스는 제품이 포함된 형상에 대한 정보를 기술하는 클래스이다. 여기서, 상기 형상은 제품을 구성하는 하나의 개체로서, 상기 형상 클래스가 포함하는 엘리먼트들은 다음과 같다.
① Feature_Works : 형상의 가공 방법
② Feature_ID : 형상의 식별자
③ Feature_bottom : 형상의 바닥 상태
④ Feature_Depth : 형상의 가공 깊이
⑤ FeatureFile : 형상이 포함된 파일
⑥ ModelInfo : 형상을 포함하는 모델
(5) 가공 과정 클래스(WorkingStep Class)
상기 가공 과정 클래스는 제품의 가공 과정에 대한 정보를 기술하는 클래스이다. 여기서, 상기 가공 과정은 제품을 구성하는 하나의 개체로서, 상기 가공 과정 클래스가 포함하는 엘리먼트들은 다음과 같다.
① ToolInfo : 가공 도구 정보
② WorkID : 가공 식별자
③ WorkFeature : 가공이 포함된 형상
(6) 도구 클래스(Tool Class)
상기 도구 클래스는 제품에 사용된 도구에 대한 정보를 기술하는 클래스이다. 여기서, 상기 도구는 제품을 구성하는 하나의 개체로서, 상기 도구 클래스가 포함하는 엘리먼트들은 다음과 같다.
① toolName : 도구 이름
② toolDesc : 도구 설명
③ toolSize : 도구 크기
④ usedModel : 도구가 사용된 모델
⑤ usedFeature : 도구가 사용된 형상
상기 도 3에서는 도 1의 STEP-NC 파일(111)을 RDF를 사용하여 스키마로 구성하는 과정에 대해서 설명하였으며, 다음으로 도 4를 참조하여 상기 도 2의 스키마 구조에서 특정 클래스를 중심으로 하여 구성되는 트리 구조에 대해서 설명하기로 한다.
상기 도 4에서 (a)는 도 3의 스키마 구조에서 모델 클래스를 중심으로 하여 구성된 트리 구조를 도시한 도면이다.
상기 도 4에서 (b)는 도 3의 스키마 구조에서 도구 클래스를 중심으로 하여 구성된 트리 구조를 도시한 도면이다.
상기 도 4에서 (c)는 도 3의 스키마 구조에서 인물 클래스를 중심으로 하여 구성된 트리 구조를 도시한 도면이다.
상기 도 4를 설명하기에 앞서, 사이트 맵 구조의 설정은 각 메타 데이터들간의 관계 정보를 이용한다. 일 예로, 상기 도 3에서 설명한 바와 같이 모델 클래스에 포함된 정보를 검색할 경우에는 Material과, schema와, Image_Name과, Regist_Info와, Designer와, Feature_Info와, File_Info 정보를 검색할 수 있으며, 상기 Material과, schema와, Image_Name과, Regist_Info와, Designer와, Feature_Info와, File_Info 정보 중에서 상기 Designer 정보에 의해 인물 클래스에 포함된 정보들을 다시 검색할 수 있게 된다.
또한, 생성된 온톨로지를 사용자의 목적에 상응하게 디스플레이해야만 한다. 일 예로, 사용자에게 STEP-NC 제품정보를 제공하고자 하는 사이트 맵을 구성할 때는 사용자의 목적이 모델 정보 검색이 되므로, 제공할 수 있는 서비스는 모델 정보를 포함해서 모델 정보와 관련된 형상정보, 사용자 정보 및 등록된 STEP-NC 파일 정보와 그 각각의 정보와 관련된 또 다른 온톨로지 정보들도 연계하여 표현하는 카달로그를 제공할 수 있다. 또 다른 예로, 사용자의 목적이 도구 정보에 있을 때는 가공에 사용되는 도구 정보를 중심으로 도구 정보 및 도구 정보와 관련된 형상 정보 모델 정보와 그 각각의 모델 정보 및 형상 정보와 관련된 다른 온톨로지들의 정보와 그 관계를 표현 할 수 있는 카달로그를 제공할 수 있다. 또한, 이미 구성되어 있는 카달로그의 세부 사항 중 하나를 선택하여 그 사항을 중심으로 카달로그를 재구성 할 수도 있음은 물론이다. 이렇게 함으로써 사용자는 제품 정보에 대해 다양한 각도로 접근 가능하기 때문에 정보의 습득 및 그 정보를 이용한 연구 개발의 효율을 높이고 원하는 정보에 빠른 접근이 가능하여 제품데이터의 활용도를 향상시킬 수 있다. 여기서, 각각의 사이트 맵은 동일한 RDF 파일로부터 추출되어 제공되는데, 이는 각각의 구성을 별도의 파일로 저장하는 방법을 피하여 데이터의 유지 및 관리가 쉽다는 장점이 있고, 각 사이트맵의 구성은 온톨로지의 스키마에 의존하기 때문에 스키마의 적절한 설정에 의해서 다양한 형태로 사이트맵을 재구성 할 수 있다. 결과적으로, 사용자에게 제공되는 정보는 정보 재구성 모듈에 의해서 각 목적 에 맞는 디스플레이 방법을 구성하여 트리 구조로 재구성하여 디스플레이하게 된다.
상기에서 설명한 바와 같은 방식으로 사이트 맵을 구성 혹은 재구성할 수 있으며, 상기 도 4에서 (a)에는 모델 클래스를 중심으로 하여 구성된 트리 구조가, 상기 도 4에서 (b)에는 도구 클래스를 중심으로 하여 구성된 트리 구조가, 상기 도 4에서 (c)에는 인물 클래스를 중심으로 하여 구성된 트리 구조가 도시되어 있다.
상기 도 4의 (a)를 참조하면, 상기에서 설명한 바와 같이 모델 클래스를 중심으로 하여 정보 검색 트리를 구성할 경우, 상기 모델 클래스하에 Material과, schema와, Image_Name과, Regist_Info와, Designer와, Feature_Info와, File_Info의 브랜치(branch)들이 생성된다. 또한, 상기 File_Info 브랜치하에 File_Name과, File_ID와, File_desc와 File_Class의 브랜치들이 생성되며, 상기 Designer 브랜치하에 PersonName과, PersonMail과, PersonOrg와, Persion_ID의 브랜치들이 생성되며, 상기 Feature_Info 브랜치하에 Feature_Works와, Feature_ID와, Feature_bottom과, Feature_boss와 Feature_Depth의 브랜치들이 생성된다. 여기서, 상기 Feature_Works 브랜치하에 ToolInfo와, WorkID의 브랜치들이 생성되며, 다시 상기 ToolInfo 브랜치하에 toolName과, toolDesc와 toolSize의 브랜치들이 생성된다.
상기 도 4에서 (b)를 참조하면, 상기에서 설명한 바와 같이 도구 클래스를 중심으로 하여 정보 검색 트리를 구성할 경우, 상기 도구 클래스하에 toolName과, toolDesc와, toolSize와, usedModel과, usedFeature의 브랜치들이 생성된다. 또한, 상기 usedModel 브랜치하에 Image_Name과, schema와, Designer와, Feature_Info와, File_Info의 브랜치들이 생성된다. 또한, 상기 Designer 브랜치하에 PersonName과, PersonMail과, PersonOrg와, Persion_ID와, Persion_file의 브랜치들이 생성되며, 상기 Persion_file의 브랜치하에 File_Name과, File_ID와, File_desc와 File_Class와, org의 브랜치들이 생성된다. 그리고, 상기 usedFeature 브랜치하에 Feature_Works와, Feature_ID와, Feature_bottom과, Feature_boss와 Feature_Depth의 브랜치들이 생성된다.
상기 도 4에서 (c)를 참조하면, 상기에서 설명한 바와 같이 인물 클래스를 중심으로 하여 정보 검색 트리를 구성할 경우, 상기 인물 클래스하에 PersonName과, PersonMail과, PersonOrg와, Persion_ID와, Persion_file의 브랜치들이 생성되며, 상기 Persion_file의 브랜치하에 File_Name과, File_ID와, File_desc와 File_Class와, author의 브랜치들이 생성된다.
상기 도 4의 (a)-(c)에서는 상기 도 3의 스키마 구조에서 특정 클래스를 중심으로 하여 구성되는 트리 구조에 대해서 설명하였으며, 다음으로 도 5를 참조하여 상기 도 3의 스키마 구조에서 특정 클래스를 중심으로 사이트 맵을 재구성하는 알고리즘에 대해서 설명하기로 한다.
상기 도 5는 도 3의 스키마 구조에서 특정 클래스를 중심으로 사이트 맵을 재구성하는 알고리즘을 개략적으로 도시한 도면이다.
상기 도 5를 참조하면, 디스플레이하기 위한 온톨로지의 구성은 스키마를 참조하여 생성된다. 디스플레이하고자 하는 정보는 사용자가 원하는 온톨로지와 그 온톨로지에 관련된 다른 온톨로지를 포함하기 때문에, 사용자가 원하는 온톨로지를 루트 노드(root node)로 하여 그 루트 온톨로지와 관련된 온톨로지를 부모와 자식관계 노드를 설정하고 그 하위 노드도 재귀적으로 관계를 설정하여 트리를 구성하여 디스플레이함으로써 가시적 효과를 극대화시킬 수 있다. 여기서, 상기 온톨로지를 구성하기 위해서는 사용자가 우선적으로 원하는 정보와 관련이 있는 엔터티를 검색하여 자료 구조에 저장하고 트리를 구성해야만 한다. 일 예로, 예로 루트 노드가 레벨 1(level 1)로 결정되면, 상기 루트 노드부터 그 하위 노드를 검색해 나가면서 상기 루트 노드와 관계를 가지는 모든 엔터티들을 검색하여 그에 대응되는 모든 정보를 찾아 트리의 다음 레벨을 구성한다. 여기서, 이미 검색된 엔터티는 중복 검색을 방지하기 위해 dataTable 이름을 가지는 테이블에 저장하고, 이미 검색된 엔터티가 관계를 가지는 다른 엔터티가 존재할 경우 다음 검색을 위해서 nextExcTable 이름을 가지는 큐(queue) 형식의 자료 구조에 저장을 한다. 여기서, 상기 큐 형식의 자료 구조를 사용할 경우에는 레벨 검색을 통해 가시적 효율이 높은 트리를 구성할 수 있는 이점을 가진다.
상기 트리로 구성된 항목에 해당하는 데이터는 RDF 파일에서 추출되어 웹 브라우저를 통해서 디스플레이되는데, 정보를 웹 브라우저로 디스플레이할 경우 사용자는 별도의 클라이언트 프로그램(client program) 없이도 인터넷이 가능한 컴퓨터가 존재하는 곳이라면 어디라도 손쉽게 서버에 접속을 하여 정보를 검색할 수 있게 된다. 여기서, 상기 웹으로 디스플레이되는 정보 데이터를 추출하기 위해 상기 도 1에서 설명한 바와 같이 RAPRDF-API 라이브러리를 이용하는 것이다. 상기 RAPRDF- API 라이브러리는 PHP 환경을 가지기 때문에, 웹 서버와 연동하여 프로그램을 구동하기가 용이하다. 본 발명의 실시예에서는 상기 RAPRDF-API 라이브러리 클래스를 사용하여 각 객체들 사이의 관계를 검색하게 된다. 상기 RAPRDF-API 라이브러리는 resource에 대해 Object, Subject, predicate값을 검색할 수 있는 find()함수를 제공한다. 또한, 검색된 엔터티는 Object에 해당하고 네임 스페이스는 predicate에 해당하므로, 상기 두 데이터를 이용하여 RDF로부터 원하는 데이터 값인 Subject값을 추출하여 트리를 구성할 수 있다.
한편, 상기 RAPRDF-API 라이브러리는 PHP 4.2.x 버전을 필요로 하는데, 상기 PHP 4.2.x 버전은 XML을 분석 하는데 필요한 라이브러리 함수를 포함한다. 또한, 상기 RAPRDF-API 라이브러리는 상기 트리의 노드를 구성한 뒤 nextExcTable 자료 구조에서 다음 엔터티를 검출하여 dataTable에 저장된 엔터티와의 중복 여부를 검사한다. 상기 검사 결과 중복되는 엔터티가 존재할 경우 상기 RAPRDF-API 라이브러리는 nextExcTable에 저장된 엔터티와의 중복 여부를 검사한다. 만약, 상기 검사 결과 중복되는 엔터티가 존재하지 않을 경우 상기 RAPRDF-API 라이브러리는 상기 엔터티를 중심으로 그 엔터티의 관계를 검색하고 RDF에서 데이터를 추출하여 상기 구성된 트리에 데이터를 추가한 후 다시 nextExcTable 자료 구조와 dataTable에 검색된 엔터티를 장한다. 상기와 같은 동작 과정은 nextExcTable에 더 이상의 자료가 존재하지 않을 때까지 반복된다. 자료가 남아 있지 않을 때 까지 반복하게 된다.
상기 도 5에서는 도 3의 스키마 구조에서 특정 클래스를 중심으로 사이트 맵을 재구성하는 알고리즘에 대해서 설명하였으며, 다음으로 도 6a-6c를 참조하여 상 기 도 3의 스키마 구조에서 상기 모델 클래스를 중심으로 한 트리를 구성하기 위한 과정에 대해서 설명하기로 한다.
상기 도 6a-6c를 설명하기에 앞서, 상기 도 6a-6c에서는 설명의 편의상 일 예로 모델 클래스만을 중심으로 하여 트리를 구성하는 과정에 대해서 설명하지만 상기 온톨로지 구성을 위해 사용되는 다른 클래스들, 즉 형상 클래스와, 인물 클래스와, 도구 클래스 모두 상기 도 5a-5c에서 설명하는 과정과 동일한 과정을 통해 트리를 구성하게 됨은 물론이다.
상기 도 6a는 도 3의 스키마 구조에서 루트 정보를 모델 클래스로 결정하는 과정을 개략적으로 도시한 도면이다.
상기 도 6b는 도 6a에서 탐색한 모델 클래스내 Designer 정보의 인스턴스 데이터의 연결 정보를 결정하는 과정을 개략적으로 도시한 도면이다.
상기 도 6c는 도 도 6a에서 탐색한 모델 클래스내 Designer와, Material과, Image_Name과, Feature_Info와, File_Info 정보의 인스턴스 데이터의 연결 정보를 결정하는 과정을 개략적으로 도시한 도면이다.
상기 도 6a를 참조하면, 먼저 상기 트리를 구성하기 위해서는 동일한 레벨(level)의 노드(node)를 우선적으로 탐색하는 레벨 탐색(Level Search) 방식이 사용된다. 상기 레벨 탐색 방식을 사용할 경우 상기 구성되는 트리의 가시적 효과를 증가시켜줄 수 있다. 첫 번째로, 루트(Root) 정보를 결정해야 하는데 상기 모델 클래스를 중심으로 한 트리 구조 생성 과정에서는 상기 모델 클래스 정보를 루트로 결정하게 된다. 한편, 상기 도 3에서 설명한 스키마 구조에 따르면 상기 모델 클래 스에는 Material과, schema와, Image_Name과, Regist_Info와, Designer와, Feature_Info와, File_Info 정보가 존재하는데, 상기 Material은 STEEL, Image_Name은 Sample1.jpg, Feature_Info는 R_H_Hole, File_Info는 20031213oh.stp 그리고 Designer는 Yong Tae Hyun이라는 인스턴스(instance) 데이터를 가진다고 가정하기로 한다. 여기서, 상기 인스턴스 데이터를 가지지 않는 스키마 엘리먼트들, 즉 schema와 Regist_Info는 상기 도 5a에 도시하지 않았다.
상기 도 6a에서 설명한 바와 같이 결정된 루트 정보, 즉 모델 클래스 정보를 레벨 탐색 방식에 따라 탐색한 정보들중에서 Designer에 해당하는 인스턴스 데이터 Yong Tae Hyun는 인물 클래스 정보에 해당한다. 따라서, 상기 인물 클래스하의 정보들도 스키마를 참조하여 실제 데이터를 검색한 후 표현되는데 이 과정이 상기 도 6b에 도시되어 있는 것이다.
또한, 상기 도 6a에서 모델 클래스 정보를 레벨 탐색 방식에 따라 탐색한 정보들중에서 상기 Designer에 해당하는 인스턴스 데이터 Yong Tae Hyun 뿐만 아니라 다른 인스턴스 데이터들, 즉 Material에 해당하는 인스턴스 데이터 STEEL과, Image_Name에 해당하는 인스턴스 데이터 Sample1.jpg와, Feature_Info에 해당하는 인스턴스 데이터 R_H_Hole와, File_Info에 해당하는 인스턴스 데이터 20031213oh.stp에 대해서도 스키마를 참조하여 실제 데이터를 검색한 후 표현되는데 이 과정이 상기 도 6c에 도시되어 있는 것이다. 결과적으로, 상기 도 6a-도6c에서 설명한 트리 구성 과정에 따라 구성된 트리 구조가 상기 도 4의 (a)에서 설명한 트리 구조와 동일하게 되는 것이다.
상기 도 6a-도6c에서는 상기 도 3의 스키마 구조에서 상기 모델 클래스를 중심으로 한 트리를 구성하기 위한 과정에 대해서 설명하였으며, 다음으로 도 7a-도7b를 참조하여 상기 도 6a-도6c에서 설명한 트리 구성 과정에 따라 구성된 트리 구조를 웹 브라우저를 통해 디스플레이하는 과정에 대해서 설명하기로 한다.
상기 도 7a는 도 3의 스키마 구조에서 모델 클래스를 중심으로 구성한 웹 사이트 화면을 디스플레이한 도면이다.
상기 도 7b는 도 7a의 웹 사이트 화면에서 특정 세부 정보를 선택한 화면을 디스플레이한 도면이다.
상기 도 7a를 참조하면, 먼저 상기 도 6a-도6c에서 설명한 바와 같은 방식으로 트리를 생성하면, 사용자가 로그인(log-in)하게 되면 모델 클래스와, 도구 클래스와, 인물 클래스 정보중 어느 한 클래스를 중심으로하여 웹 사이트를 구성할 수 있데 되는데, 상기 도 7a에서는 상기 모델 클래스를 중심으로 웹 사이트를 구성할 경우의 화면이 디스플레이되어 있는 것이다. 상기 도 7a에 도시한 바와 같은 화면상에서 특정 세부 정보를 선택함으로써 상기 선택한 세부 정보를 검색할 수 있는데 상기 도 5a에서 Image_Name인 sample1.jpg 정보를 선택하였다고 가정하기로 한다.
상기 Image_Name인 sample1.jpg 정보를 선택하였으므로, 상기 도 7b에 도시되어 있는 바와 같이 상기 Image_Name인 sample1.jpg 정보에 해당하는 세부 정보가 디스플레이된다. 상기 도 7b에 디스플레이되어 있는 세부 정보들중 From Here이라는 항목을 선택하게 되면, 상기 현재 디스플레이되어 있는 Image_Name인 sample1.jpg 정보를 중심으로 하여 사이트 맵을 재구성할 수 있게 되며, 상기 Image_Name인 sample1.jpg 정보를 중심으로 하여 재구성된 화면이 상기 도 5b의 오른쪽 프레임(frame)에 디스플레이 되어 있다. 따라서, 사용자는 Image_Name 뿐만 아니라 다른 항목들도 From Here 항목을 이용하여 상기 사이트 맵을 재구성할 수 있게 되는 것이다.
한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같은 본 발명은, 제품 가공 데이터 표준인 STEP-NC 데이터에서 추출한 메타데이터로 온톨로지를 구성하여 RDF로 저장하고, 또한 상기 RDF로 저장된 온톨로지를 사용자 편의에 맞게 재구성하도록 함으로써 사용자가 제품 관리 및 유지 보수를 효율적으로 할 수 있게 한다는 이점을 가진다. 이렇게, 효율적인 제품 관리 및 유지 보수는 사용자가 제품에 대한 다양한 접근을 통해 제품의 유지 보수를 효율적으로 할 수 있기 때문에 보다 높은 이익을 창출할 수 있으며, 제품 데이터의 체제를 사용자가 원하는 관점으로 재구성하여 표현함으로써 제품의 개발이나 관리 면에서 제품의 활용도를 높일 수 있다. 또한, 웹 브라우저를 통한 디스플레이 방식은 사용자가 어디서나 제품 데이터에 접속하기 쉬운 인터페이스를 제공한다는 이점을 가진다. 또한, 온톨로지의 저장 포맷을 RDF를 사용함으로써 다른 데이터로의 확장을 용이하게 하고 다른 조직과 그룹 사이에 정보의 호환성을 높일 수가 있어 데이터의 검색과 접근에 효율을 높여 줄 뿐만 아니라 데이터의 유지 및 데이터의 입력에 소모되는 비용을 줄일 수 있다는 이점을 가진다.

Claims (14)

  1. 자원 디스크립션 프레임워크(RDF: Resource Description Framework)를 사용하여 제품 데이터 온톨로지를 구성하는 방법에 있어서,
    스텝 엔씨(STEP-NC: STEP data interface for Numeric Control) 파일이 입력되면, 상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출하는 과정과,
    상기 추출한 정보 데이터와 상기 부가 데이터에 상응하게 상기 제품 데이터 온톨로지를 생성한 후 RDF 파일을 생성하는 과정과,
    상기 RDF 파일을 생성한 후 상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 웹 브라우저를 통해 디스플레이하는 과정을 포함함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 방법.
  2. 제1항에 있어서,
    상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 웹 브라우저를 통해 디스플레이한 후 상기 사이트 맵내의 특정 정보에 대해 상기 사이트 맵을 재구성하기를 요구하는 재구성 요구가 검출되면 상기 RDF 파일로부터 상기 재구성 요구된 정보에 상응하게 상기 사이트 맵을 재구성하여 상기 웹 브라우저를 통해 디스플레이하는 과정을 더 포함함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 방법.
  3. 제1항에 있어서,
    상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출하는 과정은 ST(steptool)-developer 라이브러리를 사용하여 상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출하는 것임을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 방법.
  4. 제1항에 있어서,
    상기 RDF 파일을 생성하는 과정은 상기 추출한 정보 데이터를 Libgnurdf 라이브러리를 사용하여 RDF 파일로 생성하는 것임을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 방법.
  5. 제2항에 있어서,
    상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 재구성하는 과정은 상기 RDF 파일을 상기 물리 평면(PHP: Physical Plane) 라이브러리와, RAP-RDF-응용 프 로그램 인터페이스(API: Application Program Interface) 라이브러리를 사용하여 상기 재구성하고자 하는 데이터를 추출한 후, 상기 추출한 데이터를 가지고 상기 사이트 맵을 재구성하는 것임을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 방법.
  6. 제2항에 있어서,
    상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 재구성하는 과정은 상기 재구성하고자 하는 데이터를 추출한 후, 상기 추출한 데이터의 루트 노드로부터 상기 루드 노드에 연결되는 하위 노드들의 엔터티들을 검색하고, 상기 검색한 엔터티들에 대응하는 정보가 중복되지 않도록 상기 사이트 맵을 재구성하는 것임을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 방법.
  7. 제1항에 있어서,
    상기 제품 데이터 온톨로지를 생성하기 위하여 상기 STEP-NC 파일로부터 추출되는 정보 데이터는 제품 모델에 상응하는 정보를 나타내는 모델 클래스와, 제품과 관련된 인물에 상응하는 정보를 나타내는 인물 클래스와, 제품이 기술된 파일에 상응하는 정보를 나타내는 파일 클래스와, 제품에 포함된 형상에 상응하는 정보를 나타내는 형상 클래스와, 제품 가공 과정에 상응하는 정보를 나타내는 가공 과정 클래스와, 제품 가공에 사용되는 도구에 상응하는 정보를 나타내는 도구 클래스를 포함함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 방법.
  8. 자원 디스크립션 프레임워크(RDF: Resource Description Framework)를 사용하여 제품 데이터 온톨로지를 구성하는 장치에 있어서,
    스텝 엔씨(STEP-NC: STEP data interface for Numeric Control) 파일이 입력되면, 상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출하는 STEP-NC 분석 모듈과,
    상기 추출한 정보 데이터와 상기 부가 데이터에 상응하게 상기 제품 데이터 온톨로지를 생성한 후 RDF 파일을 생성하는 메타 데이터 추출 모듈과,
    상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 웹 브라우저를 통해 디스플레이하는 사이트 맵 재구성 모듈을 포함함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치.
  9. 제8항에 있어서,
    상기 사이트 맵 재구성 모듈은 상기 제품 데이터 온톨로지에 해당하는 사이트 맵을 웹 브라우저를 통해 디스플레이한 후 상기 사이트 맵내의 특정 정보에 대해 상기 사이트 맵을 재구성하기를 요구하는 재구성 요구가 검출되면 상기 RDF 파 일로부터 상기 재구성 요구된 정보에 상응하게 상기 사이트 맵을 재구성하여 상기 웹 브라우저를 통해 디스플레이함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치.
  10. 제8항에 있어서,
    상기 STEP-NC 분석 모듈은 ST(steptool)-developer 라이브러리를 사용하여 상기 STEP-NC 파일로부터 상기 제품 데이터 온톨로지를 생성하기 위한 정보 데이터를 추출함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치.
  11. 제8항에 있어서,
    상기 메타 데이터 추출 모듈은 상기 추출한 정보 데이터를 Libgnurdf 라이브러리를 사용하여 RDF 파일로 생성함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치.
  12. 제9항에 있어서,
    상기 사이트 맵 재구성 모듈은 상기 RDF 파일을 상기 물리 평면(PHP: Physical Plane) 라이브러리와, RAP-RDF-응용 프로그램 인터페이스(API: Application Program Interface) 라이브러리를 사용하여 상기 재구성하고자 하는 데이터를 추출한 후, 상기 추출한 데이터를 가지고 상기 사이트 맵을 재구성함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치.
  13. 제9항에 있어서,
    상기 사이트 맵 재구성 모듈은 상기 재구성하고자 하는 데이터를 추출한 후, 상기 추출한 데이터의 루트 노드로부터 상기 루드 노드에 연결되는 하위 노드들의 엔터티들을 검색하고, 상기 검색한 엔터티들에 대응하는 정보가 중복되지 않도록 상기 사이트 맵을 재구성함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치.
  14. 제8항에 있어서,
    상기 제품 데이터 온톨로지를 생성하기 위하여 상기 STEP-NC 파일로부터 추출되는 정보 데이터는 제품 모델에 상응하는 정보를 나타내는 모델 클래스와, 제품과 관련된 인물에 상응하는 정보를 나타내는 인물 클래스와, 제품이 기술된 파일에 상응하는 정보를 나타내는 파일 클래스와, 제품에 포함된 형상에 상응하는 정보를 나타내는 형상 클래스와, 제품 가공 과정에 상응하는 정보를 나타내는 가공 과정 클래스와, 제품 가공에 사용되는 도구에 상응하는 정보를 나타내는 도구 클래스를 포함함을 특징으로 하는 RDF를 사용하여 제품 데이터 온톨로지를 구성하는 장치.
KR20040040077A 2004-06-02 2004-06-02 자원 디스크립션 프레임워크를 사용하여 제품 데이터온톨로지를 구성하는 장치 및 방법 KR100704285B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20040040077A KR100704285B1 (ko) 2004-06-02 2004-06-02 자원 디스크립션 프레임워크를 사용하여 제품 데이터온톨로지를 구성하는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20040040077A KR100704285B1 (ko) 2004-06-02 2004-06-02 자원 디스크립션 프레임워크를 사용하여 제품 데이터온톨로지를 구성하는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20050114947A KR20050114947A (ko) 2005-12-07
KR100704285B1 true KR100704285B1 (ko) 2007-04-10

Family

ID=37289050

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20040040077A KR100704285B1 (ko) 2004-06-02 2004-06-02 자원 디스크립션 프레임워크를 사용하여 제품 데이터온톨로지를 구성하는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR100704285B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011136425A1 (ko) * 2010-04-28 2011-11-03 한국과학기술정보연구원 개체명 사전 및 마이닝 규칙이 결합된 온톨로지 스키마를 이용한 리소스 기술 프레임워크 네트워크 구축 장치 및 방법
KR101092949B1 (ko) 2010-01-15 2011-12-12 한국과학기술원 제품 온톨로지 구축 방법 및 이를 이용한 장치

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100947121B1 (ko) * 2008-02-28 2010-03-10 한국전자통신연구원 자원 기술 체계 데이터 처리 시스템 및 그 방법
KR101069207B1 (ko) * 2008-12-15 2011-09-30 한국과학기술원 전자 문서에 의미 정보를 부착하는 시스템 및 방법
KR102295100B1 (ko) * 2019-11-12 2021-08-31 한국전자기술연구원 AutomationML 데이터 모델을 OPC UA 정보 모델로 변환하는 방법 및 그 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010109206A (ko) * 2000-06-01 2001-12-08 박준석, 유인청 네트워크 정보 통합 질의 인터페이스를 위한 방법 및장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010109206A (ko) * 2000-06-01 2001-12-08 박준석, 유인청 네트워크 정보 통합 질의 인터페이스를 위한 방법 및장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101092949B1 (ko) 2010-01-15 2011-12-12 한국과학기술원 제품 온톨로지 구축 방법 및 이를 이용한 장치
WO2011136425A1 (ko) * 2010-04-28 2011-11-03 한국과학기술정보연구원 개체명 사전 및 마이닝 규칙이 결합된 온톨로지 스키마를 이용한 리소스 기술 프레임워크 네트워크 구축 장치 및 방법

Also Published As

Publication number Publication date
KR20050114947A (ko) 2005-12-07

Similar Documents

Publication Publication Date Title
Mena et al. OBSERVER: An approach for query processing in global information systems based on interoperation across pre-existing ontologies
Hyvönen et al. MuseumFinland—Finnish museums on the semantic web
Henninger et al. Software pattern communities: Current practices and challenges
Frischmuth et al. Ontowiki–an authoring, publication and visualization interface for the data web
JP2002297605A (ja) 構造化文書検索方法および構造化文書検索装置およびプログラム
Binding et al. KOS at your service: Programmatic access to knowledge organisation systems
JP2002297602A (ja) 構造化文書検索方法および構造化文書検索装置および構造化文書管理装置およびプログラムおよび記録媒体
JP2004094806A (ja) 情報検索支援システム、アプリケーションサーバ、情報検索方法、およびプログラム
AU2013270517B2 (en) Patent mapping
WO2006015110A2 (en) Patent mapping
Liu et al. An XML-enabled data extraction toolkit for web sources
KR100704285B1 (ko) 자원 디스크립션 프레임워크를 사용하여 제품 데이터온톨로지를 구성하는 장치 및 방법
Kanimozhi et al. Incorporating ontology and SPARQL for semantic image annotation
Paradis et al. A language for publishing virtual documents on the Web
McCartney et al. Using XML-encoded metadata as a basis for advanced information systems for ecological research
Damljanovic et al. Enhanced semantic access to software artefacts
Della Penna et al. Interoperability mapping from XML schemas to ER diagrams
Arch-Int et al. A semantic information gathering approach for heterogeneous information sources on WWW
Iwaniak et al. Semantic metadata for heterogeneous spatial planning documents
Li et al. A Mapping-Based Sharing Approach for Heterogeneous XML Data Supporting User Personalization
JP2002297662A (ja) 構造化文書編集方法および構造化文書編集装置および端末装置およびプログラム
Lacasta et al. Generating an urban domain ontology through the merging of cross-domain lexical ontologies
Stárka et al. Strigil: A framework for data extraction in semi-structured web documents
Fayzrakhmanov et al. Introduction to OXPath
Hu et al. Research and application of semi-automatic construction of structured knowledge graph

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120314

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130313

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee