KR101133993B1 - 추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치 - Google Patents

추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치 Download PDF

Info

Publication number
KR101133993B1
KR101133993B1 KR1020100108381A KR20100108381A KR101133993B1 KR 101133993 B1 KR101133993 B1 KR 101133993B1 KR 1020100108381 A KR1020100108381 A KR 1020100108381A KR 20100108381 A KR20100108381 A KR 20100108381A KR 101133993 B1 KR101133993 B1 KR 101133993B1
Authority
KR
South Korea
Prior art keywords
triple
inference
triples
index
dependency
Prior art date
Application number
KR1020100108381A
Other languages
English (en)
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 KR1020100108381A priority Critical patent/KR101133993B1/ko
Priority to US13/510,990 priority patent/US8688612B2/en
Priority to JP2012541933A priority patent/JP5352935B2/ja
Priority to PCT/KR2010/007769 priority patent/WO2012060490A1/ko
Application granted granted Critical
Publication of KR101133993B1 publication Critical patent/KR101133993B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

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

Abstract

추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 장치가 개시된다.
본 발명에 따른 트리플 저장 방법은 트리플에 추론 규칙을 적용하여 다른 트리플을 생성하는 추론 방법에 관련된 트리플을 저장하는 방법에 있어서, (a) 추론에 관련된 트리플 및 추론 규칙들 각각에 일련번호를 부가하여 저장하는 과정; (b) 상기 트리플 및 추론 규칙을 적용하여 추론된 트리플에 대하여 그에 적용된 트리플 및 추론 규칙의 일련번호를 사용하여 색인하는 과정; (c) 물리적으로 여러 개의 트리플 저장 단위(테이블)에 분산되어 저장되는 트리플들을 가상의 하나의 저장 단위(테이블)인 것처럼 접근할 수 있게 하는 트리플 뷰를 생성하는 과정을 포함하는 것을 특징으로 한다.
본 발명의 트리플 저장 방법은 추론된 사실에 대하여 적용된 사실 및 추론 규칙의 일련번호를 사용하여 색인하여 저장해 두고 이용자의 요청 시 추론의 근거로서 제시함으로써 추론의 신뢰성을 제고시킬 수 있으며, 또한 임의의 사실의 삭제 시 삭제된 사실에 의존하는 추론된 사실들을 추적하면서 삭제함으로써 점증적 추론의 효율성을 제고시킬 수 있는 효과를 갖는다.

Description

추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치{ Method for storing triple for inference verification and steady-increasing inference and apparatus thereof, apparatus for indexing dependency of inference and method for verifying dependency of inference}
본 발명은 추론에 따른 트리플 저장 방법에 관한 것으로서, 더욱 상세하게는 추론을 통해 제공되는 서비스에 대한 근거를 제시하고 트리플 삭제 시에도 점증적 추론을 지원할 수 있는 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 장치 및 추론 의존성 검증 방법에 관한 것이다.
시맨틱 웹(Semantic Web)은 지식은 RDF(Resource Description Framework)와 OWL(Web Ontology Language)과 같은 온톨로지(ontology)로 표현되며, 추론은 온톨로지로 표현된 지식을 확장 가공하는 역할을 수행한다. 온톨로지는 RDF 트리플(triple)의 집합으로, 각 트리플은 <주어, 술어, 목적어>의 쌍으로 구성된다. 트리플은 또한 사실(fact)이라고 불리기도 한다.
추론을 수행하는 시점에 따라, 추론 기술은 질의가 들어오기 전에 미리 모든 추론을 수행하는 전방 추론(forward reasoning)과 질의가 들어오는 순간에 그 질의를 처리하기 위해 필요한 추론만을 수행하는 후방 추론(backward reasoning)으로 분류될 수 있는데, 온톨로지의 규모가 커짐에 따라, 즉각적인 질의응답을 수행하기에 적합한 전방 추론 위주로 하고 여기에 후방 추론을 부분적으로 혼용하는 방식이 최근의 추론 기술의 흐름이다. 추론 기술은 또한 기반이 되는 논리에 따라, 기술 논리(Description Logic) 기반의 추론과 규칙 기반의 추론으로 분류될 수 있는데, 추론의 실용성 측면에서는 규칙 기반의 추론이 유리하며, 추론의 완전성 측면에서는 기술 논리 기반의 추론이 유리하다.
이와 같이 규칙 기반의 전방 추론 기술이 대용량 온톨로지를 대상으로 하는 추론의 실용적인 측면에서 유리하지만, 온톨로지의 일부 트리플이 변경 혹은 삭제되는 경우에는 이 트리플로부터 이미 추론되어 확장된 트리플들 또한 더 이상 유효하지 않게 된다. 때문에 이 문제를 처리하기 위해 일반적으로 전체 추론을 다시 수행하는데, 추론을 수행하는 데 많은 시간이 소요되기 때문에 실용성 측면에서 걸림돌이 되고 있다.
한편, 시맨틱 웹(Semantic Web) 기반 추론 서비스에서는 온톨로지(ontology)와 추론 기술을 적용하여 온톨로지에 명시적으로 표현된 지식으로부터 내부적인 처리 과정을 거쳐 추론된 결과 (예를 들면, 특정 분야의 연구 전문가나 연구자 네트워크)를 분석하여 제시해 주지만, 그러한 분석 결과가 어떠한 근거를 통해 얻어졌는지를 설명하지는 못한다. 검색 결과를 보고 그것이 적합한지 여부를 바로 판단할 수 있는 일반적인 정보 검색과는 달리, 추론 서비스에서는 그 서비스 결과만을 봐서는 그 결과가 올바른 것인지를 바로 판단하는 것이 불가능하다.
이로 인해, 이용자들은 시맨틱 웹 기반 추론 서비스의 신뢰성에 의문을 품게 되며, 해당 서비스의 이용자 만족도를 떨어뜨리는 원인이 될 수 있다.
따라서 트리플 삭제 시에도 전체 추론을 다시 수행할 필요 없이 점증적으로 추론을 할 수 있도록 하며, 이용자가 원할 경우, 추론 결과에 대한 근거(추론 검증)를 제시할 수 있도록 하는 트리플 저장 기술이 요구된다.
명시적 트리플 및 추론된 트리플을 물리적으로 저장하는 방식에 있어서는, 도 1에서와 같이 대략 3가지 유형으로 나눠 볼 수 있다. 수직 설계 방식에서는 모든 트리플을 하나의 저장 단위(예를 들면, DBMS의 테이블)에 저장하는데, 설계가 간단하여 트리플의 규모가 작을 때는 유리하지만 규모가 커질수록 하나의 저장 단위에 대한 집중도가 커져 효율성이 떨어진다. 반면에, 수평 설계 방식에서는 각 트리플을 술어(property)와 클래스(class) 별로 분산시켜 저장하는데, 트리플의 규모가 클 경우, 분산 효과에 따른 장점을 갖는다. 혼합 설계는 수직 설계와 수평 설계의 중간에 해당하는 방식이다. 그러나 이 설계만으로는 점증적 추론과 추론 검증을 효과적으로 지원할 수 없기 때문에 별도의 저장 기술이 요구된다.
본 발명은 상기의 요구에 부응하기 위한 것으로서, 시맨틱 웹 기술 기반의 점증적 추론과 추론 서비스에 대한 근거 설명(즉, 추론 검증)을 지원하기 위한 시맨틱 웹 기반의 트리플 저장 방법을 제공하는 것을 그 목적으로 한다.
본 발명의 다른 목적은 상기의 방법에 적합한 추론 의존성 색인 장치를 제공하는 것에 있다.
본 발명의 또 다른 목적은 상기의 방법에 적합한 트리플 저장 장치를 제공하는 것에 있다.
본 발명의 또 다른 목적은 상기의 트리플 저장 장치를 이용한 추론 의존성 검증 방법을 제공하는 것에 있다.
상기의 목적을 달성하기 위한 본 발명에 따른 트리플 저장 방법은
트리플에 추론 규칙을 적용하여 다른 트리플을 생성하는 추론 방법에 관련된 트리플을 저장하는 방법에 있어서,
(a) 추론에 관련된 트리플 및 추론 규칙들 각각에 일련번호를 부가하여 복수의 트리플 테이블 및 추론 규칙 테이블에 각각 저장하는 과정;
(b) 상기 트리플 및 추론 규칙을 적용하여 추론된 트리플에 대하여 추론에 관련된 트리플 및 추론 규칙의 일련번호를 사용하여 색인하는 과정;
(c) 물리적으로 여러 개의 트리플 저장 단위(테이블)에 분산되어 저장되는 트리플들을 가상의 하나의 저장 단위(테이블)인 것처럼 접근할 수 있게 하는 트리플 뷰를 생성하는 과정을 포함하는 것을 특징으로 한다.
여기서, 상기 색인 과정은
추론된 트리플의 일련번호를 색인의 키로 하고 추론에 사용된 추론규칙의 일련번호와 추론에 사용된 트리플들의 일련번호를 내용으로 하는 추론 의존성 역색인 테이블; 및
추론에 사용된 트리플의 일련번호를 색인의 키로 하고 추론된 트리플의 일련번호를 내용으로 하는 추론 의존성 순색인 테이블을 생성하는 것을 특징으로 한다.
상기 트리플 저장 방법은
(d) 트리플 삭제 시에 상기 색인과 상기 트리플 뷰를 이용하여 점증적 추론을 수행하는 과정을 더 포함하는 것이 바람직하다.
여기서, 상기 (d) 트리플 삭제 시의 점증적 추론을 수행하는 과정은
삭제 요구된 트리플을 트리플 테이블에서 삭제하는 과정;
삭제 요구된 트리플의 일련번호를 가지는 색인 내용들을 추론 의존성 순색인에서 검색하고, 삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가져온 후 검색된 색인 내용들을 추론 의존성 순색인에서 삭제하는 과정;
삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가지는 색인 내용들을 추론 의존성 역색인에서 검색하고, 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있는 색인 내용들을 추론 의존성 역색인에서 삭제하는 과정; 및
상기 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있지 않은 색인 내용이 없다면 삭제 요구된 트리플에 의존하여 추론된 트리플을 트리플 테이블에서 삭제하는 과정을 포함하는 것을 특징으로 한다.
상기의 다른 목적을 달성하기 위한 본 발명에 따른 추론 의존성 색인 장치는
트리플들과 추론규칙들에 일련번호를 붙여서 복수의 트리플 테이블 및 추론 규칙 테이블에 저장하는 트리플 및 규칙 일련번호 할당부;
명시적으로 존재하는 트리플들에 추론 규칙을 적용하여 새로운 트리플들을 유도하는 추론 수행부;
추론 검증과 점증적 추론을 지원하기 위해, 추론에 사용된 트리플과 추론 규칙, 추론을 통해 새롭게 추론된 트리플들 사이의 의존 관계를 색인하여 저장하는 추론 의존성 색인부; 및
상기 복수의 트리플 테이블에 물리적으로 분산되어 저장된 트리플들을 가상으로 하나의 저장 단위에 저장된 것처럼 접근할 수 있게 하는 트리플 뷰(view)를 생성하는 트리플 뷰 생성부; 를 포함하는 것을 특징으로 한다.
여기서, 상기 추론 의존성 색인부는
추론된 트리플의 일련번호를 색인의 키로 하고 추론에 사용된 추론규칙의 일련번호와 추론에 사용된 트리플들의 일련번호를 내용으로 하는 추론 의존성 역색인 테이블; 및
추론에 사용된 트리플의 일련번호를 색인의 키로 하고 추론된 트리플의 일련번호를 내용으로 하는 추론 의존성 순색인 테이블을 생성하는 것을 특징으로 한다.
또한, 상기 추론 의존성 색인부는 트리플 삭제 요구에 응답하여
삭제 요구된 트리플을 상기 트리플 테이블에서 삭제하고,
삭제 요구된 트리플의 일련번호를 가지는 색인 내용들을 상기 추론 의존성 순색인에서 검색하고, 삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가져온 후 검색된 색인 내용들을 상기 추론 의존성 순색인에서 삭제하고,
삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가지는 색인 내용들을 상기 추론 의존성 역색인에서 검색하고, 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있는 색인 내용들을 상기 추론 의존성 역색인에서 삭제하며, 그리고
상기 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있지 않은 색인 내용이 없다면 삭제 요구된 트리플에 의존하여 추론된 트리플을 상기 트리플 테이블에서 삭제하는 것을 특징으로 한다.
상기의 또 다른 목적을 달성하기 위한 본 발명에 따른 트리플 저장 장치는
트리플에 추론 규칙을 적용하여 다른 트리플을 생성하는 추론 장치에 관련된 트리플을 저장하는 장치에 있어서
각각에 일련번호가 부가된 트리플들을 저장하는 복수의 트리플 테이블;
각각에 일련번호가 부가된 추론 규칙들을 저장하는 추론 규칙 테이블;
트리플 및 추론 규칙을 적용하여 추론된 다른 트리플에 대하여 그것에 적용된 트리플 및 추론 규칙의 일련번호를 사용하여 색인된 결과를 저장하는 추론 의존성 역색인 테이블과 추론 의존성 순색인 테이블; 및
상기 복수의 트리플 테이블에 물리적으로 분산되어 저장되는 트리플들을 가상의 하나의 저장 단위(테이블)인 것처럼 접근할 수 있게 하는 트리플 뷰; 를 포함하는 것을 특징으로 한다.
상기의 또 다른 목적을 달성하는 본 발명에 따른 추론 의존성 검증 방법은
각각에 일련번호가 부가된 트리플들을 저장하는 복수의 트리플 테이블, 각각에 일련번호가 부가된 추론 규칙들을 저장하는 추론 규칙 테이블, 트리플 및 추론 규칙을 적용하여 추론된 다른 트리플에 대하여 그것에 적용된 트리플 및 추론 규칙의 일련번호를 사용하여 색인된 결과를 저장하는 추론 의존성 색인 테이블 그리고 상기 복수의 트리플 테이블에 물리적으로 분산되어 저장되는 트리플들을 가상의 하나의 저장 단위(테이블)인 것처럼 접근할 수 있게 하는 트리플 뷰를 포함하는 트리플 저장 장치로부터 추론된 트리플에 대한 추론 검증을 제공하는 방법에 있어서,
추론 검증이 요구된 추론된 트리플에 대한 일련번호를 획득하는 과정;
상기 추론된 트리플의 일련번호를 상기 추론 의존성 색인 테이블에서 검색하여 의존 관계에 있는 추론 규칙의 일련번호 및 트리플들의 일련번호들을 획득하는 과정;
상기 추론규칙 테이블에서 상기 추론 규칙의 일련번호에 상응하는 추론 규칙 정보를 획득하고, 상기 트리플 뷰에서 트리플들의 일련번호에 대한 트리플 정보들을 획득하는 과정; 및
상기 획득된 추론 규칙 정보와 트리플 정보들을 추론의 근거로서 제시하는 과정을 포함하는 것을 특징으로 한다.
여기서, 상기 추론 의존성 검증 방법은
상기 트리플 테이블에 기록된 트리플의 삭제 요구에 응답하여,
삭제 요구된 트리플을 상기 트리플 테이블에서 삭제하고,
삭제 요구된 트리플의 일련번호에 관련된 색인 내용들을 상기 추론 의존성 색인 테이블에서 삭제하고, 그리고
삭제 요구된 트리플에 의해서만 추론되는 트리플도 상기 트리플 테이블에서 삭제하는 과정을 더 구비하는 것을 특징으로 한다.
본 발명의 트리플 저장 방법은 추론된 사실에 대하여 적용된 사실 및 추론 규칙의 일련번호를 사용하여 색인하여 저장해 두고 이용자의 요청시 추론의 근거로서 제시함으로써 추론의 신뢰성을 제고시킬 수 있으며, 또한 임의의 사실의 삭제시 삭제된 사실에 의존하는 추론된 사실들을 추적하면서 삭제함으로써 점증적 추론의 효율성을 제고시킬 수 있는 효과를 갖는다.
도 1은 트리플 저장소의 예를 도시한다.
도 2는 본 발명에 따른 추론 의존성 색인 장치의 블록도를 도시한다.
도 3은 도 2의 트리플 및 규칙 일련번호 할당부의 수행 결과를 나타내는 예시도이다.
도 4는 도 2의 추론 의존성 색인부의 수행 결과를 나타내는 예시도이다.
도 5는 도 2의 트리플 뷰 생성부의 수행 결과를 나타내는 예시도이다.
도 6는 본 발명에 따른 트리플 저장 방법의 흐름도를 도시한다.
도 7은 본 발명에 따른 추론 의존성 색인 장치에 있어서 추론 검증을 수행하는 방법의 흐름도를 도시한다.
도 8은 본 발명에 따른 추론 의존성 색인 장치에 있어서 트리플 삭제 시의 점증적 추론을 수행하는 방법의 흐름도를 도시한다.
이하 첨부된 도면을 참조하여 본 발명의 구성 및 동작을 상세히 설명하기로 한다.
트리플(사실)은 일반적으로 도 1에 보인 세 가지 유형의 하나로 저장된다. 특히, 대용량의 온톨로지를 대상으로 실용적인 추론을 지원하기 위해서는 도 1의 수평 설계 혹은 혼합 설계 방식이 주로 사용되며, 또한 실용성을 고려하여 온톨로지에 명시적으로 존재하는 트리플뿐만 아니라 전방 추론에 의해 추론된 트리플까지 트리플 저장소에 저장하게 된다. 그러나 이와 같은 저장 구조만으로는 추론 검증과 점증적 추론을 지원하지 못한다.
추론이란 기존의 [트리플]에 [추론규칙]을 적용하여 새로운(추론된) [트리플]을 얻는 과정을 말한다. 본 발명은 추론 검증과 점증적 추론을 지원하기 위한 트리플 저장소의 기능으로서 추론으로 얻어지는 추론된 [트리플]과 추론에 사용된 기존의 [트리플] 및 [추론규칙] 사이의 의존 관계를 색인하여 저장한다.
도 2는 본 발명에 따른 추론 의존성 색인 장치의 구성을 도시한다. 도 2를 참조하면, 추론 의존성 색인 장치는 트리플 및 규칙 일련번호 할당부(100), 추론 수행부(200), 추론 의존성 색인부(300), 트리플 뷰 생성부(400)로 구성된다.
트리플 및 규칙 일련번호 할당부(100)는 각 트리플들과 추론규칙들에 일련번호를 붙여서 저장한다. 도 1에서 보인 수평 설계 혹은 혼합 설계 방식의 트리플 저장 구조에서는 각 트리플들이 유형별로 분산되어 저장되는데, 일련번호는 각 저장 단위(테이블) 내에서의 일련번호가 아닌, 전체 트리플 내에서의 일련번호로 할당되어야 한다. 즉, 도 3의 네 개의 트리플 테이블 (p(102), q(104), r(106), s(108))의 각 ID 컬럼에 전체 트리플 내에서의 일련번호가 할당되어 있음을 예시로 보이고 있다. 또한, 도 3의 추론규칙 테이블 (rule. 109)는 각 추론규칙들에도 추론규칙 내에서의 일련번호가 할당되었음을 예시로 보이고 있다. 각 트리플 테이블의 Flag 컬럼은 해당 트리플이 추론을 통해 얻어진 트리플인지 여부를 표시하기 위한 것으로, 트리플이 추론을 통해 얻어진 것이면 T(참)로 표시되고 그렇지 않으면 F(거짓)로 표시된다.
추론 수행부(200)는 명시적으로 존재하는 트리플들에 추론 규칙을 적용하여 새로운 트리플들을 유도한다. 추론된 트리플들 또한 재귀적으로 추론 규칙에 적용될 수 있다.
도 3에 있어서, 다음과 같은 관계가 성립되고 있는 것임을 알 수 있다.
1) [트리플4] <== [트리플1] + [트리플3] + [규칙1]
2) [트리플7] <== [트리플2] + [트리플4] + [규칙2]
3) [트리플7] <== [트리플5] + [트리플6] + [규칙3]
여기서, 화살표(<==)의 왼쪽은 추론된 트리플(추론의 결과)이며, 오른쪽은 추론의 결과에 대한 근거 정보인 트리플들과 추론규칙을 가리킨다. 도 3의 실선 화살표는 각 추론 규칙에 적용(입력)된 트리플들을 가리키며, 점선 화살표는 추론규칙이 적용된 결과로서 얻어지는 새로운 트리플 즉, 추론된 트리플을 가리킨다.
도 3에서 알 수 있듯이, 추론된 트리플(예를 들면, [트리플4])은 또 다른 추론(예를 들면, [규칙2]에 적용됨)을 위해 사용될 수 있다. 또한, 하나의 트리플은 여러 개의 추론 규칙에 적용될 수 있고, 서로 다른 추론 규칙을 통해 동일한 추론된 트리플이 얻어질 수도 있다(예를 들어, [트리플7]은 [규칙2]와 [규칙3] 각각을 통해 얻어질 수 있다).
[트리플]은 다른 말로 사실(fact)이라고도 표현되며 <주어, 술어, 목적어>로 구성된다. [추론규칙]은 [결론부] <== [조건부]로 구성되는데, [조건부]는 하나 이상의 [트리플 패턴]으로 구성되며, [결론부]는 하나의 [트리플 패턴]으로 구성된다. [트리플 패턴]은 트리플과 마찬가지로 <주어, 술어, 목적어>로 구성되지만, 주어와 술어, 목적어 각각이 상수가 아닌 변수일 수 있다. 여기서, [추론규칙]의 의미는, 사실들이 [조건부]의 트리플 패턴들에 적용될 수 있을 때 [결론부]에 해당하는 트리플이 새로운 사실로서 유도(추론)될 수 있음을 나타낸다.
추론 의존성 색인부(300)는 추론 검증과 점증적 추론을 지원하기 위해, 추론에 사용된 트리플과 추론 규칙, 추론을 통해 새롭게 추론된 트리플들 사이의 의존 관계를 색인하여 저장한다.
도 4는 도 3의 트리플들과 추론규칙들을 사용하여 생성한 추론 의존성 색인 테이블의 예시를 도시한다. 추론 의존성 색인 테이블은 두 가지로 나눠지는데, 먼저, 추론 검증을 위해서는 추론된 결과 트리플이 어떠한 근거 트리플들과 추론 규칙으로부터 유도되었는지를 쉽게 검색할 수 있도록 추론 의존성 역색인 테이블 (Backward Dependency Indexing table)(301)을 생성한다.
즉, 추론된 트리플 ID(InferredTripleID)를 색인의 키로 하고 이 추론에 사용된 추론 규칙 ID(RuleID)와 각 트리플 ID들(TripleID1, TripleID2, ..., TripleIDn)를 내용으로 하여 색인하고 저장한다. 다시 말해, 추론된 트리플 번호별로 이 추론에 사용된 규칙번호와 트리플 번호들을 바로 얻을 수 있는 구조로 저장한다. 이는 일반적인 정보검색에서 검색어가 나타나는 문서를 빨리 찾을 수 있도록, 검색어별로 그 검색어가 나타난 문서번호들을 색인하는 구조와 유사하다.
다음으로, 트리플 삭제 시의 점증적 추론을 위해서는 삭제된 트리플로부터 어떤 트리플들이 추론되었는지를 쉽게 검색할 수 있도록 추론 의존성 순색인 테이블(Forward Dependency Indexing table)(303)을 생성한다. 즉, 추론에 사용된 트리플ID (TripleID)를 색인의 키로 하고 이 추론에 의해 생성된 트리플ID (InferredTripleID)를 내용으로 하여 색인하고 저장한다.
도 3의 트리플들과 추론규칙들을 예로 들어 설명하자면, [트리플1]과 [트리플3]을 [규칙1]에 적용하여 [트리플4]가 추론되었음은 추론 의존성 역색인 테이블(301)의 첫 번째 행으로 표현되며, 또한, 추론 의존성 순색인 테이블(303)의 첫 번째와 세 번째 행으로 표현된다.
도 3의 추론 의존성 역색인 테이블(301)은 하나의 추론 규칙에 사용되는 트리플이 두 개 이하인 경우만을 가정하여 TripleID1과 TripleID2처럼 두 개의 컬럼으로 표현하였지만, n개 이하의 트리플이 적용될 수 있는 경우, TripleID1, TripleID2, ..., TripleIDn과 같이 확장될 수 있다.
트리플 뷰 생성부(400)는 여러 개의 저장 단위(테이블)에 물리적으로 분산되어 저장된 트리플들을 가상으로 하나의 저장 단위에 저장된 것처럼 접근할 수 있도록 전체 트리플에 대한 뷰 (예를 들어, DBMS의 뷰(view))를 생성한다.
도 1의 수평 설계와 혼합 설계의 경우처럼 트리플이 여러 저장 단위(테이블)에 분산되어 저장될 경우, 트리플ID가 주어질 때, 이 트리플에 대한 실제 내용(<주어, 술어, 목적어>)을 알아내기 위해서는 어느 저장단위(테이블)에 저장되었는지를 알고 있어야 하지만, 트리플 뷰를 사용하면 어느 저장단위(테이블)인지에 상관없이 접근할 수 있게 된다.
도 5는 도 3의 트리플 저장 단위(테이블)들에 대한 트리플 뷰를 생성한 예시를 도시한다. 즉, triple_view(410)는 4개의 트리플 저장 단위(테이블) p테이블(402), q테이블(404), r테이블(406), s테이블(408)을 마치 하나의 물리적인 저장 단위(테이블)인 것처럼 접근할 수 있도록 한 가상의 저장 단위(테이블)인 트리플 뷰(예를 들면, DBMS의 view)이다. 이 트리플 뷰는 모든 트리플들을 접근할 수 있도록 주어(Subject), 술어(Predicate), 목적어(Object) 컬럼을 모두 갖는다.
p테이블(402)은 트리플 저장 단위(테이블) 이름이 술어(Predicate)에 해당하기 때문에 트리플 뷰를 통해 접근할 때는 Predicate 컬럼의 값은 저장 단위(테이블) 이름인 p로 지정된다. 이와 마찬가지로, q테이블(404)을 트리플 뷰를 통해 접근할 때는 Predicate 컬럼의 값은 저장 단위(테이블) 이름인 q로 지정된다. r테이불(406)과 s테이블(408)은 각 클래스의 인스턴스들을 저장하기 위한 것으로 저장 단위(테이블)의 이름이 클래스 이름으로서 목적어(Object)에 해당하며 술어(Predicate)는 rdf:type이기 때문에, r테이블(406)을 트리플 뷰를 통해 접근할 때는 Predicate 컬럼의 값은 rdf:type으로 지정되고 Object 컬럼의 값은 저장 단위(테이블) 이름인 r로 지정되며, s테이블(408)을 트리플 뷰를 통해 접근할 때는 Predicate 컬럼의 값은 rdf:type으로 지정되고 Object 컬럼의 값은 저장 단위(테이블) 이름인 s로 지정된다.
추론 검증은 추론된 [트리플(사실)]에 대한 근거를 제공하는 것이며, 트리플 삭제 시의 점증적 추론은 삭제된 트리플에 의해 추론된 트리플들을 재귀적으로 추적하면서 삭제하는 것을 의미한다. 본 발명에서는 추론 검증과 삭제 시의 점증적 추론을 위해 추론된 [트리플]과 추론에 사용된 [트리플] 및 [추론규칙] 사이의 의존 관계를 색인하는 방법을 제시한다.
도 6은 본 발명에 따른 트리플 저장 방법의 흐름도를 도시한다. 도 6을 참조하면, 추론 의존성 색인을 위해, 우선, 전체 트리플들 각각에 유일한 일련번호(ID)를 부여하고(S501), 추론규칙들 각각에도 유일한 일련번호(ID)를 부여한다(S503). 트리플들이 유형별로 분산되어 저장될 경우에도, 일련번호를 전체 트리플을 대상으로 유일하게 부여한다.
다음으로, 각 추론규칙들을 트리플에 적용하여 새로운 트리플을 추론하는 추론 과정을 수행한다(S505). 여기서 얻어지는 추론된 트리플들에 대해서도 트리플의 일련번호(ID)를 부여한다.
다음으로, 추론에 사용된 트리플들과 추론규칙, 추론을 통해 얻어진 트리플 사이의 의존 관계를 색인한다(S507). 이 색인 과정은 두 가지로 구분되는데, 하나는 추론된 트리플의 일련번호(InferredTripleID)를 색인의 키로 하고 추론에 사용된 추론규칙의 일련번호(RuleID)와 추론에 사용된 트리플들의 일련번호(TripleID1, TripleID2, ..., TripleIDn)를 내용으로 하는 추론 의존성 역색인 (Backward Dependency Indexing)이며, 다른 하나는 추론에 사용된 트리플의 일련번호(TripleID)를 색인의 키로 하고 추론된 트리플의 일련번호(InferredTripleID)를 내용으로 하는 추론 의존성 순색인 (Forward Dependency Indexing)이다.
마지막으로, 트리플들이 유형별로 여러 저장 단위(테이블)에 분산되어 저장된 경우, 전체 트리플들을 저장 단위(테이블) 구분에 상관없이 접근할 수 있도록 하는 가상의 트리플 뷰(예를 들면, DBMS view)를 생성한다(S509).
추론 의존성 역색인과 추론 의존성 순색인, 트리플 뷰를 이용하여 추론 검증과 트리플 삭제 시의 점증적 추론을 수행하는 방법은 각각 도 7과 도 8에 도시한다.
도 7을 참조하면, 사용자가 추론 검증을 요구하는 추론된 트리플이 주어질 때, 우선, 이 트리플에 대한 일련번호를 획득한다(S601). 다음으로, 이 일련번호를 추론 의존성 역색인에서 검색하여 의존 관계에 있는 추론규칙 번호와 트리플 번호들을 획득한다(S603).
다음으로, 추론규칙 테이블에서는 추론규칙 정보를 획득하고(S605), 트리플 뷰(triple_view)에서는 각 트리플 번호에 대한 트리플 정보(주어, 술어, 목적어, Flag)를 획득한다(S607). 이때, 각 트리플 정보에 대해 Flag의 값이 T(참)이면(S609), 이 트리플 역시 또 다른 추론규칙과 트리플들에 의해 추론된 것이므로, 추론 의존성 역색인을 검색하는 단계(S603)로 재귀한다. Flag의 값이 T(참)가 아니면, 앞서 얻은 추론규칙 정보와 트리플 정보를 추론의 근거로서 사용자에게 제시한다(S611).
도 4의 경우를 예로 들어 설명하면, [트리플7]의 추론 근거로서 [규칙2]와 [트리플2], [트리플4]를 제시할 수 있는데, [트리플4] 역시 추론된 사실이므로 이에 대한 추론 근거 역시 제시되어야 한다. 완전한 추론 검증을 위해서는 순수한 사실들과 여기에 적용된 추론 규칙들을 근거로 제시할 수 있어야 하는데, 도 4의 추론 의존성 역색인 테이블(301)을 이용하면, 추론 의존성을 재귀적으로 탐색함으로써 순수한 사실들과 추론 규칙들을 얻는 것이 가능하다. 즉, [트리플7]에 대한 근거 정보는 [규칙2] + [트리플2] + ([규칙1] + [트리플1] + [트리플3])이 된다.
하나의 추론된 [트리플]은 두 가지 이상의 (트리플들 + 추론규칙) 세트로부터 얻어질 수도 있다. 도 4의 경우를 예로 들어 설명하면, 추론 의존성 역색인 테이블(301)에는 [트리플7]이 추론된 트리플 번호로서 두 번(각각 두 번째 행과 세 번째 행)에 걸쳐 나타난다.
이와 같이 추론 의존성 역색인 테이블(301)은 하나의 추론된 트리플 번호가 두 번 이상 색인될 수 있으며, 추론 검증을 위한 추론 의존성 역색인 테이블(301)을 탐색할 때(S603)에 다중의 탐색 결과를 얻는 것이 가능하다. 즉, [트리플7]에 대한 근거 정보로서 바로 위에서 예로 설명한 [규칙2] + [트리플2] + ([규칙1] + [트리플1] + [트리플3]와 함께 [규칙3] + [트리플5] + [트리플6]도 제시된다.
트리플 삭제 시의 점증적 추론을 수행하는 방법에 대한 설명으로, 도 8을 참조하면, 삭제될 트리플이 주어질 때, 우선 이 트리플에 대한 일련번호를 가져온 후, 이 트리플을 트리플 저장소에서 삭제한다(S701).
다음으로, 이 일련번호를 추론 의존성 순색인에서 검색하여 삭제된 트리플에 의존하여 추론된 트리플들의 일련번호들을 모두 가져온 후, 추론 의존성 순색인에서는 삭제한다(S703). 각각의 추론된 트리플 일련번호들을 이번에는 추론 의존성 역색인에서 검색하여 이 추론된 트리플들이 의존하고 있는 트리플들의 일련번호를 가져온 후, 삭제된 트리플의 일련번호가 포함되어 있는 검색 결과들에 대해서는 추론 의존성 역색인에서 삭제한다(S705).
만약, 검색 결과 중에 삭제되지 않은 것(즉, 삭제된 트리플에 의존하지 않고 추론된 경우)이 존재하지 않으면(S707), 추론된 트리플은 삭제된 트리플에 의해서만 추론될 수 있으며 이 트리플 삭제로 인해 더 이상 유효하지 않으므로, 이 추론된 트리플 역시 삭제할 트리플로 설정하여 트리플 뷰(triple_view)를 통해 이 추론된 트리플 번호에 해당하는 트리플을 트리플 저장소에서 삭제(S709)하고 추론 의존성 순색인을 검색하는 단계(S703)로 재귀한다.
만약, 검색 결과 중에 삭제되지 않은 것이 존재하면(S707), 이 추론된 트리플은 또 다른 트리플에 의해서 추론될 수 있어서 계속 유효하므로 삭제되지 않는다.
이를 도 3 및 도 4를 참조하며 설명하면 다음과 같다.
먼저, 일련번호 "1"을 가지는 트리플을 삭제하는 경우를 설명한다. 일련번호 "1"을 가지는 트리플의 삭제 요구에 응답하여 먼저, p테이블(102)에서 첫 번째 행이 삭제된다.
다음으로, 추론 의존성 순색인에서 일련번호 "1"을 키로 검색하고, 검색된 색인내용(여기서는 행(raw))을 삭제한다. 그 결과 도 4에 도시되는 추론 의존성 순색인에서 첫 번째 행이 삭제된다. 이때, 삭제 요구된 트리플에 의존하여 추론된 트리플의 일련번호 "4"가 얻어진다.
다음으로, 추론된 트리플의 일련번호 "4"를 키로 하여 추론 의존성 역색인을 검색하여, 검색 결과 중에서 삭제 요구된 트리플을 가지는 색인 내용이 삭제된다. 그 결과 도 4에 도시된 추론 의존성 역색인에서 첫 번째 행이 삭제된다.
한편, 추론 의존성 역색인에서 삭제 요구된 트리플 "1"이 포함되지 않은 다른 행들이 없으므로, 추론된 트리플 "4"는 삭제 요구된 트리플 "1"에 의해서만 추론되는 것이 된다. 이에 따라 삭제 요구된 트리플 "1"이 삭제되면서 자동적으로 그에 의해서만 추론되는 트리플 "4"도 삭제된다.
다음으로, 일련번호 "2"를 가지는 트리플을 삭제하는 경우를 설명한다. 일련번호 "2"를 가지는 트리플의 삭제 요구에 응답하여 먼저 q테이블(104)에서 첫 번째 행이 삭제된다.
다음으로, 추론 의존성 순색인에서 삭제 요구된 트리플의 일련번호 "2"를 키로 검색하고, 검색된 색인 내용들을 삭제한다. 그 결과 도 4에 도시되는 추론 의존성 순색인에서 두 번째 행이 삭제된다. 이때, 삭제 요구된 트리플 "2"에 의존하여 추론된 트리플의 일련번호 "7"이 얻어진다.
다음으로, 추론된 트리플의 일련번호 "7"을 키로 하여 추론 의존성 역색인을 검색하여, 검색 결과 중에서 삭제 요구된 트리플 "2"를 가지는 색인 내용이 삭제된다. 그 결과 도 4에 도시된 추론 의존성 역색인에서 두 번째 행이 삭제된다.
한편, 추론 의존성 역색인에서 삭제 요구된 트리플 "2"를 포함하지 않는 다른 색인 내용(세 번째 행)이 있으므로, 추론된 트리플 "7"은 삭제 요구된 트리플 "2"이외에도 다른 트리플들에 의해 추론가능한 것이 된다. 이에 따라 삭제 요구된 트리플 "2"가 삭제되더라도 트리플 "2"에 의해 추론된 트리플 "7"은 삭제되면 안된다.
100...트리플 및 규칙 일련번호 할당부 200...추론 수행부
300...추론 의존성 색인부 400...트리플 뷰 생성부

Claims (10)

  1. 트리플에 추론 규칙을 적용하여 다른 트리플을 생성하는 추론 방법에 관련된 트리플을 저장하는 방법에 있어서,
    (a) 추론에 관련된 트리플 및 추론 규칙들 각각에 일련번호를 부가하여 복수의 트리플 테이블 및 추론 규칙 테이블에 각각 저장하는 과정;
    (b) 상기 트리플 및 추론 규칙을 적용하여 추론된 트리플에 대하여 추론에 관련된 트리플 및 추론 규칙의 일련번호를 사용하여 색인하는 과정;
    (c) 물리적으로 여러 개의 트리플 저장 단위(테이블)에 분산되어 저장되는 트리플들을 가상의 하나의 저장 단위(테이블)인 것처럼 접근할 수 있게 하는 트리플 뷰를 생성하는 과정을 포함하는 트리플 저장 방법.
  2. 제1항에 있어서, 상기 색인 과정은
    추론된 트리플의 일련번호를 색인의 키로 하고 추론에 사용된 추론규칙의 일련번호와 추론에 사용된 트리플들의 일련번호를 내용으로 하는 추론 의존성 역색인 테이블; 및
    추론에 사용된 트리플의 일련번호를 색인의 키로 하고 추론된 트리플의 일련번호를 내용으로 하는 추론 의존성 순색인 테이블을 생성하는 것을 특징으로 하는 트리플 저장 방법.
  3. 제2항에 있어서,
    (d) 트리플 삭제 시에 상기 색인과 상기 트리플 뷰를 이용하여 점증적 추론을 수행하는 과정을 더 포함하는 것을 특징으로 하는 트리플 저장 방법
  4. 제3항에 있어서, 상기 (d) 트리플 삭제 시의 점증적 추론을 수행하는 과정은
    삭제 요구된 트리플을 트리플 테이블에서 삭제하는 과정;
    삭제 요구된 트리플의 일련번호를 가지는 색인 내용들을 추론 의존성 순색인에서 검색하고, 삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가져온 후 검색된 색인 내용들을 추론 의존성 순색인에서 삭제하는 과정;
    삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가지는 색인 내용들을 추론 의존성 역색인에서 검색하고, 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있는 색인 내용들을 추론 의존성 역색인에서 삭제하는 과정; 및
    상기 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있지 않은 색인 내용이 없다면 삭제 요구된 트리플에 의존하여 추론된 트리플을 트리플 테이블에서 삭제하는 과정을 포함하는 것을 특징으로 하는 트리플 저장 방법.
  5. 트리플들과 추론규칙들에 일련번호를 붙여서 복수의 트리플 테이블 및 추론 규칙 테이블에 저장하는 트리플 및 규칙 일련번호 할당부;
    명시적으로 존재하는 트리플들에 추론 규칙을 적용하여 새로운 트리플들을 유도하는 추론 수행부;
    추론 검증과 점증적 추론을 지원하기 위해, 추론에 사용된 트리플과 추론 규칙, 추론을 통해 새롭게 추론된 트리플들 사이의 의존 관계를 색인하여 저장하는 추론 의존성 색인부; 및
    상기 복수의 트리플 테이블에 물리적으로 분산되어 저장된 트리플들을 가상으로 하나의 저장 단위에 저장된 것처럼 접근할 수 있게 하는 트리플 뷰(view)를 생성하는 트리플 뷰 생성부; 를 포함하는 추론 의존성 색인 장치.
  6. 제5항에 있어서, 상기 추론 의존성 색인부는
    추론된 트리플의 일련번호를 색인의 키로 하고 추론에 사용된 추론규칙의 일련번호와 추론에 사용된 트리플들의 일련번호를 내용으로 하는 추론 의존성 역색인 테이블; 및
    추론에 사용된 트리플의 일련번호를 색인의 키로 하고 추론된 트리플의 일련번호를 내용으로 하는 추론 의존성 순색인 테이블을 생성하는 것을 특징으로 하는 추론 의존성 색인 장치.
  7. 제6항에 있어서, 상기 추론 의존성 색인부는 트리플 삭제 요구에 응답하여
    삭제 요구된 트리플을 상기 트리플 테이블에서 삭제하고,
    삭제 요구된 트리플의 일련번호를 가지는 색인 내용들을 상기 추론 의존성 순색인에서 검색하고, 삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가져온 후 검색된 색인 내용들을 상기 추론 의존성 순색인에서 삭제하고,
    삭제 요구된 트리플에 의존하여 추론된 트리플들의 일련번호들을 가지는 색인 내용들을 상기 추론 의존성 역색인에서 검색하고, 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있는 색인 내용들을 상기 추론 의존성 역색인에서 삭제하며, 그리고
    상기 검색된 색인 내용들 중에서 삭제된 트리플의 일련번호가 포함되어 있지 않은 색인 내용이 없다면 삭제 요구된 트리플에 의존하여 추론된 트리플을 상기 트리플 테이블에서 삭제하는 것을 특징으로 하는 추론 의존성 색인 장치.
  8. 트리플에 추론 규칙을 적용하여 다른 트리플을 생성하는 추론 장치에 관련된 트리플을 저장하는 장치에 있어서,
    각각에 일련번호가 부가된 트리플들을 저장하는 복수의 트리플 테이블;
    각각에 일련번호가 부가된 추론 규칙들을 저장하는 추론 규칙 테이블;
    트리플 및 추론 규칙을 적용하여 추론된 다른 트리플에 대하여 그것에 적용된 트리플 및 추론 규칙의 일련번호를 사용하여 색인된 결과를 저장하는 추론 의존성 역색인 테이블과 추론 의존성 순색인 테이블; 및
    상기 복수의 트리플 테이블에 물리적으로 분산되어 저장되는 트리플들을 가상의 하나의 저장 단위(테이블)인 것처럼 접근할 수 있게 하는 트리플 뷰; 를 포함하는 트리플 저장 장치.
  9. 각각에 일련번호가 부가된 트리플들을 저장하는 복수의 트리플 테이블, 각각에 일련번호가 부가된 추론 규칙들을 저장하는 추론 규칙 테이블, 트리플 및 추론 규칙을 적용하여 추론된 다른 트리플에 대하여 그것에 적용된 트리플 및 추론 규칙의 일련번호를 사용하여 색인된 결과를 저장하는 추론 의존성 색인 테이블 그리고 상기 복수의 트리플 테이블에 물리적으로 분산되어 저장되는 트리플들을 가상의 하나의 저장 단위(테이블)인 것처럼 접근할 수 있게 하는 트리플 뷰를 포함하는 트리플 저장 장치로부터 추론된 트리플에 대한 추론 검증을 제공하는 방법에 있어서,
    추론 검증이 요구된 추론된 트리플에 대한 일련번호를 획득하는 과정;
    상기 추론된 트리플의 일련번호를 상기 추론 의존성 색인 테이블에서 검색하여 의존 관계에 있는 추론 규칙의 일련번호 및 트리플들의 일련번호들을 획득하는 과정;
    상기 추론규칙 테이블에서 상기 추론 규칙의 일련번호에 상응하는 추론 규칙 정보를 획득하고, 상기 트리플 뷰에서 트리플들의 일련번호에 대한 트리플 정보들을 획득하는 과정; 및
    상기 획득된 추론 규칙 정보와 트리플 정보들을 추론의 근거로서 제시하는 과정을 포함하는 추론 의존성 검증 방법.
  10. 제9항에 있어서,
    상기 트리플 테이블에 기록된 트리플의 삭제 요구에 응답하여,
    삭제 요구된 트리플을 상기 트리플 테이블에서 삭제하고,
    삭제 요구된 트리플의 일련번호에 관련된 색인 내용들을 상기 추론 의존성 색인 테이블에서 삭제하고, 그리고
    삭제 요구된 트리플에 의해서만 추론되는 트리플도 상기 트리플 테이블에서 삭제하는 과정을 더 구비하는 것을 특징으로 하는 추론 의존성 검증 방법.
KR1020100108381A 2010-11-02 2010-11-02 추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치 KR101133993B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020100108381A KR101133993B1 (ko) 2010-11-02 2010-11-02 추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치
US13/510,990 US8688612B2 (en) 2010-11-02 2010-11-04 Method and device for saving triple for verifying reason and incremental reasoning, and method and device for reason-dependent indexing appropriate for same
JP2012541933A JP5352935B2 (ja) 2010-11-02 2010-11-04 推論検証及び漸増的な推論のためのトリプルの格納方法及び装置、並びにこれらに適した推論依存性索引装置
PCT/KR2010/007769 WO2012060490A1 (ko) 2010-11-02 2010-11-04 추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100108381A KR101133993B1 (ko) 2010-11-02 2010-11-02 추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101133993B1 true KR101133993B1 (ko) 2012-04-09

Family

ID=46024598

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100108381A KR101133993B1 (ko) 2010-11-02 2010-11-02 추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치

Country Status (4)

Country Link
US (1) US8688612B2 (ko)
JP (1) JP5352935B2 (ko)
KR (1) KR101133993B1 (ko)
WO (1) WO2012060490A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018097467A1 (ko) * 2016-11-25 2018-05-31 주식회사 다이퀘스트 시맨틱 웹 기반의 스키마 정합성과 인스턴스 유효성 검증 방법 및 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6636631B2 (ja) * 2015-10-30 2020-01-29 コンヴィーダ ワイヤレス, エルエルシー セマンティックiotのためのrestful動作
JP6721036B2 (ja) * 2016-03-15 2020-07-08 日本電気株式会社 推論システム、推論方法、及び、プログラム
WO2020039871A1 (ja) * 2018-08-23 2020-02-27 国立研究開発法人物質・材料研究機構 探索システムおよび探索方法
US11468342B2 (en) * 2018-09-14 2022-10-11 Jpmorgan Chase Bank, N.A. Systems and methods for generating and using knowledge graphs
US10482384B1 (en) 2018-11-16 2019-11-19 Babylon Partners Limited System for extracting semantic triples for building a knowledge base
US20210073655A1 (en) * 2019-09-11 2021-03-11 Sap Se Rule mining for rule and logic statement development

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100040024A (ko) * 2008-10-09 2010-04-19 주식회사 케이티 시맨틱 색인 처리 장치 및 그 방법과 이를 이용한 대용량 시맨틱 레파지토리 시스템
KR20100068983A (ko) * 2008-12-15 2010-06-24 한국과학기술정보연구원 Dbms 기반의 rdf 트리플 저장부에서의 뷰를 이용한 효율적인 추론 시스템 및 방법
KR20100068981A (ko) * 2008-12-15 2010-06-24 한국과학기술정보연구원 메모리 및 DBMS 기반의 하이브리드 Rete 추론 시스템 및 방법

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8719250B2 (en) * 2005-04-18 2014-05-06 Oracle International Corporation Integrating RDF data into a relational database system
JP5056384B2 (ja) 2006-12-21 2012-10-24 富士通株式会社 検索プログラム、方法及び装置
EP1973053A1 (en) * 2007-03-19 2008-09-24 British Telecommunications Public Limited Company Multiple user access to data triples
US20080288442A1 (en) * 2007-05-14 2008-11-20 International Business Machines Corporation Ontology Based Text Indexing
US8401991B2 (en) * 2008-08-08 2013-03-19 Oracle International Corporation Database-based inference engine for RDFS/OWL constructs
US8078646B2 (en) * 2008-08-08 2011-12-13 Oracle International Corporation Representing and manipulating RDF data in a relational database management system
US8250106B2 (en) * 2009-11-18 2012-08-21 Oracle International Corporation Incremental inference

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100040024A (ko) * 2008-10-09 2010-04-19 주식회사 케이티 시맨틱 색인 처리 장치 및 그 방법과 이를 이용한 대용량 시맨틱 레파지토리 시스템
KR20100068983A (ko) * 2008-12-15 2010-06-24 한국과학기술정보연구원 Dbms 기반의 rdf 트리플 저장부에서의 뷰를 이용한 효율적인 추론 시스템 및 방법
KR20100068981A (ko) * 2008-12-15 2010-06-24 한국과학기술정보연구원 메모리 및 DBMS 기반의 하이브리드 Rete 추론 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DBMS기반 트리플 저장소에서 뷰를 이용한 효율적인 추론(이승우 외 2명, 한국콘텐츠학회 2009 춘계종합학술대회) *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018097467A1 (ko) * 2016-11-25 2018-05-31 주식회사 다이퀘스트 시맨틱 웹 기반의 스키마 정합성과 인스턴스 유효성 검증 방법 및 장치

Also Published As

Publication number Publication date
JP5352935B2 (ja) 2013-11-27
US20130212057A1 (en) 2013-08-15
JP2013511788A (ja) 2013-04-04
WO2012060490A1 (ko) 2012-05-10
US8688612B2 (en) 2014-04-01

Similar Documents

Publication Publication Date Title
KR101133993B1 (ko) 추론 검증 및 점증적 추론을 위한 트리플 저장 방법 및 장치 그리고 이에 적합한 추론 의존성 색인 방법 및 장치
Ramage et al. Clustering the tagged web
US20090083314A1 (en) Method of Manipulating Information Objects and of Accessing Such Objects in a Computer Environment
US20160179979A1 (en) Semantic indexing engine
Liu et al. An incremental and distributed inference method for large-scale ontologies based on mapreduce paradigm
WO2009051488A1 (en) A method for restricting access to search results and a search engine supporting the method
Moreno-Vega et al. GraFa: Scalable faceted browsing for RDF graphs
De Virgilio et al. A similarity measure for approximate querying over RDF data
Farnan et al. PAQO: Preference-aware query optimization for decentralized database systems
Khaled et al. A token-based access control system for RDF data in the clouds
Campos et al. Searching the unsearchable: Inducing serendipitous insights
Hwang et al. Binrank: Scaling dynamic authority-based search using materialized subgraphs
Deng et al. Information re-finding by context: A brain memory inspired approach
Safar et al. OntoRefiner, a user query refinement interface usable for Semantic Web Portals.
Ning et al. Practical and effective IR-style keyword search over semantic web
KR20160027455A (ko) 대용량 rdf 데이터 관리 방법 및 장치
Gadkari et al. Implementing joins over HBase on cloud platform
Bodra Processing queries over partitioned graph databases: An approach and it’s evaluation
Liu et al. What happened then and there: Top-k spatio-temporal keyword query
Mammo et al. Distributed sparql over big rdf data: A comparative analysis using presto and mapreduce
Jia et al. QRDF: An efficient RDF graph processing system for fast query
Gampala et al. Multi-keyword synonym search over encrypted cloud data using classified category-dictionary and BMIS tree
Sagiv A personal perspective on keyword search over data graphs
Singh et al. Efficient algorithm for web search query reformulation using genetic algorithm
Husain Data intensive query processing for Semantic Web data using Hadoop and MapReduce

Legal Events

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

Payment date: 20150312

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160202

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161228

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee