KR101501865B1 - 토큰화된 검색 제안들 - Google Patents

토큰화된 검색 제안들 Download PDF

Info

Publication number
KR101501865B1
KR101501865B1 KR1020137021395A KR20137021395A KR101501865B1 KR 101501865 B1 KR101501865 B1 KR 101501865B1 KR 1020137021395 A KR1020137021395 A KR 1020137021395A KR 20137021395 A KR20137021395 A KR 20137021395A KR 101501865 B1 KR101501865 B1 KR 101501865B1
Authority
KR
South Korea
Prior art keywords
search
suggestion
suggestions
tokenized
text input
Prior art date
Application number
KR1020137021395A
Other languages
English (en)
Other versions
KR20130116330A (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 애플 인크.
Publication of KR20130116330A publication Critical patent/KR20130116330A/ko
Application granted granted Critical
Publication of KR101501865B1 publication Critical patent/KR101501865B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2425Iterative querying; Query formulation based on the results of a preceding query
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

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

Abstract

토큰화된 검색 제안들의 실시예들은 데이터 처리 시스템에서 실행되는 적어도 하나의 제안 엔진이 텍스트 입력 필드의 제1 텍스트 입력에 기반하여 제1 제안들을 생성하는 단계를 포함한다. 제1 제안들은 디스플레이 디바이스에 디스플레이되며, 제1 제안들 중 하나의 선택이 수신된다. 제1 텍스트 입력은 제1 제안들 중 선택된 제안에 대응하는 제1 토큰으로 대체된다. 적어도 하나의 선택 엔진은 텍스트 입력 필드의 제2 텍스트 입력에 기반하여 제2 제안들을 생성하며, 제1 제안들 중 선택된 제안을 사용하여 제2 제안들을 필터링한다. 필터링된 선택들은 디스플레이 디바이스에 디스플레이된다.

Description

토큰화된 검색 제안들{TOKENIZED SEARCH SUGGESTIONS}
본 출원은 2011년 1월 14일에 출원되어 계류 중인 미국 가출원 제61/433,122호에 대한 우선권을 주장하며, 그 내용은 전체적으로 참조로서 원용된다.
본 발명의 실시예들은 일반적으로 파일 및 다른 데이터 검색에 관한 것이다. 구체적으로, 본 발명의 실시예들은 사용자 입력에 기반한 검색 제안들의 생성에 관한 것이다.
종래의 검색 도구들은 일반적으로 사용자에게 검색 질의(search query)의 요소마다 텍스트를 입력하도록 요구한다. 이러한 검색 질의는 데이터 처리 시스템에서 데이터에 의해 표현되는 파일, 이메일, 캘린더 이벤트, 연락처, 또는 다른 엔티티들의 위치를 파악하려는 것일 수 있다. 대안으로서, 시스템은 검색 질의 요소의 타입에 특정된 다양한 온-스크린 제어를 사용하여 사용자로 하여금 검색 질의를 구축하게 하는 사용자 인터페이스를 제공할 수 있다. 다양한 "자동 완성" 특징들이 제공될 수 있는데, 여기서 가능한 검색 용어/요소에 대응하는 가능한 검색 용어 목록이 제공된다. 그러나, 종래의 구현예들은 빠르고 직관적인 방식으로 복잡한 검색 질의들을 쉽게 구축하는 것을 어렵게 만든다.
토큰화된 검색 제안들의 실시예들은 데이터 처리 시스템에서 실행되는 적어도 하나의 제안 엔진이 텍스트 입력 필드의 제1 텍스트 입력에 기반하여 제1 제안들을 생성하는 것을 포함한다. 제1 제안들은 디스플레이 디바이스에 디스플레이되며, 제1 제안들 중 하나의 선택이 수신된다. 제1 텍스트 입력은 제1 제안들 중 선택된 제안에 대응하는 제1 토큰으로 대체된다. 적어도 하나의 제안 엔진은 텍스트 입력 필드의 제2 텍스트 입력에 기반하여 제2 제안들을 생성하며, 제1 제안들 중 선택된 제안을 사용하여 제2 제안들을 필터링한다. 필터링된 선택들은 디스플레이 디바이스에 디스플레이된다.
본 발명은 예들로 예시되어 있으며, 동일한 도면 부호가 유사한 구성요소를 지시하는 첨부 도면들로 제한되지 않는다.
도 1은 본 발명의 일 실시예에 따른 토큰화된 검색 제안 시스템을 예시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 토큰화된 검색 제안을 생성하는 방법을 예시한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 토큰화된 검색 제안 그래픽 사용자 인터페이스를 예시한 도면이다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 다수의 토큰화된 검색 제안들을 생성하는 방법을 예시한 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 토큰화된 검색 제안을 사용하여 검색 질의에 대한 변경을 예시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 토큰화된 검색 제안의 범위를 변경하는 방법을 예시한 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 토큰화된 검색 제안의 범위에 대한 변경으로부터 기인한 검색 질의에 대한 변경들을 예시한 도면이다.
도 9는 본 발명의 일 실시예에 따른 미리 선택된 제안을 사용하여 제안들을 필터링하는 것을 예시한 도면이다.
도 10은 본 발명의 일 실시예에 따라 사용될 수 있는 데이터 처리 시스템을 예시한 도면이다.
도 11은 본 발명의 일 실시예에 따라 사용될 수 있는 디바이스를 예시한 도면이다.
본 발명의 다양한 실시예들 및 측면들이 이하 설명된 상세 내용을 참조하여 설명될 것이며, 첨부 도면들은 다양한 실시예들을 예시할 것이다. 다음의 설명 및 도면들은 본 발명을 예시하는 것으로서, 본 발명을 제한하는 것으로 간주되지 않아야 한다. 수많은 특정 상세들이 본 발명의 다양한 실시예들의 완전한 이해를 제공하기 위해 설명된다. 그러나, 일정한 예시에서, 공지되거나 종래의 상세 내용은 본 발명의 실시예들의 간결한 설명을 제공하기 위해 설명되지 않을 것이다.
여기에서는 토큰화된 검색 제안들의 실시예들이 설명된다. 토큰화된 검색 제안들은 검색 질의 생성의 효율성 및 유효성을 증가시키기 위해 사용될 수 있다. 예를 들어, 사용자는 특정인에 의해 기록된 이메일 메시지들의 위치를 파악할 검색 질의를 구축하고 싶을 수 있다. 만약 이 사람이 다수의 이메일 주소를 사용하면, 종래의 구현예들은 사용자가 검색 질의에 별도의 용어들로서 각각의 이메일 주소를 수동으로 입력할 것을 요구할 수도 있다. 토큰화된 검색 제안들의 일 실시예에서, 사용자는 사람의 이름, 사람의 이메일 주소들 중 하나, 또는 그 사람으로부터 수신된 이메일 메시지의 제목 또는 본문에 위치한 텍스트와 매칭될 수 있는 몇몇 텍스트를 입력한다. 이러한 상황들 중 하나 이상에서, 제안 엔진은 사용자의 주소록의 엔트리를 이용하여 사용자가 특정인에 관심 있다고 추론할 수 있다. 사용자는 이 제안을 검색 질의에 채택할 수 있다. 이러한 제안은 사용자의 주소록에 있는 해당 사람의 엔트리와 관련된 임의의 이메일 주소들로부터 전송된 이메일 메시지들과 매칭될 수 있다. 사용자는 추가적인 텍스트 검색 질의 요소를 입력함으로써 이들 검색을 더 정제할 수 있다. 사용자는 이메일 메시지의 제목란의 컨텐츠에 관한 제안과 같은 추가 제안을 보고 검색 질의에 추가할 수 있다.
도 1은 토큰화된 검색 제안 시스템을 예시한 도면이다. 검색 질의(101)는 사용자 입력에 대응한다. 예를 들어, 사용자는 키보드를 사용하여 텍스트 데이터를 입력할 수 있다. 다른 실시예들에서, 사용자는 애플리케이션(예를 들어, 웹 브라우저)에서 텍스트를 선택할 수 있고, 그 텍스트에 대한 검색이 수행되도록 할 수 있다. 사용자는 텍스트를 텍스트 입력 필드에 붙여 넣을 수 있다. 검색 질의(101)는 검색 엔진(103) 및 제안 엔진(들)(107)에 대한 입력 역할을 한다. 검색 엔진(103)은 공지된 기법들을 이용함으로써 검색 질의를 사용하여 파일 및 다른 데이터를 통한 검색을 수행한다. 파일들은 사용자의 데이터 처리 시스템 및 다른 원격 시스템들에 저장된 파일들을 포함할 수 있다. 검색의 폭은 파일, 이메일, 이벤트, 연락처, 애플리케이션, 북마크 등의 메타데이터 및 전문 내용을 포함할 수 있다. 메타데이터 및 전문 내용은 공지된 바와 같이 검색을 더 효율적으로 만드는데 사용되는 하나 이상의 인덱스에 저장될 수 있다. 검색 엔진(103)은 검색 결과(105)를 생성하는데, 그래픽 사용자 인터페이스에서 사용자에게 디스플레이될 수 있다.
제안 엔진(들)(107)은 입력으로서 검색 질의(101)를 수신할 수 있으며, 검색 질의를 사용하여, 이들의 검색을 정제하기 위해 사용자가 검색 질의(101)에 추가할 수 있는 제안들(109)을 생성한다. 사용자가 검색을 수행하는 맥락에 따라 다양한 타입의 제안 엔진들이 사용될 수 있다. 예를 들어, 사용자가 이메일 애플리케이션의 맥락에서 검색하면, 특정 메일박스 또는 메일박스들로 검색을 제한하는 메일박스 제안 엔진이 사용될 수 있다. 웹 브라우저 맥락에서, 특정 웹사이트 또는 웹사이트들로 검색을 제한하는 제안 엔진이 사용된다. 검색 엔진(103)에 의해 생성된 바와 같은 검색 결과로부터 제안들을 생성하는 제안 엔진과 같이 일반화된 제안 엔진들이 대부분 또는 모든 맥락에서 사용될 수 있다.
일반화된 검색 엔진이 다양한 제안 범위들을 사용하여 특정 검색 맥락으로 조정될 수 있다. 예를 들어, 이메일 애플리케이션 맥락에서의 검색의 경우, 가용 제안 범위들은 "발신(from)" 필드, "수신(to)" 필드, "제목(subject)" 필드, 캐치-올(catch-all) "전체 메시지(entire message)" 필드를 포함할 수 있다. 다른 실시예에서, 파일 시스템 검색 맥락에서 사용되는 일반화된 제안 엔진은 파일 크기, 최종 수정일, 생성일, 파일명 등과 같은 범위들을 포함할 수 있다. 일부 검색 맥락들은 숨겨지거나 암시적인 범위들을 또한 포함할 수 있다. 예를 들어, 이메일 검색 맥락에서, 검색 결과 및 제안들은 이메일 메시지 자체, 연락처/사람들, 이메일 메시지 첨부물 등과 같은 이메일 메시지에 대응하는 결과들 및 제안들로 암시적으로 제한될 수 있다. 캘린더 검색 맥락에서, 결과 및 제안들은 이벤트 및 연락처로 제한될 수 있다.
제안들(109)이 검토 및 가능한 경우 현재 검색으로의 통합을 위해 사용자에게 디스플레이될 수도 있다. 제안을 검색으로 통합하는 하나의 방법이 도 2와 함께 후술된다.
도 2는 토큰화된 검색 제안을 생성하고 이 제안을 현재의 검색으로 통합하는 방법을 예시한 흐름도이다. 도 3은 토큰화된 검색 제안 그래픽 사용자 인터페이스를 예시한 도면으로서, 도 2와 병렬적으로 설명될 것이다. 도 2의 블록 201에서 사용자로부터, 예를 들어, 키보드로부터 텍스트 입력을 수신한다. 텍스트 입력을 수신하는 일례는 도 3의 텍스트 입력 필드(301)에 의해 예시된다. 텍스트 입력(303)은 사용자에 의해 텍스트 입력 필드(301)에 타이핑 입력된다. 전부 클리어(all clear) 버튼(305)에 대한 클릭은 필드(301)의 모든 질의 요소들이 삭제되게 한다.
블록 203에서 수신된 텍스트 입력으로부터 하나 이상의 제안을 생성한다. 일 실시예에서, 도 1의 제안 엔진(들)(107)은 하나 이상의 제안들을 생성하는데 사용될 수 있다. 다수의 제안 엔진(들)이 사용되면, 제안들은 디스플레이(미도시) 전에 통합될 수 있다. 생성된 제안들의 개수에 따라, 디스플레이를 위해 제공되는 개수는 생성된 전체 개수보다 적을 수 있다. 디스플레이를 위해 제공되는 제안들은 공지의 랭킹 기법들(ranking techniques)을 사용하여 필터링될 수 있다. (동일하거나 상이한 제안 엔진들로부터의) 중복 제안들(duplicate suggestions)은 디스플레이가 일어나기 전에 제거될 수도 있다. 블록 205에서 방법은 디스플레이 디바이스에 제안들의 일부 또는 전부를 디스플레이한다. 디스플레이된 제안들의 가용성을 향상시키기 위해 순위가 정해진 목록이 사용될 수 있다. 예를 들어, 디스플레이되는 제안들의 전체 개수뿐 아니라 특정 카테고리에서 디스플레이되는 제안들의 개수가 제한될 수 있다. 이는 제안 디스플레이가 스크롤링 윈도우를 요구하는 것을 방지하기 위해 행해질 수 있다. 블록 207에서 방법은 제안들의 메뉴에 대한 마우스 클릭을 수신하는 것과 같이 디스플레이된 제안들 중 하나의 선택을 수신한다. 블록 209에서 방법은 텍스트 입력 필드의 텍스트 입력을 선택된 제안에 대응하는 토큰으로 대체한다.
도 3은 텍스트 입력 필드(301) 아래 도시된 윈도우에 이것의 일례를 예시한다. 도 3에서, 이메일 맥락 검색은 4개의 상이한 카테고리의 제안, 즉 일자(307), 사람(311), 제목(315), 및 메일박스(319)를 초래한다. 추가적인 카테고리의 제안 또한 가능하다. 하나 이상의 카테고리의 제안들이 동일하거나 상이한 제안 엔진들에 의해 생성될 수 있다. 예를 들어, 일자(307)는 "today" 또는 "tomorrow"와 같은 일자 키워드와 매칭되는 텍스트 입력을 찾는 일자 제안 엔진에 의해 생성될 수 있다. 일자 제안은 검색 질의에 통합된 후, 검색 결과를 제안의 대응 일자 범위와 매칭되는 결과로 제한할 수 있다. 일자 범위의 영향은 전송 일자, 수신 일자, 읽은 일자 등과 같은 이메일 메시지와 관련된 특정 타임스탬프를 선택함으로써 더 정제될 수 있다.
사람(311) 및 제목(315)은 제안을 위헤 사람(예를 들어, 이메일 전송자 및 수신자) 및 제목 모두를 추출하는 일반화된 제안 엔진에 의해 일반화될 수 있는데, 그 이유는 이들 필드가 이메일 맥락에서 수행되는 검색에 적절하기 때문이다. 사람(311)은 도 8과 함께 이하 설명되는 바와 같이 특정 범위를 이용하여 더 정제될 수 있다. 이 범위는 "발신" 필드 또는 "수신" 필드와 같이 이메일의 어느 필드가 매칭되는 사람을 위해 확인되는지를 제한할 수 있다.
메일박스(319)는 텍스트 입력을 메일박스 또는 메일박스들의 명칭에 매칭하는 메일박스 제안 엔진에 의해 생성될 수 있다. 이는 사용자에 의해 생성되어 텍스트 명칭을 할당받은 메일박스들을 포함할 수 있다. 이 제안은 또한 "스마트" 메일박스들 또는 자동 생성 메일박스들과 매칭될 수도 있다. 예를 들어, "received today" 메일박스는 사용자에 의해 생성된 메일박스가 아니라 이메일 프로그램 또는 파일 시스템의 특징일 수 있다. 검색 질의에서, 메일박스 제안은 제안된 메일박스에 위치한 결과들로 검색을 제한할 수 있다.
일 실시예에서, 제안들은 현재의 검색 질의로부터의 검색 결과로부터 가져온 것일 수 있다. 검색 결과들은 사용자에게 제안으로서 제시되기 전에 일반화될 수 있다. 예를 들어, 이메일 제목란은 사용자에게 제시되기 전에 "Re: Today's Agenda"로부터 "Today's Agenda"로 변경될 수 있다. 일반화는 "Re:"와 같은 자동 생성 텍스트를 제목으로부터 제거함으로써 이메일 스레드(thread) 및/또는 대화를 포함하도록 검색의 폭을 넓힐 수 있다. 제안들은 검색 결과로부터 간접적으로 도출될 수 있다. 예를 들어, 현재의 검색 질의가 이메일 메시지의 제목과 매칭되면, 제안 엔진은 주소록의 엔트리가 매칭되는 제목을 갖는 이메일 메시지의 작성자의 이메일 어드레스를 포함하는 사람을 사용자의 주소록에서 검색할 수 있다. 사람을 식별하는 것은 이메일 메시지의 매칭되는 제목으로부터 이메일 메시지의 작성자로 그리고 최종적으로 작성자의 이메일 주소를 포함하는 사용자의 주소록의 엔트리로 따라가는 것을 요구하지만, 매칭되는 사람은 제안으로서 포함될 수 있다. 이러한 방식으로, 토큰화된 검색 제안들은 사용자로 하여금 검색 질의에 더 신속하게 적절한 요소들(예를 들어, 제안들)을 추가하게 할 수 있다.
도 4 및 도 5는 다수의 토큰화된 검색 제안들을 생성하는 방법을 예시한 흐름도이다. 블록 401에서 방법은 도 3의 필드(301)와 같은 텍스트 입력 필드에서 텍스트 입력을 수신한다. 블록 403에서 방법은 텍스트 입력을 검색 질의로서 사용하여 제1 검색 결과 세트를 생성한다. 도 1의 검색 엔진(103)은 검색 결과를 생성하는데 사용될 수 있다. 검색은 재실행될 수 있고, 텍스트 입력으로서 업데이트된 결과들이 수신된다. 즉, 사용자가 텍스트 입력의 첫 번째 문자를 타이핑함에 따라 검색이 수행되고, 사용자가 텍스트 입력의 두 번째 문자를 입력함에 따라 새로운 검색이 실행된다. 이와 같은 방식으로, 사용자는 텍스트 입력을 입력함에 따라 자동으로 업데이트되는 검색 결과 및 제안들을 수신할 수 있다. 블록 405에서 방법은 텍스트 입력을 사용하여 제안들을 생성한다. 제안들은 도 1에서의 제안 엔진(들)(107)에 의해 생성될 수 있다. 검색 결과들에서와 같이, 제안들은 텍스트 입력의 각각의 문자가 수신됨에 따라 생성될 수 있다.
블록 407에서, 제1 검색 결과 세트 및 제1 제안들이 사용자에게 디스플레이된다. 제1 제안들은 도 3에 예시된 그래픽 사용자 인터페이스에서 디스플레이될 수 있다. 디스플레이된 제안들은 사용자가 텍스트 입력을 계속 입력함에 따라 업데이트될 수 있다. 블록 409에서, 디스플레이된 제안들 중 하나의 선택이 수신된다. 제안을 선택하기 위한 그래픽 사용자 인터페이스가 도 6과 함께 더 상세히 후술된다. 블록 411에서, 방법은 텍스트 입력을 제1 선택된 제안에 대응하는 토큰으로 대체한다. 토큰은 토큰화된 검색 제안을 나타내는 그래픽 사용자 인터페이스 요소일 수 있다. 블록 413에서, 방법은 추가 텍스트 입력을 수신한다. 일 실시예에서, 사용자가 제1 토큰화된 검색 제안을 검색 질의에 통합한 후, 이들은 검색을 더 정제하는데 사용되는 추가 텍스트를 입력한다. 사용자는 추가 텍스트 입력을 사용하여 다른 토큰화된 검색 제안을 식별하여 검색 질의에 통합할 수도 있다.
도 5를 다시 참조하면, 블록 415에서 방법은 제1 선택된 제안 및 추가 텍스트 입력을 검색 질의로서 사용하여 제2 검색 결과들을 생성한다. 일 실시예에서, 검색 질의는 추가 텍스트 입력과 토큰화된 검색 제안의 논리곱으로써 형성된다. 즉, 토큰화된 검색 제안과 추가 텍스트 입력 모두와 매칭되는 결과만이 디스플레이를 위한 검색 결과들로 간주된다. 블록 417에서 방법은 추가 텍스트 입력으로부터 제2 제안들을 생성한다. 제2 제안들은 도 1의 제안 엔진(들)(107)에 의해 생성될 수도 있다. 블록 419에서, 제2 제안들이 제1 선택된 제안에 대응하는 검색 결과들을 사용하여 필터링된다. 제안들의 필터링은 도 9와 함께 이하 더 상세히 설명될 것이다. 일반적으로, 필터링된 제안들은 이전에 선택된 토큰화된 검색 제안의 결과들에 의해 배제되지 않는 추가 텍스트 입력에 의해 생성된 제안들이다.
블록 421에서, 필터링된 제2 제안들은 블록 423에서의 제2 검색 결과 세트와 함께 사용자에게 디스플레이된다. 블록 425에서 방법은 필터링된 제2 제안들 중 하나의 선택을 수신하고, 블록 427에서 방법은 제1 선택된 제안 및 제2 선택된 제안을 검색 질의로서 사용하여 제3 검색 결과 세트를 생성한다. 그 후, 이들 결과는 사용자에게 디스플레이된다. 일부 실시예에서, 검색이 사용자가 원하는 파일, 이메일, 또는 다른 검색 결과의 위치를 파악할 만큼 충분히 그 결과들을 좁힐 때까지, 사용자는 추가 텍스트를 계속 입력하고 추가 제안들을 계속 선택할 수 있다.
일 실시예에서, 검색 질의의 요소들 간의 링크는 규정 세트에 따라 자동으로 추가될 수 있다. 예를 들어, 동일한 범위(예를 들어, "발신")를 사용한 제안들이 불리언 논리합 연산자(Boolean OR operator)를 사용하여 자동으로 링크될 수 있다. 예를 들어, 상이한 범위(예를 들어, "수신" 및 "발신")를 사용한 제안들이 불리언 논리곱 연산자(Boolean AND operator)를 사용하여 자동으로 링크될 수 있다. 다른 실시예들에서, 사용자 인터페이스는 2개의 질의 요소들 사이의 링크 연결의 그래픽 표현을 포함할 수 있다. 이러한 실시예에서, 질의 요소들 사이의 링크 연결은 예를 들어, 사용자 입력에 응답하여 수정될 수 있다.
도 6은 토큰화된 검색 제안을 사용하여 검색 질의에 대한 변경을 예시한 도면이다. 도 6의 좌측에서, 텍스트 입력 필드(601)에서의 텍스트 입력(603)이 선택된 제안에 대응하는 토큰(607)에 의해 대체되는 경우 인터페이스에 대한 변화들을 예증하기 위한 사용자 인터페이스가 예시된다. 선택된 제안(611)은 사람 "Todd Smith"이고, 디폴트 범위(609)는 "발신"이다.
도 6의 우측에는 사용자 인터페이스 상태에 대응하는 검색 질의의 표현이 도시된다. 질의(605)는 미가공 텍스트 입력(603)에 대응하지만, 질의(613)는 "Todd Smith"를 설명하는 연락처로부터 가져와서 디폴트 범위 "발신"에 기반하여 범위가 정해진 정보에 대응한다. 연락처 "Todd Smith"는 Todd Smith를 위한 2개의 이메일 주소, 즉 todd@gmail.com 및 todd_smith@initech.com를 포함한다. 일부 실시예에서, 더 많은 이메일 주소들이 검색에 이용될 수도 있다. 범위(609) "발신"은 검색 결과들이 Todd Smith에 의해 작성되어야 한다는 것을 지시하며, 이로 인해 검색 질의는 Todd의 gmail 계정으로부터 전송된 이메일들(작성자=todd@gmail.com) 또는 Todd의 다른 이메일 계정으로부터 전송된 이메일들(작성자=todd_smith@initech.com)과 매칭된다. "또는" 이라는 용어는 결과들이 이메일 주소들 중 어느 하나와 매칭될 수 있다는 것을 지시한다.
도 6에 의해 예시된 예에서, 검색 질의의 전체 범위는 미가공 텍스트 입력을 토큰으로 대체함으로써 좁아지는데, 그 이유는 미가공 텍스트가 이메일 주소 모두에 매칭될 수 있으며, 텍스트 입력(603)을 포함하는 다른 결과들과 매칭될 수 있기 때문이다. 다른 실시예에서, 검색의 범위가 넓어질 것이다. 예를 들어, Todd Smith가 텍스트 입력(603)을 포함하지 않는 제3의 이메일 주소를 가지면, 토큰화된 검색 제안은 텍스트 입력(603)과 매칭되지 않을 수 있는 Todd Smith에 의해 작성된 이메일 메시지의 위치를 파악할 것이다.
도 7은 토큰화된 검색 제안의 범위를 변경하는 방법을 예시한 흐름도이다. 도 8은 토큰화된 검색 제안의 범위에 대한 변경으로부터 기인한 검색 질의에 대한 변경들을 예시한 도면으로서, 도 7과 함께 설명될 것이다.
블록 701에서 범위 식별자(scope identifier) 및 엔티티 식별자(entity identifier)를 포함하는 토큰화된 검색 제안을 디스플레이한다. 도 8에서, 토큰화된 제안(801)은 범위 식별자(803)("발신") 및 엔티티 식별자(805)("Todd Smith")를 포함한다. 이는 제안(801)이 엔티티 Todd Smith와 관련된 이메일 주소로부터 전송되었던 이메일들과 현재 매칭된다고 지시한다. 이러한 엔티티는 Todd Smith와 관련된 하나 이상의 이메일 주소를 포함하는 주소록의 엔트리 또는 연락처 목록 엔트리에 대응할 수 있다. 주소록은 현재 사용자에게 고유하거나, 다른 위치로부터 임포팅되거나 기업 시스템에 의해 디렉토리 서비스로서 제공될 수 있다.
블록 703에서 방법은 범위 식별자에 대한 입력을 수신한다. 예를 들어, 사용자는 범위 식별자(803)의 그래픽 범위 내에서 마우스를 클릭했을 수 있다. 대안으로서, 키보드 바로가기, 음성 명령, 또는 사용자 입력의 다른 소스가 입력을 제공하기 위해 사용될 수 있다. 블록 705에서 방법은 제안(801)에 관한 가용 범위들을 디스플레이한다. 이들은 현재의 범위(807)("발신"), 수취인 범위(809)("수신"), 및 전체 메시지 범위(811)("전체 메시지")를 포함한다. 도 8의 우측에서, 검색 질의(813)는 제안(801)의 현재 의미를 반영한다. 블록 707에서 가용 범위 중 하나의 선택을 수신한다. 예를 들어, 사용자는 범위(807, 809, 또는 811) 중 하나를 클릭했을 수 있다. 블록 709에서 방법은 이 제안의 업데이트된 범위 식별자를 디스플레이한다. 예를 들어, 도 8에서, 새로운 범위(817)는 업데이트된 제안(815)에 디스플레이된다. 엔티티 식별자(819)는 엔티티 식별자(805)로부터 변하지 않은 채로 남는다.
블록 711에서 업데이트된 토큰화된 제안을 검색 질의로서 사용하여 새로운 검색을 수행한다. 업데이트된 토큰화된 제안 및 대응하는 검색 질의의 일례는 제안(815) 및 검색 질의(821)에서 도 8에 예시된다. 범위 식별자(817)가 "수신"으로 변경된 후, 검색 질의(821)는 Todd Smith 엔티티와 관련된 2개의 이메일 주소로 전송된 이메일들과 매칭되도록 자동으로 변경된다. 일부 실시예에서 추가 범위가 이용될 수 있다. 예를 들어, 더 정확한 "업무 이메일로부터(From Work Email)" 범위 또는 "업무 이메일로(To Work Email)" 범위가 이용될 수 있다.
일부 실시예들에서, 제안들이 엔티티 대신 스트링 및 범위 식별자를 포함하도록 일반화될 수 있다. 예를 들어, 제안은 "발신" 범위를 포함하지만, "Todd Smith"와 같은 엔티티보다, 텍스트 스트링 "tod"를 포함할 수 있다. 이로 인한 검색 질의는 Todd Smith의 이메일 주소 중 하나로부터 전송된 이메일 메시지들로 제한되지 않을 것이다. 대신, 이로 인한 검색 질의는 텍스트 "tod"를 포함하는 이메일 주소로부터 전송된 이메일 주소들과 매칭될 것이다.
일 실시예에서, 제안의 범위를 변경하는 것은 현재 검색 질의의 요소들로 하여금 상이한 연산자들을 사용하여 링크될 수 있게 할 수 있다. 예를 들어, 질의가 "발신" 범위를 갖는 하나의 제안을 그리고 "수신" 범위를 갖는 다른 하나의 제안을 포함하면, 2개의 제안이 불리언 논리곱 연산자를 사용하여 링크될 수 있다. 그러나, 사용자가 제2 제안을 "발신" 범위로 변경하면, 요소들은 불리언 논리합 연산자를 사용하여 재링크될 수 있다.
일 실시예에서, 검색 결과들은 검색을 수행하는데 사용되는 데이터 처리 시스템의 현재 또는 디폴트 언어 이외의 언어의 텍스트를 포함할 수 있다. 예를 들어, 데이터 처리 시스템은 영어를 사용하여 구성될 수 있지만, 시스템에 저장된 이메일 메시지들의 일부는 프랑스어로 작성된 제목 필드 및/또는 메시지 본문을 갖는다. 시스템은 제목이 상이한 언어를 사용하고 있다고 검출할 수 있으며(예를 들어, 이메일 메시지가 인덱싱된 경우), 제목을 프랑스어로 마킹할 수 있다. 검색 결과 및 제안들이 생성되는 경우, 제목란이 매칭 목적을 위해 영어로 자동으로 번역되거나, 검색 질의가 프랑스어로 번역될 수 있다. 이는 사용자에게 더 유용한 검색 결과들을 제공할 수 있다. 다른 언어들로 된 컨텐츠 및 메타데이터는 공지된 언어 식별 및 번역 기법들을 사용하여 유사한 방식으로 자동으로 다루어질 수 있다.
도 9는 미리 선택된 제안을 사용하여 제안들을 필터링하는 것을 예시한 도면이다. 다시 말하면, 하나 이상의 이전 제안들이 검색 질의에 추가된 후 사용자에게 제안들을 디스플레이하는 경우, 디스플레이된 제안들은 이전에 추가된 제안들과 일치하도록 필터링된다.
도 9의 좌측에서, 텍스트 입력 필드(901)는 3개의 상이한 상태로 디스플레이된다. 제1 상태에서, 텍스트 입력(903)은 2개의 엔티티인 Bob Smith 및 Bob Brown을 포함하는 제안들(905)을 생성한다. 즉, 입력(903)이 검색 질의의 유일한 컴포넌트였으면, 2개의 제안들이 사용자에게 제공될 것이다. 제안(907)은 범위 식별자(909) 및 엔티티 식별자(911)를 포함한다. 검색 질의의 유일한 컴포넌트로서, 제안(907)은 단일 결과(913): Tom Jones로부터 Bob Brown으로의 이메일을 생성한다. 제3 상태에서, 입력 필드(901)는 제안(907) 및 텍스트 입력(903)을 포함한다. 제안들(917)은 Bob Brown을 포함하지만, Bob Smith를 포함하지 않는데, 그 이유는 필터링된 제안들(915)이 Bob Smith를 포함하지 않기 때문이다. 즉, 제안(907)이 검색 질의에 존재하기 때문에, 텍스트 입력(903)에 관한 미가공 제안들(905)은 제안(907)과 일치하지 않는 제안으로 필터링되었다.
일부 실시예에서, 제안들은 필터링되지 않거나, 사용자로 하여금 추가 명령 또는 입력을 이용하여 필터링하는 것을 일시적으로 중단하게 할 수 있다. 예를 들어, 2개의 상이한 사람으로부터의 이메일들의 위치를 파악하는 검색 질의를 구축하는 것은 첫 번째 사람에 관한 제안이 선택된 후 두 번째 사람에 관한 제안이 선택되면 더 용이할 것이다. 그러나, 두 번째 사람이 제1 제안에 의해 제안들로부터 배제되면, 이는 원하는 검색 질의의 구축을 더 어렵게 만들 것이다. 일 실시예에서, 불리언 논리합 연산을 사용하여 이전에 선택된 제안들에 링크될 제안들이 제안 목록으로부터 필터링되지 않는다. 즉, 이전에 선택된 제안(예를 들어, 제안들(905)에서의 "Bob Smith")에 의해 배제되지 않을 제안이 선택된 경우 (예를 들어, 불리언 논리합과 링크된) 이전 제안에 별도로 링크될 제안이 되면, 제안은 필터링되지 않을 것이다. 이 실시예가 도 9에 적용된다면, 제안들(915)은 Bob Brown 및 Bob Smith를 포함할 것인데, 그 이유는 Bob Smith가 제안으로서 선택되면 이들의 범위 매칭으로 인해 불리언 논리합 연산자를 이용하여 제안(907)에 링크될 것이기 때문이다.
다른 실시예에서, 이는 사용자가 검색 질의들을 구축하는 것을 도울 때 토큰화된 검색 제안들을 덜 효과적으로 만들 수 있음에도 불구하고, 제안 필터링은 전체적으로 디스에이블될 수 있다. 상이한 단계(tier)들의 제안 필터링이 사용될 수도 있다. 예를 들어, 제1 단계의 제안 필터링은 검색 맥락에 기반한 필터링 제안들을 포함할 수 있다. 이메일 검색 문맥에서 텍스트 입력과 매칭되는 캘린더 이벤트에 관한 제안들은 자동으로 배제되고, 그 반대일 수 있다. 파일 검색 문맥에서의 캘린더 이벤트 등과 같이 다른 문맥 특정 필터들 또한 사용될 수 있다. 제2 단계의 제안 필터는 전술한 바와 같을 수 있으며, 특별한 제안이 기존의 검색 질의에 어떻게 링크되는지에 따라 일부 제안들이 필터링되는 것을 방지한다. 일부 실시예에서, 제안 필터링은 예를 들어, 사용자로부터 수신된 커맨드에 의해 디스에이블될 수 있다.
도 10은 본 발명의 일 실시예에 따라 사용될 수 있는 데이터 처리 시스템의 일례를 도시한다. 도 10은 컴퓨터 시스템의 다양한 컴포넌트들을 예시하지만, 이러한 상세 사항은 본 발명과 밀접함 관련이 없기 때문에 컴포넌트들을 상호 연결하는 임의의 특정 아키텍처 또는 방식을 표현하려는 것은 아님을 유념한다. 더 적은 컴포넌트 또는 더 많은 컴포넌트를 갖는 네트워크 컴퓨터, 태블릿 컴퓨터, 및 다른 데이터 처리 시스템들이 본 발명에 따라 사용될 수도 있다는 점이 이해될 것이다.
도 10에 도시된 바와 같이, 데이터 처리 시스템의 일 형태인 컴퓨터 시스템(1000)은 마이크로프로세서(들)(1005), ROM(read only memory)(1007), 휘발성 RAM(1009), 및 비휘발성 메모리(1011)에 결합된 버스(1003)를 포함한다. 검색 엔진(1019) 및 제안 엔진(들)(1021)에 대응하는 실행 명령어들이 비휘발성 메모리(1011)에 저장될 수 있다. 검색 엔진(1019)은 도 1의 검색 엔진(103)에 대응할 수 있으며, 제안 엔진(들)(1021)은 제안 엔진(들)(107)에 대응할 수 있다. 마이크로프로세서(1005)는 캐시(1004)에 결합된다. 마이크로프로세서(1005)는 메모리들(1007, 1009, 1011)로부터 명령어들을 검색하고 그 명령어들을 실행하여 전술한 동작들을 수행할 수 있다. 버스(1003)는 이들 다양한 컴포넌트들을 상호 연결하고, 또한 이들 컴포넌트들(1005, 1007, 1009, 및 1011)을 디스플레이 컨트롤러 및 디스플레이 디바이스(1013)에 상호 연결하고, 마우스, 터치 스크린, 터치 패드, 터치 감지 입력 디바이스, 키보드, 모뎀, 네트워크 인터페이스, 프린터 및 공지된 다른 디바이스들일 수 있는 입출력(I/O) 디바이스들과 같은 주변 장치에 상호 연결한다. 통상적으로, 입출력 디바이스(1015)는 입출력 컨트롤러(1017)를 통해 시스템에 결합된다. 휘발성 RAM(random access memory)(1009)은 메모리에서 데이터를 리프레쉬하거나 유지하기 위해 계속적으로 전력을 요구하는 동적 RAM(DRAM)으로서 통상적으로 구현된다. 본 발명의 다양한 실시예들은 DRAM, 디스크 드라이브, 플래시 드라이브, 및 다른 타입의 유형 저장소와 같은 유형 저장 매체를 활용할 수 있다. DRAM, 디스크 드라이브, 플래시 드라이브 등을 포함하는 비일시적 저장 매체 또한 사용될 수 있다.
대용량 저장소(1011)는 통상, 전력이 시스템으로부터 제거된 후에도 데이터(예를 들어, 대량의 데이터)를 유지하는 자기 하드 드라이브, 자기 광학 드라이브, 광학 드라이브, DVD RAM, 플래시 메모리, 또는 다른 타입의 메모리 시스템이다. 통상적으로, 대용량 저장소(1011)는 비록 요구되지 않는 경우에도 랜덤 액세스 메모리일 수 있을 것이다. 도 10은 대용량 저장소(1011)가 데이터 처리 시스템의 컴포넌트들의 나머지에 직접 결합되는 로컬 디바이스임을 나타내지만, 본 발명은 모뎀, 이더넷 인터페이스, 또는 무선 네트워크와 같은 네트워크 인터페이스를 통해 데이터 처리 시스템에 결합된 네트워크 저장 디바이스와 같은 시스템으로부터 원격인 비휘발성 메모리를 활용할 수 있다는 점이 이해될 것이다. 버스(1003)는 다양한 공지의 브릿지, 컨트롤러, 및/또는 어댑터들을 통해 서로 연결된 하나 이상의 버스들을 포함할 수 있다.
도 11은 본 발명의 일 실시예에 따라 사용될 수 있는 또다른 데이터 처리 시스템의 일례를 도시한다. 도 11에 도시된 데이터 처리 시스템(1100)은 하나 이상의 마이크로프로세서이거나, 시스템 온 칩 집적 회로일 수 있는 처리 시스템(1111)을 포함하며, 시스템은 또한 데이터를 저장하기 위한 메모리(1101) 및 처리 시스템의 실행을 위한 프로그램들을 포함한다. 시스템(1100)은 또한 예를 들어 스피커 및 마이크를 통해 음악을 재생하거나 전화 기능성을 제공하는 마이크 및 스피커를 포함할 수 있는 오디오 입출력 서브시스템(1105)을 포함한다.
디스플레이 컨트롤러 및 디스플레이 디바이스(1107)는 사용자에게 시각적 사용자 인터페이스를 제공하며, 이러한 디지털 인터페이스는 OS X 운영 체제 소프트웨어를 실행할 때 매킨토시 컴퓨터에서 보여지는 바와 유사한 그래픽 사용자 인터페이스를 포함할 수 있다. 시스템(1100)은 또한 하나 이상의 무선 송수신기(1103)를 포함한다. 무선 송수신기는 WiFi 송수신기, 적외선 송수신기, 블루투스 송수신기, 및/또는 무선 셀룰러 전화 송수신기일 수 있다. 추가 컴포넌트들(미도시)이 특정 실시예들에서 시스템(1100)의 일부일 수 있으며, 특정 실시예들에서 도 11에 도시된 바와 달리 더 적은 컴포넌트들이 데이터 처리 시스템에 사용될 수도 있다.
데이터 처리 시스템(1100)은 또한 사용자로 하여금 시스템에 대한 입력을 제공하게 하기 위해 제공되는 하나 이상의 입력 디바이스들(1113)을 포함한다. 이들 입력 디바이스는 키패드, 키보드, 터치 패널, 또는 멀티 터치 패널일 수 있다. 데이터 처리 시스템(1100)은 또한 도크(dock)를 위한 커넥터일 수 있는 옵션의 입출력 디바이스(1115)를 포함한다. 하나 이상의 버스(미도시)가 공지된 다양한 컴포넌트들을 상호 연결하는데 사용될 수 있다는 점이 이해될 것이다. 도 11에 도시된 데이터 처리 시스템은 핸드헬드 컴퓨터, PDA(personal digital assistant), PDA 같은 기능성을 갖는 셀룰러 폰, 셀룰러 폰을 포함하는 핸드헬드 컴퓨터, iPod와 같은 미디어 플레이어, 또는 하나의 디바이스의 PDA 및 셀룰러 폰과 결합된 미디어 플레이어와 같은 이들 디바이스의 측면 또는 기능들을 결합한 디바이스들일 수 있다. 다른 실시예에서, 데이터 처리 시스템(1100)은 네트워크 컴퓨터, 다른 디바이스 내의 임베디드 처리 디바이스, 또는 도 11에 도시된 것보다 더 적은 컴포넌트 또는 아마도 더 많은 컴포넌트를 갖는 다른 타입의 데이터 처리 시스템일 수 있다.
전술한 명세서에서, 토큰화된 검색 제안들이 예시적인 실시예들을 참조하여 설명된다. 명백하게 다음의 청구항에서 개시되는 본 발명의 넓은 사상 및 범위로부터 벗어나지 않고 다양한 변형이 수행될 수 있음은 명백하다. 따라서, 명세서 및 도면은 제한적이 아니라 예시적인 것으로 간주되어야 한다.

Claims (24)

  1. 데이터 처리 시스템에서 실행되는 적어도 하나의 제안 엔진에 의해, 텍스트 입력 필드의 제1 텍스트 입력에 기초하여 제1 제안들을 생성하는 단계;
    상기 제1 제안들을 디스플레이하는 단계;
    상기 제1 제안들 중 하나의 제안의 선택을 수신하는 단계;
    상기 제1 텍스트 입력을, 상기 제1 제안들 중에서 상기 선택된 제안에 대응하는 제1 토큰으로 대체하는 단계 - 상기 제1 토큰은 선택된 상기 제1 제안을 나타내고 상기 제안 엔진의 검색 문맥과 연관된 제안 범위를 포함함 - ;
    상기 데이터 처리 시스템에서 실행되는 상기 적어도 하나의 제안 엔진에 의해, 상기 텍스트 입력 필드의 제2 텍스트 입력에 기초하여, 상기 제안 엔진의 검색 문맥에서 제2 제안들을 생성하는 단계;
    상기 제1 제안들 중 상기 선택된 제안을 사용하여 상기 제2 제안들을 필터링하는 단계; 및
    필터링된 제2 제안들을 디스플레이하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 제1 텍스트 입력에 기초하여 제1 검색 질의를 생성하는 단계;
    복수의 파일의 내용(content) 및 메타데이터에 대해 제1 검색을 수행하는 단계;
    상기 제1 텍스트 입력을 상기 제1 토큰으로 대체하는 것에 응답하여, 상기 제1 제안들 중 상기 선택된 제안에 기초하여 상기 제1 검색 질의와 상이한 제2 검색 질의를 생성하는 단계; 및
    상기 제2 검색 질의를 사용하여 상기 복수의 파일의 내용 및 메타데이터에 대해 제2 검색을 수행하여, 검색 결과들을 생성하는 단계
    를 더 포함하는 방법.
  3. 제2항에 있어서, 상기 제2 제안들을 필터링하는 단계는,
    상기 제2 제안들과 상기 제2 검색으로부터 생성된 상기 검색 결과들을 비교하는 단계; 및
    상기 제2 제안들로부터, 상기 검색 결과들에 존재하지 않는 제안들을 제거하는 단계
    를 포함하는 방법.
  4. 제3항에 있어서, 상기 적어도 하나의 제안 엔진은 이메일 검색 문맥에 연관된 것인 방법.
  5. 제4항에 있어서, 상기 제안 범위는 이메일의 수취인, 이메일의 작성자, 이메일의 제목, 전체 이메일, 이메일 메일박스 및 일자 중 하나를 포함하고,
    상기 선택된 제안은 연락처를 포함하는 엔티티를 포함하고, 상기 연락처는 복수의 연락처 디스크립터(contact descriptors)를 포함하는, 방법.
  6. 삭제
  7. 프로세서에 의해 실행되는 경우, 상기 프로세서로 하여금 방법을 수행하게 하는 명령어들을 저장하는 비일시적 컴퓨터 판독가능 매체로서,
    상기 방법은,
    제1 선택된 제안 및 제1 디폴트 제안 범위를 사용하여 제1 토큰화된 검색 제안을 생성하는 단계;
    상기 제1 토큰화된 검색 제안을 사용하여 제1 검색 질의를 생성하는 단계;
    상기 제1 검색 질의를 사용하여 제1 검색을 수행하는 단계;
    상기 제1 디폴트 제안 범위의 제2 제안 범위로의 변경을 지시하는 입력을 수신하는 단계;
    상기 제1 선택된 제안 및 상기 제2 제안 범위를 사용하여 업데이트된 제1 토큰화된 검색 제안을 생성하는 단계;
    상기 업데이트된 제1 토큰화된 검색 제안을 사용하여 제2 검색 질의를 생성하는 단계;
    상기 제2 검색 질의를 사용하여 제2 검색을 수행하는 단계; 및
    상기 제2 검색의 결과들을 디스플레이하는 단계
    를 포함하는 비일시적 컴퓨터 판독가능 매체.
  8. 제7항에 있어서, 상기 제1 디폴트 제안 범위는 사용자에 의해 구성 가능한 비일시적 컴퓨터 판독가능 매체.
  9. 제7항에 있어서, 상기 방법은,
    텍스트 입력으로부터 추가 검색 제안들을 생성하는 단계;
    상기 추가 검색 제안들로부터 제2 선택된 제안의 선택을 수신하는 단계;
    상기 제2 선택된 제안 및 제2 디폴트 제안 범위를 사용하여 제2 토큰화된 검색 제안을 생성하는 단계; 및
    상기 업데이트된 제1 토큰화된 검색 제안 및 상기 제2 토큰화된 검색 제안을 사용하여 제3 검색 질의를 생성하는 단계
    를 더 포함하는 비일시적 컴퓨터 판독가능 매체.
  10. 제9항에 있어서, 상기 방법은, 상기 업데이트된 제1 토큰화된 검색 제안의 범위가 상기 제2 토큰화된 검색 제안의 범위와 동일한 경우에 불리언 논리합(Boolean OR) 연산자를 이용하여 상기 업데이트된 제1 토큰화된 검색 제안과 상기 제2 토큰화된 검색 제안을 결합하는 단계를 더 포함하는 비일시적 컴퓨터 판독가능 매체.
  11. 제10항에 있어서, 상기 방법은, 상기 업데이트된 제1 토큰화된 검색 제안의 범위가 상기 제2 토큰화된 검색 제안의 범위와 상이한 경우에 불리언 논리곱(Boolean AND) 연산자를 이용하여 상기 업데이트된 제1 토큰화된 검색 제안과 상기 제2 토큰화된 검색 제안을 결합하는 단계를 더 포함하는 비일시적 컴퓨터 판독가능 매체.
  12. 제11항에 있어서, 상기 텍스트 입력으로부터 추가 검색 제안들을 생성하는 단계는, 상기 텍스트 입력을 사용하여 적어도 하나의 제안 엔진에 의해 생성된 제안들을 통합하는 단계를 포함하는 비일시적 컴퓨터 판독가능 매체.
  13. 제12항에 있어서, 상기 적어도 하나의 제안 엔진은 일자(date) 제안 엔진, 메일박스 제안 엔진 및 검색 제안 엔진 중 적어도 하나를 포함하는 비일시적 컴퓨터 판독가능 매체.
  14. 제13항에 있어서, 각각의 제안 엔진은 상이한 범위들을 갖는 제안들을 생성하는 비일시적 컴퓨터 판독가능 매체.
  15. 데이터 처리 시스템으로서,
    제1 선택된 제안 및 제1 디폴트 제안 범위를 사용하여 제1 토큰화된 검색 제안을 생성하는 수단;
    상기 제1 토큰화된 검색 제안을 사용하여 제1 검색 질의를 생성하는 수단;
    상기 제1 검색 질의를 사용하여 제1 검색을 수행하는 수단;
    상기 제1 디폴트 제안 범위의 제2 제안 범위로의 변경을 지시하는 입력을 수신하는 수단;
    상기 제1 선택된 제안 및 상기 제2 제안 범위를 사용하여 업데이트된 제1 토큰화된 검색 제안을 생성하는 수단;
    상기 업데이트된 제1 토큰화된 검색 제안을 사용하여 제2 검색 질의를 생성하는 수단;
    상기 제2 검색 질의를 사용하여 제2 검색을 수행하는 수단; 및
    상기 제2 검색의 결과들을 디스플레이하는 수단
    을 포함하는 데이터 처리 시스템.
  16. 제15항에 있어서, 상기 제1 디폴트 제안 범위는 사용자에 의해 구성 가능한 데이터 처리 시스템.
  17. 제15항에 있어서,
    텍스트 입력으로부터 추가 검색 제안들을 생성하는 수단;
    상기 추가 검색 제안들로부터 제2 선택된 제안의 선택을 수신하는 수단;
    상기 제2 선택된 제안 및 제2 디폴트 제안 범위를 사용하여 제2 토큰화된 검색 제안을 생성하는 수단; 및
    상기 업데이트된 제1 토큰화된 검색 제안 및 상기 제2 토큰화된 검색 제안을 사용하여 제3 검색 질의를 생성하는 수단
    을 더 포함하는 데이터 처리 시스템.
  18. 제17항에 있어서, 상기 업데이트된 제1 토큰화된 검색 제안의 범위가 상기 제2 토큰화된 검색 제안의 범위와 동일한 경우에 불리언 논리합 연산자를 이용하여 상기 업데이트된 제1 토큰화된 검색 제안과 상기 제2 토큰화된 검색 제안을 결합하는 수단을 더 포함하는 데이터 처리 시스템.
  19. 제18항에 있어서, 상기 업데이트된 제1 토큰화된 검색 제안의 범위가 상기 제2 토큰화된 검색 제안의 범위와 상이한 경우에 불리언 논리곱 연산자를 이용하여 상기 업데이트된 제1 토큰화된 검색 제안과 상기 제2 토큰화된 검색 제안을 결합하는 수단을 더 포함하는 데이터 처리 시스템.
  20. 제19항에 있어서, 상기 텍스트 입력으로부터 추가 검색 제안들을 생성하는 것은, 상기 텍스트 입력을 사용하여 적어도 하나의 제안 엔진에 의해 생성된 제안들을 통합하는 것을 포함하는 데이터 처리 시스템.
  21. 제20항에 있어서, 상기 적어도 하나의 제안 엔진은 일자 제안 엔진, 메일박스 제안 엔진 및 검색 제안 엔진 중 적어도 하나를 포함하는 데이터 처리 시스템.
  22. 제21항에 있어서, 각각의 제안 엔진은 상이한 범위들을 갖는 제안들을 생성하는 데이터 처리 시스템.
  23. 프로세서에 의해 실행되는 경우, 상기 프로세서로 하여금 방법을 수행하게 하는 명령어들을 저장하는 비일시적 컴퓨터 판독가능 매체로서,
    상기 방법은,
    텍스트 입력 필드에서 텍스트 입력을 수신하는 단계;
    상기 텍스트 입력을 검색 질의로서 사용하여 파일들의 내용 및 메타데이터에 대해 검색을 수행하는 단계 - 상기 텍스트 입력이 수신됨에 따라 상기 검색이 수행됨 -;
    적어도 하나의 제안 엔진에 의해, 상기 제안 엔진의 검색 문맥에서, 상기 텍스트 입력으로부터 생성된 제안들을 디스플레이하는 단계 - 상기 텍스트 입력이 수신됨에 따라 상기 제안들이 업데이트됨 -;
    상기 제안들 중 하나의 제안의 선택을 수신하는 단계;
    상기 선택된 제안을 위한 토큰화된 검색 제안을 생성하는 단계 - 상기 토큰화된 검색 제안은 상기 선택된 제안에 대응하는 디폴트 범위 및 엔티티를 포함함 -;
    상기 텍스트 입력 필드의 상기 텍스트 입력을 상기 토큰화된 검색 제안의 그래픽 표현으로 대체하는 단계;
    상기 토큰화된 검색 제안과 관련된 데이터를 검색 질의로서 사용하여 파일들의 내용 및 메타데이터에 대해 새로운 검색을 수행하는 단계;
    상기 텍스트 입력 필드에서 추가 텍스트 입력을 수신하는 단계;
    상기 토큰화된 검색 제안 및 상기 추가 텍스트 입력과 관련된 데이터를 검색 질의로서 사용하여 파일들의 내용 및 메타데이터에 대해 새로운 검색을 수행하는 단계 - 상기 추가 텍스트 입력이 수신됨에 따라 상기 새로운 검색이 수행됨 -;
    상기 추가 텍스트 입력으로부터 생성되며 상기 토큰화된 검색 제안에 의해 필터링된 추가 제안들을 디스플레이하는 단계;
    상기 추가 제안들 중 하나의 제안의 선택을 수신하는 단계;
    상기 추가 제안들 중 상기 선택된 제안을 위한 추가 토큰화된 검색 제안을 생성하는 단계;
    상기 추가 텍스트 입력을 상기 추가 토큰화된 검색 제안으로 대체하는 단계; 및
    상기 토큰화된 검색 제안 및 상기 추가 토큰화된 검색 제안과 관련된 데이터를 사용하여 파일들의 내용 및 메타데이터에 대한 새로운 검색의 결과들을 디스플레이하는 단계
    를 포함하는 비일시적 컴퓨터 판독가능 매체.
  24. 제23항에 있어서, 상기 방법은 이메일 애플리케이션 내에서 수행되는 비일시적 컴퓨터 판독가능 매체.
KR1020137021395A 2011-01-14 2012-01-13 토큰화된 검색 제안들 KR101501865B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161433122P 2011-01-14 2011-01-14
US61/433,122 2011-01-14
US13/333,810 2011-12-21
US13/333,810 US8473507B2 (en) 2011-01-14 2011-12-21 Tokenized search suggestions
PCT/US2012/021226 WO2012097239A1 (en) 2011-01-14 2012-01-13 Tokenized search suggestions

Publications (2)

Publication Number Publication Date
KR20130116330A KR20130116330A (ko) 2013-10-23
KR101501865B1 true KR101501865B1 (ko) 2015-03-11

Family

ID=46491570

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137021395A KR101501865B1 (ko) 2011-01-14 2012-01-13 토큰화된 검색 제안들

Country Status (5)

Country Link
US (3) US8473507B2 (ko)
EP (1) EP2663936A1 (ko)
KR (1) KR101501865B1 (ko)
CN (1) CN103329131B (ko)
WO (1) WO2012097239A1 (ko)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9542091B2 (en) 2010-06-04 2017-01-10 Apple Inc. Device, method, and graphical user interface for navigating through a user interface using a dynamic object selection indicator
JP2014524059A (ja) * 2011-05-13 2014-09-18 プリンプトン,デーヴィッド カレンダベースの検索エンジン
US9043350B2 (en) * 2011-09-22 2015-05-26 Microsoft Technology Licensing, Llc Providing topic based search guidance
CA2792765C (en) * 2011-10-17 2018-06-12 Research In Motion Limited Methods and apparatus for searching a message store
US9298295B2 (en) * 2012-07-25 2016-03-29 Facebook, Inc. Gestures for auto-correct
US9218333B2 (en) * 2012-08-31 2015-12-22 Microsoft Technology Licensing, Llc Context sensitive auto-correction
US9305114B2 (en) * 2012-12-17 2016-04-05 Microsoft Technology Licensing, Llc Building long search queries
US9122376B1 (en) * 2013-04-18 2015-09-01 Google Inc. System for improving autocompletion of text input
US9514470B2 (en) * 2013-05-16 2016-12-06 Microsoft Technology Licensing, Llc Enhanced search suggestion for personal information services
US9282066B2 (en) * 2013-07-18 2016-03-08 International Business Machines Corporation Targeted message response
KR20150017156A (ko) * 2013-08-06 2015-02-16 삼성전자주식회사 휴대단말기에서 추천어를 제공하는 방법 및 장치
US9390198B2 (en) * 2013-09-06 2016-07-12 International Business Machines Corporation Heat map of suggested search queries
US9600769B1 (en) 2013-12-06 2017-03-21 Google Inc. In-message suggestion by personal knowledge graph constructed from user email data
US9618343B2 (en) 2013-12-12 2017-04-11 Microsoft Technology Licensing, Llc Predicted travel intent
US20150205828A1 (en) * 2014-01-21 2015-07-23 Sap Ag Methods, systems, and apparatus for auto-complete suggestion lists
US9910931B2 (en) * 2014-03-19 2018-03-06 ZenDesk, Inc. Suggestive input systems, methods and applications for data rule creation
CN103995870A (zh) * 2014-05-21 2014-08-20 百度在线网络技术(北京)有限公司 交互式搜索方法和装置
US10579212B2 (en) 2014-05-30 2020-03-03 Apple Inc. Structured suggestions
US10565219B2 (en) 2014-05-30 2020-02-18 Apple Inc. Techniques for automatically generating a suggested contact based on a received message
US10275483B2 (en) 2014-05-30 2019-04-30 Apple Inc. N-gram tokenization
US9898162B2 (en) 2014-05-30 2018-02-20 Apple Inc. Swiping functions for messaging applications
US9887949B2 (en) 2014-05-31 2018-02-06 Apple Inc. Displaying interactive notifications on touch sensitive devices
US9971500B2 (en) 2014-06-01 2018-05-15 Apple Inc. Displaying options, assigning notification, ignoring messages, and simultaneous user interface displays in a messaging application
US11188308B2 (en) 2014-07-23 2021-11-30 Apple Inc. Interactive code editing
US20160063006A1 (en) * 2014-08-28 2016-03-03 Google Inc. Auto-complete suggestions for structured searches
US10936632B2 (en) * 2014-09-11 2021-03-02 Ebay Inc. Enhanced search query suggestions
GB201418402D0 (en) * 2014-10-16 2014-12-03 Touchtype Ltd Text prediction integration
US10725614B2 (en) 2014-11-06 2020-07-28 Dropbox, Inc. Searching digital content
US10264081B2 (en) 2015-04-28 2019-04-16 Microsoft Technology Licensing, Llc Contextual people recommendations
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
CN104899322B (zh) * 2015-06-18 2021-09-17 百度在线网络技术(北京)有限公司 搜索引擎及其实现方法
US10445425B2 (en) 2015-09-15 2019-10-15 Apple Inc. Emoji and canned responses
US9852337B1 (en) * 2015-09-30 2017-12-26 Open Text Corporation Method and system for assessing similarity of documents
US10127212B1 (en) * 2015-10-14 2018-11-13 Google Llc Correcting errors in copied text
US10929413B2 (en) * 2015-11-13 2021-02-23 Google Llc Suggestion-based differential diagnostics
US10204156B2 (en) * 2015-11-19 2019-02-12 Microsoft Technology Licensing, Llc Displaying graphical representations of query suggestions
CN107291683A (zh) * 2016-04-11 2017-10-24 珠海金山办公软件有限公司 一种拼写检查方法及装置
US10620812B2 (en) 2016-06-10 2020-04-14 Apple Inc. Device, method, and graphical user interface for managing electronic communications
US11681718B2 (en) 2019-03-29 2023-06-20 Apple Inc. Scoping a system-wide search to a user-specified application
US11644955B1 (en) 2019-07-16 2023-05-09 Splunk Inc. Assigning a global parameter to queries in a graphical user interface
US11216511B1 (en) 2019-07-16 2022-01-04 Splunk Inc. Executing a child query based on results of a parent query
US11263268B1 (en) * 2019-07-16 2022-03-01 Splunk Inc. Recommending query parameters based on the results of automatically generated queries
US11386158B1 (en) 2019-07-16 2022-07-12 Splunk Inc. Recommending query parameters based on tenant information
US11113294B1 (en) 2019-07-16 2021-09-07 Splunk Inc. Recommending query templates during query formation
US11269871B1 (en) 2019-07-16 2022-03-08 Splunk Inc. Displaying multiple editable queries in a graphical user interface
US11636128B1 (en) 2019-07-16 2023-04-25 Splunk Inc. Displaying query results from a previous query when accessing a panel
US11604799B1 (en) 2019-07-16 2023-03-14 Splunk Inc. Performing panel-related actions based on user interaction with a graphical user interface
US11720560B2 (en) * 2021-02-22 2023-08-08 Oracle International Corporation Smart filters and search
US11604789B1 (en) 2021-04-30 2023-03-14 Splunk Inc. Bi-directional query updates in a user interface
US11947528B1 (en) 2022-01-06 2024-04-02 Splunk Inc. Automatic generation of queries using non-textual input

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030069882A1 (en) * 2001-10-04 2003-04-10 Benno Nieswand Context sensitive method for data retrieval from databases
US20060167896A1 (en) * 2004-12-06 2006-07-27 Shyam Kapur Systems and methods for managing and using multiple concept networks for assisted search processing
KR20100031912A (ko) * 2008-09-16 2010-03-25 한국과학기술정보연구원 데이터베이스의 개체유형을 이용한 자동 완성 검색 시스템 및 방법 및 프로그램 소스를 기록한 기록매체
US20100179964A1 (en) * 2009-01-09 2010-07-15 Satyanarayanan Ramaswamy User interface and system for two-stage search

Family Cites Families (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960448A (en) 1995-12-15 1999-09-28 Legal Video Services Inc. System and method for displaying a graphically enhanced view of a region of a document image in which the enhanced view is correlated with text derived from the document image
US6564383B1 (en) 1997-04-14 2003-05-13 International Business Machines Corporation Method and system for interactively capturing organizing and presenting information generated from television programs to viewers
US6202061B1 (en) 1997-10-24 2001-03-13 Pictra, Inc. Methods and apparatuses for creating a collection of media
US6401097B1 (en) 1998-01-23 2002-06-04 Mccotter Thomas M. System and method for integrated document management and related transmission and access
AU1936900A (en) 1998-12-08 2000-06-26 Mediadna, Inc. A system and method of obfuscating data
US6385604B1 (en) 1999-08-04 2002-05-07 Hyperroll, Israel Limited Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements
US20020029207A1 (en) 2000-02-28 2002-03-07 Hyperroll, Inc. Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein
US6618733B1 (en) 2000-04-11 2003-09-09 Revelink Inc. View navigation for creation, update and querying of data objects and textual annotations of relations between data objects
US6760721B1 (en) 2000-04-14 2004-07-06 Realnetworks, Inc. System and method of managing metadata data
US6578022B1 (en) * 2000-04-18 2003-06-10 Icplanet Corporation Interactive intelligent searching with executable suggestions
US6775666B1 (en) 2001-05-29 2004-08-10 Microsoft Corporation Method and system for searching index databases
US7284191B2 (en) * 2001-08-13 2007-10-16 Xerox Corporation Meta-document management system with document identifiers
US7519589B2 (en) * 2003-02-04 2009-04-14 Cataphora, Inc. Method and apparatus for sociological data analysis
US7693830B2 (en) * 2005-08-10 2010-04-06 Google Inc. Programmable search engine
US7039635B1 (en) 2002-06-11 2006-05-02 Microsoft Corporation Dynamically updated quick searches and strategies
US6946715B2 (en) * 2003-02-19 2005-09-20 Micron Technology, Inc. CMOS image sensor and method of fabrication
JP4005425B2 (ja) 2002-06-28 2007-11-07 富士通株式会社 検索結果ランキング変更処理プログラム、検索結果ランキング変更処理プログラム記録媒体、およびコンテンツ検索処理方法
WO2004008348A1 (en) 2002-07-16 2004-01-22 Horn Bruce L Computer system for automatic organization, indexing and viewing of information from multiple sources
US20040098250A1 (en) 2002-11-19 2004-05-20 Gur Kimchi Semantic search system and method
US7627552B2 (en) 2003-03-27 2009-12-01 Microsoft Corporation System and method for filtering and organizing items based on common elements
US8024335B2 (en) 2004-05-03 2011-09-20 Microsoft Corporation System and method for dynamically generating a selectable search extension
US20050210005A1 (en) * 2004-03-18 2005-09-22 Lee Thompson Methods and systems for searching data containing both text and numerical/tabular data formats
US8082264B2 (en) * 2004-04-07 2011-12-20 Inquira, Inc. Automated scheme for identifying user intent in real-time
US20050246324A1 (en) 2004-04-30 2005-11-03 Nokia Inc. System and associated device, method, and computer program product for performing metadata-based searches
US20060031357A1 (en) 2004-05-26 2006-02-09 Northseas Advanced Messaging Technology, Inc. Method of and system for management of electronic mail
WO2006011819A1 (en) * 2004-07-30 2006-02-02 Eurekster, Inc. Adaptive search engine
US20060085442A1 (en) 2004-10-20 2006-04-20 Kabushiki Kaisha Toshiba Document image information management apparatus and document image information management program
US7640162B2 (en) * 2004-12-14 2009-12-29 Microsoft Corporation Semantic canvas
US7818350B2 (en) 2005-02-28 2010-10-19 Yahoo! Inc. System and method for creating a collaborative playlist
US7565345B2 (en) * 2005-03-29 2009-07-21 Google Inc. Integration of multiple query revision models
US7162488B2 (en) 2005-04-22 2007-01-09 Microsoft Corporation Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
US7660468B2 (en) * 2005-05-09 2010-02-09 Like.Com System and method for enabling image searching using manual enrichment, classification, and/or segmentation
US7627561B2 (en) 2005-09-12 2009-12-01 Microsoft Corporation Search and find using expanded search scope
US7328199B2 (en) 2005-10-07 2008-02-05 Microsoft Corporation Componentized slot-filling architecture
US7548933B2 (en) 2005-10-14 2009-06-16 International Business Machines Corporation System and method for exploiting semantic annotations in executing keyword queries over a collection of text documents
NZ569107A (en) 2005-11-16 2011-09-30 Evri Inc Extending keyword searching to syntactically and semantically annotated data
US7895223B2 (en) * 2005-11-29 2011-02-22 Cisco Technology, Inc. Generating search results based on determined relationships between data objects and user connections to identified destinations
US8429184B2 (en) * 2005-12-05 2013-04-23 Collarity Inc. Generation of refinement terms for search queries
WO2007070410A2 (en) * 2005-12-12 2007-06-21 Tegic Communications Llc Mobile device retrieval and navigation
US20070143245A1 (en) 2005-12-16 2007-06-21 International Business Machines Corporation System and method for managing presentation of query results
US8010523B2 (en) * 2005-12-30 2011-08-30 Google Inc. Dynamic search box for web browser
US7657603B1 (en) 2006-01-23 2010-02-02 Clearwell Systems, Inc. Methods and systems of electronic message derivation
US7752237B2 (en) 2006-03-15 2010-07-06 Microsoft Corporation User interface having a search preview
US7698328B2 (en) * 2006-08-11 2010-04-13 Apple Inc. User-directed search refinement
US7783660B2 (en) * 2006-10-05 2010-08-24 Yahoo! Inc. System and method for enhanced text matching
US20080104542A1 (en) * 2006-10-27 2008-05-01 Information Builders, Inc. Apparatus and Method for Conducting Searches with a Search Engine for Unstructured Data to Retrieve Records Enriched with Structured Data and Generate Reports Based Thereon
US8935269B2 (en) * 2006-12-04 2015-01-13 Samsung Electronics Co., Ltd. Method and apparatus for contextual search and query refinement on consumer electronics devices
AU2008215153B9 (en) * 2007-02-16 2012-03-01 Squiz Pty Ltd Search result sub-topic identification system and method
US8145677B2 (en) * 2007-03-27 2012-03-27 Faleh Jassem Al-Shameri Automated generation of metadata for mining image and text data
US9977827B2 (en) * 2007-03-30 2018-05-22 Innography, Inc. System and methods of automatic query generation
US9069853B2 (en) * 2007-03-30 2015-06-30 Innography, Inc. System and method of goal-oriented searching
US8694483B2 (en) * 2007-10-19 2014-04-08 Xerox Corporation Real-time query suggestion in a troubleshooting context
US7958066B2 (en) * 2007-11-02 2011-06-07 Hunch Inc. Interactive machine learning advice facility
US7984004B2 (en) * 2008-01-17 2011-07-19 Microsoft Corporation Query suggestion generation
US20090249248A1 (en) * 2008-03-25 2009-10-01 International Business Machines Corporation User directed refinement of search results while preserving the scope of the initial search
US20090287680A1 (en) * 2008-05-14 2009-11-19 Microsoft Corporation Multi-modal query refinement
US8312032B2 (en) * 2008-07-10 2012-11-13 Google Inc. Dictionary suggestions for partial user entries
US8010537B2 (en) * 2008-08-27 2011-08-30 Yahoo! Inc. System and method for assisting search requests with vertical suggestions
US20100146012A1 (en) * 2008-12-04 2010-06-10 Microsoft Corporation Previewing search results for suggested refinement terms and vertical searches
US8504582B2 (en) 2008-12-31 2013-08-06 Ebay, Inc. System and methods for unit of measurement conversion and search query expansion
US20100185644A1 (en) * 2009-01-21 2010-07-22 Microsoft Corporatoin Automatic search suggestions from client-side, browser, history cache
US8275759B2 (en) * 2009-02-24 2012-09-25 Microsoft Corporation Contextual query suggestion in result pages
US9171078B2 (en) * 2009-04-29 2015-10-27 Microsoft Technology Licensing, Llc Automatic recommendation of vertical search engines
WO2011014978A1 (en) * 2009-08-04 2011-02-10 Google Inc. Generating search query suggestions
US8341222B2 (en) * 2010-04-02 2012-12-25 Microsoft Corporation Text suggestion framework with client and server model
US20110307504A1 (en) * 2010-06-09 2011-12-15 Microsoft Corporation Combining attribute refinements and textual queries
AU2011291544B2 (en) * 2010-08-19 2015-03-26 Google Llc Predictive query completion and predictive search results
US20120117102A1 (en) * 2010-11-04 2012-05-10 Microsoft Corporation Query suggestions using replacement substitutions and an advanced query syntax

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030069882A1 (en) * 2001-10-04 2003-04-10 Benno Nieswand Context sensitive method for data retrieval from databases
US20060167896A1 (en) * 2004-12-06 2006-07-27 Shyam Kapur Systems and methods for managing and using multiple concept networks for assisted search processing
KR20100031912A (ko) * 2008-09-16 2010-03-25 한국과학기술정보연구원 데이터베이스의 개체유형을 이용한 자동 완성 검색 시스템 및 방법 및 프로그램 소스를 기록한 기록매체
US20100179964A1 (en) * 2009-01-09 2010-07-15 Satyanarayanan Ramaswamy User interface and system for two-stage search

Also Published As

Publication number Publication date
US9607101B2 (en) 2017-03-28
US8983999B2 (en) 2015-03-17
US20150199371A1 (en) 2015-07-16
CN103329131B (zh) 2017-05-17
US20130290291A1 (en) 2013-10-31
KR20130116330A (ko) 2013-10-23
WO2012097239A1 (en) 2012-07-19
EP2663936A1 (en) 2013-11-20
US20120185498A1 (en) 2012-07-19
US8473507B2 (en) 2013-06-25
CN103329131A (zh) 2013-09-25

Similar Documents

Publication Publication Date Title
KR101501865B1 (ko) 토큰화된 검색 제안들
US20170357661A1 (en) Providing content items in response to a natural language query
US8126895B2 (en) Method, apparatus, and computer program product for indexing, synchronizing and searching digital data
JP5313337B2 (ja) モバイル・コンピューティング装置に対する検索結果の提供
JP5890308B2 (ja) コンテキスト上関連するタスクアイテムの自動発見
KR101002451B1 (ko) 색인 지정 및 검색 방법, 이를 위한 소프트웨어를 포함하는 컴퓨터 판독가능 기록 매체, 및 이에 의한 검색 결과들을 렌더링하는 컴퓨터 디스플레이
KR101502671B1 (ko) 상관된 정보의 온라인 분석 및 디스플레이
KR102050528B1 (ko) 사용자 행동들에 근거하여 컴퓨팅 디바이스에 실행가능한 컨텐츠 제공
US20110083079A1 (en) Apparatus, system, and method for improved type-ahead functionality in a type-ahead field based on activity of a user within a user interface
KR20160030943A (ko) 음성 입력에 기초한 표 데이터에 관한 연산의 수행 기법
US20080052623A1 (en) Accessing data objects based on attribute data
US8874564B2 (en) System and method for communicating search results to one or more other parties
KR101441219B1 (ko) 정보 엔터티들의 자동 연관
TWI680377B (zh) 累加檢索處理方法和裝置
US8001138B2 (en) Word relationship driven search
US8793271B2 (en) Searching documents using a dynamically defined ignore string
US9323753B2 (en) Method and device for representing digital documents for search applications

Legal Events

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

Payment date: 20180201

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200218

Year of fee payment: 6