KR101743731B1 - Method and apparatus for processing quary based on ontology generated by collaborating distributed data - Google Patents

Method and apparatus for processing quary based on ontology generated by collaborating distributed data Download PDF

Info

Publication number
KR101743731B1
KR101743731B1 KR1020150190848A KR20150190848A KR101743731B1 KR 101743731 B1 KR101743731 B1 KR 101743731B1 KR 1020150190848 A KR1020150190848 A KR 1020150190848A KR 20150190848 A KR20150190848 A KR 20150190848A KR 101743731 B1 KR101743731 B1 KR 101743731B1
Authority
KR
South Korea
Prior art keywords
data
query
service
user
terminal
Prior art date
Application number
KR1020150190848A
Other languages
Korean (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 KR1020150190848A priority Critical patent/KR101743731B1/en
Priority to PCT/KR2016/000087 priority patent/WO2016137114A1/en
Application granted granted Critical
Publication of KR101743731B1 publication Critical patent/KR101743731B1/en

Links

Images

Classifications

    • G06F17/30734
    • G06F17/2264
    • G06F17/30286
    • G06F17/30339
    • G06F17/30345
    • G06F17/30536
    • H04W4/008

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법 및 장치에 관한 발명이며, 본 발명의 일 실시예에 따른 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법은 동일한 네트워크 또는 근거리 내에 존재하는 복수의 단말기로부터 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터를 수신하는 단계, 수신한 데이터를 포함한 근접 사용자 데이터 테이블을 생성하는 단계, 쿼리를 수신하고, 근접 사용자 데이터 테이블에 엑세스함으로써, 쿼리를 처리하는 단계 및 처리된 결과 데이터를 제공하는 단계를 포함하고, 각각의 단말기에서 생성된 데이터를 하나로 통합하고 연관성을 지어주어 사용자들이 쿼리를 통해 서로의 데이터를 공유할 수 있도록 하는 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법 및 장치를 제공할 수 있는 효과가 있다The present invention relates to a method and an apparatus for processing a query based on an ontology generated by integrating distributed data. The present invention relates to a method and an apparatus for processing a query based on an ontology generated by integrating distributed data according to an embodiment of the present invention The method comprising receiving data for at least one of a terminal, a service and a user from a plurality of terminals in the same network or within a short range, generating a proximity user data table containing the received data, receiving a query, Processing the query and providing the processed result data by accessing the user data table, and integrating and associating the data generated in each terminal with one another, so that users can share data with each other through a query To create distributed data that can be There is an effect that it is possible to provide a method and apparatus for handling a query based on an ontology

Description

분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법 및 장치{METHOD AND APPARATUS FOR PROCESSING QUARY BASED ON ONTOLOGY GENERATED BY COLLABORATING DISTRIBUTED DATA}TECHNICAL FIELD The present invention relates to a method and apparatus for processing a query based on an ontology generated by integrating distributed data,

본 발명은 분산된 데이터를 통합하여 생성한 온톨로지 기반으로 쿼리를 처리하는 방법 및 장치에 관한 것으로서, 디바이스들 간 분산된 데이터를 통합하여 생성한 온톨로지 기반으로 쿼리를 처리하는 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for processing a query based on an ontology generated by integrating distributed data, and a method and an apparatus for processing a query based on an ontology generated by integrating distributed data among devices.

최근 스마트 폰, 사물 디바이스와 같은 스마트 단말기의 사용과 어플리케이션의 서비스 확산이 빠른 속도로 증가하면서, 스마트 단말기는 사용자에게 다양한 서비스를 제공하고 있다. 개인 스케줄 관리, 연락처 관리 등과 같은 개인 정보에서부터 업무 처리 등 다루는 정보의 크기가 매우 클 수 있는 서비스까지 스마트 단말기로 간단히 관리할 수 있게 되었다.Recently, the use of smart terminals such as smart phones and object devices and the spread of applications have rapidly increased, and smart terminals are providing various services to users. Personal information such as personal schedule management, contact management, etc. can be managed with a smart terminal easily from services that can handle very large information.

결과적으로, 사용자들의 스마트 단말기 의존도와 그 필요성은 매우 증가하였고, 지속적으로 성장할 것으로 전망되고 있다. 또한, 스마트 단말기로 이용 가능한 서비스의 범위는 계속하여 확장될 것이다.As a result, users' dependence on smart devices and their needs have increased greatly and are expected to grow steadily. In addition, the range of services available to smart terminals will continue to expand.

이에 따라, 사용자들간의 정보 및 서비스 공유 욕구가 커지고 있다. 다양한 정보의 연결 관계를 구축하여 하나의 스마트 단말기와 그 사용자간의 정보 교류 및 서비스가 이루어지는 것뿐만 아니라 복수 개의 스마트 단말기와 여러 명의 사용자간에 서비스 이용이 가능 욕구에 관한 것이다. 또한, 사용자들은 방대한 양의 정보를 통합하여 보다 깊이있고 넓은 가공된 정보를 얻기를 원하고 있다.Accordingly, there is a growing need for information and service sharing among users. The present invention relates to a need for a service between a plurality of smart terminals and a plurality of users as well as information exchange and service between one smart terminal and its users by establishing a connection relationship of various information. In addition, users want to integrate vast amounts of information to obtain deeper and wider processed information.

이것은 메타 지식과 관련지을 수 있는데, 메타 지식이란, 연결된 단말기간의 분산된 데이터 및 단말기 서비스를 탐색하고 접근하기 위한 지식으로서 메타 지식 모델을 기반으로 하는 지식을 말한다. 메타 지식을 활용하기 위해서는 데이터 및 단말기 서비스에 접근하기 위한 메타 지식을 저장하고 탐색할 수 있는 데이터 베이스인 메타 지식 베이스가 필요하다.This is related to meta-knowledge, which refers to knowledge based on a meta-knowledge model as knowledge to discover and access distributed data and terminal services between connected terminals. In order to utilize the meta knowledge, a meta knowledge base, which is a database capable of storing and searching meta knowledge for accessing data and terminal services, is needed.

그러나 이러한 메타 지식에 기반한 각각의 정보는 로컬 데이터 베이스에 그 정보가 분산되어있기 때문에 해당하는 관련 데이터에 접근하는 것 및 검색하는 것에 어려움이 있다. 또한, 데이터가 분산되어 있기 때문에 연결 관계가 있는 데이터를 사용자에게 제공하는 것에 어려움이 있다.However, each piece of information based on this meta-knowledge has difficulty in accessing and retrieving relevant data because the information is distributed in a local database. In addition, since data is distributed, it is difficult to provide data with a connection relation to a user.

따라서, 스마트 단말기 및 어플리케이션 서비스의 발전에 맞추어 개인적인 서비스 제공 방식뿐 아니라 분산 지식에 관한 융합 및 합성에 관한 방법 및 장치를 스마트 단말기에 적용하는 방식에 대한 논의가 필요하다.Accordingly, it is necessary to discuss a method of applying a method and apparatus for convergence and synthesis of distributed knowledge to a smart terminal as well as a method of providing a personal service in accordance with the development of a smart terminal and an application service.

[관련기술문헌][Related Technical Literature]

개체명 사전 및 마이닝 규칙이 결합된 온톨로지 스키마를 이용한 리소스 기술 프레임워크 네트워크 구축 장치 및 방법 (한국등록특허 10-0989581호)Resource technology framework using ontology schema combined with object name dictionary and mining rules Network construction apparatus and method (Korean Patent No. 10989581)

본 발명이 해결하고자 하는 과제는 다양한 서비스들과 각각의 단말기에서 생성된 데이터를 하나로 통합하고 쿼리를 처리하여 처리된 쿼리를 사용자들이 공유할 수 있는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법 및 장치를 제공하는 것이다. The present invention is directed to an ontology that integrates various services and data generated by each terminal into one, processes queries, and allows users to share the processed queries. And to provide a method and apparatus for processing a query.

본 발명이 해결하고자 하는 다른 과제는 다양한 서비스들과 각각의 단말기에서 생성된 데이터에 연관성을 지어주고, 사용자의 질의를 처리하여 사용자의 질의에 대응하는 데이터를 제공하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법 및 장치를 제공하는 것이다.Another problem to be solved by the present invention is to collectively generate distributed data that correlates various services and data generated in each terminal, processes the user's query and provides data corresponding to the user's query, A method and apparatus for processing a query based on an ontology.

본 발명의 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems of the present invention are not limited to the above-mentioned problems, and other problems not mentioned can be clearly understood by those skilled in the art from the following description.

전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법은 동일한 네트워크 또는 근거리 내에 존재하는 복수의 단말기로부터 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터를 수신하는 단계, 수신한 데이터를 포함한 근접 사용자 데이터 테이블을 생성하는 단계, 쿼리를 수신하고, 근접 사용자 데이터 테이블에 엑세스함으로써, 쿼리를 처리하는 단계 및 처리된 결과 데이터를 제공하는 단계를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a method for processing a query based on an ontology generated by integrating distributed data according to an embodiment of the present invention includes: Receiving data for at least one of the users, generating a proximity user data table containing the received data, processing the query by receiving a query, accessing a proximity user data table, The method comprising the steps of:

본 발명의 다른 특징에 따르면, 쿼리는 문자 또는 음성으로 입력되는 것을 특징으로 한다.According to another aspect of the present invention, a query is input as characters or voices.

본 발명의 또 다른 특징에 따르면, 복수의 단말기 중 적어도 하나의 단말기로부터 변경된 또는 새로운 데이터를 수신하여 근접 사용자 데이터 테이블을 업데이트하는 단계를 더 포함하는 것을 특징으로 한다.According to still another aspect of the present invention, there is provided a method of transmitting data to a terminal, comprising the steps of: receiving updated or new data from at least one of a plurality of terminals and updating a neighboring user data table.

본 발명의 또 다른 특징에 따르면, 데이터를 수신하여 근접 사용자 데이터 테이블을 업데이트하는 단계는, 데이터를 근접 사용자 데이터 테이블이 작성된 언어로 변환하는 단계를 더 포함하는 것을 특징으로 한다.According to another aspect of the present invention, the step of receiving data and updating the proximity user data table further comprises converting the data into a language in which the proximity user data table is created.

본 발명의 또 다른 특징에 따르면, 결과 데이터를 제공하는 단계는, 결과 데이터를 JSON 형태로 변환하여 제공하는 단계인 것을 특징으로 한다.According to another aspect of the present invention, the step of providing result data is a step of converting result data into JSON form and providing the result data.

본 발명의 또 다른 특징에 따르면, 결과 데이터를 제공하는 단계는, 미리 결정된 우선 순위에 따라 또는 미리 정해진 단말기 수 이상의 공통된 데이터를 선택하여 제공하는 단계인 것을 특징으로 한다.According to another aspect of the present invention, the step of providing the result data is characterized by selecting and providing common data equal to or greater than a predetermined number of terminals in accordance with a predetermined priority order.

전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 쿼리 처리 장치는 동일한 네트워크 또는 근거리 내에 존재하는 복수의 단말기로부터 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터를 수신하고, 수신한 데이터를 포함한 근접 사용자 데이터 테이블을 생성하는 초기화 모듈; 및In order to solve the above problems, a query processing apparatus according to an embodiment of the present invention receives data for at least one of a terminal, a service, and a user from a plurality of terminals existing in the same network or a short distance, An initialization module for generating a proximity user data table including the proximity user data table; And

쿼리를 수신하고, 근접 사용자 데이터 테이블에 엑세스함으로써, 쿼리를 처리하고, 처리된 결과 데이터를 제공하는 쿼리 모듈을 포함하는 것을 특징으로 한다.And a query module that receives the query, accesses the proximity user data table, processes the query, and provides the processed result data.

본 발명의 다른 특징에 따르면, 쿼리는 문자 또는 음성으로 입력되는 것을 특징으로 한다.According to another aspect of the present invention, a query is input as characters or voices.

본 발명의 또 다른 특징에 따르면, 복수의 단말기 중 적어도 하나의 단말기로부터 변경된 또는 새로운 데이터를 수신하여 근접 사용자 데이터 테이블을 업데이트하는 데이터 관리 모듈을 더 포함하는 것을 특징으로 한다.According to still another aspect of the present invention, there is provided a data management module for receiving updated or new data from at least one of a plurality of terminals and updating a neighboring user data table.

본 발명의 또 다른 특징에 따르면, 데이터 관리 모듈은, 데이터를 근접 사용자 데이터 테이블이 작성된 언어로 변환하는 것을 특징으로 한다.According to another aspect of the present invention, the data management module converts data into a language in which the proximity user data table is created.

본 발명의 또 다른 특징에 따르면, 쿼리 모듈은, 결과 데이터를 JSON 형태로 변환하여 제공하는 것을 특징으로 한다.According to another aspect of the present invention, the query module converts the result data into a JSON format and provides the resultant data.

본 발명의 또 다른 특징에 따르면, 쿼리 모듈은, 미리 결정된 우선 순위에 따라 또는 미리 정해진 단말기 수 이상의 공통된 데이터를 선택하여 제공하는 것을 특징으로 한다.According to another aspect of the present invention, the query module is characterized by selecting and providing common data in accordance with a predetermined priority or a predetermined number of terminals or more.

기타 실시예의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and drawings.

본 발명은 다양한 서비스들과 각각의 단말기에서 생성된 데이터를 하나로 통합하고 쿼리를 처리하여 처리된 쿼리를 사용자들이 공유할 수 있는 효과가 있다.The present invention has the effect that users can share processed queries by processing various services and data generated from each terminal into a single unit and processing a query.

본 발명은 다양한 서비스들과 각각의 단말기에서 생성된 데이터에 연관성을 지어주고, 사용자의 질의를 처리하여 사용자의 질의에 대응하는 데이터를 제공할 수 있는 효과가 있다.The present invention has an effect of associating various services and data generated in each terminal, processing data of a user, and providing data corresponding to a user's query.

본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.The effects according to the present invention are not limited by the contents exemplified above, and more various effects are included in the specification.

도 1은 본 발명의 일 실시예에 따라 복수의 단말기와 쿼리를 처리하는 장치의 관계도를 도시한 것이다.
도 2는 본 발명의 일 실시예에 따라 쿼리를 처리하는 장치의 개략적인 구성을 도시한 것이다.
도 3은 본 발명의 실시예에 따른 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법에 따라 쿼리를 처리하는 절차를 도시한 것이다.
도 4는 본 발명의 실시예에 따라 쿼리를 처리하는 장치를 개략적으로 도시한 것이다.
도 5는 본 발명의 다른 실시예에 따라 근접 사용자 데이터 테이블의 구조를 도시한 것이다.
1 is a diagram illustrating a relationship between a plurality of terminals and an apparatus for processing a query according to an embodiment of the present invention.
2 shows a schematic configuration of an apparatus for processing a query according to an embodiment of the present invention.
FIG. 3 illustrates a procedure of processing a query according to a method of processing a query based on an ontology generated by integrating distributed data according to an embodiment of the present invention.
4 schematically illustrates an apparatus for processing queries according to an embodiment of the present invention.
FIG. 5 illustrates a structure of a proximity user data table according to another embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

본 발명의 실시예를 설명하기 위한 도면에 개시된 형상, 크기, 비율, 각도, 개수 등은 예시적인 것이므로 본 발명이 도시된 사항에 한정되는 것은 아니다. 또한, 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략한다. 본 명세서 상에서 언급된 '포함한다', '갖는다', '이루어진다' 등이 사용되는 경우, '~만'이 사용되지 않는 이상 다른 부분이 추가될 수 있다. 구성요소를 단수로 표현한 경우에 특별히 명시적인 기재 사항이 없는 한 복수를 포함하는 경우를 포함한다.The shapes, sizes, ratios, angles, numbers, and the like disclosed in the drawings for describing the embodiments of the present invention are illustrative, and thus the present invention is not limited thereto. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Where the terms 'comprises', 'having', 'done', and the like are used herein, other parts may be added as long as '~ only' is not used. Unless the context clearly dictates otherwise, including the plural unless the context clearly dictates otherwise.

구성요소를 해석함에 있어서, 별도의 명시적 기재가 없더라도 오차 범위를 포함하는 것으로 해석한다.In interpreting the constituent elements, it is construed to include the error range even if there is no separate description.

비록 제1, 제2 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않는다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다.Although the first, second, etc. are used to describe various components, these components are not limited by these terms. These terms are used only to distinguish one component from another. Therefore, the first component mentioned below may be the second component within the technical spirit of the present invention.

별도로 명시하지 않는 한 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Like reference numerals refer to like elements throughout the specification unless otherwise specified.

본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.It is to be understood that each of the features of the various embodiments of the present invention may be combined or combined with each other partially or entirely and technically various interlocking and driving is possible as will be appreciated by those skilled in the art, It may be possible to cooperate with each other in association.

본 개시에서의 실시예들은 미래창조과학부 및 정보통신기술연구진흥센터의 정보통신·방송 연구개발사업의 일환으로 수행되고 연구되었음. [R0101-15-0144, (엑소브레인-4세부) 자율지능형 지식/기기 협업 프레임워크 기술 개발]The embodiments of the present disclosure have been carried out and studied as part of the information communication and broadcasting R & D projects of the future creation science department and the information and communication technology research promotion center. [R0101-15-0144, (Exobrain-4 detail) Development of autonomous intelligent knowledge / device collaboration framework technology]

이하, 본 명세서에서 사용되는 용어에 대해 정의한다.Hereinafter, terms used in this specification will be defined.

본 명세서에서 “쿼리”란, 질의와 같은 뜻으로 사용되어, 사용자가 입력하는 검색어를 의미한다. 쿼리를 통해 데이터 테이블에 존재하는 자료를 사용자가 원하는 조건을 통해 검색하고, 검색된 결과를 조회할 수 있다. 여기서, 쿼리는 문자 또는 음성으로 입력될 수 있다. In the present specification, the term " query " is used in the same meaning as a query, and means a search term input by a user. Through the query, the data existing in the data table can be searched through the condition desired by the user, and the retrieved result can be inquired. Here, the query can be input as a character or a voice.

본 명세서에서 “온톨로지”란, 정보화 시스템 내 각 분야의 공유된 개념화에 대해 정형화하고 명시화한 것을 의미한다. 즉, 온톨로지는 사람들이 세상에 대하여 보고 듣고 느끼고 생각하는 것에 대하여 서로 간의 토론을 통하여 합의를 이룬 바를 개념적이고 컴퓨터에서 다룰 수 있는 형태로 표현한 것이다. 온톨로지를 활용하여 설계된 메타 지식은 무한정 확장과 연결이 가능하며, 이를 통해 지식을 고유한 개념으로 만들 수 있게 된다. As used herein, " ontology " means a formalization and specification of shared conceptualization of each field in an information system. In other words, ontology is a conceptual and computer-mediated representation of what people have seen, heard, felt and thought about the world through discussions. The meta - knowledge that is designed using the ontology can be extended and connected indefinitely, making it possible to make knowledge unique.

도 1은 본 발명의 일 실시예에 따라 복수의 단말기와 쿼리를 처리하는 장치의 관계도를 도시한 것이다.1 is a diagram illustrating a relationship between a plurality of terminals and an apparatus for processing a query according to an embodiment of the present invention.

도 1을 참조하면, 호스트 단말기 (111) 와 복수의 단말기 (112, 113) 는 동일한 네트워크 또는 근거리 내에 존재한다. 이 중 호스트 단말기 (111) 는 복수의 단말기 (112, 113) 의 데이터를 수집하여, 호스트 단말기 (111) 의 로컬 데이터 베이스 (111a) 에 저장한다. 저장된 데이터는 로컬 데이터 베이스 (111a) 에 테이블 형태로 저장된다. Referring to FIG. 1, a host terminal 111 and a plurality of terminals 112 and 113 exist in the same network or in a short distance. The host terminal 111 collects data of the plurality of terminals 112 and 113 and stores the collected data in the local database 111a of the host terminal 111. [ The stored data is stored in the form of a table in the local database 111a.

호스트 단말기 (111) 는 복수의 단말기 (112, 113) 로부터 데이터, 즉, 단말기, 서비스 및 사용자로 구분되는 메타 지식으로 로컬 데이터 베이스 (111a) 에 저장한다. 종래의 휴대용 단말기에서는 시리 (siri) 와 같은 프로그램에 쿼리를 입력하는 경우, 단말기 자체의 데이터 및 인터넷을 통해 엑세스 가능한 정보를 이용하여 쿼리를 처리하였다. 본 발명의 일 실시예에 따른 호스트 단말기 (111) 는 동일한 네트워크 내에 있거나 통신으로 연결된 복수의 단말기 (112, 113) 의 데이터, 즉 메타 지식을 수집하고, 로컬 데이터 베이스 (111a) 에 저장하여 그 메타 지식에 기반하여 쿼리를 처리한다.The host terminal 111 stores the data from the plurality of terminals 112 and 113 into the local database 111a in the form of meta-knowledge classified into terminals, services, and users. In a conventional portable terminal, when a query is input to a program such as a siri, a query is processed using data of the terminal itself and information accessible via the Internet. The host terminal 111 according to an embodiment of the present invention collects data, i.e., meta knowledge, of a plurality of terminals 112 and 113 that are in the same network or are communicatively connected, stores the collected data in the local database 111a, Process queries based on knowledge.

즉, 동일한 네트워크 또는 근거리 내에 존재하는 단말기들은 데이터를 공유하여 데이터를 검색하고 접근할 수 있고, 데이터를 기초로 생성된 온톨로지 기반의 메타 지식으로 쿼리를 처리할 수 있다.That is, terminals located in the same network or in a short distance can share data, retrieve and access data, and process queries with ontology-based meta-knowledge generated based on the data.

도 2는 본 발명의 일 실시예에 따라 쿼리를 처리하는 장치의 개략적인 구성을 도시한 것이다.2 shows a schematic configuration of an apparatus for processing a query according to an embodiment of the present invention.

도 2를 참조하면, 호스트 단말기 내의 쿼리 처리 장치 (200) 는 초기화 모듈 (210), 데이터 관리 모듈 (220), 쿼리 모듈 (230) 및 근접 사용자 데이터 테이블 (240) 을 포함한다.2, the query processing apparatus 200 in the host terminal includes an initialization module 210, a data management module 220, a query module 230, and a proximity user data table 240.

초기화 모듈 (210) 은 동일한 네트워크 또는 근거리 내에 존재하는 복수의 단말기로부터 데이터를 수신한다. 구체적으로, 초기화 모듈 (120) 은 단말기, 단말기로부터 제공받는 서비스 및 단말기 사용자 중 적어도 하나에 대한 데이터를 수신한다.The initialization module 210 receives data from a plurality of terminals existing in the same network or in a short distance. Specifically, the initialization module 120 receives data on at least one of a terminal, a service provided from the terminal, and a terminal user.

초기화 모듈 (210) 은 변환 모듈 (211), 테이블 생성 모듈 (212) 및 입력 모듈 (213) 을 포함한다. 변환 모듈 (211) 은 복수의 단말기로부터 수신한 데이터를 근접 사용자 데이터 테이블 (240) 이 작성될 언어로 변환한다. 예를 들어, 근접 사용자 데이터 테이블 (240) 이 작성될 언어는 SQL일 수 있다. 테이블 생성 모듈 (212) 은 복수의 단말기로부터 수신한 데이터를 저장하기 위해 테이블을 생성한다. 여기서, 테이블 생성 모듈 (212) 이 생성한 테이블은 근접 사용자 데이터 테이블 (240) 이며, 예를 들어 SQL로 작성될 수도 있다. 근접 사용자 데이터 테이블 (240) 에 저장된 데이터는 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터이다. 입력 모듈 (213) 은 테이블 생성 모듈 (212) 이 생성한 근접 사용자 데이터 테이블 (240) 에 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터를 입력한다. 구체적인 근접 사용자 데이터 테이블 (240) 에 대해서는 도 5를 참조하여 후술한다. The initialization module 210 includes a conversion module 211, a table generation module 212, and an input module 213. The conversion module 211 converts data received from a plurality of terminals into a language in which the proximity user data table 240 is to be created. For example, the language in which the proximity user data table 240 is to be created may be SQL. The table generation module 212 generates a table for storing data received from a plurality of terminals. Here, the table generated by the table generation module 212 is the proximity user data table 240, and may be written in, for example, SQL. The data stored in the proximity user data table 240 is data for at least one of a terminal, a service, and a user. The input module 213 inputs data for at least one of the terminal, the service, and the user to the proximity user data table 240 generated by the table generation module 212. The specific proximity user data table 240 will be described later with reference to FIG.

데이터 관리 모듈 (220) 은 복수의 단말기로부터 변경된 또는 새로운 데이터를 수신하여 근접 사용자 데이터 테이블 (240) 을 업데이트한다. 구체적으로, 초기화 모듈 (210) 이 생성한 근접 사용자 데이터 테이블 (240) 에 이미 저장되어 있는 데이터가 변경될 경우, 데이터 관리 모듈 (220) 은 변경된 데이터를 복수의 단말기 중 적어도 하나의 단말기로부터 수신한다. 또한, 데이터 관리 모듈 (220) 은 초기화 모듈 (210) 이 생성한 근접 사용자 데이터 테이블 (240) 에 저장되어 있지 않은 새로운 데이터를 복수의 단말기 중 적어도 하나의 단말기로부터 수신한다.The data management module 220 updates the proximity user data table 240 by receiving changed or new data from a plurality of terminals. Specifically, when the data already stored in the neighboring user data table 240 generated by the initialization module 210 is changed, the data management module 220 receives the changed data from at least one of the plurality of terminals . The data management module 220 receives new data not stored in the proximity user data table 240 generated by the initialization module 210 from at least one of the plurality of terminals.

데이터 관리 모듈 (220) 은 변환 모듈 (221), 입력 모듈 (222), 삭제 모듈 (223) 및 수정 모듈 (224) 를 포함한다. 변환 모듈 (221) 은 수신한 변경된 데이터 또는 새로운 데이터를 근접 사용자 데이터 테이블 (240) 이 작성된 언어로 변환한다. 입력 모듈 (222) 은 변환 모듈 (221) 이 근접 사용자 데이터 테이블 (240) 이 작성된 언어로 변환한 데이터를 근접 사용자 데이터 테이블 (240) 에 입력한다. 입력 모듈 (222) 이 근접 사용자 데이터 테이블 (240) 에 입력한 데이터는 초기화 모듈 (210) 이 근접 사용자 데이터 테이블 (240) 에 저장하지 않은, 복수의 단말기 중 적어도 하나의 단말기로부터 수신한 새로운 데이터이다. 삭제 모듈 (223) 은 초기화 모듈 (210) 이 근접 사용자 데이터 테이블 (240) 에 입력한 데이터를 삭제한다. 수정 모듈 (224) 은 초기화 모듈 (210) 이 근접 사용자 데이터 테이블 (240) 에 저장한 데이터를 수정한다. 구체적으로, 수정 모듈 (224) 은 초기화 모듈 (210) 이 근접 사용자 데이터 테이블 (240) 에 저장한 데이터를 복수의 단말기 중 적어도 하나의 단말기로부터 수신한 변경된 데이터로 수정한다. The data management module 220 includes a conversion module 221, an input module 222, a deletion module 223, and a modification module 224. The conversion module 221 converts the received changed data or new data into the language in which the proximity user data table 240 is created. The input module 222 inputs the data converted by the conversion module 221 into the language in which the proximity user data table 240 is created into the proximity user data table 240. The data input by the input module 222 to the proximity user data table 240 is new data received from at least one of the plurality of terminals that the initialization module 210 has not stored in the proximity user data table 240 . The deletion module 223 deletes the data that the initialization module 210 has entered in the proximity user data table 240. [ The modification module 224 modifies the data stored in the proximity user data table 240 by the initialization module 210. Specifically, the modification module 224 modifies the data stored in the proximity user data table 240 by the initialization module 210 into changed data received from at least one of the plurality of terminals.

쿼리 모듈 (230) 은 쿼리를 수신하고, 근접 사용자 데이터 테이블 (240) 에 엑세스함으로써, 쿼리를 처리한다. 이어서, 쿼리 모듈 (230) 은 처리된 결과 데이터를 제공한다. 결과 데이터란 쿼리 모듈 (230) 에 의해 처리된 쿼리에 대한 결과를 나타낸다. 구체적으로, 쿼리 모듈 (230) 은 호스트 단말기로부터 쿼리를 수신하여 근접 사용자 데이터 테이블 (240) 에 엑세스함으로써, 근접 사용자 데이터 테이블 (240) 에 존재하는 결과 데이터를 제공한다. The query module 230 receives the query and accesses the proximity user data table 240 to process the query. The query module 230 then provides the processed result data. The result data represents the results for the query processed by the query module 230. Specifically, the query module 230 receives the query from the host terminal and accesses the proximity user data table 240 to provide the result data present in the proximity user data table 240.

쿼리 모듈 (230) 은 변환 모듈 (231), 사용자 쿼리 모듈 (232), 단말기 쿼리 모듈 (233), 입력 및 출력 값 쿼리 모듈 (234), 서비스 쿼리 모듈 (235) 및 제공 모듈 (236) 을 포함한다. 변환 모듈 (231) 은 수신한 쿼리와 사용자 쿼리 모듈 (232), 단말기 쿼리 모듈 (233), 입력 및 출력 값 쿼리 모듈 (234), 서비스 쿼리 모듈 (235) 에 의해 조회된 결과 데이터를 JSON 형태로 변환한다. 여기서, JSON 형태란 사용자가 읽을 수 있는 텍스트를 사용하는 형식이다. 즉, JSON 형태는 글자를 표현하는 형식을 의미한다. 또한, 변환 모듈 (231) 은 쿼리의 종류를 파악하여 사용자 쿼리 모듈 (232), 단말기 쿼리 모듈 (233), 입력 및 출력 값 쿼리 모듈 (234), 서비스 쿼리 모듈 (235) 중 알맞은 모듈에 전송할 수도 있다. 사용자 쿼리 모듈 (232) 은 변환된 쿼리를 기초로 근접 사용자 데이터 테이블 (240) 에 존재하는 사용자와 관련된 서비스의 데이터를 조회한다. 단말기 쿼리 모듈 (233) 은 변환된 쿼리를 기초로 근접 사용자 데이터 테이블 (240) 에 존재하는 단말기와 관련된 서비스의 데이터를 조회한다. 입력 및 출력 값 쿼리 모듈 (234) 은 변환된 쿼리를 기초로 근접 사용자 데이터 테이블 (240) 에 존재하는 특정 입력 값과 결과 값을 갖는 서비스의 데이터를 조회한다. 분류 쿼리 모듈 (235) 은 변환된 쿼리를 기초로 근접 사용자 데이터 테이블 (240) 에 존재하는 특정 분류를 갖는 서비스의 데이터를 조회한다. 사용자 쿼리 모듈 (232), 단말기 쿼리 모듈 (233), 입력 및 출력 값 쿼리 모듈 (234) 및 서비스 쿼리 모듈 (235) 은 쿼리를 수신하여 동시에 데이터를 조회할 수도 있고, 변환 모듈 (231) 이 쿼리의 종류를 파악하여 알맞은 모듈에 전송한 경우, 사용자 쿼리 모듈 (232), 단말기 쿼리 모듈 (233), 입력 및 출력 값 쿼리 모듈 (234), 서비스 쿼리 모듈 (235) 중 하나의 모듈만 데이터를 조회할 수도 있다. 제공 모듈 (236) 은 사용자 쿼리 모듈 (232), 단말기 쿼리 모듈 (233), 입력 및 출력 값 쿼리 모듈 (234), 서비스 쿼리 모듈 (235) 에 의해 조회된 결과 데이터를 호스트 단말기에 영상/음성 출력부를 통해 제공한다. 제공 모듈 (236) 은 또한 조회된 결과 데이터를 복수의 단말기 중 적어도 하나의 단말기에 제공할 수 있다. 제공 모듈 (236) 이 제공한 결과 데이터는 변환 모듈 (231) 로 전송되어 JSON 형태로 변환된다. The query module 230 includes a transformation module 231, a user query module 232, a terminal query module 233, an input and output value query module 234, a service query module 235, and a provision module 236 do. The conversion module 231 converts the received query into the JSON format of the result data retrieved by the user query module 232, the terminal query module 233, the input and output value query module 234, and the service query module 235 Conversion. Here, the JSON type is a format using a user-readable text. In other words, the JSON form means a form that expresses a character. The conversion module 231 can recognize the type of the query and transmit it to the appropriate module of the user query module 232, the terminal query module 233, the input and output value query module 234, and the service query module 235 have. The user query module 232 queries the data of the service related to the user existing in the proximity user data table 240 based on the converted query. The terminal query module 233 inquires data of a service related to a terminal existing in the proximity user data table 240 based on the converted query. The input and output value query module 234 queries the data of a service having a specific input value and a result value existing in the proximity user data table 240 based on the converted query. The classification query module 235 queries the data of the service having the specific classification existing in the proximity user data table 240 based on the converted query. The user query module 232, the terminal query module 233, the input and output value query module 234 and the service query module 235 may receive the query and inquire the data at the same time, Only one of the modules of the user query module 232, the terminal query module 233, the input and output value query module 234, and the service query module 235 inquires the data. You may. The providing module 236 outputs the result data retrieved by the user query module 232, the terminal query module 233, the input and output value query module 234 and the service query module 235 to the host terminal Provided through the Department. The providing module 236 may also provide the retrieved result data to at least one of the plurality of terminals. The result data provided by the providing module 236 is transferred to the converting module 231 and converted into a JSON form.

이에 따라, 쿼리 처리 장치 (200) 는 복수의 단말기로부터 수신한 데이터를 저장하고 관리하여, 사용자에게 타 사용자의 데이터까지 제공하여 서로 필요한 데이터는 공유할 수 있도록 한다.Accordingly, the query processing apparatus 200 stores and manages data received from a plurality of terminals, and provides the user with data of other users so that necessary data can be shared with each other.

도 3은 본 발명의 실시예에 따른 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법에 따라 쿼리를 처리하는 절차를 도시한 것이다. 설명의 편의를 위해 도 1의 구성요소들과 도면 부호를 참조하여 설명한다.FIG. 3 illustrates a procedure of processing a query according to a method of processing a query based on an ontology generated by integrating distributed data according to an embodiment of the present invention. For convenience of explanation, the components will be described with reference to FIG. 1 and reference numerals.

본 발명의 일 실시예에 따른 쿼리 제공 방법은 초기화 모듈 (210) 이 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터를 수신함으로써 개시된다 (S310).A method of providing a query according to an embodiment of the present invention is initiated by the initialization module 210 receiving data for at least one of a terminal, a service, and a user (S310).

초기화 모듈 (210) 은 동일한 네트워크 또는 근거리 내에 존재하는 복수의 단말기로부터 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터를 수신한다. 여기서, 단말기에 대한 데이터는 태블릿 PC, 스마트 폰과 같은 단말기 종류, 단말기의 스펙, 단말기 이름 및 단말기 ID를 의미한다. 서비스는 단말기에 설치되어 사용자에게 특정 기능을 제공하는 프로그램 즉, 어플리케이션을 의미한다. 서비스에 대한 데이터는 서비스의 이름, 입력 값, 출력 값, 분류, 서비스에 포함된 데이터 및 서비스 URI 이다. 사용자에 대한 데이터는 단말기 사용자의 이름이다. 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터는 근접 사용자 데이터 테이블이 작성될 언어로 변환된다.The initialization module 210 receives data for at least one of a terminal, a service, and a user from a plurality of terminals existing in the same network or a short distance. Here, the data on the terminal refers to a terminal type such as a tablet PC or a smart phone, a specification of a terminal, a terminal name, and a terminal ID. A service is a program installed in a terminal and providing a specific function to a user, that is, an application. The data for the service is the name of the service, the input value, the output value, the classification, the data contained in the service, and the service URI. The data for the user is the name of the terminal user. The data for at least one of the terminal, service, and user is converted into the language in which the proximity user data table is created.

이어서, 초기화 모듈 (210) 은 근접 사용자 데이터 테이블을 생성한다 (S320).Next, the initialization module 210 creates a proximity user data table (S320).

초기화 모듈 (210) 은 복수의 단말기로부터 수신한 데이터를 포함한 근접 사용자 데이터 테이블을 생성한다. 따라서, 근접 사용자 데이터 테이블 (240) 은 단말기 ID, 사용자 ID, 사용자 이름, 단말기 이름 정보, 단말기 종류, 단말기 스펙, 서비스 이름 정보, 서비스의 입력, 서비스의 출력, 서비스의 분류 및 서비스 URI를 포함한다. 구체적인 근접 사용자 데이터 테이블의 구조는 도 5를 통하여 후술한다. 초기화 모듈 (210) 은 SQL로 근접 사용자 데이터 테이블 (240) 을 생성할 수 있다.The initialization module 210 generates a proximity user data table including data received from a plurality of terminals. Accordingly, the proximity user data table 240 includes a terminal ID, a user ID, a user name, terminal name information, a terminal type, a terminal specification, service name information, service input, service output, service classification, . The structure of the detailed proximity user data table will be described later with reference to FIG. The initialization module 210 may generate the proximity user data table 240 in SQL.

근접 사용자 데이터 테이블 (240) 에 포함된 데이터는 변경되거나, 근접 사용자 데이터 테이블 (240) 에 새로운 데이터가 추가되는 경우, 데이터 관리 모듈 (220) 은 복수의 단말기 중 적어도 하나의 단말기로부터 변경된 또는 새로운 데이터를 수신하여 근접 사용자 데이터 테이블 (240) 을 업데이트 할 수 있다. 여기서, 수신된 새로운 데이터 또는 변경된 데이터는 근접 사용자 데이터 테이블이 작성된 언어로 변환되어 근접 사용자 데이터 테이블 (240) 에 저장된다.If the data contained in the proximity user data table 240 is changed or new data is added to the proximity user data table 240, the data management module 220 may update the new or changed data from at least one of the plurality of terminals And may update the proximity user data table 240. [ Here, the received new data or changed data is converted into a language in which the proximity user data table is created and stored in the proximity user data table 240.

이어서, 쿼리 모듈 (230) 은 쿼리를 수신하고, 근접 사용자 데이터 테이블에 엑세스함으로써, 쿼리를 처리한다 (S330).The query module 230 then receives the query and accesses the proximity user data table to process the query (S330).

쿼리 모듈 (230) 은 호스트 단말기로부터 쿼리를 수신하여 쿼리를 수행하기 위해 근접 사용자 데이터 테이블 (240) 에 엑세스함으로써, 쿼리를 처리한다. 쿼리는 사용자와 관련된 서비스의 데이터를 제공받기 위한 검색어, 단말기 종류와 관련된 서비스의 데이터를 제공받기 위한 검색어, 입력 값과 출력 값을 갖는 서비스의 데이터를 제공받기 위한 검색어, 분류를 갖는 서비스의 데이터를 제공받기 위한 검색어일 수 있다. 예를 들어, 사용자와 관련된 서비스의 데이터를 제공받기 위한 쿼리는 사용자의 이름일 수 있다. 단말기 종류와 관련된 서비스의 데이터를 제공받기 위한 쿼리는 단말기 종류 즉, 스마트 폰 또는 태블릿 PC 등일 수 있다. 입력 값과 출력 값을 갖는 서비스의 데이터를 제공받기 위한 쿼리는 서비스 입력 값의 타입과 서비스 출력 값의 타입일 수 있다. 예를 들어, 캘린더 어플리케이션에 대한 쿼리는 캘린더 어플리케이션의 입력 값인 날짜와 서비스 출력 값인 이벤트일 수 있다. 여기서, 날짜와 이벤트는 2015.12.23과 같은 실제 날짜와 회의와 같은 실제 이벤트가 아닌 서비스의 입력 값의 타입이 날짜, 서비스의 출력 값의 타입이 이벤트라는 것을 의미한다. 분류를 갖는 서비스의 데이터를 제공받기 위한 쿼리는 어플리케이션의 분류인 캘린더, 연락처, 날씨 등일 수 있다. 쿼리는 JSON 형태이기 때문에 근접 사용자 데이터 테이블에 엑세스하기 위해 근접 사용자 데이터 테이블이 작성된 언어로 변환된다. 따라서, 쿼리 모듈 (230) 은 쿼리와 연관된 데이터를 제공하기 위해서 근접 사용자 데이터 테이블에 엑세스한다.The query module 230 receives the query from the host terminal and processes the query by accessing the proximity user data table 240 to perform the query. The query includes a search word for receiving data of a service related to a user, a search word for receiving data of a service related to the terminal type, a search word for receiving data of a service having an input value and an output value, It may be a search word for receiving the service. For example, a query for receiving data of a service associated with a user may be a name of the user. A query for receiving data of a service related to a terminal type may be a terminal type, i.e., a smart phone or a tablet PC. A query for receiving data of a service having an input value and an output value may be a type of a service input value and a type of a service output value. For example, a query for a calendar application can be an event, which is the date value of the calendar application and the service output value. Here, the date and the event indicate that the type of the input value of the service is not the actual event such as actual date and meeting such as 2015.12.23, the type of the input value of the service is the date, and the type of the output value of the service is the event. A query for receiving data of a service having a classification may be a category of an application, such as a calendar, a contact, a weather, and the like. Because the query is of JSON type, the proximity user data table is converted into the created language to access the proximity user data table. Accordingly, the query module 230 accesses the proximity user data table to provide data associated with the query.

이어서, 쿼리 모듈 (230) 은 처리된 결과 데이터를 제공한다 (S340).Subsequently, the query module 230 provides the processed result data (S340).

쿼리 모듈 (230) 은 사용자와 관련된 서비스의 데이터를 제공받기 위한 쿼리, 단말기 종류와 관련된 서비스의 데이터를 제공받기 위한 쿼리, 입력 값과 출력 값을 갖는 서비스의 데이터를 제공받기 위한 쿼리, 분류를 갖는 서비스의 데이터를 제공받기 위한 쿼리 중 적어도 하나의 쿼리와 연관된 데이터인 결과 데이터를 제공한다. 여기서, 결과 데이터는 서비스 이름과 URI일 수 있다.The query module 230 includes a query for receiving data of a service related to a user, a query for receiving data of a service related to a terminal type, a query for receiving data of a service having an input value and an output value, And provides result data that is data associated with at least one of the queries for receiving data of the service. Here, the result data may be a service name and a URI.

쿼리 모듈 (230) 은 미리 결정된 우선 순위에 따라 또는 미리 정해진 단말기 수 이상의 공통된 데이터를 선택하여 제공할 수 있다. 구체적으로, 쿼리에 연관된 데이터가 복수 개인 경우, 쿼리 모듈 (230) 은 미리 정해진 우선 순위에 따라 데이터를 선택하여 제공할 수 있다. 예를 들어, 쿼리에 연관된 데이터가 XXX 캘린더, YYY 캘린더, ZZZ 캘린더, AAA 캘린더인 경우, 제공할 데이터의 미리 정해진 우선 순위는 YYY 캘린더, 다음 순위가 ZZZ 캘린더, AAA 캘린더, XXX 캘린더 순이다. 따라서, 쿼리 모듈 (230) 은 YYY 캘린더, ZZZ 캘린더, AAA 캘린더, XXX 캘린더 순으로 서비스 이름과 URI를 제공한다. 또한, 쿼리에 연관된 데이터가 복수 개인 경우, 쿼리 모듈 (230) 은 미리 정해진 단말기 수 이상의 공통된 데이터를 선택하여 제공할 수 있다. 예를 들어, 쿼리 모듈 (230) 에 캘린더라는 서비스 쿼리가 수신된 경우, 근접 사용자 데이터 테이블 (240) 에서 캘린더 서비스를 엑세스하여 캘린더 서비스를 사용하는 단말기와 캘린더 서비스의 이름을 검색한다. 이에 따라 5대의 단말기가 XXX 캘린더, 2대의 단말기가 YY 캘린더를 사용한다는 데이터가 존재하는 경우, 쿼리 모듈 (230) 은 미리 정해진 단말기 수인 4대 이상의 공통된 데이터인 XXX 캘린더를 선택하여 제공할 수 있다. 쿼리 모듈 (230) 이 제공하는 결과 데이터는 JSON 형태로 변환되어 제공된다. 구체적인 결과 데이터에 대한 설명은 도 4를 통해 후술한다.The query module 230 may select and provide common data according to a predetermined priority or over a predetermined number of terminals. Specifically, when there are a plurality of pieces of data associated with the query, the query module 230 may select and provide data according to a predetermined priority order. For example, if the data associated with the query is a XXX calendar, a YYY calendar, a ZZZ calendar, or an AAA calendar, the predefined priority of the data to provide is YYY calendar followed by ZZZ calendar, AAA calendar, and XXX calendar. Accordingly, the query module 230 provides the service name and URI in the following order: YYY calendar, ZZZ calendar, AAA calendar, and XXX calendar. In addition, when there are a plurality of pieces of data related to the query, the query module 230 can select and provide common data equal to or larger than a predetermined number of terminals. For example, when a service query called calendar is received in the query module 230, the calendar service is accessed in the proximity user data table 240 to retrieve the name of the terminal and the calendar service using the calendar service. Accordingly, when data indicating that five terminals use the XXX calendar and two terminals use the YY calendar exists, the query module 230 can select and provide the XXX calendar, which is common data of four or more terminals, which is a predetermined number of terminals. The result data provided by the query module 230 is converted into a JSON form and provided. A detailed description of the result data will be given later with reference to FIG.

이에 따라, 쿼리 처리 장치는 복수의 단말기로부터 수신한 데이터를 저장하여 사용자에게 우선 순위에 따른 데이터 또는 미리 정해진 단말기 수 이상의 공통된 데이터를 제공하여 사용자가 정확하고 다양한 데이터를 얻을 수 있도록 한다.Accordingly, the query processing device stores data received from a plurality of terminals and provides the user with data according to priority or common data equal to or greater than a predetermined number of terminals, so that the user can obtain accurate and various data.

도 4는 본 발명의 실시예에 따라 쿼리를 처리하는 장치를 개략적으로 도시한 것이다. 4 schematically illustrates an apparatus for processing queries according to an embodiment of the present invention.

도 4를 참조하면, 쿼리 처리 장치는 단말기로부터 단말기를 사용하는 사용자 이름 (410), 단말기 종류 (420), 서비스 이름 (430), 서비스 분류 (440), 서비스 입력 값 (450) 및 서비스 출력 값 (460) 인 단말기, 서비스 및 사용자에 대한 데이터를 수신하여, 근접 사용자 데이터 테이블에 저장한다. 데이터는 서로 시맨틱 매칭된다. 여기서, 시맨틱 매칭이란 장치가 데이터의 뜻을 이해하고 논리적 추론까지 할 수 있도록 데이터가 매칭된 것을 의미한다. 4, the query processing apparatus includes a user name 410, a terminal type 420, a service name 430, a service classification 440, a service input value 450, (460), and stores the received data in the proximity user data table. The data are semantically matched to each other. Here, semantic matching means that data is matched so that the device understands the meaning of data and can logically infer.

도 4를 참조하면, 사용자 이름 (410) 이 홍길동인 쿼리가 수신되면, 쿼리 처리 장치는 홍길동이 이용하고 있는 서비스 이름과 URI를 제공한다. 또한, 단말기 종류 (420) 가 스마트폰인 쿼리가 수신되면, 쿼리 처리 장치는 스마트폰에서 이용되고 있는 서비스 이름과 URI를 제공한다. 서비스 분류 (430) 가 캘린더인 쿼리가 수신되면, 쿼리 처리 장치는 사용되고 있는 캘린더 서비스의 이름과 URI를 제공하며, 서비스 입력 값 (450) 및 서비스 출력 값 (460) 이 날짜 및 이벤트인 쿼리를 수신하는 경우, 쿼리 처리 장치는 날짜와 이벤트를 서비스 입력 값 (450) 및 서비스 출력 값 (460) 으로 사용하고 있는 서비스의 이름과 URI를 제공한다. 추가적으로, 쿼리 처리 장치는 쿼리에 대한 결과 데이터를 서비스의 이름 및 URI 뿐만 아니라 쿼리와 연관된 모든 데이터 즉, 메타 지식을 모두 제공할 수도 있다. 예를 들어, 서비스 분류 (430) 에 대한 쿼리를 수신하면, 쿼리에 해당하는 분류의 서비스를 사용하는 모든 사용자 이름 (410), 단말기 종류 (420) 및 서비스 이름 (440) 을 제공할 수 있다. 또한, 서비스 입력 값 (450) 및 서비스 출력 값 (460) 에 대한 쿼리를 수신하면, 쿼리에 해당하는 서비스 입력 값 (450) 및 서비스 출력 값 (460) 을 사용하는 서비스 분류 (430), 서비스 이름 (440) 과 해당 서비스를 이용하는 사용자 이름 (410) 및 단말기 종류 (420) 의 데이터를 제공할 수 있다.Referring to FIG. 4, when a user name 410 is received, a query processing unit provides a service name and a URI used by Hong Kil Dong. In addition, when the terminal type 420 receives a query that is a smart phone, the query processing device provides the service name and the URI being used in the smartphone. When the query is received that the service classification 430 is a calendar, the query processing device provides the name and URI of the calendar service being used and receives the query that the service input value 450 and the service output value 460 are date and event The query processing device provides the name and URI of the service using the date and event as the service input value 450 and the service output value 460. Additionally, the query processing device may provide the result data for the query, as well as the service name and URI, as well as all the data associated with the query, i.e., meta-knowledge. For example, upon receiving a query for service classification 430, it may provide all user names 410, terminal types 420 and service names 440 that use the service of the classification corresponding to the query. Upon receipt of the query for the service input value 450 and the service output value 460, a service classification 430 using the service input value 450 and the service output value 460 corresponding to the query, (440), user name (410) and terminal type (420) using the corresponding service.

이에 따라, 쿼리 처리 장치는 복수의 단말기로부터 시맨틱 매칭된 단말기를 사용하는 사용자 이름, 단말기 종류, 서비스 이름, 서비스 분류, 서비스 입력 값 및 서비스 출력 값을 수집하여, 사용자에게 쿼리 처리된 결과 데이터를 제공한다.Accordingly, the query processing apparatus collects a user name, a terminal type, a service name, a service classification, a service input value, and a service output value using a semantic-matched terminal from a plurality of terminals, and provides query result data to the user do.

도 5는 본 발명의 다른 실시예에 따라 근접 사용자 데이터 테이블의 구조를 도시한 것이다.FIG. 5 illustrates a structure of a proximity user data table according to another embodiment of the present invention.

도 5를 참조하면, 근접 사용자 데이터 테이블 (500) 은 복수의 단말기로부터 단말기, 서비스 및 사용자 중 적어도 하나에 대한 데이터를 포함한다. 구체적으로, 단말기에 대한 데이터는 단말기 ID, 단말기 이름 및 단말기 종류를 포함한다. 또한, 서비스에 대한 데이터는 서비스 이름, 서비스 입력 값, 서비스 출력 값, 서비스 분류 및 서비스 URI을 포함하며, 사용자에 대한 데이터는 사용자 ID 및 사용자 이름을 포함한다. 따라서, 근접 사용자 데이터 테이블 (500) 은 10개의 칼럼으로 구성되며, SQL로 작성될 수도 있다.Referring to FIG. 5, the proximity user data table 500 includes data for at least one of a terminal, a service, and a user from a plurality of terminals. Specifically, the data for the terminal includes a terminal ID, a terminal name, and a terminal type. The data for the service includes a service name, a service input value, a service output value, a service classification, and a service URI, and the data for the user includes a user ID and a user name. Therefore, the proximity user data table 500 is composed of 10 columns, and may be written in SQL.

도 5를 참조하면, 근접 사용자 데이터 테이블 (500) 은 단말기 ID가 0인 단말기로부터 수신한 단말기, 서비스 및 사용자에 대한 데이터인 제1 데이터 (510) 를 포함한다. 제1 데이터 (510) 는 단말기 ID 값인 0, 사용자 ID 값인 0, 사용자 이름 값인 홍길동, 단말기 종류 값인 스마트 폰, 단말기 이름 값인 GalaxyX4 값을 포함한다. 또한, 제1 데이터 (510) 는 사용자 홍길동이 사용하는 서비스 이름 값인 XXX 캘린더, XXX 캘린더에 입력되는 서비스 입력 값인 2015.12.23과 같은 날짜 데이터, 서비스 입력 값에 따라 출력되는 서비스 출력 값인 3시 회의와 같은 이벤트 데이터, XXX 캘린더의 분류인 캘린더 및 XXX 캘린더의 URI 값을 포함한다. 또한, 제1 데이터 (510) 는 사용자 홍길동이 사용하는 다른 서비스 이름 값인 연락처 리스트, 연락처 리스트에 입력되는 서비스 입력 값인 김영희와 같은 이름 데이터, 서비스 입력 값에 따라 출력되는 서비스 출력 값인 010-1234-5678과 같은 전화번호 데이터, 연락처 리스트의 분류 값인 연락처 및 연락처 리스트의 URI 값을 포함한다. Referring to FIG. 5, the proximity user data table 500 includes first data 510, which is data on a terminal, a service, and a user received from a terminal having a terminal ID of '0'. The first data 510 includes a terminal ID value of 0, a user ID value of 0, a user name value of Hong Kil Dong, a terminal type value of a smart phone, and a terminal name value of Galaxy X4. The first data 510 includes date data such as service input value 2015.12.23 input to the XXX calendar, which is a service name value used by the user Hong Kil Dong, XXX calendar, service output value output according to the service input value, The same event data, the calendar of the XXX calendar, and the URI of the XXX calendar. The first data 510 includes a contact list which is another service name value used by the user Hong Kil Dong, name data such as Kim Young Hee, which is a service input value input to the contact list, and service output value 010-1234-5678 A URI value of a contact list and a contact list, which are classified values of a contact list.

도 5를 참조하면, 근접 사용자 데이터 테이블 (500) 은 단말기 ID 값이 1인 단말기로부터 수신한 단말기, 서비스 및 사용자에 대한 데이터인 제2 데이터 (520) 를 포함한다. 제2 데이터 (520) 는 단말기 ID 값인 1, 사용자 ID 값인 1, 사용자 이름 값인 김철수, 단말기 종류 값인 스마트 폰, 단말기 이름 값인 GalaxyY6 값을 포함한다. 또한, 제2 데이터 (520) 는 사용자 김철수가 사용하는 서비스 이름 값인 YY 날씨, YY 날씨에 입력되는 서비스 입력 값인 2015.12.12와 같은 날짜 데이터, 서비스 입력 값에 따라 출력되는 서비스 출력 값인 흐림과 날씨 데이터, YY 날씨의 분류 값인 날씨 및 YY 날씨의 URI 값을 포함한다.Referring to FIG. 5, the proximity user data table 500 includes second data 520, which is data on a terminal, a service, and a user received from a terminal having a terminal ID value of 1. The second data 520 includes a terminal ID value of 1, a user ID value of 1, a user name value of Chul-soo, a terminal type value of a smartphone, and a terminal name value GalaxyY6. The second data 520 includes date data such as 2015.12.12, a service input value input in the YY weather, YY weather, which is a service name value used by the user Kim, and cloud data and weather data , The UY value of the YY weather and the YY weather value.

근접 사용자 데이터 테이블 (500) 은 사용자가 이용하는 또 다른 서비스가 있는 경우, 서비스에 따른 데이터를 서비스의 종류와 데이터의 크기에 상관없이 추가적으로 포함할 수 있다. 또한, 단말기 ID와 사용자 ID는 근접 사용자 데이터 테이블 (500) 에 입력되는 데이터 순서대로 부여될 수도 있고, 무작위 번호로 부여될 수도 있다. The proximity user data table 500 may additionally include data according to the service regardless of the type of service and the size of data when another service is used by the user. In addition, the terminal ID and the user ID may be given in the order of data input to the proximity user data table 500, or they may be given in random numbers.

이에 따라, 쿼리 처리 장치는 복수의 단말기로부터 단말기, 서비스 및 사용자에 대한 데이터를 수신하고, 수신한 데이터를 포함하여 근접 사용자 데이터 테이블을 생성함으로써, 사용자에게 복수의 사용자 관련 정보를 포함하는 확장된 데이터, 즉, 메타 지식을 기초로 생성된 결과 데이터를 제공할 수 있고, 데이터가 기준에 따라 분류되어 있어 빠른 속도로 제공할 수 있다.Accordingly, the query processing apparatus receives data for a terminal, a service, and a user from a plurality of terminals, and generates a proximity user data table including the received data, thereby providing the user with expanded data including a plurality of user- That is, the result data generated based on the meta-knowledge, and the data can be provided at a high speed because the data is classified according to the reference.

본 명세서에서, 각 블록 또는 각 단계는 특정된 논리적 기능 (들) 을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In this specification, each block or each step may represent a part of a module, segment or code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially concurrently, or the blocks or steps may sometimes be performed in reverse order according to the corresponding function.

본 명세서에 개시된 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계는 프로세서에 의해 실행되는 하드웨어, 소프트웨어 모듈 또는 그 2 개의 결합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되며, 그 프로세서는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 주문형 집적회로 (ASIC) 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트로서 상주할 수도 있다.The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. The software module may reside in a RAM memory, a flash memory, a ROM memory, an EPROM memory, an EEPROM memory, a register, a hard disk, a removable disk, a CD-ROM or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor, which is capable of reading information from, and writing information to, the storage medium. Alternatively, the storage medium may be integral with the processor. The processor and the storage medium may reside within an application specific integrated circuit (ASIC). The ASIC may reside within the user terminal. Alternatively, the processor and the storage medium may reside as discrete components in a user terminal.

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것은 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although the embodiments of the present invention have been described in detail with reference to the accompanying drawings, it is to be understood that the present invention is not limited to those embodiments and various changes and modifications may be made without departing from the scope of the present invention. . Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. Therefore, it should be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

111 호스트 단말기
111a 로컬 데이터 베이스
112, 113 단말기
200 쿼리 처리 장치
210 초기화 모듈
211, 221, 231 변환 모듈
212 테이블 생성 모듈
213 입력 모듈
220 데이터 관리 모듈
222 입력 모듈
223 삭제 모듈
224 수정 모듈
230 쿼리 모듈
232 사용자 쿼리 모듈
233 단말기 쿼리 모듈
234 입력 및 출력 값 쿼리 모듈
235 분류 쿼리 모듈
236 제공 모듈
240 근접 사용자 데이터 테이블
410 사용자 이름
420 단말기 종류
430 서비스 분류
440 서비스 이름
450 서비스 입력 값
460 서비스 출력 값
500 근접 사용자 데이터 테이블
510 제1 데이터
520 제2 데이터
111 host terminal
111a local database
112, 113 terminal
200 Query processing device
210 initialization module
211, 221, 231 conversion module
212 Table creation module
213 input module
220 data management module
222 input module
223 Delete module
224 Modification module
230 Query Modules
232 User Query Module
233 Terminal Query Module
234 Input and Output Value Query Module
235 Classification Query Module
236 Providing module
240 proximity user data table
410 User Name
420 Terminal type
430 Service Classification
440 Service Name
450 Service input value
460 Service output value
500 proximity user data table
510 first data
520 second data

Claims (12)

동일한 네트워크 내에 존재하는 복수의 단말기로부터 단말기, 서비스 및 사용자에 대한 데이터를 수신하는 단계;
수신한 상기 데이터를 포함한 근접 사용자 데이터 테이블을 생성하는 단계로서, 상기 근접 사용자 데이터 테이블은 상기 데이터들을 단말기 ID, 사용자 ID, 사용자 이름, 단말기 이름 정보, 단말기 종류, 단말기 스펙, 서비스 이름 정보, 서비스의 입력, 서비스의 출력, 서비스의 분류 및 서비스 URI 별로 분류한 테이블을 의미하는, 상기 근접 사용자 데이터 테이블을 생성하는 단계;
쿼리를 수신하고, 상기 근접 사용자 데이터 테이블에 엑세스함으로써, 상기 쿼리를 처리하는 단계;
처리된 상기 쿼리가 상기 서비스의 종류에 대한 쿼리인 경우, 상기 동일한 네트워크 내에 존재하는 복수의 단말기가 사용하는 상기 서비스의 종류를 검색하고, 검색된 상기 서비스의 종류 중에서 가장 많이 사용되는 상기 서비스의 종류에 대한 데이터를 결과 데이터로 선택하는 단계; 및
선택된 상기 결과 데이터를 제공하는 단계를 포함하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법.
Receiving data for a terminal, a service and a user from a plurality of terminals existing in the same network;
Wherein the neighboring user data table includes a terminal ID, a user ID, a user name, a terminal name information, a terminal type, a terminal specification, a service name information, Input data, output of service, classification of service, and service URI;
Processing the query by receiving a query and accessing the proximity user data table;
If the processed query is a query for the type of service, searches for the type of the service used by a plurality of terminals existing in the same network, and searches for the type of the most used service among the types of the searched services Selecting data as result data; And
And providing the selected result data based on the ontology generated by integrating the distributed data.
제1항에 있어서,
상기 쿼리는 문자 또는 음성으로 입력되는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법.
The method according to claim 1,
Wherein the query is based on an ontology generated by integrating distributed data, which is input as a character or voice.
제1항에 있어서,
상기 복수의 단말기 중 적어도 하나의 단말기로부터 변경된 또는 새로운 데이터를 수신하여 상기 근접 사용자 데이터 테이블을 업데이트하는 단계를 더 포함하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법.
The method according to claim 1,
Further comprising: receiving updated or new data from at least one of the plurality of terminals to update the proximity user data table, wherein the method further comprises processing the query based on an ontology generated by incorporating distributed data.
제3항에 있어서,
상기 데이터를 수신하여 상기 근접 사용자 데이터 테이블을 업데이트하는 단계는,
상기 데이터를 상기 근접 사용자 데이터 테이블이 작성된 언어로 변환하는 단계를 더 포함하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법.
The method of claim 3,
Receiving the data and updating the proximity user data table comprises:
And converting the data into a language in which the proximity user data table is created. A method for processing a query based on an ontology generated by incorporating distributed data.
제1항에 있어서,
선택된 상기 결과 데이터를 제공하는 단계는,
선택된 상기 결과 데이터를 JSON 형태로 변환하여 제공하는 단계인, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 방법.
The method according to claim 1,
The step of providing the selected result data comprises:
And converting the selected result data into a JSON form and providing the converted result data to a JSON form.
삭제delete 동일한 네트워크 내에 존재하는 복수의 단말기로부터 단말기, 서비스 및 사용자에 대한 데이터를 수신하고, 수신한 상기 데이터를 포함한 근접 사용자 데이터 테이블을 생성하는 초기화 모듈; 및
쿼리를 수신하고, 상기 근접 사용자 데이터 테이블에 엑세스함으로써, 상기 쿼리를 처리하고, 처리된 상기 쿼리가 상기 서비스의 종류에 대한 쿼리인 경우, 상기 동일한 네트워크 내에 존재하는 복수의 단말기가 사용하는 상기 서비스의 종류를 검색하고, 검색된 상기 서비스의 종류 중에서 가장 많이 사용되는 상기 서비스의 종류에 대한 데이터를 결과 데이터로 선택하고, 선택된 상기 결과 데이터를 제공하는 쿼리 모듈을 포함하고,
상기 근접 사용자 데이터 테이블은 상기 데이터들을 단말기 ID, 사용자 ID, 사용자 이름, 단말기 이름 정보, 단말기 종류, 단말기 스펙, 서비스 이름 정보, 서비스의 입력, 서비스의 출력, 서비스의 분류 및 서비스 URI 별로 분류한 테이블을 의미하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 장치.
An initialization module for receiving data for a terminal, a service and a user from a plurality of terminals existing in the same network and generating a proximity user data table including the received data; And
Receiving a query and accessing the proximity user data table to process the query and if the processed query is a query for the type of service, And a query module that selects data as the result data and provides the selected result data based on the kind of the most used service among the types of the searched services,
The proximity user data table includes a table classified by terminal ID, user ID, user name, terminal name information, terminal type, terminal specification, service name information, service input, service output, service classification and service URI , Which is a device that processes queries based on an ontology that is generated by integrating distributed data.
제7항에 있어서,
상기 쿼리는 문자 또는 음성으로 입력되는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 장치.
8. The method of claim 7,
Wherein the query is based on an ontology that is generated by integrating distributed data, which is input as a character or voice.
제 7항에 있어서,
상기 복수의 단말기 중 적어도 하나의 단말기로부터 변경된 또는 새로운 데이터를 수신하여 상기 근접 사용자 데이터 테이블을 업데이트하는 데이터 관리 모듈을 더 포함하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 장치.
8. The method of claim 7,
Further comprising a data management module for receiving updated or new data from at least one of the plurality of terminals and updating the proximity user data table, .
제9항에 있어서,
상기 데이터 관리 모듈은,
상기 데이터를 상기 근접 사용자 데이터 테이블이 작성된 언어로 변환하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 장치.
10. The method of claim 9,
The data management module includes:
Converting the data into a language in which the proximity-user data table is created; and processing the query based on the ontology generated by integrating the distributed data.
제7항에 있어서,
상기 쿼리 모듈은,
상기 결과 데이터를 JSON 형태로 변환하여 제공하는, 분산된 데이터를 통합하여 생성한 온톨로지를 기반으로 쿼리를 처리하는 장치.
8. The method of claim 7,
The query module comprising:
And converting the result data into a JSON form to provide a query based on an ontology generated by integrating distributed data.
삭제delete
KR1020150190848A 2015-02-23 2015-12-31 Method and apparatus for processing quary based on ontology generated by collaborating distributed data KR101743731B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150190848A KR101743731B1 (en) 2015-12-31 2015-12-31 Method and apparatus for processing quary based on ontology generated by collaborating distributed data
PCT/KR2016/000087 WO2016137114A1 (en) 2015-02-23 2016-01-06 Method and device for establishing meta-knowledge database and processing query

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150190848A KR101743731B1 (en) 2015-12-31 2015-12-31 Method and apparatus for processing quary based on ontology generated by collaborating distributed data

Publications (1)

Publication Number Publication Date
KR101743731B1 true KR101743731B1 (en) 2017-06-05

Family

ID=59223118

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150190848A KR101743731B1 (en) 2015-02-23 2015-12-31 Method and apparatus for processing quary based on ontology generated by collaborating distributed data

Country Status (1)

Country Link
KR (1) KR101743731B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190054741A (en) * 2017-11-14 2019-05-22 주식회사 케이티 Method and Apparatus for Quality Management of Data
KR20190070428A (en) * 2017-12-13 2019-06-21 전자부품연구원 Industrial Process Equipment System Management Method using Cloud-based Intergrated Context-Aware Processing Engine
WO2023287860A1 (en) * 2021-07-14 2023-01-19 Mondoo, Inc. Systems and methods for querying data

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190054741A (en) * 2017-11-14 2019-05-22 주식회사 케이티 Method and Apparatus for Quality Management of Data
KR102507837B1 (en) 2017-11-14 2023-03-07 주식회사 케이티 Method and Apparatus for Quality Management of Data
KR20190070428A (en) * 2017-12-13 2019-06-21 전자부품연구원 Industrial Process Equipment System Management Method using Cloud-based Intergrated Context-Aware Processing Engine
KR102306430B1 (en) * 2017-12-13 2021-09-30 한국전자기술연구원 Industrial Process Equipment System Management Method using Cloud-based Intergrated Context-Aware Processing Engine
WO2023287860A1 (en) * 2021-07-14 2023-01-19 Mondoo, Inc. Systems and methods for querying data

Similar Documents

Publication Publication Date Title
CN107038207B (en) Data query method, data processing method and device
CN110147437B (en) Knowledge graph-based searching method and device
US11068439B2 (en) Unsupervised method for enriching RDF data sources from denormalized data
JP6667931B2 (en) Method and device for recognizing time information from audio information
US10224034B2 (en) Voice recognition system and construction method thereof
CN106407303A (en) Data storage method and apparatus, and data query method and apparatus
US9485306B2 (en) Methods, apparatuses, and computer program products for facilitating a data interchange protocol
CN104462429A (en) Method and device for generating database query sentences
CN105138649B (en) Searching method, device and the terminal of data
KR101743731B1 (en) Method and apparatus for processing quary based on ontology generated by collaborating distributed data
CN105096944A (en) Speech recognition method and apparatus
RU2605041C2 (en) Methods and systems for displaying microblog topics
CN102999600A (en) Method and system for automatically generating embedded database
CN108228760A (en) Method, apparatus, mobile terminal and the storage medium of filtering sensitive words
CN110263104A (en) JSON character string processing method and device
CN104361040A (en) Method and device for customized query
CN110309214B (en) Instruction execution method and equipment, storage medium and server thereof
US20210165903A1 (en) System and method for data security grading
CN107239568B (en) Distributed index implementation method and device
JP2010224824A (en) Information processing apparatus
US9465658B1 (en) Task distribution over a heterogeneous environment through task and consumer categories
CN103902651A (en) Cloud code query method and device based on MongoDB
CN111814020A (en) Data acquisition method and device
CN103902554B (en) Data access method and device
CN115795187A (en) Resource access method, device and equipment

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
R401 Registration of restoration