KR20150132268A - 관심 지점 메타데이터의 검색을 위한 데이터 제공자들의 계층적 편성 - Google Patents

관심 지점 메타데이터의 검색을 위한 데이터 제공자들의 계층적 편성 Download PDF

Info

Publication number
KR20150132268A
KR20150132268A KR1020157028191A KR20157028191A KR20150132268A KR 20150132268 A KR20150132268 A KR 20150132268A KR 1020157028191 A KR1020157028191 A KR 1020157028191A KR 20157028191 A KR20157028191 A KR 20157028191A KR 20150132268 A KR20150132268 A KR 20150132268A
Authority
KR
South Korea
Prior art keywords
metadata
data sources
poi
data
source
Prior art date
Application number
KR1020157028191A
Other languages
English (en)
Inventor
다니엘 마사토
데이비드 티. 베리
앤드류 씨. 헥포드
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20150132268A publication Critical patent/KR20150132268A/ko

Links

Images

Classifications

    • G06F17/30041
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/487Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location

Landscapes

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

Abstract

다양한 실시예들은 관심 지점 탐색들에서 데이터 제공자들에 질의하기 위한 시스템들, 방법들, 장치들, 및 컴퓨터 판독가능 매체들에 관한 것이다. 하나의 특정 실시예에서, 각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하는 단계를 포함하는 방법이 제공되고, 상기 복수의 데이터 소스들은 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함한다. 상기 복수의 데이터 소스들은 그 후에 POI 탐색 요청과 연관되는 메타데이터에 대해 질의될 수 있고, 상기 질의의 순서는 상기 복수의 데이터 소스들 각각에 대한 데이터 소스 우선순위에 기초하며, 그리고 적어도 하나의 소스 품질이 상기 복수의 데이터 소스들 중 적어도 하나에 대해 측정된다. 추가의 실시예들에서, 측정된 소스 품질에 기초하여 질의 순서가 업데이트될 수 있다.

Description

관심 지점 메타데이터의 검색을 위한 데이터 제공자들의 계층적 편성{HIERARCHICAL ORCHESTRATION OF DATA PROVIDERS FOR THE RETRIEVAL OF POINT OF INTEREST METADATA}
[0001] 본 개시물의 양상들은 네트워크화된 컴퓨팅 기술들 및 탐색들에 관한 것이다. 특히, 본 개시물의 양상들은 관심 지점 탐색들에서 데이터 제공자들에 질의하기 위한 시스템들, 방법들, 장치 및 컴퓨터 판독가능 매체들에 관한 것이다.
[0002] 스마트폰들과 같은 모바일 컴퓨팅 디바이스들이 보다 일반적이게 되고 보다 많은 특징들을 통합함에 따라, 특수화된 "관심 지점(POI; point of interest)" 탐색들이 일반적인 특징이 되고 있다. 관심 지점 탐색은, 특성들의 세트에 따르는(conform to) 물리적 위치들에 대한 탐색이다. 전형적으로 상기 탐색은 상기 탐색이 유래되고 있는 사용자 또는 디바이스의 위치와 같은 기준 위치에 기반을 둔다(anchored). 상기 탐색은 또한, 관심 지점에서의 사업을 위한 사업 시간들 또는 접촉 정보와 같은 상기 관심 지점에 관한 부가적인 정보에 대한 요청들을 포함할 수 있다.
[0003] 관심 지점 탐색들에서 데이터 제공자들을 분류하고 조직화하기 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들을 포함하는 다양한 실시예들이 본 명세서에 기술된다. 예컨대, 방법을 포함하는 하나의 실시예가 기술되고, 상기 방법은; 관심 지점(POI; point of interest) 탐색 요청을 컴퓨팅 디바이스에서 프로세싱하는 단계; 각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하는 단계 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―; 상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하는 단계 ― 질의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 및 상기 복수의 데이터 소스들 각각에 대한 적어도 하나의 소스 품질을 측정하는 단계를 포함한다. 그러한 실시예는, 상기 복수의 데이터 소스들에 질의하는 단계에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하는 단계; 상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하는 단계; 상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하는 단계; 및 상기 복수의 데이터 소스들 각각에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 메타데이터 소스들에 대한 상기 데이터 소스 우선순위를 업데이트하는 단계를 더 포함할 수 있다.
[0004] 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 상기 복수의 데이터 소스들은 상기 제1 기준 소스 및 상기 제1 구조화된 지식 베이스를 포함하고, 상기 제1 기준 소스에 대한 데이터 소스 우선순위는 상기 제1 구조화된 지식 베이스에 대한 데이터 소스 우선순위보다 더 높으며, 그리고 상기 복수의 데이터 소스들에 질의하는 단계는: 상기 관심 지점 탐색 요청과 연관되는 메타데이터에 대해 상기 제1 기준 소스에 질의하는 단계; 및 상기 제1 기준 소스에 질의하는 단계 이후에, 상기 관심 지점 탐색 요청과 연관되는 메타데이터에 대해 상기 제1 구조화된 지식 베이스에 질의하는 단계를 포함한다.
[0005] 그러한 실시예의 또 다른 추가의 구현들이 기능할 수 있고, 여기서 상기 복수의 데이터 소스들 각각에 대한 적어도 하나의 소스 품질을 측정하는 단계는, 제1 기준 소스 응답 시간을 측정하는 단계; 및 제1 구조화된 지식 베이스 응답 시간을 측정하는 단계를 포함하거나, 또는 상기 복수의 데이터 소스들은 상기 제1 개별 웹사이트를 더 포함한다.
[0006] 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 상기 제1 구조화된 지식 베이스에 대한 데이터 소스 우선순위는 상기 제1 개별 웹사이트에 대한 데이터 소스 우선순위보다 더 높고, 상기 복수의 데이터 소스들에 질의하는 단계는, 상기 제1 구조화된 지식 베이스에 질의하는 단계 이후에, 상기 제1 개별 웹사이트에 질의하는 단계를 더 포함한다.
[0007] 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 상기 제1 기준 소스에 대한 데이터 소스 우선순위, 상기 제1 구조화된 지식 베이스에 대한 데이터 소스 우선순위, 및 상기 제1 개별 웹사이트에 대한 데이터 소스 우선순위는 각각 디폴트 데이터 소스 우선순위들이다.
[0008] 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 상기 복수의 데이터 소스들 중 각각의 기준 소스에 대한 디폴트 데이터 소스 우선순위는, 상기 복수의 데이터 소스들 중 각각의 구조화된 지식 베이스에 대한 디폴트 데이터 소스 우선순위보다 더 높다.
[0009] 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 상기 복수의 데이터 소스들 중 각각의 구조화된 지식 베이스에 대한 디폴트 데이터 소스 우선순위는, 상기 복수의 데이터 소스들 중 각각의 개별 웹 페이지에 대한 디폴트 데이터 소스 우선순위보다 더 높다.
[0010] 그러한 실시예의 부가적인 구현들은, 상기 제1 기준 소스, 상기 제1 구조화된 지식 베이스, 및 상기 제1 개별 웹사이트로부터 상충하는 메타데이터 엔트리들을 식별하는 단계, 및 상기 POI 탐색 요청에 응답하기 이전에 상기 병합된 메타데이터로부터 상기 상충하는 메타데이터 엔트리들을 제거하는 단계를 더 포함할 수 있다.
[0011] 그러한 실시예의 부가적인 구현들은, 상기 제1 기준 소스 및 제2 온라인 기준 소스에 질의하는 단계; 상기 제1 기준 소스의 제1 개별 POI 메타데이터로부터 개별 POI, 및 제2 온라인 기준 소스로부터 제2 개별 POI 메타데이터를 식별하는 단계; 상기 제1 개별 POI 메타데이터 및 상기 제2 개별 POI 메타데이터로부터 제1 개별 POI 호환가능한 메타데이터 및 제1 개별 POI 상충하는 메타데이터를 식별하는 단계; 제1 개별 POI 병합된 메타데이터를 생성하기 위해, 상기 제1 개별 POI 호환가능한 메타데이터를 이용하는 단계 및 상기 제1 개별 POI 상충하는 메타데이터를 제거하는 단계; 및 상기 제1 구조화된 지식 베이스에 질의하기 이전에 상기 제1 개별 POI 병합된 메타데이터로 상기 POI 탐색 요청에 응답하는 단계를 포함할 수 있다.
[0012] 그러한 실시예의 부가적인 구현들은, 상기 제1 구조화된 지식 베이스의 제3 개별 POI 메타데이터로부터 상기 개별 POI를 식별하는 단계; 상기 제1 개별 POI 병합된 메타데이터 및 상기 제3 개별 POI 메타데이터로부터, 제2 개별 POI 호환가능한 메타데이터 및 제2 개별 POI 상충하는 메타데이터를 식별하는 단계; 제2 개별 POI 병합된 메타데이터를 생성하기 위해 상기 제2 개별 POI 호환가능한 메타데이터 및 상기 제2 개별 POI 상충하는 메타데이터를 이용하여 상기 제1 개별 POI 병합된 메타데이터를 업데이트하는 단계; 및 상기 제2 개별 POI 병합된 메타데이터로 상기 POI 탐색 요청에 응답함으로써 상기 POI 탐색 요청에 대한 응답을 업데이트하는 단계를 포함할 수 있다.
[0013] 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 데이터 소스 우선순위는, 예측 응답 시간, 사용자 선호도 선택, 또는 데이터 품질 측정 중 하나 이상을 포함한다. 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 식별하는 단계는, 상기 복수의 데이터 소스들의 질의에 대한 응답들을 수신하는 단계 ― 상기 응답들은 개별 POI 메타데이터를 포함함 ―; 상기 응답들이 수신될 때에 시간에 따라, 상기 언어 분석 모듈을 이용하여 각각의 개별 POI에 대한 호환가능한 메타데이터 및 상충하는 메타데이터를 식별함으로써 상기 병합된 메타데이터를 업데이트하는 단계를 포함하고, 상기 병합된 메타데이터를 이용하여 POI 탐색 요청에 응답하는 단계는, 상기 응답들이 수신되고 그리고 상기 병합된 메타데이터가 시간에 따라 업데이트될 때에 복수의 병합된 메타데이터 업데이트들을 통신하는 단계를 포함한다.
[0014] 그러한 실시예의 부가적인 구현들이 기능할 수 있고, 여기서 상기 병합된 메타데이터를 생성하기 위해 상기 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 메타데이터 엔트리들을 병합하는 단계는, 각각의 개별 POI 결과에 대한 호환가능한 메타데이터를 상기 병합된 메타데이터에 포함시키는 단계, 및 상기 상충하는 메타데이터를 상기 병합된 메타데이터로부터 배제시키는 단계를 포함하고, 상기 POI 탐색 요청에 응답하는 단계는, 질의들에 대한 응답들이 수신될 때에 상기 병합된 메타데이터가 업데이트될 때마다 상기 병합된 메타데이터 업데이트들을 통신하는 단계를 포함한다.
[0015] 선택적인 실시예는 명령들을 포함하는 비-일시적 컴퓨터 판독가능 명령 매체일 수 있고, 상기 명령들은 프로세서에 의해 실행될 때에 컴퓨팅 디바이스로 하여금 방법을 수행하게 하고, 상기 방법은: 관심 지점(POI) 탐색 요청을 프로세싱하는 단계; 각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하는 단계 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―; 상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하는 단계 ― 질의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 상기 복수의 데이터 소스들 중 각각에 대한 적어도 하나의 소스 품질을 측정하는 단계; 상기 복수의 데이터 소스들에 질의하는 단계에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하는 단계; 상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하는 단계; 상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하는 단계; 및 상기 복수의 데이터 소스들 각각에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 메타데이터 소스들에 대한 상기 데이터 소스 우선순위를 업데이트하는 단계를 포함한다.
[0016] 그러한 매체의 부가적인 실시예들이 기능할 수 있고, 여기서 상기 방법은 상기 제1 기준 소스 및 제2 온라인 기준 소스에 질의하는 단계; 상기 제1 기준 소스의 제1 개별 POI 메타데이터로부터 개별 POI, 및 제2 온라인 기준 소스로부터 제2 개별 POI 메타데이터를 식별하는 단계; 상기 제1 개별 POI 메타데이터 및 상기 제2 개별 POI 메타데이터로부터 제1 개별 POI 호환가능한 메타데이터 및 제1 개별 POI 상충하는 메타데이터를 식별하는 단계; 제1 개별 POI 병합된 메타데이터를 생성하기 위해, 상기 제1 개별 POI 호환가능한 메타데이터를 이용하는 단계 및 상기 제1 개별 POI 상충하는 메타데이터를 제거하는 단계; 및 상기 제1 구조화된 지식 베이스에 질의하기 이전에 상기 제1 개별 POI 병합된 메타데이터로 상기 POI 탐색 요청에 응답하는 단계를 더 포함한다.
[0017] 다른 선택적 실시예는 컴퓨팅 디바이스일 수 있고, 이는 관심 지점(POI) 탐색 요청을 프로세싱하기 위한 수단; 각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하기 위한 수단 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―; 상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하기 위한 수단 ― 질의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 상기 복수의 데이터 소스들 각각에 대한 적어도 하나의 소스 품질을 측정하기 위한 수단; 상기 복수의 데이터 소스들에 질의하는 것에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하기 위한 수단; 상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하기 위한 수단; 상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하기 위한 수단; 및 상기 복수의 데이터 소스들 각각에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 메타데이터 소스들에 대한 상기 데이터 소스 우선순위를 업데이트하기 위한 수단을 포함한다.
[0018] 다양한 실시예들에 따른 컴퓨팅 디바이스의 선택적 실시예들은, 상기 복수의 데이터 소스들 중 각각의 데이터 소스에 대한 데이터 소스 우선순위를 사용자 입력으로부터 업데이트하기 위한 수단; 및 상기 복수의 데이터 소스들과의 통신에 멀티-스레딩된 사용자 질의들을 생성하기 위한 수단을 더 포함할 수 있다. 다양한 실시예들에 따른 컴퓨팅 디바이스의 선택적 실시예들은, 각각의 데이터 소스로부터 수신된 메타데이터의 정확도를 식별함으로써 상기 복수의 데이터 소스들 각각의 소스 품질을 측정하기 위한 수단을 더 포함할 수 있다.
[0019] 컴퓨팅 디바이스의 부가적인 실시예는, 관심 지점(POI) 탐색 요청을 프로세싱하기 위한 수단; 각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하기 위한 수단 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―; 상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하기 위한 수단 ― 상기 질의의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 및 상기 복수의 데이터 소스들 중 적어도 하나에 대한 적어도 하나의 소스 품질을 측정하기 위한 수단을 포함할 수 있다.
[0020] 상기 컴퓨팅 디바이스의 다른 실시예는, 상기 복수의 데이터 소스들에 질의하는 것에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하기 위한 수단; 상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하기 위한 수단; 상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하기 위한 수단; 및 상기 복수의 데이터 소스들 중 적어도 하나에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 데이터 소스들 중 상기 적어도 하나에 대한 상기 데이터 소스 우선순위를 업데이트하기 위한 수단을 더 포함할 수 있다.
[0021] 상기 컴퓨팅 디바이스의 다른 실시예는, 상기 복수의 데이터 소스들에 질의하는 것에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하기 위한 수단; 상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하기 위한 수단; 상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하기 위한 수단; 및 상기 복수의 데이터 소스들 중 적어도 하나에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 데이터 소스들 중 적어도 하나에 대한 상기 데이터 소스 우선순위를 업데이트하기 위한 수단을 더 포함할 수 있다.
[0022] 상기 컴퓨팅 디바이스의 다른 실시예는 추가로 기능할 수 있고, 여기서 상기 복수의 데이터 소스들은 상기 제1 기준 소스 및 상기 제1 구조화된 지식 베이스를 포함하고, 상기 제1 기준 소스에 대한 데이터 소스 우선순위는 상기 제1 구조화된 지식 베이스에 대한 데이터 소스 우선순위보다 더 높으며, 그리고 상기 복수의 데이터 소스들에 질의하는 것은: 상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 제1 기준 소스에 질의하기 위한 수단; 및 상기 제1 기준 소스에 질의하는 것 이후에, 상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 제1 구조화된 지식 베이스에 질의하기 위한 수단을 포함한다.
[0023] 상기 컴퓨팅 디바이스의 다른 실시예는, 상기 제1 기준 소스의 응답 시간을 측정하기 위한 수단; 및 상기 제1 구조화된 지식 베이스의 응답 시간을 측정하기 위한 수단을 더 포함할 수 있다. 상기 컴퓨팅 디바이스의 다른 실시예가 기능할 수 있고, 여기서 상기 복수의 데이터 소스들은 상기 제1 개별 웹사이트를 더 포함한다.
[0024] 상기 컴퓨팅 디바이스의 다른 실시예는, 상기 제1 기준 소스, 상기 제1 구조화된 지식 베이스, 및 상기 제1 개별 웹사이트로부터 상충하는 메타데이터 엔트리들을 식별하고, 그리고 상기 POI 탐색 요청에 응답하기 이전에 상기 병합된 메타데이터로부터 상기 상충하는 메타데이터 엔트리들을 제거하기 위한 수단을 더 포함할 수 있다.
[0025] 상기 컴퓨팅 디바이스의 다른 실시예는, 상기 제1 기준 소스 및 제2 온라인 기준 소스에 질의하기 위한 수단; 상기 제1 기준 소스의 제1 개별 POI 메타데이터로부터 개별 POI, 및 상기 제2 온라인 기준 소스로부터 제2 개별 POI 메타데이터를 식별하기 위한 수단; 상기 제1 개별 POI 메타데이터 및 상기 제2 개별 POI 메타데이터로부터 상기 개별 POI에 대한 제1 POI 호환가능한 메타데이터 및 상기 개별 POI에 대한 제1 POI 상충하는 메타데이터를 식별하기 위한 수단; 제1 개별 POI 병합된 메타데이터를 생성하기 위해, 상기 제1 POI 호환가능한 메타데이터를 이용하고 상기 제1 POI 상충하는 메타데이터를 제거하기 위한 수단; 및 상기 제1 구조화된 지식 베이스에 질의하기 이전에 상기 제1 개별 POI 병합된 메타데이터로 상기 POI 탐색 요청에 응답하기 위한 수단을 더 포함할 수 있다.
[0026] 상기 컴퓨팅 디바이스의 다른 실시예는, 상기 제1 구조화된 지식 베이스의 제3 개별 POI 메타데이터로부터 상기 개별 POI를 식별하기 위한 수단; 상기 제1 개별 POI 병합된 메타데이터 및 상기 제3 개별 POI 메타데이터로부터, 상기 개별 POI에 대한 제2 POI 호환가능한 메타데이터 및 상기 개별 POI에 대한 제2 POI 상충하는 메타데이터를 식별하기 위한 수단; 제2 개별 POI 병합된 메타데이터를 생성하기 위해 상기 제2 POI 호환가능한 메타데이터 및 상기 제2 POI 상충하는 메타데이터를 이용하여 상기 제1 개별 POI 병합된 메타데이터를 업데이트하기 위한 수단; 및 상기 제2 개별 POI 병합된 메타데이터로 상기 POI 탐색 요청에 응답함으로써 상기 POI 탐색 요청에 대한 응답을 업데이트하기 위한 수단을 더 포함할 수 있다.
[0027] 상기 컴퓨팅 디바이스의 부가적인 실시예들이 기능할 수 있고, 여기서 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 식별하는 것은, 상기 복수의 데이터 소스들의 질의에 대한 응답들을 수신하는 것 ― 상기 응답들은 개별 POI 메타데이터를 포함함 ―; 상기 응답들이 수신될 때에 시간에 따라, 상기 언어 분석 모듈을 이용하여 각각의 개별 POI에 대한 호환가능한 메타데이터 및 상충하는 메타데이터를 식별함으로써 상기 병합된 메타데이터를 업데이트하는 것을 포함하고, 상기 병합된 메타데이터를 이용하여 POI 탐색 요청에 응답하는 것은, 상기 응답들이 수신되고 그리고 상기 병합된 메타데이터가 시간에 따라 업데이트될 때에 복수의 병합된 메타데이터 업데이트들을 통신하는 것을 포함한다.
[0028] 상기 컴퓨팅 디바이스의 또 다른 추가의 실시예들은, 각각의 개별 POI 결과에 대한 호환가능한 메타데이터를 상기 병합된 메타데이터에 포함시키고 그리고 상기 상충하는 메타데이터를 상기 병합된 메타데이터로부터 배제시키기 위한 수단; 및 질의들에 대한 응답들이 수신될 때에 상기 병합된 메타데이터가 업데이트될 때마다 상기 병합된 메타데이터 업데이트들을 통신하기 위한 수단을 포함할 수 있다.
[0029] 다른 선택적인 실시예는 컴퓨팅 디바이스일 수 있고, 이는 무선 통신 모듈; 상기 무선 통신 모듈에 커플링되는 메모리; 및 상기 무선 통신 모듈과 상기 메모리에 커플링되는 프로세서를 포함하고, 상기 프로세서는 각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하고 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―; POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하며 ― 질의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 상기 복수의 데이터 소스들 각각에 대한 적어도 하나의 소스 품질을 측정하고, 그리고 상기 복수의 데이터 소스들 각각에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 메타데이터 소스들에 대한 데이터 소스 우선순위를 업데이트한다.
[0030] 다양한 특정 실시예들이 기술되는 반면, 당업자는 다양한 실시예들의 엘리먼트들, 단계들 및 컴포넌트들이 본 설명의 범위 이내에 유지되면서 선택적인 구조들로 배열될 수 있음을 이해할 것이다. 또한, 본 명세서의 설명이 주어지면 부가적인 실시예들이 명백할 것이고, 따라서 본 설명은 특별히 기술된 실시예들만 나타내는 것이 아니라 본 명세서에 기술된 기능 또는 구조가 가능한 임의의 실시예를 나타낸다.
[0031] 본 개시물의 양상들이 일 예로 도시된다. 첨부되는 도면들에서, 유사한 참조 숫자들은 유사한 엘리먼트들을 표시한다.
[0032] 도 1은 하나 이상의 실시예들을 통합할 수 있는 시스템의 간략도를 도시한다.
[0033] 도 2는 하나 이상의 실시예들에 따라 동작할 수 있는 하나의 잠재적 방법의 양상들을 도시한다.
[0034] 도 3은 하나 이상의 실시예들에 따라 이용될 수 있는 디바이스의 간략도를 도시한다.
[0035] 도 4는 하나 이상의 실시예들에 따라 동작할 수 있는 하나의 잠재적 방법의 양상들을 도시한다.
[0036] 도 5는 다양한 시스템들 및 디바이스들의 하나 이상의 실시예들의 양상들로 이용될 수 있는 컴퓨팅 디바이스의 하나의 잠재적 실시예를 도시한다.
[0037] 도 6은 다양한 시스템들 및 디바이스들의 하나 이상의 실시예들의 양상들로 이용될 수 있는 네트워크의 하나의 잠재적 실시예를 도시한다.
[0038] 본 개시물의 양상들은 관심 지점(point of interest)들 컴퓨팅 기술들을 위한 네트워크화된 탐색(search)들에 관한 것이다. 특히, 관심 지점 탐색들의 일부로서 데이터 제공자들을 분류하고 조직화하는데에 있어서의 이용을 위한 시스템들, 디바이스, 및 방법들이 기술된다. 부가적인 실시예들은 관심 지점(POI) 탐색들을 개선하기 위해 피드백 및 성능 분석을 갖는 이러한 편성(orchestration)의 이용을 기술할 수 있다.
[0039] 예컨대, 하나의 잠재적 실시예에서, 본 실시예에 따른 시스템을 이용하는 사람은 먹을 장소를 탐색하기를 희망하는 자동차 내 승객일 수 있다. 이 시스템은 모바일 전화를 이용하여 POI 탐색 요청을 생성할 수 있고, 여기서 상기 POI 탐색 요청은 구절 "내 주변의 먹기 좋은 장소들"을 포함한다. 그 후에 모바일 디바이스는 사용자의 현재 위치와 상기 요청을 통합할 수 있고, 그리고 상기 POI 탐색 요청을 그 요청을 프로세싱할 수 있는 서버로 통신할 수 있다.
[0040] 서버에서, 언어 분석 모듈은 제공된 위치 근처의 "먹기 좋은 장소들"에 대한 탐색을 프로세싱하여, 그 탐색 구절의 상기 언어 분석 모듈의 해석에 의해 결정되는 바와 같은 특정 특성들을 갖는 식당들을 식별할 수 있다. 서버는 매우 많은 수의 잠재적인 데이터 소스들로의 액세스를 가질 수 있고, 상기 데이터 소스들은 그러한 탐색에 관련된 관심 지점들을 식별할 수 있다. 응답을 제공하기 이전에 과도한 양의 시간이 걸리는 것을 방지하기 위해서, 서버는 데이터 소스 품질 메트릭(metric)들로 잠재적 데이터 소스들을 우선순위화할 수 있다. 상기 언어 분석 모듈로 상기 POI 탐색 요청을 해석한 이후에, 본 시스템은 최고 우선순위 데이터 소스들로부터 시작하여 데이터 소스들에 일련의 질의들을 송신하기 시작할 수 있다.
[0041] 상이한 데이터 소스들이 상이한 레이턴시(latency)들로 응답할 수 있기 때문에, 질의들에 대한 응답들은 동시에 모두 수신되지 않을 수 있다. 모든 질의들이 응답되기를 기다리는 것 대신에, 본 시스템은 데이터 소스들로부터 POI 메타데이터가 수신될 때에 상기 POI 메타데이터를 취할 수 있고(take), 그리고 응답 데이터의 스트림으로 상기 POI 탐색 요청에 응답할 수 있다. 점점 더 많은 결과들이 서버에 수신될 때에, 각각의 관심 지점에 대한 메타데이터가 병합될 수 있고, 그리고 각각의 관심 지점에 대한 호환가능한 또는 상충하는 메타데이터는 병합된 메타데이터를 생성하기 위해 이용될 수 있다. 그 후에, 병합된 메타데이터가 생성될 때에 탐색 동안에 식별된 각각의 POI에 대한 업데이트들이 사용자에 스트리밍될 수 있다.
[0042] 부가적으로, 상이한 데이터 소스들로부터의 응답들이 서버에 수신될 때에, 응답이 수신되는 각각의 데이터 소스와 연관된 품질이 측정될 수 있다. 예컨대, 특정 데이터 소스로의 질의의 통신으로부터 그 데이터 소스로부터의 응답의 수신까지의 총 시간이 데이터 소스 품질로서 측정될 수 있다. 부가적으로, 정보의 양 또는 품질이 데이터 소스 품질로서 측정될 수 있다. 데이터 소스 품질을 결정하기 위한 이러한 분석은 응답들이 수신될 때에 실시간으로 발생할 수 있거나, 또는 자원들을 효율적으로 이용하기 위해 이후의 시간에 분석될 수도 있다.
[0043] 따라서, 그러한 잠재적 실시예에 따른 시스템은 품질에 기초하여 계층적으로 조직화된 데이터 소스들로부터 촉진된 방식으로 POI 탐색 데이터를 제공할 수 있고, 시스템은 데이터 소스들의 품질을 연속적으로 측정하고 업데이트한다.
[0044] 본 명세서에서 기술되는 바로서, "관심 지점(point of interest)"은 서술어(descriptor)들의 세트에 매칭하는 개별 물리적 위치이다. 그러한 관심 지점은 주소, 좌표, 또는 지도 상의 표시를 이용하는 관심 지점의 물리적 위치에 의해 기술될 수 있고, 그리고 그 위치의 세부사항들을 기술하는 매우 다양한 메타데이터와 추가로 연관될 수 있다. 예컨대, 식당, 미술관, 고정 위치에서의 조각상, 표지판, 또는 임의의 다른 그러한 위치가 관심 지점으로서 고려될 수 있다. 특정 예들에서, 음식 트럭과 같은 관심 지점은 비록 그것이 특정 위치에서 영구적으로 고정되지 않을지라도 관심 지점으로서 고려될 수 있다.
[0045] "관심 지점 탐색 요청"은, 관심 지점들을 식별하기 위해 이용될 수 있는 서술어들, 구절들, 질문들, 또는 사용자 입력들의 세트를 나타낸다. 예컨대, 탐색 요청의 일부로서 관심 지점들을 식별하기 위해 "식당들" "화장실들" "렌터카" 및/또는 임의의 다른 그러한 서술어들이 이용될 수 있다.
[0046] 본 명세서에서 사용되는 바로서 "관심 지점 메타데이터" 및 "메타데이터"는, 개별 관심 지점들을 기술하고 그리고 관심 지점이 단일의 탐색 요청에 응답할 때에 개별 관심 지점들을 서로 구별할 수 있는 특성들을 나타낸다. 예컨대, POI 메타데이터는 주소, 전화 번호, 개점 시간들, 제공되는 음식/음료들, 음식의 종류, 가격들, 사용자 리뷰들, 물리적 서술들 등을 포함할 수 있다.
[0047] "데이터 소스"는, 개별 POI들과 연관되는 메타데이터를 저장하는 컴퓨팅 디바이스를 나타낸다. 데이터 소스들은 데이터 소스의 구조, 명칭, 프리젠테이션(presentation), 품질, 운영자, 및/또는 임의의 다른 속성에 기초하여 추가로 구별될 수 있다.
[0048] "병합된(merged) 메타데이터"는, 개별 관심 지점을 기술하는 메타데이터의 단일 세트로 집합되는 다수의 데이터 소스들로부터의 메타데이터를 나타낸다. 그러한 메타데이터를 병합하기 위해 이용되는 프로세스는, 상충하는 메타데이터 데이터를 배제할 수 있거나, 또는 메타데이터가 수신되었던 데이터 소스들의 신뢰성에 기초하여 메타데이터에 대한 신뢰 레벨들을 세팅할 수 있다. 메타데이터를 병합하기 위한 프로세스의 양상들은 이전 탐색들로부터의 피드백 및 사용자 선호도에 기초하여 세팅될 수 있다. 특정 POI에 대한 일주일 지난 업데이트 및 그 POI에 대한 개별 웹 사이트 양자를 갖는 기준 소스가 그 POI에 대한 전화 번호를 식별하는 반면, 지식 베이스(knowledge base)에서의 2년 지난 엔트리가 별개의 전화 번호를 식별하는 경우에, 병합된 메타데이터는 첫번째 두 개의 소스들로부터의 호환가능한 메타데이터를 포함할 수 있고 그리고 지식 베이스로부터의 상충하는 메타데이터는 거절할 수 있다. 다른 실시예들에서 그러한 메타데이터 모두가 거절될 수 있거나, 또는 그러한 메타데이터 모두가 병합될 수 있고, 여기서 병합된 메타데이터에 포함되는 상충의 세부사항들은 사용자 또는 시스템 세팅들에 의존한다. 그러한 병합된 메타데이터에 대한 부가적인 설명이 이하에서 기술된다.
[0049] 본 명세서에서 사용되는 바로서 "호환가능한 메타데이터"는, 다른 메타데이터에 동의하거나 또는 다른 메타데이터를 확증하는 다수의 데이터 소스들로부터의 메타데이터를 나타낸다. 그러한 메타데이터는 다른 호환가능한 메타데이터의 정확한 복제본일 필요는 없지만, 단순히 POI 탐색 컴퓨터 또는 규칙 엔진에 의해 분석 및 식별될 수 있는 방식으로 암시 또는 추론에 의해 다른 부분(piece)의 메타데이터를 보다 정확하게 될 가능성이 많게 하는 메타데이터일 수 있다.
[0050] 반면에, "상충하는 메타데이터"는 다른 부분의 메타데이터를 정확하게 될 가능성이 적게 하는 메타데이터이다. 다른 메타데이터와 직접적으로 모순되는 메타데이터는 상충하는 메타데이터이다. 예컨대, 특정 시간에 위치가 폐쇄된다고 언급하는 메타데이터의 일 부분과, 그에 반해 그 동일한 시간에 그 위치가 개방될 것이라고 언급하는 메타데이터의 다른 부분은 상충하는 메타데이터이다. 직접적으로 상충하지는 않지만 분석적 추론에 의해 메타데이터의 다른 부분을 덜 사실일 것처럼 만들 수 있는 메타데이터도 또한 상충하는 메타데이터일 수 있다.
[0051] "데이터 소스 품질"은 데이터 소스로부터의 응답들에 대한 정보를 나타낸다. 응답 시간 또는 질의의 통신으로부터 응답의 수신까지의 시간은 하나의 잠재적 데이터 소스 품질이다. 소스로부터의 유용한 데이터의 용량을 측정하는 데이터 양 또는 질의에 응답하여 데이터 소스가 평균적으로 얼마나 많은 데이터를 제공하는지가 다른 데이터 소스 품질일 수 있다. 또한, 데이터 소스로부터 수신된 데이터의 정확성도 다른 데이터 소스 품질일 수 있다. 예컨대, 응답 시간 측정들의 경우에, 그러한 품질들은 데이터 소스로부터 응답의 수신 시에 즉시 평가될 수 있다. 정확성 및 완전성 품질들은 부가적인 분석을 필요로 할 수 있고, 그리고 시간에 따른 많은 응답들의 측정 및 분석에 의존할 수 있다.
[0052] "데이터 소스 우선순위"는, 데이터 소스로부터 정보를 요청할 때에 언제 그리고 어떠한 순서로 사용할지를 결정하기 위해 데이터 소스 품질 정보에 기초하는 메트릭을 나타낸다. 그러한 우선순위는 데이터 소스 품질 정보의 분석에 의해 생성되는 번호로서 세팅될 수 있다. 예컨대, 평균 응답 시간이 데이터 소스 우선순위로서 직접적으로 이용될 수 있고, 데이터 소스들로의 질의들의 순서화에 있어 더 낮은 응답 시간들에 더 이른 우선순위가 할당된다. 다른 실시예들에서, 사용자들은 선호 데이터 소스들을 선택할 수 있고, 이러한 선호도는 완전성, 정확성의 측정, 및 응답 시간 측정들과 추가로 통합되어, 가중 공식을 이용하여 각각의 데이터 소스에 대한 데이터 소스 우선순위를 생성할 수 있다. 부가적인 실시예들은 특정 데이터 소스, 또는 데이터 소스로부터의 특정 메타데이터의 다른 상대 값들을 이용해 응답 시간을 가중하기 위한 임의의 다른 그러한 시스템과 연관되는 비용을 측정할 수 있다.
[0053] 관심 지점(POI) 탐색들을 위한 표준 위치-기반 서비스들은 네트워크 상의 단일 소스 또는 데이터 제공자로부터 POI 메타데이터를 리트리브한다. 그러한 탐색들에 의해 리트리브되는 POI 메타데이터는 예컨대 주소, 전화 번호, 개점 시간, 제공되는 음식/음료들, 등을 포함할 수 있다. Google PlacesTM, Yelp.comTM, 및 OpenStreetMapTM은 모두 이러한 메타데이터를 제공하는 서비스들의 예들이다. 하지만, 일부 데이터 제공자들이 정확하고 잘 유지된 메타데이터를 제공할지라도, 아무도 개별 POI들에 대한 포괄적이고 그리고 일관성 있는 정보를 제공하지 않는다. 예컨대, Google Places는 주어진 식당에 대한 개점 시간들을 찾기 위한 메타데이터를 포함할 수 있지만, 그 식당에서 제공되는 음식의 타입을 기술하는 정확한 메타데이터는 크라우드-소싱된(crowd-sourced) OpenStreetMapTM과 같은 별개의 데이터 제공자에 의해서, 또는 그 식당의 웹사이트 상에서 열거될 수 있다. 메타데이터 포맷 및 의미론(semantics)은 또한 그러한 상이한 데이터 소스들에 걸쳐 동질적이지 않다. 예컨대, 특정 데이터 소스들이 POI 주소를 제공할 수 있는 반면에, 이는 "주소" 또는 "위치"와 같은 상이한 라벨들에 의해 식별될 수 있다. 일부 데이터 소스들은 또한 단일 스트링으로 전체 주소를 이용할 수 있음에 반해, 다른 데이터 소스들은 그것을 부분들로 분할한다(숫자, 거리, 우편/집(zip) 코드, 나라). 전화 번호들 또는 선택적인 장소 명칭들과 같은 다른 정보에 대해서도 동일한 것이 적용된다. 마지막으로, 상이한 영역들에서의 그리고 상이한 데이터 제공자들에 의한 POI 커버리지는, 심지어 주요 제공자들에 대해 매우 가변적일 수 있다. 다수의 사업들을 포함하는 대형 소매점 집결지들/쇼핑 센터들을 핸들링함에 있어 특별한 도전이 생겨난다. 이 경우 단지 하나 또는 수 개의 주요 사업들(예컨대, 슈퍼마켓)은, 다른 시설들이 이용가능할지라도(예컨대, 슈퍼마켓 복합 단지에 소속된 차량 연료 보급소) 관심 지점으로서 일부 데이터 제공자들에 의해 열거될 수 있다.
[0054] 부가하여, 그러한 탐색들이 탐색되는 관심 지점들 또는 물리적 위치들로의 직접 연결들을 갖는 엔티티에 의해 조직화되지 않을 수 있기 때문에, 그러한 탐색들을 위해 이용가능한 데이터의 양과 품질이 대단히 가변적일 수 있고, 그리고 다양한 종류의 잠재적 소스들로부터 올 수 있다. 사업들이 이동하거나 변화함에 따라, 일부 소스들로부터의 데이터가 특정 관심 지점에 대해서 구식이 될 수도 있다. 다수의 소스들로부터의 데이터를 통합하는 복잡성들, 및 관심 지점들에 대한 정보를 요청할 때에 사용자들이 가질 수 있는 독특한 요구들 때문에,
[0055] 도 1은 POI 메타데이터의 검색(retrieval)에서 데이터 제공자들의 계층적 편성을 위한 시스템의 일 실시예를 기술한다. 도 1의 시스템은 디바이스(110), 사용자(101), POI 탐색 컴퓨터(120), 및 복수의 데이터 소스들(155)을 포함한다. 디바이스(110)는, POI 탐색 요청(112)을 생성하고 그리고 POI 탐색 요청(112)을 POI 탐색 컴퓨터(120)에 통신하기 위한, 휴대전화, 랩톱 컴퓨터, 태블릿 컴퓨터, 데스크톱 컴퓨터, 자동차 위치 보조 디바이스, 또는 사용자(101)로부터의 입력을 승인할 수 있는 임의의 그러한 디바이스와 같은 임의의 컴퓨팅 디바이스일 수 있다.
[0056] 도 1의 실시예는 별개의 POI 탐색 컴퓨터(120)에서 수행되는 부가적인 프로세싱 및 질의들을 이용해 디바이스(110) 상에서 생성되는 탐색을 도시하는 반면, 도 3에 의해 도시되는 실시예와 같은 선택적인 실시예들에서는, 프로세싱, 언어 분석, 및 질의들이 디바이스(110)에 의해, 필수적으로는 디바이스(110) 및 POI 탐색 컴퓨터(120)를 단일 컴퓨팅 디바이스로 통합함으로써 수행될 수 있다.
[0057] POI 탐색 컴퓨터(120)는 POI 탐색 프로세싱 및 품질 측정 모듈(130), 언어 분석 모듈(150), 및 메타데이터 통신 모듈(140)을 포함한다. 모듈(130)은, 디바이스(110)로부터의 POI 탐색 요청(112)을 포함하는 POI 요청들을 POI 탐색 컴퓨터(120)에 송신하는 디바이스들 중 일부 또는 모두와의 통신을 관리하도록 기능할 수 있다. 특정 실시예들에서, 모듈(130)은 우선 관심 지점들에 대한 탐색을 관리할 수 있고 그 후에 복수의 데이터 소스들로부터의 부가적인 메타데이터에 대한 탐색을 관리할 수 있는 반면, 다른 실시예들에서 모듈(130)은 통합된 탐색으로서 관심 지점들 및 연관된 POI 메타데이터에 대한 탐색을 지시하도록 기능할 수 있다. 부가적으로, 다양한 실시예들에서, 언어 분석은 또한 POI 탐색 요청에 응답하는 개별 POI들의 식별의 일부로서 수신된 POI 탐색 요청 상에서 이용될 수 있다.
[0058] 사용자들로부터의 POI 탐색 요청들이 모듈(130)에 의해 프로세싱될 때에, POI 탐색 요청(112)과 같은 각각의 POI 탐색 요청은 다수의 상이한 데이터 소스들로의 질의들을 생성하기 위해 이용된다. 모듈(130)이 POI 탐색 요청(112)을 프로세싱할 때에, 적절한 데이터 소스들(155)이 식별된다. 특정 실시예들에서 데이터 소스들의 적어도 일부가 모든 POI 탐색 요청들에 대해 표준화될 수 있는 반면, 다른 실시예들에서 데이터 소스들의 전체 세트가 개별 POI 탐색 요청의 분석에 기초하여 커스터마이징 및 결정될 수 있다. 그 일부로서, 데이터 소스들(155)은 POI 탐색 컴퓨터(120)에 이용가능한 모든 데이터 소스들의 서브세트일 수 있거나, 또는 POI 탐색 컴퓨터(120)에 대해 이용가능한 데이터 소스들 모두를 포함할 수 있다.
[0059] 게다가 또, 모듈(130)은 POI 탐색 컴퓨터(120)에 이용가능한 데이터 소스들 각각에 대한 데이터 소스 우선순위를 저장하거나 또는 상기 데이터 소스 우선순위에 대한 액세스를 갖는다. 그러한 데이터 소스 우선순위들은 복수의 팩터들에 기초한다. 하나의 잠재적 실시예에서, 데이터 소스 우선순위는 응답 시간들의 예측 또는 측정 이력에만 기초하여, 질의들을 발행(issue)함에 있어 응답 속도를 우선순위화한다. 다른 실시예들에서, 복수의 팩터들의 가중 공식이 각각의 데이터 소스에 대한 데이터 소스 우선순위 값을 생성하기 위해 이용될 수 있다. 팩터들의 예들의 비-제한적인 세트는 이력적 메타데이터 응답 양, 이력적 메타데이터 응답 품질, 메타데이터와 연관되는 비용, 사용자-세팅된 가중 팩터들, 또는 임의의 다른 그러한 팩터를 포함할 수 있다. 사용자-세팅된 가중 팩터들의 예들은, 특정 타입의 메타데이터가 식별되거나 또는 개별 POI에 대한 특정 레벨의 신뢰성으로 식별될 때까지 특정 데이터 소스들을 이용하지 않거나 또는 개별 POI에 대해 어떠한 응답도 고려(see)하지 않는 선호도를 포함할 수 있다.
[0060] 모듈(130)에 의해 질의들 및 우선순위들이 식별된 이후에, 본 시스템은 그 후에 질의들 및 우선순위들(132)을 메타데이터 통신 모듈(140)에 통신할 수 있다. 이 모듈(140)은 복수의 질의들이 데이터 소스들(155)로 이동될 때에 연관된 우선순위들에 기초하여 상기 복수의 질의들의 통신을 관리하도록 기능할 수 있다. 특정 실시예들에서, 메타데이터 통신 모듈(140)은, 데이터 소스 우선순위들에 의해 식별되는 순서를 이용하는 동시에 다중-스레딩된 질의들을 생성하도록 기능할 수 있다. 선택적인 실시예들에서, 이러한 질의들의 통신은 상이한 방식들로 관리될 수 있다. 하나의 잠재적 실시예에서, 상기 질의들은 질의들 및 우선순위들(132)에 기초하여 가능한한 신속하게 개별 데이터 소스들로 송신될 수 있다. 하지만, 그러한 시스템은 과도한 개수의 질의들이 송신되거나 그리고/또는 과도한 개수의 응답들이 동시에 수신되는 경우 병목(bottleneck) 이슈들을 생성할 수 있고, 그리고 단일 탐색과 연관된 많은 개수의 질의들이 송신될 때에 부하가 많은(fully loaded) 시스템에서 또한 문제점들을 야기할 수 있다. 선택적인 실시예들에서, 각각의 질의가 우선순위 레벨에 기초하여 개별적으로 송신될 수 있고, 모듈(140)은 부가적인 질의를 송신하기 이전에 응답을 대기한다. 그러한 실시예들은 특정 응답이 지연되거나(stall) 또는 데이터 소스(155)에 의해 누락되는(drop) 경우에 타임-아웃(time-out)을 포함할 수 있다. 유사한 실시예에서, 응답이 수신되기 이전에 특정 개수의 질의들이 송신될 수 있고, 응답이 수신될 때마다 새로운 질의가 송신된다. 예컨대, 5개의 질의들이 송신될 수 있고, 제6 및 후속 질의들은 응답이 수신될 때에만 송신된다. 특정 실시예들에서, 질의들 중 임의의 하나의 질의로부터 충분한 데이터가 수신되면(또는 이전 질의들로부터 메타데이터의 축적), 추가의 질의가 중단될 수 있고 그리고 데이터가 사용자에 제공될 수 있다.
[0061] 또 다른 추가의 실시예들에서, 데이터 소스들(155)이 그룹들로 추가로 분류 및 조직화될 수 있다. 그러한 그룹핑의 하나의 잠재적 예는 기준 소스(160)와 같은 기준 소스들, 구조화된 지식 베이스(170)와 같은 구조화된 지식 데이터베이스들, 및 개별 웹 사이트 소스(180)와 같은 개별 위치들의 그룹핑이다. 기준 소스들은, 예컨대, 상업적 데이터베이스들, 온라인 관광객 가이드들, 온라인 관심 지점 가이드들, 상업적 크라우드소싱 데이터베이스들, 또는 표준 지식의 다른 그러한 공중 소스들일 수 있다. 구조화된 지식 베이스들은, OpenStreetMapTM 또는 Google PlacesTM과 같은 온라인 디렉토리들을 포함할 수 있다. 그러한 구조화된 지식 베이스들은 크라우드-소싱되어 전문적으로 편집되고 유지될 수 있거나, 또는 이 둘의 혼합일 수 있다. 그러한 구조화된 지식 베이스들은 암호 보호될 수 있거나, 또는 정보에 대한 액세스를 늦출 수 있는 방식에 의해 제공되는 정보에 액세스하기 위한 지불 요건들을 포함할 수 있다. 개별 웹사이트들은, 개별 관심 지점을 기술하는 하나 이상의 공중에 이용가능한 독립형 웹 사이트들일 수 있다. 그러한 웹 사이트들은, 관심 지점의 사업들 또는 소유자들에 의해, 또는 자신 고유의 웹사이트에서 관심 지점을 기술하는 목적으로 웹 사이트들을 생성하는 제3자 공공의 개인들, 및 데이터베이스의 일부로서가 아닌 지식 베이스, 또는 가이드에 의해 생성되어 운영될 수 있다. 개별 관심 지점과 연관되는 메타데이터를 식별하기 위해서 그러한 사이트들이 개별적으로 파싱 또는 스크레이핑(scrape)될 수 있다.
[0062] 그러한 방식으로 데이터 소스들을 그룹핑하는 것은 데이터 소스들로 질의들을 통신함에 있어 부가적인 순서화를 가능하게 할 수 있다. 예컨대, 일 실시예에서 특정 카테고리 내의 그룹핑된 데이터 제공자들에는 디폴드(default) 데이터 소스 우선순위가 할당될 수 있다. 특정 카테고리의 모든 데이터 제공자들은 우선순위 밴드(band)에 있을 수 있고, 그에 따라 모든 그러한 데이터 소스들이 상이한 카테고리로부터의 모든 데이터 소스들보다 더 높은 우선순위에 있다. 데이터 소스들은 그 후에 카테고리 내의 그들의 우선순위에 따라 연속적으로 질의된다. 개별 소스 각각은 그룹 내에서 가변하는 우선순위를 가질 수 있고, 그리고 이러한 우선순위는 개별 데이터 소스의 성능이 변화함에 따라 시간에 따라 가변할 수 있다.
[0063] 다른 잠재적 실시예에서, 각각의 카테고리에 대해 최상의 우선순위 데이터 소스가 우선 질의될 수 있다. 예컨대, 최상의 우선순위 기준 소스가 질의(162)로서 우선 질의될 수 있다. 메타데이터(164)로서 응답이 수신된 이후에, 최상의 우선순위 구조화된 지식 베이스가 질의(172)로서 질의될 수 있다. 응답 메타데이터(174)가 수신된 이후에, 최상의 우선순위 개별 웹사이트가 질의(182)로서 질의될 수 있다. 응답 메타데이터(184)가 수신된 이후에, 데이터 소스들로의 부가적인 질의들이 그룹과 관계없이 품질의 전체 순서로 진행할 수 있다.
[0064] 그러한 실시예에서, 우선 본 시스템은 모듈(140)에서 기준 소스(160)로부터 메타데이터(164)를 수신할 것이다. 그 후에 메타데이터(164)는 응답 시간과 같은 메타데이터(164)와 연관되는 품질 데이터와 함께 모듈(130)로 송신될 수 있다. 본 시스템은 응답(190)의 일부로서 메타데이터(164)를 이용하여 POI 탐색 요청(112)에 즉시 응답할 수 있다. 선택적인 실시예들에서, 본 시스템은 병합된 메타데이터가 생성되는 것을 대기할 수 있다. 다른 메타데이터와의 임의의 병합 이전에 응답이 메타데이터(164)를 이용하여 송신되면, 언어 분석 모듈(150)은 메타데이터(164)를 분석하여 메타데이터(164) 내의 정보를 미리정의된 시스템 카테고리들과 연관시킬 수 있다. 예컨대, 메타데이터(164)는 "주소"로 라벨링되는 위치 정보를 포함할 수 있는 반면, 본 시스템은 이하 기술되는 바와 같이 "위치" 식별자로 그러한 정보를 식별할 수 있다.
[0065] 이 예에서, 메타데이터(174)가 이후에 모듈(130)에서 수신되고 그리고 언어 분석 모듈(150)로 송신될 때에, 병합된 메타데이터가 메타데이터(164)를 메타데이터(174)와 통합함으로써 생성될 수 있다. 상이한 데이터 제공자들에 의해서 리트리브된 메타데이터는 의미론적으로 가변할 수 있다. 이는, POI에 대한 주소가 기준 소스(160)에 의해서는 "주소=X"로서 그리고 구조화된 지식 베이스(170)에 의해서는 "위치=Y" ― X 및 Y가 동일한 값임에도 불구하고 ― 로서 지칭될 수 있음을 의미한다. POI 타입은 하나의 데이터 소스에서는 극장에 대해 "타입=극장(cinema)"일 수 있지만, 상이한 데이터 소스에 의해서는 "타입=영화관(movie theatre)"로서 분류될 수 있다. 이러한 의미론적 차이들을 조화시키기 위해, 언어 분석 모듈(150)은 어휘 또는 관련어집(thesaurus)을 인코딩하는 언어 온톨로지(ontology)를 이용할 수 있다.
[0066] 그러한 온톨로지는, 유사성들을 발견하기 위해 그리고 온톨로지 네트워크(또는 그래프) 상에서 구동하는 유사성 알고리즘을 통해 메타데이터 엔트리들을 매칭하기 위해서(예컨대, "극장"은 "영화관"과 유사하다고 고려될 것임) 이용될 수 있다. 두 개의 유사한 엔트리들이 식별되면, 본 시스템은 엔트리 값들의 값을 비교할 수 있다: 값들이 동일한 경우(예컨대, 상기 X=Y이면), 그 후에 X는 본래대로 리턴될 수 있다. 그렇지 않으면, X가 Y와 동일하지 않다면, 스트링/값 유사성 알고리즘이 얼마나 두 값들이 유사한지를 검출하기 위해 이용될 수 있다. 그들이 유사하면 그 후에 두 값들 중 하나가 리턴될 수 있고, 그렇지 않으면 값들은 불일치하고 그리고 그들은 상충하는 메타데이터로서 폐기될 수 있다.
[0067] 메타데이터가 병합된 이후에, 병합된 메타데이터가 응답(190)으로서 디바이스(110)로 송신된다. 응답이 메타데이터(164)만을 이용하여 이전에 송신되면, 그 후에 병합된 메타데이터는 병합된 메타데이터 업데이트로서 송신될 수 있다. 이는 완전한 병합된 메타데이터를 송신하여 이전에 송신된 메타데이터를 대체할 수 있다. 선택적으로, 병합된 메타데이터 업데이트는 디바이스(110)로 송신된 이전 메타데이터로부터의 변화들만을 포함할 수 있다.
[0068] 이 예에서, 메타데이터(184)와 같은 부가적인 메타데이터가 수신, 프로세싱 및 병합될 때에, 부가적인 메타데이터 업데이트들이 디바이스(110)로 송신될 수 있다. 상이한 그룹들에 속하는 메타데이터가 상이한 시간들에 리턴될 수 있는데, 왜냐하면 데이터 소스들이 상이한 시간들에 응답하고 그리고 특정 질의들이 이전 응답들의 수신에 의해 게이팅될 수 있기 때문이다. 사용자(101)에 대한 POI 개요를 디바이스(110)에 신속하게 제공하기 위해 초기 응답(190)이 이용될 수 있는 반면, 부가적인 메타데이터가 네트워크에 걸쳐 리트리브된다. 더 많은 메타데이터가 이용가능하게 되면, 디바이스(110) 상의 인터페이스는 업데이트된 병합된 메타데이터로서 수신되는 부가적인 정보를 제공하도록 적응된다. 특정 실시예들에서, 임의의 지점에서 사용자는 부가적인 업데이트들의 수신을 중단하기 위해 업데이트된 병합된 메타데이터의 스트림을 차단할 수 있거나, 또는 사용자는 모든 메타데이터가 디스플레이되도록 대기해야 할 필요 없이 수신 시 모든 병합된 메타데이터가 즉시 보여지도록 선택할 수 있다.
[0069] 게다가, 메타데이터의 수신 동안 또는 그 이후의 임의의 시간에, 모듈(130)은 개별 POI들에 대한 질의들에 관한 품질 측정을 가능하게 하거나 또는 지시하도록 기능할 수 있다. 예컨대, 각각의 응답 메타데이터 및 소스 품질 데이터 메시지(188)가 모듈(130)로 전달될 때에, 모듈은 소스 품질 데이터를 식별하고 그리고 즉시 소스 품질을 업데이트할 수 있다. 그 데이터 소스로의 이후의 질의들은 업데이트된 소스 품질을 이용할 수 있다. 예컨대, 데이터 소스 우선순위가 응답 시간 메트릭들의 세트에 기초하는 시스템에서 소스 품질 데이터가 응답 시간이면, 본 시스템은 응답 시간 메트릭들 및 연관된 소스 우선순위 레이팅(rating)을 즉시 업데이트할 수 있다. 선택적으로, 소스 품질 데이터는 데이터 소스 우선순위들을 업데이트하기 위해 이후의 시간에 저장 및 분석될 수 있다.
[0070] 부가적으로, 특정 실시예들에서, 메타데이터 자체가 소스 품질 데이터로서 고려될 수 있다. 그러한 실시예들에서, 메타데이터의 값을 평가하기 위한 메커니즘들이 세팅될 수 있다. 예컨대, 사용자 피드백 또는 품질 제어는 특정 소스로부터의 메타데이터가 언제 부정확한지를 식별할 수 있다. 그러한 시스템들은 부가적으로, 특정 데이터 소스로부터의 메타데이터가 다른 소스들로부터의 메타데이터와 상충할 때에, 또는 디바이스(110)로부터의 사용자 피드백이 메타데이터가 거짓이었다고 표시할 때에 리뷰(review) 또는 표시를 생성하도록 자동화될 수 있다. 시스템 피드백은 특정 데이터 소스로부터의 메타데이터에 오류가 있는 것으로 식별되는 빈도(frequency)에 기초하여 소스 품질 레이팅 또는 가중을 식별할 수 있고, 그리고 데이터 소스 우선순위는 그러한 레이팅에 기초할 수 있다.
[0071] 부가적인 실시예들에서, 상기한 메커니즘은 임의의 컴퓨팅 디바이스 내의 규칙 모듈 또는 규칙 엔진 내의 규칙들의 세트로서 구현될 수 있다. 데이터 제공자들의 그룹핑 및 우선순위화는 규칙 현저성(salience)의 적절한 이용에 의해 실현될 수 있다. 메타데이터에 대한 규칙들의 병합 및 조화는 또한 규칙 엔진 지식 베이스 내에서 구현될 수 있고, 상기 규칙 엔진 지식 베이스는 상기한 바와 같은 언어 분석을 포함할 수 있다. 따라서 규칙 엔진은, 측정된 데이터 소스 품질들로부터 결정된 우선순위 상에서 데이터 소스들을 순서화하기 위해 상기한 바와 같은 규칙들을 적용하는 모듈들 또는 기능 엘리먼트들의 세트를 포함할 수 있다.
[0072] 부가적으로, 단일의 POI 탐색 요청이 단일의 탐색 요청에 적절하게 응답하는 복수의 관심 지점들을 식별할 수 있음이 이해될 것이다. 따라서 상기한 본 시스템 및 방법들은 단일의 데이터 소스로부터 복수의 POI들에 대한 메타데이터를 동시에 요청할 수 있다. 하나의 잠재적 실시예에서, POI들에 대한 초기 탐색은 모듈(130)에 의해서 수행되거나, 또는 POI 식별 시스템과 결합하여 모듈(130)에 의해서 관리된다. 일단 충분한 개수의 POI들이 식별되면, 식별된 각각의 개별 POI에 대한 질의들 및 메타데이터 응답들이 메타데이터 통신 모듈(140)을 통해 관리된다. 개별 POI들에 대한 그러한 질의들이 함께 그룹핑되어 송신될 수 있지만, 또한 개별 POI들에 관한 정보에 대한 질의들을 포함할 수도 있다. 개별 POI들에 대한 메타데이터를 갖는 응답들이 유사하게 별개로 또는 그룹으로서 수신될 수 있고, 그 후에 개별 POI들에 대한 메타데이터가 언어 분석 모듈(150)과 병합될 수 있다.
[0073] 선택적인 실시예에서, POI들은 모듈(130)에 의해 초기에 식별되지 않을 수 있다. 대신에, 데이터 소스들로의 초기 질의들은 POI 탐색 요청(112) 내의 정보에 기초할 수 있다. 개별 POI들은 그 후에 메타데이터(164, 174 및 184)와 같은 응답 메타데이터를 이용하여 모듈(130)에 의해 식별될 수 있다. 그 후에 메타데이터는 언어 분석 모듈(150)을 이용하여 병합될 수 있지만, 그러한 실시예들에서 부가적인 질의들이 응답 메타데이터로부터 식별된 POI들을 이용하여 생성될 수 있다. 예컨대, 메타데이터(164) 내의 기준 소스(160)로부터의 응답이 POI를 식별하면, 식별된 POI와 연관된 개별 웹사이트(180)로부터의 세부사항들을 스크레이핑 및/또는 파싱하기 위한 부가적인 질의가 수행될 수 있다. 개별 웹사이트(180)가 식별될 때에, 그것은 개별 웹 사이트에 대해 식별된 데이터 소스 품질에 기초하여 임의의 다른 미처리(outstanding) 질의들과 함께 차례로(in order) 위치될 수 있다. 개별 웹 사이트에 대한 디폴트 소스 품질은 그 데이터 소스를 리스트의 바닥에 자동으로 배치할 수 있거나, 또는 개별 웹 사이트가 초기 응답 메타데이터에서 빠진 중요한 정보를 갖는다는 표시는 개별 웹사이트에 높은 데이터 소스 품질을 부여할 수 있고, 그에 따라 그것은 질의 순서의 앞부분(head)으로 점프할 것이다.
[0074] 상기의 다양한 설명들이 도 1의 특정 실시예에 대해서 기술되는 반면에, 기술된 실시예들뿐만 아니라 부가적인 실시예들을 포함하는 선택적 실시예들이 상이한 순서로 도 1의 엘리먼트들과, 또는 상기한 바와 같은 기능들을 여전히 수행하면서 선택적 구조들에서 분리되거나, 병합되거나 또는 조직화된 엘리먼트들과 기능할 수 있음이 이해될 것이다.
[0075] 도 2는 이제 일 실시예로서 역할할 수 있는 방법을 기술한다. 도 2의 방법이 도 1의 시스템의 엘리먼트들에 대해 기술될 수 있는 반면, 도 3의 디바이스, 또는 임의의 엘리먼트 또는 모듈에 의해 기술되는 기능들을 수행할 수 있는 다른 컴퓨팅 디바이스들 또는 네트워크화된 시스템들을 포함하는 다른 실시예들과 부가적으로 기능할 수 있음이 이해될 것이다.
[0076] S202에서, 메타데이터를 프로세싱하기 위한 규칙 엔진을 포함하는 컴퓨팅 디바이스는 POI 탐색 요청을 프로세싱한다. 컴퓨팅 디바이스는 도 1의 POI 탐색 컴퓨터(120)와 같은 서버일 수 있거나, 또는 도 3의 모바일 디바이스(300)와 같은 디바이스일 수 있다. 그러한 실시예들에서, 언어 분석, POI 탐색 프로세싱, 및 데이터 소스 품질 측정을 위한 모듈들은, 메타데이터를 프로세싱하기 위한 규칙 엔진의 일부로 고려될 수 있다.
[0077] S204에서, 컴퓨팅 디바이스는 모듈(130)과 같은 탐색 프로세싱 모듈을 이용하여 복수의 데이터 소스들을 식별한다. 각각의 데이터 소스는, 시스템 내에 저장되거나 또는 그러한 탐색 프로세싱 모듈에 의해서 액세스가능한 데이터 소스 우선순위 값을 갖는다. 상기한 바와 같이, 그러한 우선순위는 응답 시간, 사용자 선택, 데이터 품질, 시간에 따라 시스템에 의해 측정된 이력 데이터, 또는 임의의 다른 그러한 데이터에 기초할 수 있다. 복수의 데이터 소스들은, 기준 소스(160)와 같은 제1 기준 소스, 구조화된 지식 베이스(170)와 같은 제1 구조화된 지식 베이스, 및 개별 웹사이트(180)와 같은 제1 개별 웹사이트를 포함하는 그룹들의 세트로부터 선택된 두 개를 포함하는, 적어도 두 개의 상이한 그룹들 또는 타입들의 데이터 소스들을 포함할 수 있다.
[0078] S206에서, S204로부터의 복수의 데이터 소스들이 탐색 요청과 연관되는 메타데이터에 대해 질의된다. 이러한 질의 프로세스는 메타데이터 통신 모듈(140)과 같은 모듈에 의해 관리되어, S204로부터의 데이터 소스 품질에 기초하여 차례로 이러한 질의들을 수행할 수 있다.
[0079] S208에서, 컴퓨팅 디바이스는 예컨대 메타데이터 통신 모듈(140)에 의해 질의들에 대한 응답들을 수신한다. 멀티스레딩된 시스템에 대해, 데이터 소스들 사이의 성능 차이들 때문에 질의들이 송신되었던 순서와는 상이한 순서로 응답들이 수신될 수 있다.
[0080] S210에서, 컴퓨팅 디바이스는 예컨대 도 1의 POI 탐색 및 품질 모듈(130), 또는 도 3의 데이터 소스 품질 모듈(326)을 이용하여, 복수의 데이터 소스들 각각에 대한 응답 시간과 같은 적어도 하나의 소스 품질을 측정한다.
[0081] S212에서, 컴퓨팅 디바이스는, 복수의 소스들로부터의 메타데이터를 병합하기 위해 언어 분석을 이용하여 POI 탐색 요청에 매칭하는 복수의 데이터 소스들에 대한 메타데이터 엔트리들을 식별할 수 있다. 도 1에는 단일의 언어 분석 모듈(150)이 도시되는 반면, 다양한 실시예들에서 개별 관심 지점들에 대한 메타데이터 엔트리들의 분석은, S202의 POI 탐색 요청에 응답하는 각각의 POI에 대한 메타데이터를 식별하기 위한 다수의 분석 시스템들의 조합들에 의해 다수의 상이한 방식들로 분석될 수 있다.
[0082] S214에서, 컴퓨팅 디바이스는, 예컨대 도 1의 모듈(130)로부터 디바이스(110)로 병합된 메타데이터를 통신하기 위해서, 또는 도 3의 디스플레이 모듈(303) 상에 POI 탐색 프로세싱(324)으로부터의 병합된 메타데이터를 디스플레이하기 위해서, 상기 병합된 메타데이터를 이용하여 POI 탐색 요청에 응답한다.
[0083] S216에서, 컴퓨팅 디바이스 상에 저장되거나 또는 컴퓨팅 디바이스에 의해 액세스가능한 데이터 소스 우선순위는 각각의 데이터 소스에 대한 측정된 소스 품질을 이용하여 업데이트된다. 이러한 업데이트는 데이터가 수신될 때에 발생할 수 있거나, 또는 품질 분석을 위한 자원들의 컴퓨팅이 이용가능할 때의 시간 스케쥴에 프로세싱되도록 일괄적으로(in a batch) 저장될 수 있다.
[0084] 도 3은 POI 탐색들에 대한 데이터 제공자들의 계층적인 편성을 구현하기 위해 본 명세서에 기술된 실시예들과 결합하여 이용될 수 있는 모바일 디바이스의 하나의 잠재적 실시예를 도시하는 블록도이다. 본 시스템은 모바일 디바이스(300)일 수 있고, 이는 스마트폰, 휴대전화, 개인휴대단말기, 태블릿 컴퓨터, 개인 미디어 플레이어뿐만 아니라 유사한 또는 조합된 기능성을 제공하는 임의의 다른 타입의 휴대용 전자 디바이스와 같은 임의의 모바일 디바이스일 수 있다. 디바이스(300)가 또한 촉감 버튼들, 전력 디바이스(예컨대, 배터리)뿐만 아니라 휴대용 전자 디바이스와 전형적으로 연관된 다른 컴포넌트들을 포함할 수 있음이 인정되어야 한다. 따라서, 일부 컴포넌트들이 생략되기 때문에 도 3은 제한적인 것으로 해석되지는 않을 것이다.
[0085] 디바이스(110)가 단지 POI 탐색 요청을 POI 서버(120)에 포워딩하는 것으로서 도시되는 도 1과는 대조적으로, 도 3에서, 모바일 디바이스(300)는 다수의 데이터 소스들로부터의 메타데이터를 병합하기 위해 프로세싱 및 언어 분석을 수행할 수 있다. 그러한 프로세싱은, 도 1의 데이터 소스들(155)과 같은 데이터 소스들과의 네트워크화된 통신에서 모바일 디바이스(300) 상의 하드웨어 회로, 펌웨어, 또는 소프트웨어 모듈들의 임의의 조합에 의해 수행될 수 있다. 도 3에서, 데이터 소스들을 편성하고 그리고 메타데이터를 프로세싱하기 위한 모듈들이 언어 분석 모듈(322), POI 탐색 프로세싱(324), 메타데이터 통신 모듈(325), 및 데이터 소스 품질 모듈(326)로서 도시된다.
[0086] 특정 실시예들에서, POI 탐색 프로세싱(324)은 POI 탐색 프로세싱 및 품질 측정 모듈(130)의 기능들과 유사한 기능들을 수행할 수 있다. 유사하게, 특정 실시예들에서, 멀티스레딩된 메타데이터 통신(325)은 도 1의 메타데이터 통신 모듈(140)의 기능들과 유사한 기능들을 수행할 수 있다. 도 1에서 POI 탐색 요청(112)과 응답(190)이 디바이스(110)와 POI 탐색 컴퓨터(120) 사이에서 네트워크를 통해 통신되는 반면, 도 3에서는, 그러한 요청들 및 응답들이 사용자 입력 모듈(304)을 통해 수신될 수 있고 그리고 디스플레이 모듈(303)을 통해 사용자에게 출력될 수 있다.
[0087] 이들이 도 3에서는 프로세서(310)에 의한 실행을 위해 메모리(320)에 저장되는 별개의 모듈들로서 도시되는 반면, 다양한 실시예들에서는, 이들은 단일 애플리케이션으로서, 또는 하나 이상의 프로세서들과 함께 컴퓨팅 디바이스 상에서 동작하는 하드웨어, 소프트웨어 및 펌웨어의 임의의 조합으로서 구조화될 수 있다. 일부 실시예들에서, 모듈들(321-326) 중 하나 이상이 프로세서(310)에 의해 구현된다. 이러한 모듈들은 버스(340) 상의 무선 통신 모듈(311)을 통해서, 또는 임의의 다른 승인가능한 수단을 통해서 데이터 소스들과 통신할 수 있다. 부가적으로, 데이터 소스들을 편성하고 메타데이터를 프로세싱하기 위한 그러한 모듈들은 모바일 디바이스(300)의 운영 시스템(323)을 이용하여 다른 애플리케이션 모듈들(321)과 함께 기능할 수 있다.
[0088] 따라서 모바일 디바이스(300)는 POI 탐색 요청을 수신하기 위한 인터페이스를 포함할 수 있다. 이는, 멀티스레딩된 메타데이터 통신 모듈(325)로 통과될 수 있는 데이터 소스들에 대한 POI들, 데이터 소스들, 및 우선순위들을 식별하기 위해, POI 탐색 요청을 POI 탐색 프로세싱으로 통과시킬 수 있다. 이러한 모듈은 네트워크와 연결되는 무선 통신 모듈(311)을 통해 데이터 소스들과 통신할 수 있고, 그리고 응답 메타데이터를 수신할 수 있다. 응답 메타데이터는 언어 분석 모듈(322)을 이용하여 병합될 수 있고, 그리고 디스플레이 모듈(303) 상에서 사용자에게 제시될 수 있다. 일부 실시예들에서, 언어 분석 모듈(322)은 언어 분석 모듈(150)에 대하여 상기한 기능들을 수행하도록 구성될 수 있다. 상기한 바와 같이, 부가적인 업데이트들이 수신될 때에 병합된 메타데이터 업데이트들이 스트리밍되어 디스플레이 모듈(303) 상에 업데이트될 수 있고, 그리고 사용자 입력들에 응답하여 프리젠테이션 또는 탐색 특성들을 변경 또는 조정하기 위한 사용자 세팅들 및 선택들이 만들어질 수 있다.
[0089] 도 3에 도시된 실시예에서, 디바이스(300)는 프로세서(310)를 포함하고, 상기 프로세서(310)는 다수의 컴포넌트들에서 동작들을 수행하기 위한 명령들을 실행하도록 구성되고, 그리고 예컨대 휴대용 전자 디바이스 내에서의 구현을 위해 적합한 마이크로프로세서 또는 범용 프로세서일 수 있다. 프로세서(310)는 모바일 디바이스(300) 내의 복수의 컴포넌트들과 통신가능하게 커플링된다. 이러한 통신 커플링을 실현하기 위해, 프로세서(310)는 버스(340)에 걸쳐 다른 기술된 컴포넌트들과 통신할 수 있다. 버스(340)는 모바일 디바이스(300) 내의 데이터를 전달하도록 적응된 임의의 서브시스템일 수 있다. 버스(340)는 복수의 컴퓨터 버스들일 수 있고 그리고 데이터를 전달하기 위한 부가적인 회로를 포함할 수 있다. 일부 실시예들에서, 버스(340)는 시스템 온 칩(SoC)에서 구현되고, 그리고 칩 상의 다양한 엘리먼트들 또는 컴포넌트들 및/또는 하나 이상의 프로세서들의 코어들을 연결시킨다.
[0090] 메모리(320)가 프로세서(310)에 커플링될 수 있다. 일부 실시예들에서, 메모리(320)는 단기 및 장기 저장 양자를 제공하고 그리고 사실상 수 개의 유닛들로 분할될 수 있다. 메모리(320)는 정적 랜덤 액세스 메모리(SRAM) 및/또는 동적 랜점 액세스 메모리(DRAM)와 같이 휘발성이거나 그리고/또는 판독-전용 메모리(ROM), 플래시 메모리, 기타 같은 종류의 메모리와 같이 비-휘발성일 수 있다. 게다가, 메모리(320)는 보안 디지털(SD) 카드들과 같은 이동식 저장 디바이스들을 포함할 수 있다. 따라서, 메모리(320)는 모바일 디바이스(300)를 위한 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 및 다른 데이터의 저장을 제공한다. 일부 실시예들에서, 메모리(320)는 상이한 하드웨어 모듈들로 분배될 수 있다.
[0091] 일부 실시예들에서, 메모리(320)는 복수의 애플리케이션 모듈들(321)을 저장한다. 애플리케이션 모듈들(321)은 프로세서(310)에 의해 실행될 특정 명령들을 포함한다. 메모리(320)는 임의의 개수의 애플리케이션 모듈들을 저장할 수 있다. 이러한 모듈들은, 상기한 바와 같이 POI 탐색들에서의 데이터 제공자들의 계층적 편성을 위한 하나 이상의 모듈들을 부가적으로 포함할 수 있다.
[0092] 일부 실시예들에서, 메모리(320)는 운영 시스템(323)을 포함한다. 운영 시스템(323)은 애플리케이션 모듈들(321)에 의해 제공되는 명령들의 실행을 개시하고 그리고/또는 하드웨어 모듈들(301-302)을 관리하도록 동작가능할 수 있다. 운영 시스템(323)은, 스레딩(threading), 자원 관리, 데이터 저장 제어 및 다른 유사한 기능을 포함하는, 디바이스(300)의 컴포넌트들에 걸친 다른 동작들을 수행하도록 적응될 수 있다.
[0093] 일부 실시예들에서, 모바일 디바이스(300)는 복수의 하드웨어 모듈들(301-302)을 포함한다. 하드웨어 모듈들(301-302) 각각은 디바이스(300) 내의 물리적 모듈이다. 하지만, 하드웨어 모듈들(301-302) 각각이 구조물로서 영구적으로 구성되는 반면, 하드웨어 모듈들(301-302)의 개개의 하드웨어 모듈은 특정 기능들을 수행하도록 일시적으로 구성될 수 있거나 또는 일시적으로 활성화될 수 있다. 보통의 예는, 셔텨 릴리즈 및 이미지 캡쳐를 위해 카메라 모듈(즉, 하드웨어 모듈)을 프로그래밍할 수 있는 애플리케이션 모듈이다. 하드웨어 모듈들(301-302)의 개개의 하드웨어 모듈은, 예컨대 가속도계, Wi-Fi 트랜시버, 위성 항해 시스템 수신기(예컨대, GPS 모듈), 압력 모듈, 온도 모듈, 오디오 출력 및/또는 입력 모듈(예컨대, 마이크로폰), 카메라 모듈, 근접 센서, ALS(alternate line service) 모듈, 용량성 터치 센서, NFC(near field communication) 모듈, 블루투스 트랜시버, 셀룰러 트랜시버, 자력계, 자이로스코프, 관성 센서(예컨대, 가속도계와 자이로스코포를 결합하는 모듈), 주변 광 센서, 상대 습도 센서, 또는 센서의 출력을 제공하고 그리고/또는 센서의 입력을 수신하도록 동작가능한 임의의 다른 유사한 모듈일 수 있다. 일부 실시예들에서, 하드웨어 모듈들(301-302)의 하나 이상의 기능들이 소프트웨어로 구현될 수 있다. 다양한 실시예들에서, 그러한 하드웨어 모듈들 중 임의의 하드웨어 모듈로부터의 데이터가 POI 탐색 요청과 통합되어 관련된 잠재적 POI들을 식별할 수 있다. 가장 단순한 예에서, 탐색과 연관된 POI들에 대한 승인가능한 거리와 관련하여 사용자 위치를 식별하기 위해 임의의 그러한 센서로부터의 위치 데이터가 이용될 수 있다.
[0094] 디바이스(300)는 무선 통신 모듈(311)과 같은 컴포넌트를 포함할 수 있다. 무선 통신 모듈(311)은 네트워크들 및 액세스 포인트들을 통해 데이터 소스들과 같은 다양한 디바이스들로부터 신호들을 수신하도록 구성될 수 있다. 무선 통신 모듈(311)은 도 1의 POI 탐색 컴퓨터(120)와 같은 다른 곳에 신호들을 전송하도록 구성될 수 있다. 특정 실시예들에서, 언어 분석 또는 POI 탐색 프로세싱과 같은 기술된 임의의 엘리먼트의 일부가, 도 1의 POI 탐색 컴퓨터(120)와 같은 별개의 POI 탐색 컴퓨터 및 모바일 디바이스(300) 양자에 의해서 수행될 수 있다.
[0095] 하드웨어 모듈들(301-302)과 애플리케이션 모듈들(321)에 더하여, 모바일 디바이스(300)는 디스플레이 모듈(303) 및 사용자 입력 모듈(304)을 가질 수 있다. 디스플레이 모듈(303)은 디바이스(300)로부터 사용자로 정보를 도식적으로 제공한다. 이러한 정보는 하나 이상의 애플리케이션 모듈들(321), 하나 이상의 하드웨어 모듈들(301-302), 이들의 조합, 또는 사용자에 대한 그래픽 콘텐츠를 해결하기 위한 임의의 다른 적절한 수단으로부터 유도될 수 있다(예컨대, 운영 시스템(323)에 의해). 디스플레이 모듈(303)은 액정 디스플레이(LCD) 기술, 발광 폴리머 디스플레이(LPD) 기술, 또는 일부 다른 디스플레이 기술일 수 있다. 일부 실시예들에서, 디스플레이 모듈(303)은 용량성 또는 저항성 터치 스크린이고, 그리고 사용자와의 햅틱(haptic) 및/또는 촉각(tactile) 접촉에 민감할 수 있다. 그러한 실시예들에서, 디스플레이 모듈(303)은 다중-터치-감지 디스플레이를 포함할 수 있다.
[0096] 모바일 디바이스의 부가적인 실시예들은, 도 5에 대해 이하 상세히 설명되는 바와 같은 컴퓨팅 디바이스들 및 도 6에서 상세히 설명되는 바와 같은 네트워크들의 다양한 부분들을 더 포함할 수 있다.
[0097] 이제 도 4는 다양한 실시예들에 따라 기능할 수 있는 부가적인 방법을 기술한다. 도 4의 방법은 도 1의 시스템, 도 3의 모바일 디바이스와, 또는 도 4에서 기술된 단계들을 수행할 수 있는 임의의 다른 시스템 또는 구조물과 결합하여 기능할 수 있다. S402에서, 디폴트들이 시스템에 대해 세팅되고, 이것의 일부로서 본 시스템은 POI 탐색 요청들에 응답함에 있어 규칙 엔진에 의한 이용을 위해 복수의 데이터 소스들을 식별할 수 있다. 상기한 바와 같이, 그러한 규칙 엔진은, POI 탐색의 일부로서 데이터 소스들을 계층적으로 편성하기 위한 도 1 또는 도 3에 기술된 엘리먼트들을 포함할 수 있다. 시스템 초기화의 추가의 부분으로서, 본 시스템은 복수의 데이터 소스들의 각각의 데이터 소스에 대해 규칙 엔진에 디폴트 데이터 소스 우선순위를 세팅할 수 있다.
[0098] 예컨대, 상기한 바와 같이 데이터 소스들이 우선 그룹들에 의해 분류될 수 있다. 그러한 그룹들은, 관광객 가이드들과 같은 온라인 참조물들로부터 추출되거나 또는 로컬 개인들에 의해 수집되는 데이터를 갖는 기준 소스들을 포함할 수 있다. 그러한 그룹들은 또한 온라인 구조화된 지식 베이스들 또는 온톨로지들 및 온라인 디렉토리들을 포함할 수 있다. 그러한 그룹들은 또한, 웹 페이지 또는 페이지들로부터 직접 정보를 스크레이핑 및 파싱함으로써 웹사이트로부터 메타데이터가 리트리브될 필요가 있는 개별 POI 웹사이트들을 포함할 수 있다.
[0099] 특정 실시예들에서 상기 옵션들은 이용가능성 및 기술적 난이도의 순서로 있는 것으로서 고려될 수 있다. 기준 소스들은 일반적으로 정적일 수 있고, 그로부터 메타데이터를 리트리브 및 인코딩하기 용이한 소스들일 수 있고, 따라서 표준 관계형 데이터베이스가 그것을 유지하기 위해서 이용될 수 있다. 반면에, 특정 POI에 대한 정보를 발견하는 것은 매우 있을 것 같지 않고, 오히려 식당들, 극장들과 같은 POI 부류들, 및 다른 유사한 부류들에 관한 정보를 추출하는 것은 가능하다. 데이터가 특정 POI와 직접적으로 결부되지(tie) 않을지라도, 그러한 정보는 특정 POI에 대해 추론될 수 있다.
[0100] 대조적으로, 구조화된 지식 베이스들은 개별 POI들에 대한 메타데이터를 제공할 수 있다. 이러한 메타데이터는 본래 소스에 따른 상이한 정도들의 정확도를 제공할 수 있다(크라우드-소싱된 것 대 전문적으로 편집된 것). 이러한 데이터 소스들을 갖는 하나의 이슈는, API 업데이트들 또는 새로운 서비스 출시가 발생할 때에 메타데이터 의미론이 시간이 흐름에 따라 가변할 수 있다는 것이다.
[0101] 마지막으로, 웹사이트가 알려져 있다는 조건 하에, POI와 연관된 웹사이트로부터 정확한 메타데이터가 추출될 수 있다. 메타데이터에 대해 전체 웹사이트가 파싱되는 스크레이핑은, 기술된 그룹들 중에서 메타데이터를 유도하기 위한 가장 요구가 많은(demanding) 작업일 수 있는데, 왜냐하면 표준문안(boilerplate) 텍스트와 같은 무관한 콘텐츠를 걸러내기 위해서 시간과 의미론 규칙들의 세트를 필요로 하기 때문이다.
[0102] 상기 그룹핑들이 주어지면, 특정 실시예들에서 특정 그룹 내의 각각의 데이터 소스에는, 초기 데이터 품질을 제공하는 S404의 일부로서 디폴트 세팅이 할당될 수 있다. 그 후에 그에 기초하여 질의 순서들에 대한 가정들이 만들어질 수 있다. 이 예에서, POI들에 대해 적용가능한 "상식" 및 "디폴트 지식"을 제공하는 기준 소스들은, POI 메타데이터를 리트리브하기 위해 가장 빠른 것으로 가정될 때에 우선 질의되는 데이터베이스들을 갖는다. 그 이후에, 약간 더 높은 시간 비용으로 보다 특정한 POI 메타데이터, 및 가능한 POI에 대한 기준 웹페이지를 리트리브하기 위해, 구조화된 지식 베이스들이 질의된다. 마지막으로, (가능하면) 더 높은 시간 비용이지만 정확한 정보를 리트리브하기 위해, 웹페이지 스크레이핑이 웹사이트 상에서 이용된다. S404의 각각의 데이터 소스에 대한 디폴트 데이터 소스 우선순위가 시스템 내의 이러한 가정들을 반영하기 위해 구조화될 수 있다.
[0103] S406에서, 그 후에, 잠재적 데이터 소스들을 식별하기 위한 초기 필요 및 디폴트들이 구조화된 이후에, 본 시스템은 규칙 엔진에서 POI 탐색 요청을 수신할 수 있다. 응답하여, S408에서, 본 시스템은 시간에 따라 복수의 데이터 소스들에 대한 질의들을 생성할 수 있고, 질의들의 순서는 복수의 데이터 소스들 각각에 대한 데이터 소스 우선순위에 기초하며, 그에 따라 더 높은 우선순위 데이터 소스들이 우선 질의된다.
[0104] S410에서, 본 시스템은 규칙 엔진에서 질의들에 대한 시간에 따른 응답들을 수신할 수 있다. 이에 후속하여 S412에서, 개별 POI 메타데이터를 갖는 응답이 수신될 때마다, 수신된 데이터가 개별 POI에 대해 이전에 수신된 메타데이터와 호환가능한지 또는 상충하는지가 그리고 병합된 메타데이터가 업데이트되는지가 언어 분석 모듈에 의해서 결정된다.
[0105] S414에 의해 기술되는 바와 같은 시스템 동작 전체에서, 응답이 수신될 때마다 하나 이상의 소스 품질들이 측정되고, 그리고 응답이 수신되었던 데이터 소스에 대한 데이터 소스 우선순위를 업데이트하기 위해 이용될 수 있다. 다양한 실시예들에서, 개별 탐색들은 시간의 단지 일부에서 분석 및 품질 측정들과 연관될 수 있다. 예컨대, 개별 탐색들과 연관된 오버헤드를 감소시키기 위해서, 많은 양의 탐색 요청들을 갖는 시스템들에서는 샘플링이 이용될 수 있다. 다른 실시예들에서, 이것은 동적일 수 있다. 예컨대, 특정 데이터 소스는, 데이터 소스가 시스템에 의해서 우선 분석되고 있을 때에 매 탐색 동안에 수행되는 품질 측정을 가질 수 있다. 시스템이 데이터의 충분한 베이스라인(baseline)을 가질 때에, 본 시스템은 품질 데이터가 취해지는 빈도를 감소시킬 수 있다. 예컨대, 품질이 단지 매 수백 탐색들마다 측정될 수 있다. 그러한 샘플 측정들이 품질의 변화가 발생하고 있다고 표시하기 시작하면, 본 시스템은 품질 측정의 빈도를 증가시킴으로써 응답할 수 있다. 유사하게, 다수의 데이터 소스들로부터 정보를 도출하는 탐색에서, 단일의 탐색 요청 및 응답의 맥락 내에서 다른 데이터 소스들에 대해서가 아니라 일부 데이터 소스들에 대해 품질 측정들이 수행될 수 있다. 유사하게, 시간에 따라 질의들에 대한 응답들이 수신되고 그리고 메타데이터가 병합 및 업데이트된다. S416에서, 응답들이 수신되고 병합된 메타데이타가 업데이트될 때에, 다수의 병합된 메타데이터 업데이트들이 POI 탐색 요청기로 시간에 따라 통신된다.
[0106] 따라서 상기의 본 시스템들 및 방법들은, POI 웹 서비스들, 상식/로컬 지식 데이터베이스들, 스크레이핑되고 파싱된 웹 페이지들, 및 무엇이 수집되었는지에 기초하여 추론되는 임의의 부가적인 메타데이터와 같은 선택적인 메타데이터 소스들을 관리한다. 본 메카니즘은 실행-시간에 작동할 수 있고 그리고 POI 탐색 요청이 수신될 때마다 다수의 소스들로부터의 메타데이터를 병합할 수 있기 때문에, 메타데이터가 저장 또는 유지될 필요가 없다. 이것은 POI들에 대한 메타데이터의 보다 포괄적인 세트를 추가로 제공할 수 있고, 여기서 POI들 중 선택할 때에 사용자는 부가(extra) 정보로부터 직접적으로 이익을 얻을 수 있다. 거주 지역, 상업 지구, 또는 도시 센터 영역들의 이해와 같은, 사용자가 있는 영역의 타입을 프로파일링하고 그리고 사용자의 선호도들 및 선택들을 더 잘 이해하기 위해서, 상기 부가 정보가 또한 상황-인식 애플리케이션들에 의해 이용될 수 있다. 보다 신속한 메타데이터 소스들이 기본적인 POI 정보를 신속하게 제공하기 위해서 활용될 수 있는 반면, 웹페이지들과 같은 선택적 소스들로부터 더 많은 세부사항들이 리트리브되기 때문에, 본 시스템들 및 방법들은 또한 사용자에 대해 보다 우수한 경험을 제공할 수 있다.
[0107] 부가적으로, 이러한 시스템들 및 방법들은, 복수의 데이터 소스들을 탐색함으로써 개별 POI 데이터베이스들이 드문(sparse) 위치들에서 더 조밀한(dense) POI 커버리지를 제공할 수 있다. 게다가 또, 단일의 결함(failing) 메타데이터 소스는 사용자가 POI들에 대한 임의의 정보를 수신하는 것을 방해하지 않을 것이고 그리고 다수의 소스는 그들의 응답 시간들 및 메타데이터 품질에 따라 우선순위화될 수 있기 때문에, 메타데이터 정보 검색의 보다 스케일러블(scalable)하고 강력한 처리가 제공될 수 있다. 데이터 소스 품질의 실시간 또는 거의 실시간 분석을 이용하는 특정 실시예들에서, 분석의 실시간 속성은 데이터 소스들에서 데이터 업데이트들에 대한 증가된 반응성을 제공할 수 있고, 그리고 병합된 메타데이터의 독립적인 영구적 데이터베이스를 생성할 필요를 추가로 감소시킬 수 있다.
[0108] 도 5는 하나 이상의 실시예들이 구현될 수 있는 컴퓨팅 시스템의 일 예를 도시한다. 도 5에 도시된 바와 같은 컴퓨터 시스템은 도 1 및 도 3에서 이전에 기술된 컴퓨터화된 디바이스들의 일부로서 통합될 수 있다. 부가적으로, 본 명세서에 기술된 바와 같은 임의의 컴퓨팅 디바이스는 컴포넌트들의 임의의 조합을 포함할 수 있다. 예컨대, 디바이스(110), POI 탐색 컴퓨터(120), 또는 임의의 데이터 소스들(155)은 도 5의 컴퓨팅 디바이스(500) 또는 컴퓨팅 디바이스(500)의 임의의 엘리먼트를 이용하여 구조화될 수 있다. 부가적으로, 다양한 실시예에서, 언어 분석 모듈(150), POI 탐색 프로세싱 및 품질 측정 모듈(130), 또는 메타데이터 통신 모듈(140)과 같은 엘리먼트들이 독립형 컴퓨팅 디바이스들로서 구조화될 수 있거나, 또는 본 명세서에 기술된 컴퓨팅 엘리먼트들의 임의의 기능적 혼합으로서 구조화될 수 있다. 도 5는 컴퓨터 시스템(500)의 일 실시예의 개략도를 제공하는데, 상기 컴퓨터 시스템(500)은 본 명세서에 기술된 바와 같은 다양한 다른 실시예들에 의해 제공되는 방법들을 수행할 수 있고 그리고/또는 디바이스(110), 모바일 디바이스(400), POI 탐색 컴퓨터(120), 기준 소스(160), 구조화된 지식 베이스(170), 또는 개별 웹 사이트로서 기능할 수 있다. 도 5는 단지 다양한 컴포넌트들의 일반화된 도해를 제공하도록 의도되고, 다양한 컴포넌트들 중 임의의 컴포넌트 또는 그 모두는 적절하게 활용될 수 있다. 그러므로, 도 5는 상대적으로 분리되거나 또는 상대적으로 보다 통합된 방식으로 어떻게 개별 시스템 엘리먼트들이 구현될 수 있는지를 광의로 도시한다.
[0109] 버스(505)를 통해 전기적으로 커플링될 수 있는(또는 그렇지않으면, 적절하게, 통신할 수 있는) 하드웨어 엘리먼트들을 포함하는 컴퓨터 시스템(500)이 도시된다. 하드웨어 엘리먼트들은 하나 이상의 프로세서들(510) ― 하나 이상의 범용 프로세서들 및/또는 하나 이상의 특수용 프로세서들(디지털 신호 프로세싱 칩들, 그래픽스 가속 프로세서들, 및/또는 기타 같은 종류의 것과 같은)을 포함하지만 이들에 한정되지 않음 ―; 하나 이상의 입력 디바이스들(515) ― 마우스, 키보드 및/또는 기타 같은 종류의 것을 포함할 수 있지만 이들에 한정되지 않음 ―; 및 하나 이상의 출력 디바이스들(520) ― 디스플레이 디바이스, 프린터 및/또는 기타 같은 종류의 것을 포함할 수 있지만 이들에 한정되지는 않음 ―을 포함할 수 있다. 특정 실시예들에서, 모바일 디바이스(300)의 프로세서(310)는 프로세서(510)와 동등할 수 있다. 특정 실시예들에서, 입력 디바이스들(515)은 모바일 디바이스(300)의 사용자 입력 모듈(304)과 동등할 수 있다.
[0110] 컴퓨터 시스템(500)은 하나 이상의 비-일시적 저장 디바이스들(525)을 추가로 포함할 수 있고(그리고/또는 하나 이상의 비-일시적 저장 디바이스들(525)과 통신할 수 있음), 상기 하나 이상의 비-일시적 저장 디바이스들(525)는 로컬 및/또는 네트워크 액세스 가능한 저장소를 포함할 수 있지만 이들에 한정되지는 않고, 그리고/또는 디스크 드라이브, 드라이브 어레이, 광학 저장 디바이스, 랜덤 액세스 메모리("RAM")와 같은 고체-상태 저장 디바이스 및/또는 프로그램가능하고, 플래시-업데이트가능하며,,, 등등 일 수 있는 판독-전용 메모리("ROM")를 포함할 수 있지만 이들에 한정되지는 않는다. 그러한 저장 디바이스들은 임의의 적절한 데이터 저장들을 구현하도록 구성될 수 있고, 이들은 다양한 파일 시스템들, 데이터베이스 구조들, 및/또는 기타 같은 종류의 것을 포함하지만 이들에 한정되지는 않는다.
[0111] 컴퓨터 시스템(500)은 또한 통신 서브시스템(530)을 포함할 수 있고, 상기 통신 서브시스템(530)은 모뎀, 네트워크 카드(무선 또는 유선), 적외선 통신 디바이스, 무선 통신 디바이스 및/또는 칩셋(BluetoothTM 디바이스, 502.11 디바이스, Wi-Fi 디바이스, WiMax 디바이스, 셀룰러 통신 설비들 등과 같은), 및/또는 유사한 통신 인터페이스들을 포함할 수 있지만, 이들에 한정되지는 않는다. 통신 서브시스템(530)은 네트워크(일 예를 들면, 이하 기술되는 네트워크와 같은), 다른 컴퓨터 시스템들, 및/또는 본 명세서에 기술되는 임의의 다른 디바이스들과 데이터가 교환되도록 허용할 수 있다. 많은 실시예들에서, 컴퓨터 시스템(500)은 비-일시적인 작동 메모리(535)를 추가로 포함할 것이고, 이는 상기한 바와 같은 RAM 또는 ROM 디바이스를 포함할 수 있다.
[0112] 컴퓨터 시스템(500)은 또한 현재 작동 메모리(535) 내에 위치되는 것으로 도시되는 소프트웨어 엘리먼트들을 포함할 수 있고, 상기 소프트웨어 엘리먼트들은 운영 시스템(540), 디바이스 드라이버들, 실행가능한 라이브러리들, 및/또는 하나 이상의 애플리케이션 프로그램들(545)과 같은 다른 코드를 포함하고, 상기 하나 이상의 애플리케이션 프로그램들(545)은 다양한 실시예들에 의해 제공되는 컴퓨터 프로그램들을 포함할 수 있거나, 그리고/또는 본 명세서에 기술되는 바와 같은 다른 실시예들에 의해 제공되는 방법들을 구현하거나 그리고/또는 시스템들을 구성하도록 설계될 수 있다. 단지 일 예로서, 상기 논의된 방법(들)에 대해 기술된 하나 이상의 절차들이 컴퓨터(및/또는 컴퓨터 내의 프로세서)에 의해 실행가능한 코드 및/또는 명령들로서 구현될 수 있고; 일 양상에서, 그 후에, 그러한 코드 및/또는 명령들이 범용 컴퓨터(또는 다른 디바이스)를 구성 및/또는 적응시키기 위해 이용되어, 기술된 방법들에 따른 하나 이상의 동작들을 수행할 수 있다.
[0113] 이러한 명령들 및/또는 코드의 세트가, 상기한 저장 디바이스(들)(525)와 같은 컴퓨터-판독가능 저장 매체 상에 저장될 수 있다. 일부 경우들에서, 저장 매체는 컴퓨터 시스템(500)과 같은 컴퓨터 시스템 내에 통합될 수 있다. 다른 실시예들에서, 저장 매체는 컴퓨터 시스템으로부터 분리될 수 있고(예컨대, 콤팩트 디스크와 같은 이동식 매체), 그리고/또는 설치 패키지로 제공될 수 있으며, 그에 따라 저장 매체는 거기에 저장된 명령들/코드를 이용해 범용 컴퓨터를 프로그래밍, 구성 및/또는 적응시키는데 이용될 수 있다. 이러한 명령들은, 컴퓨터 시스템(500)에 의해 실행가능하거나 그리고/또는 소스의 형태를 가질 수 있는 실행가능한 코드, 및/또는 컴퓨터 시스템(500) 상에서 편집 및/또는 설치 시(예컨대, 여러 가지의 일반적으로 이용가능한 컴파일러들, 설치 프로그램들, 압축/압축해제 유틸리티들 등 중 임의의 것을 이용하여), 그 후에 실행가능한 코드의 형태를 갖는 설치가능한 코드의 형태를 가질 수 있다.
[0114] 특정 요구들에 따라 상당한 변화들이 만들어질 수 있다. 예컨대, 커스터마이징된 하드웨어가 또한 이용될 수 있고, 그리고/또는 특정 엘리먼트들이 하드웨어, 소프트웨어(애플릿들 등과 같은 휴대용 소프트웨어를 포함함), 또는 양자로 구현될 수 있다. 게다가, 특정 기능을 제공하는 하드웨어 및/또는 소프트웨어 컴포넌트들은 (특수화된 컴포넌트들을 갖는) 전용 시스템을 포함할 수 있거나 또는 보다 포괄적인 시스템의 일부일 수 있다. 예컨대, POI 탐색 컴퓨터에 의한 활동들의 선택에 관해 본 명세서에서 기술된 특징들 중 일부 또는 모두를 제공하도록 구성되는 활동 선택 서브시스템은, 특수화된(예컨대, ASIC(application-specific integrated circuit), 소프트웨어 방법, 등) 또는 포괄적인(예컨대, 프로세서(들)(510), 애플리케이션들(545), 등) 하드웨어 및/또는 소프트웨어를 포함할 수 있다. 게다가, 네트워크 입력/출력 디바이스들과 같은 다른 컴퓨팅 디바이스들로의 연결이 활용될 수 있다.
[0115] 일부 실시예들은 본 개시물에 따른 방법들을 수행하기 위해 (컴퓨터 시스템(500)과 같은) 컴퓨터 시스템을 활용할 수 있다. 예컨대, 기술된 방법들의 절차들의 일부 또는 모두는, 작동 메모리(535)에 포함된 하나 이상의 명령들(애플리케이션 프로그램(545)과 같이, 운영 시스템(540) 및/또는 다른 코드에 통합될 수 있음)의 하나 이상의 시퀀스들을 실행하는 프로세서(510)에 응답하여 컴퓨터 시스템(500)에 의해서 수행될 수 있다. 그러한 명령들은, 하나 이상의 저장 디바이스(들)(525)와 같은 다른 컴퓨터-판독가능 매체로부터 작동 메모리(535)로 판독될 수 있다. 단지 일 예로서, 작동 메모리(535)에 포함된 명령들의 시퀀스들의 실행은 프로세서(들)(510)로 하여금 본 명세서에 기술된 방법들의 하나 이상의 절차들을 수행하게 하도록 할 수 있다. 예컨대, 언어 분석 모듈(150), POI 탐색 프로세싱 및 품질 측정 모듈(130), 및 메타데이터 통신 모듈(140)은 도 5의 그러한 엘리먼트들을 이용하여 구현될 수 있다. 유사하게, 도 3의 메모리(320)에 도시된 임의의 모듈들이 도 5의 그러한 엘리먼트들에서 구현될 수 있다.
[0116] 용어들 "기계-판독가능 매체" 및 "컴퓨터-판독가능 매체"는 본 명세서에서 사용되는 바로서, 기계로 하여금 특정 방식으로 동작하게 하는 데이터를 제공하는데에 있어 참여하는 임의의 매체를 지칭한다. 컴퓨터 시스템(500)을 이용하여 구현되는 일 실시예에서, 다양한 컴퓨터-판독가능 매체들이 실행을 위해 프로세서(들)(510)에 명령들/코드를 제공하는데에 수반될 수 있고 그리고/또는 그러한 명령들/코드를(예컨대, 신호들로서) 저장 및/또는 전달하기 위해 이용될 수 있다. 많은 구현들에서, 컴퓨터-판독가능 매체는 물리적인 그리고/또는 유형의 저장 매체이다. 그러한 매체는 비휘발성 매체들, 휘발성 매체들, 및 전송 매체들을 포함하는 많은 형태들을 가질 수 있지만, 이들에 한정되지는 않는다. 비휘발성 매체들은 예컨대 저장 디바이스(들)(525)와 같은, 광학 및/또는 자기 디스크들을 포함한다. 휘발성 매체들은, 작동 메모리(535)와 같은 동적 메모리를 포함하지만, 이에 한정되지는 않는다. 전송 매체들은 동축 케이블들, 버스(505)를 포함하는 전선들을 포함하는 구리선 및 광섬유들뿐만 아니라, 통신 서브시스템(530)의 다양한 컴포넌트들(및/또는 통신 서브시스템(530)이 다른 디바이스들과의 통신을 제공하는 매체)을 포함하지만, 이들에 한정되지는 않는다. 그러므로, 전송 매체들은 또한 파(wave)들의 형태를 가질 수 있다(무선-파 및 적외선 데이터 통신 동안에 생성되는 파들과 같은, 무선, 음향 및/또는 광 파들을 포함하지만, 이들에 한정되지 않음).
[0117] 보통 형태들의 물리적 및/또는 유형의 컴퓨터-판독가능 매체들은, 예컨대 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 또는 임의의 다른 자기 매체, CD-ROM, 임의의 다른 광학 매체, 펀치카드들, 종이테이프, 홀들의 패턴들을 갖는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASH-EPROM, 임의의 다른 메모리 칩 또는 카트리지, 이하에서 기술되는 바와 같은 반송파, 또는 컴퓨터가 명령들 및/또는 코드를 판독할 수 있는 임의의 다른 매체를 포함한다.
[0118] 다양한 형태들의 컴퓨터-판독가능 매체들이 실행을 위해 프로세서(들)(510)에 하나 이상의 명령들의 하나 이상의 시퀀스들을 전달하는데에 있어 수반될 수 있다. 단지 일 예로서, 명령들은 초기에는 원격 컴퓨터의 광학 디스크 및/또는 자기 디스크 상에서 전달될 수 있다. 원격 컴퓨터는 자신의 동적 메모리로 명령들을 로딩할 수 있고, 그리고 컴퓨터 시스템(500)에 의해 실행되고 그리고/또는 수신되도록 전송 매체에 걸쳐 신호들로서 명령들을 송신할 수 있다. 전자기 신호들, 음향 신호들, 광학 신호들 및/또는 기타 같은 종류의 것의 형태일 수 있는 이러한 신호들은 모두, 명령들이 다양한 실시예들에 따라 인코딩될 수 있는 반송파들의 예들이다.
[0119] 통신 서브시스템(530)(및/또는 그 컴포넌트들)은 일반적으로 신호들을 수신할 것이고, 그리고 버스(505)는 그 후에 작동 메모리(535)로 신호들(및/또는 신호들에 의해 전달되는 데이터, 명령들, 등)을 전달할 수 있으며, 이로부터 프로세서(들)(505)는 명령들을 리트리브하여 실행한다. 작동 메모리(535)에 의해 수신되는 명령들은 프로세서(들)(510)에 의한 실행 이전에 또는 이후에 비-일시적인 저장 디바이스(525) 상에 선택적으로 저장될 수 있다.
[0120] 본 명세서에서 기술되는 바와 같은 다양한 실시예들에서, POI 탐색 요청들, 응답들, 질의들, 메타데이터 응답들, 및 다른 통신들을 송신 및 수신하기 위해 컴퓨팅 디바이스들이 네트워크화될 수 있다. 예컨대, 도 1의 POI 탐색 요청(112), 응답(190), 질의들(162, 172 및 182)뿐만 아니라 응답 메타데이터(164, 174, 및 184)는 네트워크 통신들일 수 있다. 도 6은 실시예들의 하나의 세트에 따라 이용될 수 있는 네트워크화된 컴퓨팅 디바이스들의 시스템(600)의 개략도를 도시한다. 시스템(600)은 하나 이상의 사용자 컴퓨팅 디바이스들(605)을 포함할 수 있다. 사용자 컴퓨팅 디바이스들(605)은 범용 개인 컴퓨터들(단지 일 예로서, 마이크로소프트사의 WindowsTM 및/또는 애플사의 MacintoshTM 운영 시스템들의 임의의 적절한 특징을 구동하는 랩톱 컴퓨터들 및/또는 개인 컴퓨터들을 포함함) 및/또는 여러 가지의 상업적으로-이용가능한 UNIXTM 또는 UNIX-형(like) 운영 시스템들 중 임의의 시스템에서 구동되는 워크스테이션 컴퓨터들일 수 있다. 이러한 사용자 컴퓨팅 디바이스들(605)은 또한 여러 가지의 애플리케이션들 중 임의의 애플리케이션을 가질 수 있고, 이는 본 발명의 방법들을 수행하도록 구성되는 하나 이상의 애플리케이션들 뿐만 아니라, 하나 이상의 사무실 애플리케이션들, 데이터베이스 클라이언트 및/또는 서버 애플리케이션들, 및 웹 브라우저 애플리케이션들을 포함한다. 선택적으로, 사용자 컴퓨팅 디바이스들(605)은, 네트워크(예컨대, 이하 기술되는 네트워크(610))를 통해 통신할 수 있고 그리고/또는 웹 페이지들 또는 다른 타입들의 전자 문서들을 디스플레이 및 네비게이팅할 수 있는, 씬 클라이언트(thin-client) 컴퓨터, 인터넷-가능한 모바일 전화, 및/또는 개인 휴대 정보 단말기(PDA)와 같은 임의의 다른 전자 디바이스일 수 있다. 예시적인 시스템(600)이 3개의 사용자 컴퓨팅 디바이스들(605)을 갖는 것으로 도시되었지만, 임의의 개수의 사용자 컴퓨팅 디바이스들이 지원될 수 있다.
[0121] 본 발명의 특정 실시예들은, 네크워크(610)를 포함할 수 있는 네트워크화된 환경에서 동작한다. 네트워크(610)는 여러 가지의 상업적으로-이용가능한 프로토콜들 중 임의의 프로토콜을 이용하여 데이터 통신들을 지원할 수 있는 당업자에게 친숙한 임의의 타입의 네트워크일 수 있고, 상기 상업적으로-이용가능한 프로토콜들은 TCP/IP, SNA, IPX, 애플토크(AppleTalk), 기타 같은 종류의 것을 포함하지만, 이들에 한정되지는 않는다. 단지 일 예로서, 네트워크(610)는 근거리 통신망("LAN") ― 이더넷 네트워크, 토큰-링(Token-Ring) 네트워크, 및/또는 기타 같은 종류의 것을 포함하지만, 이들에 한정되지는 않음 ―; 광역 네트워크(WAN); 가상 네트워크 ― 가상 사설 네트워크("VPN")를 포함하지만, 이에 한정되지는 않음 ―; 인터넷, 인트라넷, 엑스트라넷, 공중교환전화망("PSTN"); 적외선 네트워크; 무선 네트워크 ― IEEE 802.11 모음(suite)의 프로토콜들, 당업계에 알려진 BluetoothTM 프로코톨, 및/또는 임의의 다른 무선 프로토콜 중 임의의 프로토콜 하에서 동작하는 네트워크를 포함하지만, 이에 한정되지는 않음 ―; 및/또는 이러한 및/또는 다른 네트워크들의 임의의 조합일 수 있다.
[0122] 본 발명의 실시예들은 하나 이상의 서버 컴퓨터들(660)을 포함할 수 있다. 서버 컴퓨터들(660) 각각은 운영 시스템으로 구성될 수 있고, 상기 운영 시스템은 상기 논의된 운영 시스템들 중 임의의 운영 시스템뿐만 아니라 임의의 상업적으로(또는 무료의) 이용가능한 서버 운영 시스템들을 포함하지만, 이들에 한정되지는 않는다. 서버들(660) 각각은 또한 하나 이상의 애플리케이션들을 구동할 수 있고, 상기 애플리케이션들은 하나 이상의 사용자 컴퓨팅 디바이스들(605) 및/또는 다른 서버들(660)에 서비스들을 제공하도록 구성될 수 있다.
[0123] 단지 일 예로서, 서버들(660) 중 하나는 웹 서버일 수 있고, 상기 웹 서버는 단지 일 예로서, 사용자 컴퓨팅 디바이스들(605)로부터 웹 페이지들 또는 다른 전자 문서들에 대한 요청들을 프로세싱하기 위해 이용될 수 있다. 웹 서버는 또한 여러 가지의 서버 애플리케이션들을 구동할 수 있고, HTTP 서버들, FTP 서버들, CGI 서버들, 데이터베이스 서버들, JavaTM 서버들, 및 기타 같은 종류의 서버들을 포함한다. 본 발명의 일부 실시예들에서, 웹 서버는, 본 발명의 방법들을 수행하기 위해 하나 이상의 사용자 컴퓨팅 디바이스들(605) 상에서 웹 브라우저 내에서 동작될 수 있는 웹 페이지들을 제공하도록 구성될 수 있다.
[0124] 서버 컴퓨터들(660)은 일부 실시예들에서 하나 이상의 애플리케이션 서버들을 포함할 수 있고, 상기 애플리케이션 서버들은 하나 이상의 클라이언트 컴퓨터들(605) 및/또는 다른 서버들(660) 상에서 구동하는 클라이언트에 의해서 액세스가능한 하나 이상의 애플리케이션들을 포함할 수 있다. 단지 일 예로서, 서버(들)(660)는 사용자 컴퓨팅 디바이스들(605) 및/또는 다른 서버들(660)에 응답하여 프로그램들 또는 스크립트(script)들을 실행할 수 있는 하나 이상의 범용 컴퓨터들일 수 있고, 프로그램들 또는 스크립트들은 웹 애플리케이션들(일부 경우들에서, 본 발명의 방법들을 수행하도록 구성될 수 있음)을 포함하지만 이에 한정되지는 않는다. 단지 일 예로서, 웹 애플리케이션은, JavaTM, C, C#TM, 또는 C++과 같은 임의의 적절한 프로그래밍 언어 및/또는 펄(Perl), 파이산(Python) 또는 TCL과 같은 임의의 스크립팅 언어뿐만 아니라 임의의 프로그래밍/스크립팅 언어들의 조합들로 기록된 하나 이상의 스크립트들 또는 프로그램들로서 구현될 수 있다. 애플리케이션 서버(들)는 또한 데이터베이스 서버들을 포함할 수 있고, 이들은 OracleTM, MicrosoftTM, SybaseTM, IBMTM, 및 기타 같은 종류의 것들로부터 상업적으로 이용가능한 데이터베이스 서버들을 포함하지만 이들에 한정되지 않으며, 이들은 사용자 컴퓨팅 디바이스(605) 및/또는 다른 서버(660) 상에서 구동하는 클라이언트들(구성기에 따라, 데이터베이스 클라이언트들, API 클라이언트들, 웹 브라우저들, 등을 포함함)로부터의 요청들을 프로세싱할 수 있다. 애플리케이션 서버에 의해 제공되는 데이터는 웹 페이지들(예컨대, HTML, 자바스크립트 등을 포함함)로서 포맷팅될 수 있고 그리고/또는 웹 서버를 통해 사용자 컴퓨팅 디바이스(605)로 포워딩될 수 있다(예컨대, 상기한 바와 같이). 유사하게, 웹 서버는 웹 페이지 요청들 및/또는 입력 데이터를 사용자 컴퓨팅 디바이스(605)로부터 수신하고 그리고/또는 웹 페이지 요청들 및/또는 입력 데이터를 애플리케이션 서버에 포워딩할 수 있다. 일부 경우들에서 웹 서버는 애플리케이션 서버와 통합될 수 있다.
[0125] 추가의 실시예들에 따르면, 하나 이상의 서버들(660)은 파일 서버로서 기능할 수 있고 그리고/또는 사용자 컴퓨팅 디바이스(605) 및/또는 다른 서버(660) 상에서 구동하는 애플리케이션에 의해서 통합되는 본 발명의 방법들을 구현하기 위해 필수적인 파일들(예컨대, 애플리케이션 코드, 데이터 파일들, 등) 중 하나 이상의 파일을 포함할 수 있다. 선택적으로, 당업자가 인식할 바와 같이, 파일 서버는 모든 필수적인 파일들을 포함할 수 있고, 이는 그러한 애플리케이션이 사용자 컴퓨팅 디바이스(605) 및/또는 서버(660)에 의해 원격으로 호출(invoke)되는 것을 가능하게 한다. 본 명세서에서 다양한 서버들(예컨대, 애플리케이션 서버, 데이터베이스 서버, 웹 서버, 파일 서버, 등)에 대해서 기술된 기능들이 구현-특정 요구들 및 파라미터들에 따라 단일 서버 및/또는 복수의 특수화된 서버들에 의해 수행될 수 있음이 주목되어야 한다.
[0126] 특정 실시예들에서, 본 시스템은 하나 이상의 데이터베이스들(620)을 포함할 수 있다. 데이터베이스(들)(620)의 위치는 재량적이다: 단지 일 예로서, 데이터베이스(620a)는 서버(660a)(및/또는 사용자 컴퓨팅 디바이스(605))에 대해 로컬인(및/또는 존재하는) 저장 매체 상에 존재할 수 있다. 선택적으로, 데이터베이스(620b)가 컴퓨터들(605) 또는 서버들(660) 중 하나 이상과 통신할 수 있는 한(예컨대, 네트워크(610)를 통해), 데이터베이스(620b)는 컴퓨터들(605) 또는 서버들(660) 중 임의의 것 또는 그 모두로부터 원격일 수 있다. 실시예들의 특정 세트에서, 데이터베이스(620)는 당업자에게 친숙한 저장-영역 네트워크("SAN")에 존재할 수 있다. (유사하게, 컴퓨터들(605) 또는 서버들(660)에 기인한 기능들을 수행하기 위한 임의의 필수적인 파일들이 개개의 컴퓨터 상에 로컬로 및/또는 원격으로, 적절하게, 저장될 수 있다.) 실시예들의 하나의 세트에서, 데이터베이스(620)는 SQL-포맷팅된 커맨드들에 응답하여 데이터를 저장, 업데이트, 및 리트리브하도록 적응된, OracleTM 데이터베이스와 같은 관계형 데이터베이스일 수 있다. 예컨대, 상기한 바와 같이, 데이터베이스는 데이터베이스 서버에 의해서 제어 및/또는 유지될 수 있다. 다양한 실시예들에서, 데이터 소스들(155) 중 임의의 데이터 소스가 그러한 실시예들에 따라 구조화될 수 있다. 예컨대, 기준 소스(160) 또는 구조화된 지식 베이스(170)는 서버(660a)를 통해 액세스되는 데이터베이스(620a)로서 구조화될 수 있다. 선택적으로, 데이터 소스들(155) 중 특정 데이터 소스는 데이터베이스(620b)와 유사한 데이터베이스들에 직접적으로 액세스가능할 수 있다. 개별 웹 사이트(180)는 독립형 서버(660b)에 의해 동작될 수 있다. 다양한 선택적 실시예들에서, 임의의 그러한 데이터 소스들(155)은 데이터 소스의 운영자에 의해 생성된 구조에 기초하여 도 6의 임의의 디바이스 상에서 동작될 수 있다.
[0127] 상기 논의된 방법들, 시스템들 및 디바이스들은 예들이다. 다양한 실시예들은 다양한 절차들 또는 컴포넌트들을 적절하게 생략, 대체 또는 부가할수 있다. 예컨대, 선택적 구성들에서, 기술된 방법들이 기술된 것과 상이한 순서로 수행될 수 있고, 그리고/또는 다양한 단계들이 부가, 생략 및/또는 조합될 수 있다. 또한, 특정 실시예들과 관련하여 기술된 특징들은 다양한 다른 실시예들에서 조합될 수 있다. 실시예들의 상이한 양상들 및 엘리먼트들이 유사한 방식으로 조합될 수 있다. 또한, 기술은 진보하고, 따라서 많은 엘리먼트들은 예들이고 본 개시물의 범위를 그러한 특정 예들로 제한하지 않는다.
[0128] 본 실시예들의 철저한 이해를 제공하기 위해 특정 세부사항들이 설명에서 주어진다. 하지만, 이러한 특정 세부사항들이 없이도 실시예들이 실시될 수 있다. 예컨대, 주지의 회로들, 프로세스들, 알고리즘들, 구조들, 및 기법들은 실시예들을 모호하게 하는 것을 방지하기 위해서 불필요한 세부사항 없이 도시된다. 이러한 설명은 단지 예시적인 실시예들만을 제공하고, 다양한 실시예들의 범위, 적용가능성 또는 구성을 제한하도록 의도되지 않는다. 오히려, 실시예들의 이전 설명은 당업자에게 실시예들을 구현하기 위한 가능 설명을 제공할 것이다. 다양한 실시예들의 사상 및 범위를 벗어남이 없이 엘리먼트들의 기능 및 배열에서 다양한 변화들이 만들어질 수 있다.
[0129] 또한, 일부 실시예들은 프로세스 화살표들을 갖는 흐름으로 도시되는 프로세스들로서 기술되었다. 각각이 동작들을 순차적인 프로세스로서 기술할 수 있음에도 불구하고, 많은 동작들이 병렬로 또는 동시에 수행될 수 있다. 부가하여, 동작들의 순서가 재배열될 수 있다. 프로세스는 도면에 포함되지 않은 부가적인 단계들을 가질 수 있다. 게다가, 본 방법들의 실시예들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어들, 또는 이들의 임의의 조합에 의해서 구현될 수 있다. 소프트웨어, 펌웨어, 미들웨어, 또는 마이크로코드로 구현될 때에, 연관된 작업들을 수행하기 위한 프로그램 코드 또는 코드 세그먼트들은, 저장 매체와 같은 컴퓨터-판독가능 매체에 저장될 수 있다. 프로세서들은 연관된 작업들을 수행할 수 있다.
[0130] 수 개의 실시예들을 기술하였고, 다양한 수정들, 선택적 구성들 및 균등물들이 본 개시물의 사상을 벗어남이 없이 이용될 수 있다. 예컨대, 상기 엘리먼트들이 단순히 더 큰 시스템의 컴포넌트일 수 있고, 다른 규칙들이 다양한 실시예들의 애플리케이션에 우선할 수 있거나 그렇지않으면 그 애플리케이션을 수정할 수 있다. 또한, 상기한 엘리먼트들이 고려되기 이전에, 그 동안에, 또는 그 이후에 복수의 단계들이 착수될 수 있다. 따라서, 상기한 설명은 본 개시물의 범위를 제한하지 않는다.

Claims (34)

  1. 방법으로서,
    관심 지점(POI; point of interest) 탐색 요청을 컴퓨팅 디바이스에서 프로세싱하는 단계;
    각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하는 단계 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―;
    상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하는 단계 ― 상기 질의의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 및
    상기 복수의 데이터 소스들 중 적어도 하나에 대한 적어도 하나의 소스 품질을 측정하는 단계
    를 포함하는,
    방법.
  2. 제 1 항에 있어서,
    상기 복수의 데이터 소스들에 질의하는 단계에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하는 단계;
    상기 복수의 데이터 소스들로부터 병합된(merged) 메타데이터를 생성하기 위해 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하는 단계;
    상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하는 단계; 및
    상기 복수의 데이터 소스들 중 적어도 하나에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 데이터 소스들 중 상기 적어도 하나에 대한 상기 데이터 소스 우선순위를 업데이트하는 단계
    를 더 포함하는,
    방법.
  3. 제 2 항에 있어서,
    상기 복수의 데이터 소스들은 상기 제1 기준 소스 및 상기 제1 구조화된 지식 베이스를 포함하고,
    상기 제1 기준 소스에 대한 데이터 소스 우선순위는 상기 제1 구조화된 지식 베이스에 대한 데이터 소스 우선순위보다 더 높으며, 그리고
    상기 복수의 데이터 소스들에 질의하는 단계는:
    상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 제1 기준 소스에 질의하는 단계; 및
    상기 제1 기준 소스에 질의하는 단계 이후에, 상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 제1 구조화된 지식 베이스에 질의하는 단계
    를 포함하는,
    방법.
  4. 제 3 항에 있어서,
    상기 복수의 데이터 소스들 각각에 대한 적어도 하나의 소스 품질을 측정하는 단계는,
    상기 제1 기준 소스의 응답 시간을 측정하는 단계; 및
    상기 제1 구조화된 지식 베이스의 응답 시간을 측정하는 단계를 포함하는,
    방법.
  5. 제 4 항에 있어서,
    상기 복수의 데이터 소스들은 상기 제1 개별 웹사이트를 더 포함하는,
    방법.
  6. 제 5 항에 있어서,
    상기 제1 구조화된 지식 베이스에 대한 데이터 소스 우선순위는 상기 제1 개별 웹사이트에 대한 데이터 소스 우선순위보다 더 높고,
    상기 복수의 데이터 소스들에 질의하는 단계는,
    상기 제1 구조화된 지식 베이스에 질의하는 단계 이후에, 상기 제1 개별 웹사이트에 질의하는 단계를 더 포함하는,
    방법.
  7. 제 6 항에 있어서,
    상기 제1 기준 소스에 대한 데이터 소스 우선순위, 상기 제1 구조화된 지식 베이스에 대한 데이터 소스 우선순위, 및 상기 제1 개별 웹사이트에 대한 데이터 소스 우선순위는 각각 디폴트 데이터 소스 우선순위들인,
    방법.
  8. 제 7 항에 있어서,
    상기 복수의 데이터 소스들 중 각각의 기준 소스에 대한 디폴트 데이터 소스 우선순위는, 상기 복수의 데이터 소스들 중 각각의 구조화된 지식 베이스에 대한 디폴트 데이터 소스 우선순위보다 더 높은,
    방법.
  9. 제 8 항에 있어서,
    상기 복수의 데이터 소스들 중 각각의 구조화된 지식 베이스에 대한 디폴트 데이터 소스 우선순위는, 상기 복수의 데이터 소스들 중 각각의 개별 웹 페이지에 대한 디폴트 데이터 소스 우선순위보다 더 높은,
    방법.
  10. 제 5 항에 있어서,
    상기 제1 기준 소스, 상기 제1 구조화된 지식 베이스, 및 상기 제1 개별 웹사이트로부터 상충하는(conflicting) 메타데이터 엔트리들을 식별하는 단계, 및 상기 POI 탐색 요청에 응답하기 이전에 상기 병합된 메타데이터로부터 상기 상충하는 메타데이터 엔트리들을 제거하는 단계를 더 포함하는,
    방법.
  11. 제 5 항에 있어서,
    상기 제1 기준 소스 및 제2 온라인 기준 소스에 질의하는 단계;
    상기 제1 기준 소스의 제1 개별 POI 메타데이터로부터 개별 POI, 및 상기 제2 온라인 기준 소스로부터 제2 개별 POI 메타데이터를 식별하는 단계;
    상기 제1 개별 POI 메타데이터 및 상기 제2 개별 POI 메타데이터로부터 상기 개별 POI에 대한 제1 POI 호환가능한 메타데이터 및 상기 개별 POI에 대한 제1 POI 상충하는 메타데이터를 식별하는 단계;
    제1 개별 POI 병합된 메타데이터를 생성하기 위해, 상기 제1 POI 호환가능한 메타데이터를 이용하는 단계 및 상기 제1 POI 상충하는 메타데이터를 제거하는 단계; 및
    상기 제1 구조화된 지식 베이스에 질의하기 이전에 상기 제1 개별 POI 병합된 메타데이터로 상기 POI 탐색 요청에 응답하는 단계
    를 더 포함하는,
    방법.
  12. 제 11 항에 있어서,
    상기 제1 구조화된 지식 베이스의 제3 개별 POI 메타데이터로부터 상기 개별 POI를 식별하는 단계;
    상기 제1 개별 POI 병합된 메타데이터 및 상기 제3 개별 POI 메타데이터로부터, 상기 개별 POI에 대한 제2 POI 호환가능한 메타데이터 및 상기 개별 POI에 대한 제2 POI 상충하는 메타데이터를 식별하는 단계;
    제2 개별 POI 병합된 메타데이터를 생성하기 위해 상기 제2 POI 호환가능한 메타데이터 및 상기 제2 POI 상충하는 메타데이터를 이용하여 상기 제1 개별 POI 병합된 메타데이터를 업데이트하는 단계; 및
    상기 제2 개별 POI 병합된 메타데이터로 상기 POI 탐색 요청에 응답함으로써 상기 POI 탐색 요청에 대한 응답을 업데이트하는 단계
    를 더 포함하는,
    방법.
  13. 제 2 항에 있어서,
    예측 응답 시간, 사용자 선호도 선택, 또는 데이터 품질 측정 중 하나 이상을 이용하여 상기 데이터 소스 우선순위가 결정되는,
    방법.
  14. 제 2 항에 있어서,
    상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 식별하는 단계는,
    상기 복수의 데이터 소스들의 질의에 대한 응답들을 수신하는 단계 ― 상기 응답들은 개별 POI 메타데이터를 포함함 ―;
    상기 응답들이 수신될 때에 시간에 따라, 상기 언어 분석 모듈을 이용하여 각각의 개별 POI에 대한 호환가능한 메타데이터 및 상충하는 메타데이터를 식별함으로써 상기 병합된 메타데이터를 업데이트하는 단계를 포함하고,
    상기 병합된 메타데이터를 이용하여 POI 탐색 요청에 응답하는 단계는, 상기 응답들이 수신되고 그리고 상기 병합된 메타데이터가 시간에 따라 업데이트될 때에 복수의 병합된 메타데이터 업데이트들을 통신하는 단계를 포함하는,
    방법.
  15. 제 14 항에 있어서,
    상기 병합된 메타데이터를 생성하기 위해 상기 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 메타데이터 엔트리들을 병합하는 단계는, 각각의 개별 POI 결과에 대한 호환가능한 메타데이터를 상기 병합된 메타데이터에 포함시키는 단계, 및 상기 상충하는 메타데이터를 상기 병합된 메타데이터로부터 배제시키는 단계를 포함하고,
    상기 POI 탐색 요청에 응답하는 단계는, 질의들에 대한 응답들이 수신될 때에 상기 병합된 메타데이터가 업데이트될 때마다 상기 병합된 메타데이터 업데이트들을 통신하는 단계를 포함하는,
    방법.
  16. 제 1 항에 있어서,
    상기 제1 기준 소스는 전화 디렉토리 서버 또는 상업적 식당 가이드를 포함하는,
    방법.
  17. 제 1 항에 있어서,
    각각의 POI에 대한 메타데이터는: 개점 시간, 폐점 시간, 주소, 전화 번호, 이메일 주소, 음식 메뉴, 및 사업 이력 중 하나 이상을 포함하는,
    방법.
  18. 명령들을 포함하는 비-일시적 컴퓨터 판독가능 명령 매체로서,
    상기 명령들은 프로세서에 의해 실행될 때에 컴퓨팅 디바이스로 하여금 방법을 수행하게 하고,
    상기 방법은:
    관심 지점(POI) 탐색 요청을 프로세싱하는 단계;
    각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하는 단계 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―;
    상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하는 단계 ― 상기 질의의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 및
    상기 복수의 데이터 소스들 중 적어도 하나에 대한 적어도 하나의 소스 품질을 측정하는 단계
    를 포함하는,
    비-일시적 컴퓨터 판독가능 명령 매체.
  19. 제 18 항에 있어서,
    상기 방법은,
    상기 복수의 데이터 소스들에 질의하는 단계에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하는 단계;
    상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하는 단계;
    상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하는 단계; 및
    상기 복수의 데이터 소스들 중 적어도 하나에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 데이터 소스들 중 상기 적어도 하나에 대한 상기 데이터 소스 우선순위를 업데이트하는 단계
    를 더 포함하는,
    비-일시적 컴퓨터 판독가능 명령 매체.
  20. 컴퓨팅 디바이스로서,
    무선 통신 모듈;
    각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하도록 구성되는 관심 지점 탐색 프로세싱 모듈 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―;
    POI 탐색 요청과 연관된 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하도록 구성되는 메타데이터 통신 모듈 ― 상기 질의의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 및
    상기 복수의 데이터 소스들 중 적어도 하나의 데이터 소스에 대한 적어도 하나의 소스 품질을 측정하고 그리고 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 데이터 소스들 중 상기 적어도 하나의 데이터 소스에 대한 상기 데이터 소스 우선순위를 업데이트하도록 구성되는 데이터 소스 품질 모듈
    을 포함하는,
    컴퓨팅 디바이스.
  21. 제 20 항에 있어서,
    상기 메타데이터 통신 모듈은, 상기 복수의 데이터 소스들에 질의하는 것에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하고,
    상기 관심 지점 탐색 프로세싱 모듈은, 상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 언어 분석 모듈을 이용하여 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하는,
    컴퓨팅 디바이스.
  22. 제 21 항에 있어서,
    상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하는 출력 모듈을 더 포함하고,
    상기 데이터 소스 품질 모듈은, 상기 복수의 데이터 소스들 중 적어도 하나에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 데이터 소스들 중 적어도 하나에 대한 상기 데이터 소스 우선순위를 업데이트하는,
    컴퓨팅 디바이스.
  23. 제 21 항에 있어서,
    상기 데이터 소스 품질 모듈은, 상기 복수의 데이터 소스들 각각에 대한 상기 적어도 하나의 소스 품질을 측정하는 것의 일부로서, 제1 기준 소스 응답 시간을 측정하고 그리고 제1 구조화된 지식 베이스 응답 시간을 측정하도록 추가로 구성되는,
    컴퓨팅 디바이스.
  24. 제 21 항에 있어서,
    상기 질의의 순서는, 제1 질의로서 가장 낮은 레이턴시 기준 소스와 제2 질의로서 가장 낮은 레이턴시 구조화된 지식 베이스를 포함하는 것으로서 상기 데이터 소스 품질 모듈에 의해서 세팅되는,
    컴퓨팅 디바이스.
  25. 제 21 항에 있어서,
    상기 질의의 순서는, 상기 복수의 데이터 소스들의 레이턴시 순서로서 가장 빠른 것으로부터 가장 느린 것으로 상기 데이터 소스 품질 모듈에 의해서 세팅되는,
    컴퓨팅 디바이스.
  26. 제 21 항에 있어서,
    상기 질의의 순서는, 상기 복수의 데이터 소스들 중 각각의 데이터 소스와 연관되는 비용에 기초하는,
    컴퓨팅 디바이스.
  27. 제 20 항에 있어서,
    사용자 입력 모듈; 및
    상기 사용자 입력 모듈로부터 상기 POI 탐색 요청을 수신하고, 그리고 상기 POI 탐색 요청의 언어 분석에 기초하여 상기 POI 탐색 요청을 조정하도록 구성되는 언어 분석 모듈
    을 더 포함하는,
    컴퓨팅 디바이스.
  28. 제 27 항에 있어서,
    상기 언어 분석 모듈은, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 대한 복수의 응답들을 수신하고, 그리고 충돌하는 메타데이터를 식별하기 위해 상기 복수의 응답들을 분석하도록 추가로 구성되는,
    컴퓨팅 디바이스.
  29. 제 28 항에 있어서,
    상기 데이터 소스 품질 모듈은, 상기 복수의 데이터 소스들 각각에 대한 상기 적어도 하나의 소스 품질로서 상기 언어 분석 모듈로부터 상기 충돌하는 메타데이터를 수신하도록 구성되는,
    컴퓨팅 디바이스.
  30. 제 27 항에 있어서,
    상기 언어 분석 모듈은, 적어도 관련어집(thesaurus)을 더 포함하는 언어 온톨로지(ontology) 모듈을 포함하는,
    컴퓨팅 디바이스.
  31. 제 20 항에 있어서,
    마이크로폰을 포함하는 사용자 입력 모듈을 더 포함하고,
    상기 마이크로폰은 사용자로부터 음성 요청의 일부로서 상기 POI 탐색 요청을 수신하는,
    컴퓨팅 디바이스.
  32. 제 20 항에 있어서,
    상기 메타데이터 통신 모듈은, 상기 복수의 데이터 소스들 중 제1 데이터 소스로의 제1 질의에 대한 응답을 수신하기 이전에 상기 복수의 데이터 소스들 중 제2 데이터 소스로 제2 질의를 통신하는 멀티스레딩된(multithreaded) 통신 모듈을 포함하는,
    컴퓨팅 디바이스.
  33. 컴퓨팅 디바이스로서,
    관심 지점(POI) 탐색 요청을 프로세싱하기 위한 수단;
    각각이 데이터 소스 우선순위를 갖는 복수의 데이터 소스들을 식별하기 위한 수단 ― 상기 복수의 데이터 소스들은, 제1 기준 소스, 제1 구조화된 지식 베이스, 및 제1 개별 웹사이트 중 적어도 두 개를 포함함 ―;
    상기 POI 탐색 요청과 연관되는 메타데이터에 대해 상기 복수의 데이터 소스들에 질의하기 위한 수단 ― 상기 질의의 순서는, 상기 복수의 데이터 소스들 각각에 대한 상기 데이터 소스 우선순위에 기초함 ―; 및
    상기 복수의 데이터 소스들 중 적어도 하나에 대한 적어도 하나의 소스 품질을 측정하기 위한 수단
    을 포함하는,
    컴퓨팅 디바이스.
  34. 제 33 항에 있어서,
    상기 복수의 데이터 소스들에 질의하는 것에 응답하여, 상기 복수의 데이터 소스들로부터 상기 POI 탐색 요청에 매칭하는 메타데이터 엔트리들을 수신하기 위한 수단;
    상기 복수의 데이터 소스들로부터 병합된 메타데이터를 생성하기 위해 상기 복수의 데이터 소스들로부터의 상기 메타데이터 엔트리들을 병합하기 위한 수단;
    상기 병합된 메타데이터를 이용하여 상기 POI 탐색 요청에 응답하기 위한 수단; 및
    상기 복수의 데이터 소스들 중 적어도 하나에 대한 상기 적어도 하나의 소스 품질을 이용하여 상기 복수의 데이터 소스들 중 상기 적어도 하나에 대한 상기 데이터 소스 우선순위를 업데이트하기 위한 수단
    을 포함하는,
    컴퓨팅 디바이스.
KR1020157028191A 2013-03-13 2014-02-28 관심 지점 메타데이터의 검색을 위한 데이터 제공자들의 계층적 편성 KR20150132268A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/801,326 US20140280230A1 (en) 2013-03-13 2013-03-13 Hierarchical orchestration of data providers for the retrieval of point of interest metadata
US13/801,326 2013-03-13
PCT/US2014/019433 WO2014163971A1 (en) 2013-03-13 2014-02-28 Hierarchical orchestration of data providers for the retrieval of point of interest metadata

Publications (1)

Publication Number Publication Date
KR20150132268A true KR20150132268A (ko) 2015-11-25

Family

ID=50424711

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157028191A KR20150132268A (ko) 2013-03-13 2014-02-28 관심 지점 메타데이터의 검색을 위한 데이터 제공자들의 계층적 편성

Country Status (6)

Country Link
US (1) US20140280230A1 (ko)
EP (1) EP2972766A4 (ko)
JP (1) JP2016517567A (ko)
KR (1) KR20150132268A (ko)
CN (1) CN105190532A (ko)
WO (1) WO2014163971A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190086032A (ko) * 2016-12-08 2019-07-19 구글 엘엘씨 컨텍스트적 지도 뷰
KR20210103401A (ko) * 2020-02-13 2021-08-23 네이버 주식회사 관심 지점에 관련된 정보를 사용자에게 제공하기 위한 방법 및 시스템
KR20220015503A (ko) * 2016-06-28 2022-02-08 스냅 인코포레이티드 미디어 항목들의 관여를 추적하는 시스템

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140297363A1 (en) * 2013-03-26 2014-10-02 Staples, Inc. On-Site and In-Store Content Personalization and Optimization
US9639573B2 (en) * 2013-07-22 2017-05-02 Mastercard International Incorporated Systems and methods for query queue optimization
EP3055795A4 (en) * 2013-10-10 2017-06-07 Calgary Scientific Inc. Methods and systems for intelligent archive searching in multiple repository systems
US20150186430A1 (en) * 2013-12-26 2015-07-02 John Heffernan Cell phone business register system
WO2015192209A1 (en) * 2014-06-17 2015-12-23 Maluuba Inc. Server and method for ranking data sources
AU2015207840B2 (en) * 2014-07-31 2020-06-18 Samsung Electronics Co., Ltd. System and method of managing metadata
KR102322031B1 (ko) * 2014-07-31 2021-11-08 삼성전자주식회사 메타 데이터를 관리하는 시스템 및 방법
US10459745B2 (en) * 2015-12-16 2019-10-29 Business Objects Software Ltd Application help functionality including suggested search
US10459744B2 (en) * 2015-12-16 2019-10-29 Business Objects Software Ltd Interactive hotspot highlighting user interface element
CN107491452A (zh) * 2016-06-13 2017-12-19 英属安圭拉商乐走走股份有限公司 能快速且精准搜寻旅游景点的方法
US10423631B2 (en) 2017-01-13 2019-09-24 International Business Machines Corporation Automated data exploration and validation
US20210129868A1 (en) * 2017-02-06 2021-05-06 Vayavision Sensing Ltd. Computer aided driving
CN107657042B (zh) * 2017-09-30 2020-06-09 上海数据交易中心有限公司 多数据源的数据查询方法及装置、存储介质、终端
US10951735B2 (en) * 2017-11-07 2021-03-16 General Electric Company Peer based distribution of edge applications
US11334557B2 (en) * 2019-07-26 2022-05-17 EMC IP Holding Company LLC Method and system for deriving metadata characteristics of derivative assets
CN110704545B (zh) * 2019-09-12 2022-06-07 上海数禾信息科技有限公司 用于数据源供应商的数据调用方法及装置
CN110990444A (zh) * 2019-11-27 2020-04-10 中诚信征信有限公司 一种数据查询方法及装置
CN111240733A (zh) * 2020-01-21 2020-06-05 深圳市优必选科技股份有限公司 基于多个第三方接口的数据获取方法和装置
CN111783107B (zh) * 2020-07-09 2022-07-26 杭州安恒信息技术股份有限公司 一种多源可信数据接入方法、装置及设备
CA3210182A1 (en) 2020-07-21 2021-10-06 Leddartech Inc. Beam-steering devices and methods for lidar applications
US11567179B2 (en) 2020-07-21 2023-01-31 Leddartech Inc. Beam-steering device particularly for LIDAR systems
US11402510B2 (en) 2020-07-21 2022-08-02 Leddartech Inc. Systems and methods for wide-angle LiDAR using non-uniform magnification optics
US20230044871A1 (en) * 2020-12-29 2023-02-09 Google Llc Search Results With Result-Relevant Highlighting
CA3168239A1 (en) * 2021-10-13 2023-04-13 Script String Limited Systems and methods for integrating knowledge from a plurality of data sources

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001256255A (ja) * 2000-03-13 2001-09-21 Canon Inc データ検索装置及びデータ検索方法
US6658540B1 (en) * 2000-03-31 2003-12-02 Hewlett-Packard Development Company, L.P. Method for transaction command ordering in a remote data replication system
WO2001097149A2 (en) * 2000-06-12 2001-12-20 Infospace, Inc. Universal shopping cart and order injection system
US7519605B2 (en) * 2001-05-09 2009-04-14 Agilent Technologies, Inc. Systems, methods and computer readable media for performing a domain-specific metasearch, and visualizing search results therefrom
US20040044864A1 (en) * 2002-08-30 2004-03-04 Cavallo Joseph S. Data storage
US7448048B1 (en) * 2003-05-27 2008-11-04 International Business Machines Corporation Method for performing real-time analytics using a business rules engine on real-time heterogeneous materialized data views
EP2317449A3 (en) * 2004-01-16 2011-07-13 Hillcrest Laboratories, Inc. Metadata brokering server and methods
US7624101B2 (en) * 2006-01-31 2009-11-24 Google Inc. Enhanced search results
US8386469B2 (en) * 2006-02-16 2013-02-26 Mobile Content Networks, Inc. Method and system for determining relevant sources, querying and merging results from multiple content sources
CN101401062A (zh) * 2006-02-16 2009-04-01 移动容量网络公司 确定相关来源、查询及合并多个内容来源的结果的方法和系统
JP5283208B2 (ja) * 2007-08-21 2013-09-04 国立大学法人 東京大学 情報検索システム及び方法及びプログラム並びに情報検索サービス提供方法
US20090315766A1 (en) * 2008-06-19 2009-12-24 Microsoft Corporation Source switching for devices supporting dynamic direction information
US8886206B2 (en) * 2009-05-01 2014-11-11 Digimarc Corporation Methods and systems for content processing
EP2427729A4 (en) * 2009-05-04 2014-08-27 Tomtom North America Inc METHOD AND SYSTEM FOR REDUCING SHAPE POINTS IN A GEOGRAPHIC DATA COMPUTING SYSTEM
US8335990B2 (en) * 2009-08-18 2012-12-18 Nokia Corporation Method and apparatus for grouping points-of-interest on a map
CA2800893A1 (en) * 2010-05-28 2011-12-01 Adapx, Inc. Methods and systems for automated creation, recognition and display of icons
EP2393056A1 (en) * 2010-06-02 2011-12-07 Layar B.V. Acquiring, ranking and displaying points of interest for use in an augmented reality service provisioning system and graphical user interface for displaying such ranked points of interests
KR101855399B1 (ko) * 2011-03-24 2018-05-09 삼성전자주식회사 데이터 트래픽을 개선한 SoC 및 이의 동작 방법
US8959110B2 (en) * 2011-09-18 2015-02-17 Microsoft Technology Licensing, Llc Dynamic query for external data connections

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220015503A (ko) * 2016-06-28 2022-02-08 스냅 인코포레이티드 미디어 항목들의 관여를 추적하는 시스템
KR20190086032A (ko) * 2016-12-08 2019-07-19 구글 엘엘씨 컨텍스트적 지도 뷰
KR20200049910A (ko) * 2016-12-08 2020-05-08 구글 엘엘씨 컨텍스트적 지도 뷰
US11140510B2 (en) 2016-12-08 2021-10-05 Google Llc Contextual map view
KR20210103401A (ko) * 2020-02-13 2021-08-23 네이버 주식회사 관심 지점에 관련된 정보를 사용자에게 제공하기 위한 방법 및 시스템

Also Published As

Publication number Publication date
WO2014163971A1 (en) 2014-10-09
JP2016517567A (ja) 2016-06-16
US20140280230A1 (en) 2014-09-18
CN105190532A (zh) 2015-12-23
EP2972766A1 (en) 2016-01-20
EP2972766A4 (en) 2016-10-05

Similar Documents

Publication Publication Date Title
KR20150132268A (ko) 관심 지점 메타데이터의 검색을 위한 데이터 제공자들의 계층적 편성
US10083205B2 (en) Query cards
US20200020000A1 (en) Generating product descriptions from user reviews
KR20180111979A (ko) 의미론적 카테고리 분류법
US9245026B1 (en) Increasing the relevancy of search results across categories
CN111241387B (zh) 提高搜索结果的相关性
US9811559B2 (en) Computerized systems and methods for identifying points-of-interest using customized query prediction
US20170097967A1 (en) Automated Customization of Display Component Data for Search Results
JP2013519150A (ja) リアルタイムフィードバックを伴う情報検索システム
TW200949583A (en) Pivot search results by time and location
JP2018526731A (ja) 検索クエリの曖昧性解消
US20190121832A1 (en) Uniform resource identifier encoding
WO2011128500A1 (en) Method and apparatus for context-indexed network resource sections
WO2017143096A1 (en) Generating text snippets using universal concept graph
KR102236889B1 (ko) 결과 피드백을 이용하는 검색 시스템
US20170295260A1 (en) Platform for interaction via commands and entities
US20170109451A1 (en) In-view and out-of-view request-related result regions for respective result categories
KR102018400B1 (ko) 식별 개체에 대한 관련된 태스크의 선제적 전달 기법
WO2014000280A1 (en) Method and apparatus for providing task-based service recommendations
US10241988B2 (en) Prioritizing smart tag creation
US20150356577A1 (en) Listing a candidate service in a service catalog
US20150286722A1 (en) Tagging of documents and other resources to enhance their searchability
US10817519B2 (en) Automatic conversion stage discovery
US11921773B1 (en) System to generate contextual queries
KR102010418B1 (ko) 생산자와 소비자의 상호 작용을 고려한 주제 기반 순위 결정 방법 및 시스템

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination