KR20130005967A - 개체 식별 결과 검색 시스템 및 방법 - Google Patents

개체 식별 결과 검색 시스템 및 방법 Download PDF

Info

Publication number
KR20130005967A
KR20130005967A KR1020110067703A KR20110067703A KR20130005967A KR 20130005967 A KR20130005967 A KR 20130005967A KR 1020110067703 A KR1020110067703 A KR 1020110067703A KR 20110067703 A KR20110067703 A KR 20110067703A KR 20130005967 A KR20130005967 A KR 20130005967A
Authority
KR
South Korea
Prior art keywords
entity
identification result
group
identifier
query
Prior art date
Application number
KR1020110067703A
Other languages
English (en)
Other versions
KR101243056B1 (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 KR1020110067703A priority Critical patent/KR101243056B1/ko
Priority to PCT/KR2011/007357 priority patent/WO2013008978A1/ko
Publication of KR20130005967A publication Critical patent/KR20130005967A/ko
Application granted granted Critical
Publication of KR101243056B1 publication Critical patent/KR101243056B1/ko

Links

Images

Classifications

    • 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/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 개체 식별 결과 검색 시스템 및 방법에 관한 것으로, 개체들에 대한 속성정보가 온톨로지로 저장된 다중 온톨로지 데이터베이스, 질의어가 입력된 경우, 상기 질의어에 대한 식별결과를 트리플 저장모듈로부터 획득하고, 상기 획득된 식별결과를 상기 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하여 개체식별 필요 여부를 판단하고, 개체식별이 필요한 경우 상기 다중 온톨로지 데이터베이스로부터 식별대상 개체의 속성정보를 획득 및 비교하여 개체들을 식별하고, 상기 개체식별에 따른 결과정보를 제공하는 개체식별결과 검색장치를 포함한다.
따라서 본 발명에 따르면, Linked Data에 포함된 다중 온톨로지의 속성 정보를 이용하여 다양한 유형의 개체들을 점진적으로 식별할 수 있다.

Description

개체 식별 결과 검색 시스템 및 방법{System and Method for searching of entity identification result}
본 발명은 개체 식별 결과 검색 시스템 및 방법에 관한 것으로서, 더욱 상세하게는 질의어가 입력된 경우, 상기 질의어에 대한 식별결과를 트리플 저장모듈로부터 획득하고, 상기 획득된 식별결과를 상기 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하여 개체식별 필요 여부를 판단하고, 개체식별이 필요한 경우 식별대상 개체의 속성정보를 획득 및 비교하여 상기 질의어에 대한 개체들을 식별하고, 상기 개체식별에 따른 결과정보를 제공하는 개체 식별 결과 검색 시스템 및 방법에 관한 것이다.
정보의 공유 및 연계의 중요성이 부각되면서 온톨로지를 지식 표현 모델로 사용하는 웹 서비스들이 증가하고 있고, 최근 시멘틱 웹(Semantic Web)의 연구와 관련하여 온톨로지(Ontology)를 이용한 데이터 모델이 주목받고 있다.
시맨틱 웹을 이용한 응용에는 에이전트간의 자동화된 통신, 웹 서비스 자동화, 유비쿼터스 환경에서의 의미기반 검색 서비스, 이종 멀티미디어 데이터베이스로부터의 정보검색 등이 있다. 그러나, 이러한 응용들은 기본적으로 모든 에이전트들이 공통된 온톨로지를 참조한다는 것을 가정하고 있다. 만약, 이들 에이전트들이 공통의 온톨로지를 참조하고 있지 않은 상황이라면 그러한 응용은 불가능하게 된다. 즉, 시맨틱 웹은 기존의 웹과 마찬가지로 분산되어 있고 이질적인 특징을 가지기 때문에 모든 에이전트들이 공통의 온톨로지를 참조한다고 가정하기가 어렵다.
예를 들어, 한 에이전트는 사람이 사는 집의 주소를 “address”라고 기술한 온톨로지를 참조하고 있고, 다른 에이전트는 그것을 “postal_address”라고 기술한 온톨로지를 참고하고 있다면 동일한 것을 서로 다르게 표현하게 되어 두 에이전트간에 통신이 불가능하게 된다.
또한, 시맨틱 웹 데이터의 연계·활용을 위해서 필요한 URI(Uniform Resource Identifier)의 정합성을 확보하기 위한 기존 연구들은 개체 식별의 유형이 제한적이고, 점진적으로 추가되는 온톨로지의 실시간 개체 식별을 효과적으로 지원하지 못하며, 개체 식별 관계에 포함된 오류를 그대로 활용하는 등의 한계를 가지고 있다.
또한, 개체 식별 결과를 시각적으로 확인하고, 동적으로 수정하며, 수정된 결과를 개체 식별에 바로 활용할 수 있는 관리 서비스를 제공하지 못하고 있다.
등록특허 제866548호(2008.10.28), 발명의 명칭:온톨로지 인스턴스의 sameAS 관리 시스템 및 그 방법 등록특허 제842263호(2008.06.24), 발명의 명칭:온톨로지간 유사개념 매핑 방법 및 그 장치
본 발명은 상기한 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은 Linked Data에 포함된 다중 온톨로지의 속성 정보를 이용하여 다양한 유형의 개체들을 점진적으로 식별할 수 있는 개체 식별 결과 검색 시스템 및 방법을 제공하는데 있다.
본 발명의 다른 목적은 다중 온톨로지의 속성 정보를 이용하여 온톨로지들을 동일 유형과 개체로 그룹화하고, 그룹별 주요 속성 비교를 통해 개체를 식별함으로써 동일 개체 식별의 정확도를 향상하는 것은 물론, 외부 서비스와 비교를 통해 추가된 URI만을 대상으로 점진적 개체 식별 기능을 지원할 수 있는 개체 식별 결과 검색 시스템 및 방법을 제공하는데 있다.
본 발명의 또 다른 목적은 한 사용자가 개체명이나 URI 검색을 통해 Linked Data의 개체-URI 부여 현황과 관련 속성을 확인하고, 보유 데이터와의 연계를 위한 개체명 또는 URI를 추천받을 수 있는 개체 식별 결과 검색 시스템 및 방법을 제공하는데 있다.
본 발명의 또 다른 목적은 동적으로 식별된 개체 식별 결과를 편집할 수 있고, 편집 결과를 추가된 URI를 식별하는데 사용함으로써 점진적으로 증가하는 URI에 대한 빠르고, 정확한 식별이 가능하며, 사용자가 개체 식별의 결과를 가시적으로 확인하고, 결과를 수정하며, 수정된 결과가 바로 개체 식별에 반영되는 관리 서비스를 제공할 수 있는 개체 식별 결과 검색 시스템 및 방법을 제공하는데 있다.
상기 목적들을 달성하기 위하여 본 발명의 일 측면에 따르면, 개체들에 대한 속성정보가 온톨로지로 저장된 다중 온톨로지 데이터베이스, 질의어가 입력된 경우, 상기 질의어에 대한 식별결과를 트리플 저장모듈로부터 획득하고, 상기 획득된 식별결과를 상기 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하여 개체식별 필요 여부를 판단하고, 개체식별이 필요한 경우 상기 다중 온톨로지 데이터베이스로부터 식별대상 개체의 속성정보를 획득 및 비교하여 상기 질의어에 대한 개체들을 식별하고, 상기 개체식별에 따른 결과정보를 제공하는 개체식별결과 검색장치를 포함하는 개체 식별 결과 검색 시스템이 제공된다.
상기 트리플 저장모듈에는 각 개체에 대한 개체식별결과가 트리플 형태로 저장되어 있다.
상기 개체식별결과 검색장치는 상기 트리플 저장모듈로부터의 식별결과에 의한 개체 식별자 목록과 상기 다중 온톨로지 데이터베이스로부터의 식별결과에 의한 개체 식별자 목록을 비교하고, 상기 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 개체 식별자 목록에 신규 개체 식별자가 포함되어 있는 경우, 개체식별이 필요하다고 판단하고 그 신규 개체 식별자를 식별대상 개체로 한다.
또한, 상기 개체식별결과 검색장치는 상기 다중 온톨로지 데이터베이스로부터 획득된 식별대상 개체들의 속성정보에서 유형을 나타내는 속성을 이용하여 개체 유형에 따라 그룹화하고, 각 개체들의 대표 속성을 기준으로 상기 개체 유형에 따라 그룹화된 각 그룹들을 다시 그룹화한 후, 상기 재그룹화된 각 그룹별로 개체들의 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득하여 비교하고, 상기 비교결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 생성한다.
또한, 상기 개체식별결과 검색 장치는 상기 질의어에 대한 개체 식별자 그룹별로 대표 개체 식별자 또는 대표 개체명을 선정하고, 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 중 적어도 하나를 포함하는 개체 식별자 그룹 요약 정보를 개체 식별에 따른 결과정보로 제공한다.
또한, 상기 개체식별결과 검색장치는 개체식별결과의 수정, 삭제, 이동 중 적어도 하나에 의한 편집이 수행된 경우, 상기 편집된 정보를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트하고, 상기 업데이트된 개체식별결과는 추후 상기 질의어에 대한 개체식별에 이용된다.
본 발명의 다른 측면에 따르면, 각 개체에 대한 개체 식별결과가 트리플 형태로 저장된 트리플 저장모듈, 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하는지의 여부를 판단하고, 존재하는 경우 상기 트리플 저장모듈로부터 획득된 상기 질의어에 대한 식별결과에 의한 개체 식별자 목록과 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과에 의한 개체 식별자 목록을 비교하는 개체 식별자 목록 비교 모듈, 상기 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 개체 식별자 목록에 신규 개체 식별자가 포함되어 있는 경우, 상기 신규 개체 식별자에 대한 속성정보를 획득 및 비교하여 상기 질의어에 대한 개체 식별을 수행하고, 상기 개체 식별에 의해 상기 질의어에 대한 개체 식별자 그룹을 생성하는 개체 식별모듈, 상기 생성된 개체 식별자 그룹별로 대표명을 선정 및 적용하고, 상기 대표명이 적용된 개체식별결과를 상기 트리플 저장모듈에 저장 및 업데이트하는 대표명 선정 모듈, 상기 개체식별결과에 대한 정보를 상기 트리플 저장모듈로부터 획득하여 가시화하는 가시화 모듈을 포함하는 개체식별결과 검색 장치가 제공된다.
상기 개체식별결과 검색 장치는 상기 가시화된 개체식별결과에 대한 수정, 삭제, 이동 중 적어도 하나에 의한 편집이 수행된 경우, 그 편집 결과를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트하고, 상기 업데이트된 개체식별결과는 추후 상기 질의어에 대한 개체식별에 이용되도록 하는 편집 모듈을 더 포함할 수 있다.
상기 개체 식별자 목록 비교 모듈은 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하지 않은 경우, 상기 다중 온톨로지 데이터베이스로부터 상기 질의어에 대한 식별결과를 수집하여 상기 가시화 모듈을 통해 가시화되도록 한다.
상기 트리플 저장모듈에는 각 개체에 대한 개체 식별자 그룹 요약 정보, 편집된 개체 식별자 그룹 요약 정보가 저장되어 있다.
상기 질의어는 개체명 또는 URI의 형태이다.
상기 개체 식별모듈은 상기 신규 개체 식별자의 속성정보를 상기 다중 온톨로지 데이터베이스로부터 획득하여 개체 유형을 기준으로 그룹화하고, 상기 개체 유형에 따른 그룹별로 각 개체들의 대표 속성을 기준으로 다시 그룹화 한 후, 상기 재그룹화된 각 그룹별로 개체들에 대한 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득 및 비교하고, 상기 비교 결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 결정한다.
상기 대표명 선정 모듈은 상기 생성된 개체 식별자 그룹별로 각 그룹에 속한 개체 식별자와 개체명의 통계 값을 이용하여 각 그룹에 대한 대표 식별자 또는 대표 개체명을 선정한다.
상기 개체식별결과에 대한 정보는 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 중 적어도 하나를 포함하는 개체 식별자 그룹 요약 정보를 포함한다.
상기 가시화 모듈은 질의어 입력 영역, 온톨로지 데이터베이스 연계 명령, 개체 식별자 그룹 요약 목록, 개체 식별자 그룹 요약 그래프, 각 그룹에 대한 상세 개체 식별자 목록, 식별 명령, 편집 명령 중 적어도 하나를 포함하는 개체식별결과 제공 화면을 출력한다.
상기 개체식별결과 제공화면에서 식별 명령이 선택된 경우, 트리플 저장모듈에 업데이트된 개체식별결과에 대한 정보가 출력되고, 상기 각 그룹에 대한 개체 식별자 목록 중에서 하나의 개체 식별자 목록이 선택되면, 개체 식별에 대한 검증 결과가 상기 개체식별결과 제공 화면의 일정 영역에 출력된다.
상기 편집 명령에 의해 개체 식별자 그룹의 대표 개체명 또는 대표 개체 식별자, 서로 다른 그룹을 합병 또는 하나의 그룹을 서로 다른 그룹으로 분할, 특정 그룹에 속한 개체 식별자를 다른 그룹으로 이동 중 적어도 하나의 편집을 수행한다.
본 발명의 다른 측면에 따르면, 개체식별결과 검색장치가 질의어에 대한 개체식별결과를 제공하는 방법에 있어서, (a)질의어가 입력된 경우, 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하는지의 여부를 판단하는 단계, (b) 상기 판단결과 존재하는 경우, 상기 트리플 저장모듈로부터 획득된 상기 질의어에 대한 식별결과를 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하는 단계, (c)상기 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 식별결과에 신규 개체 식별자가 포함되어 있는 경우, 상기 신규 개체 식별자에 대한 속성정보를 획득 및 비교하여 상기 질의어에 대한 개체 식별을 수행하고, 상기 개체 식별에 의해 상기 질의어에 대한 개체 식별자 그룹을 생성하는 단계, (d)상기 생성된 개체 식별자 그룹별로 대표명을 선정 및 적용하고, 상기 대표명이 적용된 개체식별결과를 상기 트리플 저장모듈에 저장 및 업데이트하는 단계를 포함하는 개체식별결과 검색 방법이 제공된다.
상기 개체식별결과검색 방법은 상기 개체식별결과에 대한 정보를 상기 트리플 저장모듈로부터 획득하여 가시화하는 단계를 더 포함할 수 있다.
또한, 개체식별결과 검색 방법은 상기 가시화된 개체식별결과에 대한 수정, 삭제, 이동 중 적어도 하나에 의한 편집이 수행된 경우, 그 편집 결과를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트하는 단계를 더 포함할 수 있다.
상기 (b) 단계에서 상기 (a)단계의 판단결과, 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하지 않은 경우, 상기 다중 온톨로지 데이터베이스로부터 상기 질의어에 대한 식별결과를 수집하여 가시화한다.
상기 (b) 단계는 상기 트리플 저장모듈로부터의 식별결과에 의한 개체 식별자 목록과 상기 다중 온톨로지 데이터베이스로부터의 식별결과에 의한 개체 식별자 목록을 비교한다.
상기 질의어는 개체명 또는 URI의 형태일 수 있다.
상기 (c)단계는 상기 신규 개체 식별자의 속성정보를 상기 다중 온톨로지 데이터베이스로부터 획득하여 개체 유형을 기준으로 그룹화하고, 상기 개체 유형에 따른 그룹별로 각 개체들의 대표 속성을 기준으로 다시 그룹화 한 후, 상기 재그룹화된 각 그룹별로 개체들에 대한 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득 및 비교하고, 상기 비교 결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 결정하는 것을 말한다.
상기 (d)단계는 상기 생성된 개체 식별자 그룹별로 각 그룹에 속한 개체 식별자와 개체명의 통계 값을 이용하여 각 그룹에 대한 대표 식별자 또는 대표 개체명을 선정한다.
상기 개체식별결과에 대한 정보는 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 중 적어도 하나를 포함하는 개체 식별자 그룹 요약 정보를 포함한다.
상술한 바와 같이 본 발명에 따르면, Linked Data에 포함된 다중 온톨로지의 속성 정보를 이용하여 다양한 유형의 개체들을 점진적으로 식별할 수 있다.
또한, 다중 온톨로지의 속성 정보를 이용하여 온톨로지들을 동일 유형과 개체로 그룹화하고, 그룹별 주요 속성 비교를 통해 개체를 식별함으로써 동일 개체 식별의 정확도를 향상하는 것은 물론, 외부 서비스와 비교를 통해 추가된 URI만을 대상으로 점진적 개체 식별 기능을 지원할 수 있다.
또한, 한 사용자가 개체명이나 URI 검색을 통해 Linked Data의 개체-URI 부여 현황과 관련 속성을 확인하고, 보유 데이터와의 연계를 위한 개체명 또는 URI를 추천받을 수 있다.
또한, 동적으로 식별된 개체 식별 결과를 편집할 수 있고, 편집 결과를 추가된 URI를 식별하는데 사용함으로써 점진적으로 증가하는 URI에 대한 빠르고, 정확한 식별이 가능하며, 사용자가 개체 식별의 결과를 가시적으로 확인하고, 결과를 수정하며, 수정된 결과가 바로 개체 식별에 반영되는 관리 서비스를 제공할 수 있다.
또한, URI 관리 서비스를 통해 개체-URI 관계를 동적으로 수정하고 삭제하는 것은 물론, 대표 URI·대표 개체명의 선정, 개체 식별 알고리즘을 적용한 개체 식별 결과를 확인할 수 있으며, 이를 통해 보유 데이터와 Linked Data 연계 정합성을 높임으로써, 시맨틱 웹의 효율성을 극대화할 수 있다.
또한, 개체 식별 결과와 사용자의 편집 결과를 추가된 URI를 식별하는데 사용함으로써 점진적으로 증가하는 URI에 대한 빠르고 정확한 식별이 가능하고, 사용자가 개체 식별의 결과를 가시적으로 확인하여 결과를 수정하며, 수정된 결과를 바로 개체 식별에 반영할 수 있다.
도 1은 본 발명에 따른 개체 식별 결과 검색 시스템을 나타낸 도면.
도 2는 본 발명에 따른 개체식별결과 검색 장치의 구성을 개략적으로 나타낸 블럭도.
도 3은 도 2에 도시된 개체 식별 모듈을 구체적으로 나타낸 블럭도.
도 4는 본 발명에 따른 개체식별결과 검색 장치가 개체 식별 결과를 검색 및 제공하는 방법을 나타낸 흐름도.
도 5는 본 발명에 따른 개체식별결과 검색 장치가 개체를 식별하는 방법을 나타낸 흐름도.
도 6은 본 발명에 따른 개체 식별결과 검색 화면을 나타낸 예시도.
본 발명의 전술한 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.
먼저 본 발명에서 이용되는 용어에 대하여 살펴보기로 한다.
Linked Data는 차세대 웹의 가장 핵심이 되는 데이터 네트워크를 위한 운동이며, 실천강령이다. 웹에서 자유롭게 데이터를 개방하여 연계할 수 있도록 하고, 이들 데이터가 다시 협업할 수 있게 하여 진정한 데이터 웹을 실현하고자 하는 것이다. 때문에 웹에서의 데이터 유통을 위한 HTTP(hypertext transfer protocol)를 사용하고, 연계 및 접근성을 보장하기 위한 RDF(Resource Description Framework와 SPARQL(Simple Protocol and RDF Query Language)를 사용한다. 상기 SPARQL은 온톨로지에 포함된 정보를 질의하기 위해 사용되는 표준 질의 언어로 DBMS(database management system)의 SQL(structured query language)와 유사한 기능을 수행한다.
또한, Linked Data는 특정 개념을 URI(Uniform Resource Identifier)로 명명하고, HTTP를 통해 URI로 명명된 리소스에 접근할 수 있으며, URI에 접근했을 때 RDF 기반의 URI가 포함하고 있는 상세 정보를 제공하고, RDF에 포함되어 있는 또 다른 관련 있는 개념으로 접근할 수 있도록 한다.
URI는 클래스와 속성, 개체들에 대한 식별자로서 웹을 통해 정보자원을 공유하기 위해서 웹 상의 유일한 주소로 매핑되어 사용된다. 즉, URL를 통해 클래스나 속성, 개체의 정보에 접근하기 위해 사용되는 인터넷 주소이자 식별자를 말한다. 상기 URI는 개체 식별자라는 용어로 이용된다.
온톨로지는 특정 분야의 관련된 문서로부터 온톨로지에 구축할 온톨로지의 구성 요소 즉, 개념, 개념의 속성, 개념 간 연결 관계 등에 관한 지식을 얻어 개념과 속성을 정의하고 개념과 개념의 관계를 설정하여 구축된다. 시맨틱 웹에서는 개념이 URI로 표현된다. 예를 들어, "Person" 클래스의 경우 온톨로지에서는 "http://www.etri.re.kr/example#Person"과 같은 URI로 표현된다.
"Person" 클래스는 name, age, birthplace 등의 속성을 가진다. "name" 속성은 그 값으로 문자열(string)을 가질 수 있고, "age" 속성은 그 값으로 정수 (integer)를 가질 수 있고, "birthplace" 속성은 그 값으로 "Location"의 인스턴스를 가질 수 있다.
개체 식별은 온톨로지를 구성하는 클래스, 속성, 개체들이 상호 연계되도록 하기 위해 URI에 대한 관계를 명확하게 설정하는 것을 말한다. 예를 들어, A 온톨로지의 A-1 개체가 B 온톨로지의 B-1개체와 동일한 경우 A-1 개체와 B-1 개체가 동일한 관계임을 명시함으로써 A-1과 B-1을 관련 속성들을 병합할 수 있도록 한다.
도 1은 본 발명에 따른 개체 식별 결과 검색 시스템을 나타낸 도면이다.
도 1을 참조하면, 개체 식별 결과 검색 시스템은 각 개체에 대한 속성정보가 온톨로지로 저장된 다중 온톨로지 데이터베이스(300a,..., 300n, 이하 300이라 칭함), 특정 URI와 연관된 개체(URI)들에 대한 관계를 설정하는 개체식별을 수행하여 그 결과를 제공하는 개체식별결과 검색 장치(100)를 포함한다.
상기 다중 온톨로지 데이터베이스(300)는 Sindice.com 서비스, sameAs.org 서비스 등과 같은 서비스를 제공하는 서버일 수 있다. 여기서, 상기 Sindice.com 서비스는 시맨틱 웹 검색엔진으로 다양한 형식의 온톨로지를 실시간으로 계속 수집한 후, 개체명이 입력되면 해당 개체명이 나타난 URI와 관련 온톨로지를 검색 결과로 제공하는 서비스를 말한다.
상기 sameAs.org 서비스는 다양한 온톨로지에서 수집된 동일 개체 관계를 표현하는 URI들을 수집해서 개체명이나 URI를 검색하는 경우 미리 식별된 결과를 그룹화해서 제공하는 서비스를 말한다.
상기 개체식별결과 검색 장치(100)는 개체명 또는 URI에 의한 질의어가 입력된 경우, 상기 질의어에 대한 식별결과를 트리플 저장모듈로부터 획득하고, 상기 획득된 식별결과를 상기 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하여 개체식별 필요 여부를 판단하고, 개체식별이 필요한 경우 상기 다중 온톨로지 데이터베이스로부터 식별대상 개체의 속성정보를 획득 및 비교하여 상기 질의어와 연관된 개체들을 식별하고, 상기 개체식별에 따른 결과정보를 제공한다. 여기서, 상기 트리플 저장모듈에는 각 개체에 대한 개체식별결과가 트리플 형태로 저장되어 있다. 상기 질의어와 연관된 개체들을 식별한다는 것은 상기 질의어와 연관된 개체들을 획득하여 상기 질의어와 상기 획득된 개체들간에 동의어, 유의어 등의 관계를 설정하는 것을 말한다.
상기 개체식별결과 검색 장치(100)는 Linked Data에 포함된 다중 온톨로지 데이터베이스(300)로부터의 속성 정보를 이용하여 다양한 유형의 개체들을 점진적으로 식별한다.
또한, 상기 개체식별결과 검색장치(100)는 상기 트리플 저장모듈로부터의 식별결과에 의한 개체 식별자 목록과 상기 다중 온톨로지 데이터베이스로부터의 식별결과에 의한 개체 식별자 목록을 비교하고, 상기 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 개체 식별자 목록에 신규 개체 식별자가 포함되어 있는 경우, 개체식별이 필요하다고 판단하고 그 신규 개체 식별자를 식별대상 개체로 정한다.
그런 다음 상기 개체 식별결과 검색 장치(100)는 SPARQL endpoint를 통해서 상기 다중 온톨로지 데이터베이스(300)로부터 상기 신규 개체 식별자의 속성정보를 수집하고, 상기 신규 개체 식별자의 속성정보와 상기 트리플 저장모듈로부터 획득된 식별결과를 이용하여 개체 식별을 수행한다. 여기서, 상기 SPARQL endpoint는 상기 다중 온톨로지 데이터베이스(300)에 접근할 수 있도록 하는 서비스 접점을 말하고, 웹서비스를 통해 해당 온톨로지 정보를 RDF나 기타 다양한 형식으로 제공한다.
또한, 상기 개체식별결과 검색 장치(100)는 개체식별결과의 수정, 삭제, 이동 중 적어도 하나에 의한 편집이 수행된 경우, 상기 편집된 정보를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트하고, 상기 업데이트된 개체식별결과는 추후 상기 질의어에 대한 개체식별에 활용된다.
상기와 같은 역할을 수행하는 개체식별결과 검색 장치(100)에 대한 상세한 설명은 도 2를 참조하기로 한다.
도 2는 본 발명에 따른 개체식별결과 검색 장치의 구성을 개략적으로 나타낸 블럭도, 도 3은 도 2에 도시된 개체 식별 모듈을 구체적으로 나타낸 블럭도이다.
도 2를 참조하면, 개체식별결과 검색 장치(100)는 다중 온톨로지 데이터베이스와의 통신을 위한 통신 모듈(110), 사용자로부터 질의어를 입력받는 사용자 인터페이스 모듈(120), 트리플 저장모듈(130), 개체 식별자 목록 비교 모듈(140), 개체 식별 모듈(150), 대표명 선정 모듈(160), 가시화 모듈(170), 편집 모듈(180)을 포함한다.
상기 트리플 저장모듈(130)에는 각 개체에 대한 개체 식별결과가 트리플 형태로 저장되어 있다. 즉, 상기 트리플 저장모듈(130)에는 각 개체에 대한 개체 식별자 그룹 요약 정보, 편집된 개체 식별자 그룹 요약 정보가 저장되어 있다. 상기 개체 식별자 그룹 요약 정보는 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 등을 포함한다.
또한, 상기 트리플 저장 모듈(130)에는 개체 유형에 대한 정보와 유형별 대표 속성값, 함께 고려해야 할 하부 속성이 온톨로지 형태로 저장되어 있다. 즉, 트리플 저장모듈(130)에는 다중 온톨로지 정보 중 개체 식별에 필요한 정보와 식별결과만 저장되고, 다른 정보들은 다중 온톨로지 데이터베이스에 실시간으로 접근해서 획득하게 된다.
상기 개체 식별자 목록 비교모듈(140)은 상기 통신모듈(110)을 통해 수신 또는 상기 사용자 인터페이스 모듈(120)를 통해 입력된 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하는지의 여부를 판단하고, 존재하는 경우 상기 트리플 저장모듈로부터 획득된 상기 질의어에 대한 식별결과와 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과를 비교한다. 여기서 상기 질의어는 개체명 또는 URI의 형태이고, 상기 질의어에 대한 식별결과는 상기 질의어와 관계를 가진 개체들의 식별에 의해 생성된 개체 식별자 목록일 수 있다.
또한, 상기 개체 식별자 목록 비교 모듈(140)은 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈(130)에 존재하지 않은 경우, 상기 다중 온톨로지 데이터베이스로부터 상기 질의어에 대한 식별결과를 획득하여 상기 가시화 모듈(170)을 통해 가시화되도록 한다. 이때, 상기 가시화 모듈(170)을 통해 가시화된 식별결과는 동일관계, 유사관계 등과 같이 상기 질의어와 연관된 개체들의 관계가 설정된 개체 식별자 그룹 요약 정보일 수 있다.
상기 개체 식별 모듈(150)은 상기 개체 식별자 목록 비교 모듈(140)의 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 개체 식별자 목록에 신규 개체 식별자가 포함되어 있는 경우, 상기 신규 개체 식별자에 대한 속성정보를 획득 및 비교하여 개체 식별을 수행하고, 상기 개체 식별에 의해 상기 질의어에 대한 개체 식별자 그룹을 생성한다. 즉, 상기 개체 식별 모듈(150)은 상기 다중 온톨로지 데이터베이스로부터 획득된 개체 식별자 목록에 신규 개체 식별자 목록이 포함되어 있는 경우, 상기 신규 개체 식별자에 대한 개체 식별이 필요하다고 판단하여 상기 신규 개체 식별자에 대한 개체 식별을 수행하게 된다.
상기와 같은 개체 식별 모듈(150)에 대해 도 3을 참조하여 좀더 상세히 설명하기로 한다.
도 3을 참조하면, 개체 식별 모듈(150)은 속성정보 수집부(151), 제1 그룹화부(152), 제2 그룹화부(153), 개체 식별자 그룹 결정부(154), 검증부(155)를 포함한다.
상기 속성정보 수집부(151)는 상기 신규 개체 식별자의 속성정보를 상기 다중 온톨로지 데이터베이스로부터 수집한다. 예를 들면, 신규 개체 식별자가 "홍길동"에 대한 URI인 경우, 상기 속성정보 수집부(151)는 상기 다중 온톨로지 데이터베이스로부터 홍길동에 대한 나이, 직업, 출생지, e-mail 주소 등의 속성정보를 수집한다.
상기 제1 그룹화부(152)는 상기 속성정보 수집부(151)에서 수집된 속성정보 중에서 유형을 나타내는 속성을 이용하여 개체 유형에 따라 상기 신규 개체 식별자를 그룹화한다. 즉, 상기 제1 그룹화부(152)는 상기 수집된 속성정보 중에서 유형을 나타내는 속성을 이용하여 상기 신규 개체 식별자의 개체 유형을 판단하고, 상기 질의어에 대한 개체 식별자 그룹 중에서 상기 신규 개체 식별자의 유형에 해당하는 그룹을 선택하여 상기 신규 개체 식별자의 그룹으로 할당한다.
상기 제2 그룹화부(153)는 기 저장된 속성정보 테이블에서 상기 개체 유형에 따른 그룹별로 동일 속성 매핑 정보와 대표 속성을 로딩하고, 각 개체들의 대표 속성을 기준으로 상기 개체 유형에 따른 그룹들을 다시 그룹핑한다. 즉, 상기 제2 그룹화부(153)는 개체 유형별 개체 식별자의 대표 속성명을 기준으로 속성값에 해당하는 문자열의 유사도를 계산하고, 상기 구해진 유사도가 일정 임계값 이상을 가지는 개체 식별자들을 동일 그룹으로 그룹핑한다. 예를 들면, 사람의 경우 대표 속성은 인명이므로, 인명에 해당하는 문자열의 유사도를 계산하고, 그 계산된 유사도가 일정 임계값 이상을 가지는 개체 식별자들을 동일 그룹으로 만든다.
상기 개체 식별자 그룹 결정부(154)는 상기 제2 그룹화부(153)에서 그룹핑된 각 그룹의 개체들에 대한 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득 및 비교하고, 상기 비교 결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 결정한다. 즉, 상기 개체 식별자 그룹 결정부(154)는 각 그룹내 개체들의 연관 속성값을 상기 다중 온톨로지 데이터베이스에서 획득하고, 모든 개체들의 연관 속성값 중에서 같은 속성값을 가지는 개체 식별자가 있는지 확인하여, 같은 속성값을 가지는 개체 식별자가 있는 경우, 같은 속성값을 가지는 개체 식별자들을 묶어서 서브 그룹으로 만든다. 이때, 같은 속성값을 가지는 개체 식별자가 없는 경우에는 상기 제2 그룹화부(153)에서 그룹핑된 그룹을 유지한다.
예를 들어, "홍길동"이라는 대표 속성값을 가지는 개체 식별자(URI)의 경우, 상기 개체 식별자 그룹 결정부(154)는 상기 다중 온톨로지 데이터베이스로부터 "홍길동"에 대한 연관 속성값인 "직장", "e-mail 주소"를 획득하고, 상기 연관 속성값인 "직장" 및 "e-mail 주소"가 같은 홍길동은 같은 그룹으로 만든다. 상기와 같은 방법에 의해 상기 개체 식별자 그룹 결정부(154)는 같은 속성값을 가지는 개체 식별자들을 묶어서 서브 그룹으로 만들 수 있다.
상기 검증부(155)는 신규 개체 식별자에 대한 개체 식별자 그룹을 결정하는 과정을 반복하여 상기 개체 식별자 그룹 결정부(154)에서 결정된 개체 식별자 그룹에 대한 검증을 수행한다.
다시 도 2를 참조하면, 상기 대표명 선정 모듈(160)은 상기 개체 식별 모듈(150)에서 생성된 개체 식별자 그룹별로 대표명을 선정 및 적용하고, 상기 대표명이 적용된 개체식별결과를 상기 트리플 저장모듈(130)에 저장 및 업데이트한다. 이때, 상기 대표명 선정 모듈(160)은 상기 생성된 개체 식별자 그룹별로 각 그룹에 속한 개체 식별자와 개체명의 통계 값을 이용하여 각 그룹에 대한 대표 식별자 또는 대표 개체명을 선정한다.
상기 가시화 모듈(170)은 상기 대표명 선정 모듈(160)을 통해 업데이트된 개체식별결과에 대한 정보를 상기 트리플 저장모듈(130)로부터 획득하여 가시화한다. 여기서, 상기 개체식별결과에 대한 정보는 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 등을 포함하는 개체 식별자 그룹 요약 정보를 말할 수 있다.
또한, 상기 가시화 모듈(170)은 질의어 입력 영역, 온톨로지 데이터베이스 연계 명령, 개체 식별자 그룹 요약 목록, 개체 식별자 그룹 요약 그래프, 각 그룹에 대한 상세 개체 식별자 목록, 식별 명령, 편집 명령 등을 포함하는 개체 식별결과 제공 화면을 출력한다.
상기 개체 식별결과 제공 화면에서 식별 명령이 선택된 경우, 트리플 저장모듈(130)에 업데이트된 개체식별결과에 대한 정보가 출력된다.
또한, 상기 각 그룹에 대한 개체 식별자 목록 중에서 하나의 개체 식별자 목록이 선택되면, 개체 식별에 대한 검증 결과가 상기 개체식별결과 제공 화면의 일정 영역에 출력된다.
또한, 상기 편집 명령에 의해 개체 식별자 그룹의 대표 개체명 또는 대표 개체 식별자, 서로 다른 그룹을 합병 또는 하나의 그룹을 서로 다른 그룹으로 분할, 특정 그룹에 속한 개체 식별자를 다른 그룹으로 이동 등의 개체 식별자 그룹에 대한 정보를 편집할 수 있다.
상기 편집 모듈(180)은 상기 가시화 모듈(170)을 통해 가시화된 개체식별결과 제공 화면에서 개체 식별자 요약 정보에 대한 편집이 수행된 경우, 그 편집 결과를 상기 트리플 저장모듈(130)에 저장 및 업데이트한다.
도 4는 본 발명에 따른 개체식별결과 검색 장치가 개체 식별 결과를 검색 및 제공하는 방법을 나타낸 흐름도, 도 6은 본 발명에 따른 개체 식별결과 검색 화면을 나타낸 예시도이다.
도 4를 참조하면, 개체식별결과 검색 장치는 개체명 또는 개체 식별자(URI)에 의한 질의어가 입력되면(S402), 상기 입력된 질의어에 대한 식별결과가 트리플 저장모듈에 존재하는지의 여부를 판단한다(S404). 상기 트리플 저장모듈에는 온톨로지로 표현된 개체식별결과가 저장된 것으로서, 상기 개체식별결과 검색 장치는 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하는지의 여부를 이용하여 신규 개체명 또는 신규 개체 식별자(URI)가 입력되는지의 여부를 판단한다.
상기 S404의 판단결과 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하는 경우, 상기 개체식별결과 검색 장치는 다중 온톨로지 데이터베이스로부터 상기 질의어에 대한 식별결과를 획득한다(S406). 즉, 상기 개체식별결과 검색 장치는 Sindice.com, sameAs.org 등을 이용하여 상기 질의어에 대한 식별결과를 획득한다. 상기 질의어에 대한 식별결과는 상기 질의어와 관계를 가진 개체들의 개체 식별자 목록을 말한다.
상기 S406의 수행 후, 상기 개체식별결과 검색 장치는 상기 트리플 저장모듈로부터 획득한 상기 질의어에 대한 식별결과를 상기 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하여(S408), 두 식별결과에 의한 식별자 목록이 동일한지의 여부를 판단한다(S410). 즉, 상기 개체식별결과 검색 장치는 상기 트리플 저장모듈로부터의 식별결과에 의한 개체 식별자 목록과 상기 다중 온톨로지 데이터베이스로부터의 식별결과에 의한 개체 식별자 목록을 비교하여, 상기 다중 온톨로지 데이터베이스로부터의 개체 식별자 목록에 신규 개체 식별자가 포함되어 있는지의 여부를 판단한다.
상기 S410의 판단결과 두 목록이 동일한 경우, 상기 개체식별결과 검색 장치는 트리플 저장모듈로부터 획득된 상기 질의어에 대한 식별결과를 가시화한다(S412). 상기 질의어에 대한 식별결과는 상기 질의어가 사용되고 있는 전체 그룹의 요약 정보를 나타낸 개체 식별자 그룹 요약 정보로서, 상기 개체 식별자 그룹 요약 정보는 해당 그룹의 개체 식별자 개수, 개체 유형, 대표 개체명과 대표 개체 식별자를 포함한다. 즉, 상기 개체 식별결과 검색 장치는 질의어 입력 영역, 외부 데이터베이스 연계 명령, 개체 식별자 그룹 요약 목록, 개체 식별자 그룹 요약 그래프, 각 그룹에 대한 상세 개체 식별자 목록, 식별 명령, 편집 명령 중 적어도 하나를 포함하는 개체 식별결과 제공 화면을 출력한다.
상기 가시화된 개체식별결과를 사용자가 편집하는 경우(S414), 상기 개체식별결과 검색 장치는 그 편집 결과를 상기 트리플 저장모듈에 저장한다(S416). 즉, 상기 사용자가 상기 개체식별결과에 대한 수정, 삭제, 이동 중 적어도 하나에 의한 편집을 수행하는 경우, 상기 개체식별결과 검색장치는 그 편집 결과를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트한다.
상기 개체 식별결과 제공 화면에 대해 도 6을 참조하면, 상기 개체 식별결과 제공 화면은 개체 식별자 또는 개체명의 질의어를 입력하기 위한 질의어 입력 영역, 질의어에 대한 개체 식별자 그룹 요약 정보가 목록 및 그래프로 표시된 개체 식별자 그룹 요약 정보 제공 영역, 각 개체 식별자 그룹에 대한 상세 개체 식별자 목록이 제공되는 상세 개체 식별자 목록 제공 영역을 포함한다.
상기 질의어 입력 영역에는 외부 서비스와의 연계를 위한 명령이 존재한다.
상기 개체 식별자 그룹 요약 정보 제공 영역에는 트리플 저장모듈에 업데이트된 정보를 이용한 개체식별을 원하는 경우에 선택되는 식별명령, 개체 식별자 그룹 정보의 편집을 위한 편집 명령이 포함되어 있다.
상기 편집 명령을 선택하여 개체 식별자 그룹의 대표 개체명 또는 대표 개체 식별자의 편집, 서로 다른 그룹을 합병 또는 하나의 그룹을 서로 다른 그룹으로 분할, 특정 그룹에 속한 개체 식별자를 다른 그룹으로 이동 등의 편집을 수행할 수 있다. 상기 사용자가 개체 식별자 그룹의 대표 개체명과 대표 개체 식별자를 수정한 경우, 상기 개체식별결과 검색 장치는 추후 해당 그룹의 통계값이 조정되더라도 사용자가 수정한 대표 개체 식별자와 대표 개체명은 유지한다. 또한 이렇게 조정된 결과는 추후 개체 식별 과정에 사용된다.
또한, 사용자는 편집 명령을 이용하여 특정 그룹에 속한 개체 식별자를 다른 그룹으로 이동하거나 삭제하는 것도 가능하다. 상기와 같이 편집된 결과는 다시 트리플 저장모듈에 저장되고, 추후 개체 식별 과정에 반영된다.
상기 상세 개체 식별자 목록 제공 영역에서 특정 개체 식별자 목록을 선택한 경우, 상기 개체식별결과 검색 장치는 개체 식별에 대한 검증 결과를 개체 식별결과 제공 화면의 일정 영역에 출력되도록 한다. 즉, 상기 검증 결과는 개체 식별에 사용된 다양한 속성들의 상호 연관 관계를 그래프로 보여주며, 사용자는 그래프를 통해 개체 식별 결과를 확인할 수 있다.
또한, 상기 상세 개체 식별자 목록 제공 영역에서 개별 개체 식별자를 선택하면, 상기 개체식별결과 검색 장치는 해당 온톨로지에서 제공하는 SPARQL endpoint 서비스를 통해 관련 속성들을 확인하는 기능도 제공한다.
만약, 상기 S410의 판단결과 두 목록이 동일하지 않으면, 상기 개체식별결과 검색 장치는 신규 개체 식별자를 식별대상으로 그 개체 식별자의 속성정보를 획득 및 비교하여 개체를 식별하고, 상기 개체식별에 의해 상기 질의어에 대한 개체 식별자 그룹을 생성한다(S418). 즉, 상기 개체 식별 장치는 신규 개체명 또는 신규 개체 식별자가 존재하는 경우, 상기 다중 온톨로지 데이터베이스를 대상으로 신규 개체 식별자의 속성 정보를 획득하고, 상기 획득된 속성정보를 이용하여 개체를 식별한다. 상기와 같이 개체가 식별되면, 신규 개체 식별자를 포함하는 개체 식별자 그룹들이 생성된다. 상기의 개체 식별 과정은 매번 모든 개체 식별자를 대상으로 진행하는 것이 아니라 사용자의 질의를 통해 수집된 개체 식별자 목록 중에서 갱신된 개체 식별자가 포함되어 있거나 기존에 개체 식별 과정을 거치지 않은 개체 식별자를 대상으로 진행된다. 상기 개체식별결과 검색 장치가 개체를 식별하는 방법에 대한 상세한 설명은 도 5를 참조하기로 한다.
상기 S418이 수행되면, 상기 개체식별결과 검색 장치는 상기 개체 식별을 통해 생성된 개체 식별자 그룹별로 대표 개체 식별자 또는 대표 개체명을 선정하여 상기 트리플 저장모듈을 업데이트한다(S420). 즉, 상기 개체식별결과 검색 장치는 개체 식별이 완료된 개체 식별자 그룹을 대상으로 각 그룹에 속한 개체 식별자와 개체명의 통계 값을 이용하여 각 그룹의 대표 개체 식별자와 대표 개체명을 선정하게 된다.
상기 S420의 수행 후 상기 개체식별결과 검색 장치는 상기 업데이트된 개체 식별결과에 대한 정보를 상기 트리플 저장모듈로부터 획득하여 가시화하고(S422), 상기 S414를 수행한다.
만약, 상기 S404의 판단결과 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하지 않은 경우, 상기 개체식별결과 검색 장치는 상기 다중 온톨로지 데이터베이스로부터 상기 질의어에 대한 식별결과를 획득하여 가시화한다(S424).
도 5는 본 발명에 따른 개체식별결과 검색 장치가 개체를 식별하는 방법을 나타낸 흐름도이다.
도 5를 참조하면, 개체식별결과 검색 장치는 다중 온톨로지 데이터베이스로부터 식별 대상인 신규 개체 식별자의 속성정보를 획득하고(S502), 상기 획득된 속성정보에서 유형을 나타내는 속성을 이용하여 개체 유형에 따라 상기 신규 개체 식별자에 그룹을 할당한다(S504). 즉, 상기 개체식별결과 검색 장치는 상기 신규 개체 식별자의 속성 정보 중 rdf:type 또는 명시적 유형의 클래스와의 상하위 관계를 통해 개체의 유형을 구분할 수 있는 속성을 확인하고, 상기 확인된 개체 유형에 상기 신규 개체 식별자를 할당한다.
예를 들어 표 1을 참조하면, foaf:person의 하위 클래스가 존재하는 경우, 해당 하위 클래스는 인명을 의미하는 클래스로 판단할 수 있다. 즉, A 온톨로지에 속한 1번 클래스인 kisti:person이 foaf:person의 하위 클래스인 경우, 상기 개체식별결과 검색 장치는 kisti:person이 사람에 해당하는 개체 유형임을 식별하고 저장함으로써 추후 개체의 유형 판단에 사용한다.
kisti:person rdf:type Identity:Person
foaf:person rdf:type Identity:Person
kisti:institution rdf:type Identity:Institution
상기 S504가 수행되면, 상기 개체식별결과 검색 장치는 속성정보 테이블에서 상기 개체 유형에 따라 그룹핑된 각 그룹에 대한 동일 속성 매핑 정보와 대표 속성을 로딩한다(S506). 즉, 상기 개체식별결과 검색 장치는 식별 대상 개체의 유형에 따라 식별에 사용할 다중 온톨로지의 속성 간 동일 속성 매핑 정보(예, kisti:hasCreator와 foaf:maker는 동일 속성임)와 대표 속성(예: 사람의 대표 속성은 foaf 온톨로지에서는 “foaf:name" 속성임)을 로딩한다.
상기 S506이 수행되면, 상기 개체식별결과 검색 장치는 상기 개체 유형별로 그룹화된 그룹들을 대표 속성을 기준으로 다시 그룹화한다(S508). 즉, 상기 개체식별결과 검색 장치는 개체 유형별 개체 식별자의 대표 속성명을 기준으로 속성값에 해당하는 문자열의 유사도를 계산하고, 상기 구해진 유사도가 일정 임계값 이상을 가지는 개체 식별자들을 동일 그룹으로 그룹핑한다.
예를 들면, 사람의 경우 인명을, 회사의 경우 회사명을 대상으로 유사도를 계산하고, 그 계산 결과를 이용하여 그룹핑한다. 이 경우 비교적 단문의 문자열 비교에 적합한 Jaro Winkler Distance 문자열 비교 방법을 사용한다.
또한, 상기 개체식별결과 검색 장치는 대표 속성명을 미리 정해진 규칙에 따라 일정한 형식으로 만든 후, 유사도 계산을 통해 그룹핑하게 된다. 예를 들면, 인명의 경우, First Name, Middle Name, Last Name을 고려하여 문자열 비교를 통해 유사도를 계산한다.
또한, 기관명의 경우 ".inc", "co", "INC" 등의 표기명을 고려해서 문자열 비교를 통해 유사도를 계산한다.
상기 S508의 수행 후, 상기 개체식별결과 검색 장치는 각 그룹에 속하는 개체 식별자들의 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득하여 비교하고, 그 비교결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 결정한다(S510).
즉, 상기 개체식별결과 검색 장치는 각 그룹에 속하는 개체 식별자에 대한 연관 속성값을 상기 다중 온톨로지 데이터베이스에서 획득하고, 같은 연관 속성값을 가지는 개체 식별자들이 존재하는지 확인한다. 상기 확인결과 같은 연관 속성값을 가지는 개체 식별자들이 존재하는 경우, 상기 개체식별결과 검색 장치는 같은 속성값을 가지는 개체 식별자들을 묶어 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 결정한다.
이 과정을 통해 상기 개체식별결과 검색 장치는 이전 개체 유형이나 개체명을 기준으로 개체 식별자를 그룹화하는 과정에서 다른 그룹으로 분류된 개체 식별자간 매핑이나 같은 그룹이지만 매핑 속성이 없는 개체 식별자들을 확인하게 된다.
즉, 대표 속성이 다른 그룹에 속한 개체 식별자 1, 2가 같은 연관 속성값 A로 매핑되어 있을 경우, 상기 개체식별결과 검색 장치는 A의 연관 속성값을 획득하여 개체 식별자 1, 2가 모두 A의 연관 속성으로 포함되어 있는지를 확인한다.
예를 들어, 개체 식별자 1, 2는 다른 저자명이지만, 모두 A논문의 저자 관계를 가지고 있을 경우, 상기 개체식별결과 검색 장치는 A논문의 연관속성을 수집하여 개체 식별자 1, 2가 모두 저자관계로 연결되어 있는지 확인한다.
상기 S510이 수행되면, 상기 개체식별결과 검색장치는 상기 S502부터 상기 S510을 반복 수행하여 개체식별결과를 검증하고, 개체 식별자 그룹을 최종으로 확정한다(S512).
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 : 개체식별결과검색장치 110 : 통신모듈
120 : 사용자 인터페이스 모듈 130 : 트리플 저장 모듈
140 : URI 목록 비교 모듈 150 : 개체 식별모듈
160 : 대표명 선정 모듈 170 : 가시화 모듈
180 : 편집 모듈 300 : 다중 온톨로지 데이터베이스

Claims (28)

  1. 개체들에 대한 속성정보가 온톨로지로 저장된 다중 온톨로지 데이터베이스; 및
    질의어가 입력된 경우, 상기 질의어에 대한 식별결과를 트리플 저장모듈로부터 획득하고, 상기 획득된 식별결과를 상기 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하여 개체식별 필요 여부를 판단하고, 개체식별이 필요한 경우 상기 다중 온톨로지 데이터베이스로부터 식별대상 개체의 속성정보를 획득 및 비교하여 개체들을 식별하고, 상기 개체식별에 따른 결과정보를 제공하는 개체식별결과 검색장치;
    를 포함하는 개체 식별 결과 검색 시스템.
  2. 제1항에 있어서,
    상기 트리플 저장모듈에는 각 개체에 대한 개체식별결과가 트리플 형태로 저장된 것을 특징으로 하는 개체 식별 결과 검색 시스템.
  3. 제1항에 있어서,
    상기 개체식별결과 검색장치는 상기 트리플 저장모듈로부터의 식별결과에 의한 개체 식별자 목록과 상기 다중 온톨로지 데이터베이스로부터의 식별결과에 의한 개체 식별자 목록을 비교하고, 상기 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 개체 식별자 목록에 신규 개체 식별자가 포함되어 있는 경우, 개체식별이 필요하다고 판단하고 그 신규 개체 식별자를 식별대상 개체로 하는 것을 특징으로 하는 개체 식별 결과 검색 시스템.
  4. 제1항에 있어서,
    상기 개체식별결과 검색장치는 상기 다중 온톨로지 데이터베이스로부터 획득된 식별대상 개체들의 속성정보에서 유형을 나타내는 속성을 이용하여 개체 유형에 따라 그룹화하고, 각 개체들의 대표 속성을 기준으로 상기 개체 유형에 따라 그룹화된 각 그룹들을 다시 그룹화한 후, 상기 재그룹화된 각 그룹별로 개체들의 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득하여 비교하고, 상기 비교결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 생성하는 것을 특징으로 하는 개체 식별 결과 검색 시스템.
  5. 제4항에 있어서,
    상기 개체식별결과 검색 장치는,
    상기 질의어에 대한 개체 식별자 그룹별로 대표 개체 식별자 또는 대표 개체명을 선정하고, 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 중 적어도 하나를 포함하는 개체 식별자 그룹 요약 정보를 개체 식별에 따른 결과정보로 제공하는 것을 특징으로 하는 개체 식별 결과 검색 시스템.
  6. 제1항에 있어서,
    상기 개체식별결과 검색장치는 개체식별결과의 수정, 삭제, 이동 중 적어도 하나에 의한 편집이 수행된 경우, 상기 편집된 정보를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트하고, 상기 업데이트된 개체식별결과는 추후 상기 질의어에 대한 개체식별에 이용되는 것을 특징으로 하는 개체 식별 결과 검색 시스템.
  7. 각 개체에 대한 개체 식별결과가 트리플 형태로 저장된 트리플 저장모듈;
    질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하는지의 여부를 판단하고, 존재하는 경우 상기 트리플 저장모듈로부터 획득된 상기 질의어에 대한 식별결과를 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하여 개체식별 필요 여부를 판단하는 개체 식별자 목록 비교 모듈;
    상기 판단결과 개체식별이 필요한 경우, 신규 개체 식별자에 대한 속성정보를 획득 및 비교하여 개체 식별을 수행하고, 상기 개체 식별에 의해 상기 질의어에 대한 개체 식별자 그룹을 생성하는 개체 식별모듈; 및
    상기 생성된 개체 식별자 그룹별로 대표명을 선정 및 적용하고, 상기 대표명이 적용된 개체식별결과를 상기 트리플 저장모듈에 저장 및 업데이트하는 대표명 선정 모듈;
    을 포함하는 개체식별결과 검색 장치.
  8. 제7항에 있어서,
    상기 개체식별결과에 대한 정보를 상기 트리플 저장모듈로부터 획득하여 가시화하는 가시화 모듈을 더 포함하는 개체식별결과 검색 장치.
  9. 제8항에 있어서,
    상기 가시화된 개체식별결과에 대한 수정, 삭제, 이동 중 적어도 하나에 의한 편집이 수행된 경우, 그 편집 결과를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트하고, 상기 업데이트된 개체식별결과는 추후 상기 질의어에 대한 개체식별에 이용되도록 하는 편집 모듈을 더 포함하는 개체식별결과 검색장치.
  10. 제7항에 있어서,
    상기 개체 식별자 목록 비교 모듈은 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하지 않은 경우, 상기 다중 온톨로지 데이터베이스로부터 상기 질의어에 대한 식별결과를 획득하여 상기 가시화 모듈을 통해 가시화되도록 하는 것을 특징으로 하는 개체식별결과 검색 장치.
  11. 제7항에 있어서,
    상기 개체 식별자 목록 비교 모듈은 상기 트리플 저장모듈로부터 획득된 상기 질의어에 대한 식별결과에 따른 개체 식별자 목록과 상기 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과에 따른 개체 식별자 목록을 비교하고, 상기 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 개체 식별자 목록에 신규 개체 식별자가 포함되어 있는 경우, 개체식별이 필요하다고 판단하고 그 신규 개체 식별자를 식별대상 개체로 하는 것을 특징으로 하는 개체 식별 결과 검색 시스템.
  12. 제7항에 있어서,
    상기 트리플 저장모듈에는 각 개체에 대한 개체 식별자 그룹 요약 정보, 편집된 개체 식별자 그룹 요약 정보가 저장된 것을 특징으로 하는 개체식별결과 검색 장치.
  13. 제7항에 있어서,
    상기 질의어는 개체명 또는 URI의 형태인 것을 특징으로 하는 개체식별결과 검색 장치.
  14. 제7항에 있어서,
    상기 개체 식별모듈은,
    상기 신규 개체 식별자의 속성정보를 상기 다중 온톨로지 데이터베이스로부터 획득하여 개체 유형을 기준으로 그룹화하고, 상기 개체 유형에 따른 그룹별로 각 개체들의 대표 속성을 기준으로 다시 그룹화 한 후, 상기 재그룹화된 각 그룹별로 개체들에 대한 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득 및 비교하고, 상기 비교 결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 결정하는 것을 특징으로 하는 개체식별결과 검색장치.
  15. 제7항에 있어서,
    상기 대표명 선정 모듈은
    상기 생성된 개체 식별자 그룹별로 각 그룹에 속한 개체 식별자와 개체명의 통계 값을 이용하여 각 그룹에 대한 대표 식별자 또는 대표 개체명을 선정하는 것을 특징으로 하는 개체식별결과 검색 장치.
  16. 제7항에 있어서,
    상기 개체식별결과에 대한 정보는 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 중 적어도 하나를 포함하는 개체 식별자 그룹 요약 정보를 포함하는 것을 특징으로 하는 개체식별결과 검색 장치.
  17. 제7항에 있어서,
    상기 가시화 모듈은 질의어 입력 영역, 온톨로지 데이터베이스 연계 명령, 개체 식별자 그룹 요약 목록, 개체 식별자 그룹 요약 그래프, 각 그룹에 대한 상세 개체 식별자 목록, 식별 명령, 편집 명령 중 적어도 하나를 포함하는 개체식별결과 제공 화면을 출력하는 것을 특징으로 하는 개체식별결과 검색 장치.
  18. 제17항에 있어서,
    상기 개체식별결과 제공화면에서 식별 명령이 선택된 경우, 트리플 저장모듈에 업데이트된 개체식별결과에 대한 정보가 출력되고,
    상기 각 그룹에 대한 개체 식별자 목록 중에서 하나의 개체 식별자 목록이 선택되면, 개체 식별에 대한 검증 결과가 상기 개체식별결과 제공 화면의 일정 영역에 출력되는 것을 특징으로 하는 개체식별결과 검색 장치.
  19. 제17항에 있어서,
    상기 편집 명령에 의해 개체 식별자 그룹의 대표 개체명 또는 대표 개체 식별자, 서로 다른 그룹을 합병 또는 하나의 그룹을 서로 다른 그룹으로 분할, 특정 그룹에 속한 개체 식별자를 다른 그룹으로 이동 중 적어도 하나의 편집을 수행하는 것을 특징으로 하는 개체식별결과 검색 장치.
  20. 개체식별결과 검색장치가 질의어에 대한 개체식별결과를 제공하는 방법에 있어서,
    (a) 질의어가 입력된 경우, 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하는지의 여부를 판단하는 단계;
    (b) 상기 판단결과 존재하는 경우, 상기 트리플 저장모듈로부터 획득된 상기 질의어에 대한 식별결과를 다중 온톨로지 데이터베이스로부터 획득된 상기 질의어에 대한 식별결과와 비교하는 단계;
    (c) 상기 비교결과 상기 다중 온톨로지 데이터베이스로부터 획득된 식별결과에 신규 개체 식별자가 포함되어 있는 경우, 상기 신규 개체 식별자에 대한 속성정보를 획득 및 비교하여 상기 질의어에 대한 개체 식별을 수행하고, 상기 개체 식별에 의해 상기 질의어에 대한 개체 식별자 그룹을 생성하는 단계; 및
    (d) 상기 생성된 개체 식별자 그룹별로 대표명을 선정 및 적용하고, 상기 대표명이 적용된 개체식별결과를 상기 트리플 저장모듈에 저장 및 업데이트하는 단계;
    를 포함하는 개체식별결과 검색 방법.
  21. 제20항에 있어서,
    상기 개체식별결과에 대한 정보를 상기 트리플 저장모듈로부터 획득하여 가시화하는 단계를 더 포함하는 개체식별결과 검색 방법.
  22. 제21항에 있어서,
    상기 가시화된 개체식별결과에 대한 수정, 삭제, 이동 중 적어도 하나에 의한 편집이 수행된 경우, 그 편집 결과를 상기 트리플 저장모듈에 개체 식별결과로 저장 및 업데이트하는 단계를 더 포함하는 개체식별결과 검색 방법.
  23. 제20항에 있어서,
    상기 (b) 단계에서,
    상기 (a)단계의 판단결과, 상기 질의어에 대한 식별결과가 상기 트리플 저장모듈에 존재하지 않은 경우, 상기 다중 온톨로지 데이터베이스로부터 상기 질의어에 대한 식별결과를 수집하여 가시화하는 것을 특징으로 하는 개체식별결과 검색 방법.
  24. 제20항에 있어서,
    상기 (b) 단계는,
    상기 트리플 저장모듈로부터의 식별결과에 의한 개체 식별자 목록과 상기 다중 온톨로지 데이터베이스로부터의 식별결과에 의한 개체 식별자 목록을 비교하는 것을 특징으로 하는 개체식별결과 검색 방법.
  25. 제20항에 있어서,
    상기 질의어는 개체명 또는 URI의 형태인 것을 특징으로 하는 개체식별결과 검색 방법.
  26. 제20항에 있어서,
    상기 (c)단계는,
    상기 신규 개체 식별자의 속성정보를 상기 다중 온톨로지 데이터베이스로부터 획득하여 개체 유형을 기준으로 그룹화하고, 상기 개체 유형에 따른 그룹별로 각 개체들의 대표 속성을 기준으로 다시 그룹화 한 후, 상기 재그룹화된 각 그룹별로 개체들에 대한 연관 속성값을 상기 다중 온톨로지 데이터베이스로부터 획득 및 비교하고, 상기 비교 결과를 근거로 상기 각 그룹을 서브 그룹으로 나누어 상기 질의어에 대한 개체 식별자 그룹을 결정하는 것을 특징으로 하는 개체식별결과 검색 방법.
  27. 제20항에 있어서,
    상기 (d)단계는,
    상기 생성된 개체 식별자 그룹별로 각 그룹에 속한 개체 식별자와 개체명의 통계 값을 이용하여 각 그룹에 대한 대표 식별자 또는 대표 개체명을 선정하는 것을 특징으로 하는 개체식별결과 검색 방법.
  28. 제20항에 있어서,
    상기 개체식별결과에 대한 정보는 각 개체 식별자 그룹에 대한 개체 개수, 개체 유형, 대표 개체명, 대표 개체 식별자 중 적어도 하나를 포함하는 개체 식별자 그룹 요약 정보를 포함하는 것을 특징으로 하는 개체식별결과 검색 방법.
KR1020110067703A 2011-07-08 2011-07-08 개체 식별 결과 검색 시스템 및 방법 KR101243056B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110067703A KR101243056B1 (ko) 2011-07-08 2011-07-08 개체 식별 결과 검색 시스템 및 방법
PCT/KR2011/007357 WO2013008978A1 (ko) 2011-07-08 2011-10-05 개체 식별 결과 검색 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110067703A KR101243056B1 (ko) 2011-07-08 2011-07-08 개체 식별 결과 검색 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20130005967A true KR20130005967A (ko) 2013-01-16
KR101243056B1 KR101243056B1 (ko) 2013-03-13

Family

ID=47506243

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110067703A KR101243056B1 (ko) 2011-07-08 2011-07-08 개체 식별 결과 검색 시스템 및 방법

Country Status (2)

Country Link
KR (1) KR101243056B1 (ko)
WO (1) WO2013008978A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140123000A (ko) * 2013-04-11 2014-10-21 더 보잉 컴파니 연상 메모리 내의 문맥적 결과를 식별하기 위한 시스템 및 방법
KR101586258B1 (ko) 2014-09-30 2016-01-18 경북대학교 산학협력단 링크드 데이터 생성을 위한 패턴 충돌 해소 방법, 이를 수행하기 위한 기록 매체 및 장치
KR20210000952A (ko) * 2019-06-26 2021-01-06 주식회사 카카오 지식그래프 색인 방법 및 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130275709A1 (en) 2012-04-12 2013-10-17 Micron Technology, Inc. Methods for reading data from a storage buffer including delaying activation of a column select
US20240095105A1 (en) * 2022-09-20 2024-03-21 Sap Se Message query service and message generation for a social network

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090012467A (ko) * 2007-07-30 2009-02-04 한국과학기술정보연구원 Uri 데이터베이스를 이용한 통합 검색 시스템 및 방법
KR100930617B1 (ko) * 2008-04-08 2009-12-09 한국과학기술정보연구원 다중 개체 중심적 통합 검색 시스템 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140123000A (ko) * 2013-04-11 2014-10-21 더 보잉 컴파니 연상 메모리 내의 문맥적 결과를 식별하기 위한 시스템 및 방법
KR101586258B1 (ko) 2014-09-30 2016-01-18 경북대학교 산학협력단 링크드 데이터 생성을 위한 패턴 충돌 해소 방법, 이를 수행하기 위한 기록 매체 및 장치
KR20210000952A (ko) * 2019-06-26 2021-01-06 주식회사 카카오 지식그래프 색인 방법 및 장치

Also Published As

Publication number Publication date
WO2013008978A1 (ko) 2013-01-17
KR101243056B1 (ko) 2013-03-13

Similar Documents

Publication Publication Date Title
US20210286848A1 (en) Query language interoperability in a graph database
CN107092666B (zh) 用于网络的系统、方法以及存储介质
US7702685B2 (en) Querying social networks
US9746932B2 (en) Gesture inferred vocabulary bindings
KR20080085142A (ko) 사용자 대 사용자 추천자
CN104933173B (zh) 一种用于异构多数据源的数据处理方法、装置和服务器
CN108027818A (zh) 基于图的查询
Yeganeh et al. A framework for data quality aware query systems
KR101243056B1 (ko) 개체 식별 결과 검색 시스템 및 방법
Spirin et al. People search within an online social network: Large scale analysis of facebook graph search query logs
Ivánová et al. Searching for spatial data resources by fitness for use
CN103246719A (zh) 一种基于Web的网络信息资源整合方法
US20170357697A1 (en) Using adaptors to manage data indexed by dissimilar identifiers
Ioannou et al. Probabilistic entity linkage for heterogeneous information spaces
Drăgan et al. Linking semantic desktop data to the web of data
US20180150543A1 (en) Unified multiversioned processing of derived data
US10944756B2 (en) Access control
JP2021532450A (ja) 索引データ構造及びグラフィカルユーザインタフェース
Penca et al. SRU/W-based CRIS systems search profile
KR101363497B1 (ko) Foaf 데이터 관리 방법 및 장치
US9659059B2 (en) Matching large sets of words
KR101521112B1 (ko) 데이터를 연결 및 병합하는 방법 및 장치
Mathew et al. An efficient index based query handling model for neo4j
Zhang et al. Semantic web and geospatial unique features based geospatial data integration
Kuznetsov Scientific data integration system in the linked open data space

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: 20160202

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161228

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee