KR20060049261A - 의미론적으로 레이블링된 스트링의 발견을 기초로 정보를처리하는 방법, 시스템, 및 장치 - Google Patents

의미론적으로 레이블링된 스트링의 발견을 기초로 정보를처리하는 방법, 시스템, 및 장치 Download PDF

Info

Publication number
KR20060049261A
KR20060049261A KR1020050058024A KR20050058024A KR20060049261A KR 20060049261 A KR20060049261 A KR 20060049261A KR 1020050058024 A KR1020050058024 A KR 1020050058024A KR 20050058024 A KR20050058024 A KR 20050058024A KR 20060049261 A KR20060049261 A KR 20060049261A
Authority
KR
South Korea
Prior art keywords
location
string
display
action
information related
Prior art date
Application number
KR1020050058024A
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 KR20060049261A publication Critical patent/KR20060049261A/ko
Priority to US11/480,183 priority Critical patent/US20070070189A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/454Multi-language systems; Localisation; Internationalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Document Processing Apparatus (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)
  • Instructional Devices (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

위치 또는 지리적 영역에 관련되는 정보를 제공하는 방법, 시스템, 및 장치가 개시된다. 스트링이 애플리케이션 프로그램에 입력될 때, 하나 이상의 위치 또는 지리적 영역에 스트링이 관련하는지를 결정하기 위해 스트링이 분석된다. 위치 또는 지리적 영역에 스트링이 관련있다면, 상기 스트링은 위치 또는 지리적 영역에 관련되는 부가 정보와 관련된다. 액션 리스트가 제공될 수 있으며, 각각의 액션은 부가 정보의 선택을 고려한다. 일 실시예에서, 지리적 지도, 전화 코드 또는 시간 변환 정보가 선택되어 디스플레이될 수 있다. 다른 실시예에서, 특정 나라에 관련된 환율이 선택되어 디스플레이될 수 있다.
위치, 지리, 스트링, 애플리케이션, 액션, 환율

Description

의미론적으로 레이블링된 스트링의 발견을 기초로 정보를 처리하는 방법, 시스템, 및 장치{METHOD, SYSTEM, AND APPARATUS FOR PROCESSING INFORMATION BASED ON THE DISCOVERY OF SEMANTICALLY LABELED STRINGS}
도 1은 본 발명의 실시예에 예시적 동작환경을 제공하는 개인용 컴퓨터 아키텍쳐를 도시하는 블록도.
도 2는 본 발명의 다양한 실시예에 따라 텍스트의 인식된 스트링 상의 액션을 인식, 레이블링, 및 수행하는 소프트웨어 아키텍쳐를 도시하는 블록도.
도 3a 및 도 3b는 본 발명의 다양한 실시예에 의해 제공되는 인식된 텍스트 스트링에 대한 액션 메뉴를 포함하는 스크린 디스플레이를 도시하는 스크린 도면.
도 4는 본 발명의 하나의 실 실시예에 따른 애플리케이션 프로그램에서 제공되는 스트링 입력을 프로세싱하는 예시적 루틴을 도시하는 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
4: 중앙 처리 유닛
6: 시스템 메모리
18: TCP/IP
20: 네트워크 인터페이스 유닛
22: 입력/출력 컨트롤러
14: 매스 저장 장치
205: 애플리케이션 프로그램
210: 인식기 DLL
215: 액션 DLL
관련 출원의 상호 참조
본 발명은, 35 U.S.C. §120하에 2002년 5월 7일 출원되고, 발명의 명칭이 "의미론적으로 레이블링된 스트링을 기초로 하는 측정 시스템들 간의 수를 변환하는 방법, 시스템, 및 장치"인 미국 특허 출원 번호 10/140,544의 일부 계속 출원이다. 상기 출원의 청구 대상이 여기에서는 특히 참조로 사용된다.
본 발명의 실시예는 소프트웨어 애플리케이션에 관한 것이다. 보다 상세하게, 본 발명의 실시예는 의미적으로 레이블링된 스트링의 발견을 기초로 위치 또는 지리적 영역에 관련된 정보를 프로세싱하고 디스플레이하는 소프트웨어 애플리케이션에 관한 것이다.
실제 사회 시나리오에서, 사용자들은 문서, 예를 들면, 텍스트 문서, 스프레드시트, 이메일 등의 문서에 나타나는 종종, 사람, 회사, 주소 등에 관한 부가 정보를 액세스하고 싶어한다. 워싱턴 레드몬드 소재의 마이크로소프트사가 개발한 SmartTag® 기술은 그러한 문맥상 정보를 문서에 부가하고 액세스할 수 있게 한다. 일 구성에서, 점선 또는 다른 유형의 비주얼 지시자는 특정 스트링 아래에 위치되어 그 스트링이 SmartTag(즉, 텍스트 부분과 관련된 문맥상 정보)를 갖는다는 것을 지시한다. SmartTag® 기술은, 관련 문맥상 정보의 세트가 이용가능한지에 대한 사전 설정된 스트링에 대하여 문서를 검사하는 인식기를 포함한다. 문맥상 정보는 DLL(dynamically linked library) 또는 기타 데이터 저장 장치에 저장된다. 다음에 인식기는 이 문맥상 정보를 인식된 스트링에 첨부한다. SmartTag® 기술은 또한 SmartTag 액션의 메뉴를 디스플레이하는 부가의 그래픽을 제공한다. SmartTag® 기술은 인식된 스트링과 관련된 문맥상 정보를 소유하는 액션 핸들러를 포함하여 사용자가 인식딘 스트링에 관하여 취할 수 있는 액션을 제공한다.
상기 예가 텍스트 문서의 인식된 스트링을 기초로 하는 SmartTag를 설명하였지만, SmartTag는 증권 시세 표시기(stock ticker) 심볼과 같은 임의의 유형의 데이터로 제한될 수 있다. 그러한 구현예는 다른 유형의 데이터로 작업을 하는 사용자를 위해서는 동작할 수 없다. 따라서, SmartTag® 기술을 서로 다른 유형의 타겟 정보에 계속하여 적용할 필요가 있다.
본 발명의 실시예는 위치 또는 지리적 영역에 관련된 정보를 획득하고 디스플레이하는 방법, 시스템, 및 장치를 제공함으로써 전술한 문제를 해결한다. 스트링이 애플리케이션 프로그램에 입력될 때, 스트링은, 그 스트링이 하나 이상의 위치 또는 지리적 영역에 관련되어 있는지 여부를 결정하기 위해 분석된다. 스트링이 위치 또는 지리적 영역과 관련이 있다면, 스트링은 위치 또는 지리적 영역과 관 련된 부가 정보와 관련된다. 액션 리스트가 제공될 수 있고, 여기에서, 각 액션은 부가 정보를 선택하는 것을 고려한다. 일 실시예에서, 지리적 지도, 전화 영역 코드, 환율, 여행자 정보, 공항 정보, 또는 시간 변경 정보가 선택되고 디스플레이될 수 있다. 다른 실시예에서, 특정 국가에 관련된 환율이 선택되고 디스플레이될 수 있다.
간략하게 전술한 바와 같이, 본 발명의 실시예는, 위치 또는 지리적 영역에 관련된 정보를 획득하고 디스플레이하는 방법, 시스템, 장치, 및 컴퓨터 판독가능 매체를 제공한다. 후술하는 설명에서, 명세서의 일부를 형성하고 예시적 특정 실시예 또는 예가 도시된 첨부 도면이 참조된다. 이들 실시예들은, 본 발명의 사상 및 범위를 벗어나지 않고, 결합될 수 있고, 다른 실시예가 이용될 수 있으며, 구조적 변경이 가능하다. 따라서, 후술하는 설명은 한정적인 것이 아니고, 본 발명의 범위는 첨부된 청구범위 및 그 등가물에 의해 정의된다.
이제, 도면을 참조하면, 일부 도면에 걸쳐 유사한 구성요소에는 유사한 참조부호가 사용되며 본 발명의 양상 및 예시적 동작 환경이 설명될 것이다. 도 1 및 후술하는 논의는 본 발명이 구현될 수 있는 적당한 컴퓨팅 환경의 일반적인 간략한 설명을 제공하는 것을 의도로 한다. 본 발명이 개인용 컴퓨터 상의 오퍼레이팅 시스템 상에서 실행하는 애플리케이션 프로그램과 결합하여 실행하는 프로그램 모듈의 일반적인 콘텍스트에서 설명되었지만, 본 발명이 다른 프로그램 모듈과 결합하여 또한 구현될 수 있다는 것을 당업자는 이해할 수 있을 것이다. 본 발명의 다양 한 실시예를 구현하는 예시적 소프트웨어 및 오퍼레이팅 환경의 추가의 양상은, 발명의 명칭이 "의미론적으로 스트링을 레이블링하고 의미론적으로 레이블링된 스트링을 기초로 하는 액션을 제공하는 방법 및 시스템"인 미국 특허 출원 번호 제09/588,411호에 설명되어 있으며, 이것은 본 명세서에서 참조로 사용된다.
일반적으로, 프로그램 모듈은, 루틴, 프로그램, 컴포넌트, 데이터 구조, 및 특정 태스크를 수행하거나 특정 추상적(abstract) 데이터 유형을 구현하는 기타 유형의 구조를 포함한다. 더우기, 본 발명은 핸드헬드 디바이스, 멀티프로세서 시스템, 마이크로프로세서 기반 또는 프로그램가능 소비자 전자장치, 미니컴퓨터, 메인프레임 컴퓨터 등을 포함하는 다른 컴퓨터 시스템 구성으로 실행될 수 있다. 본 발명은 또한 통신 네트워크를 통해 링크된 원격 프로세싱 디바이스에 의해 태스크가 수행되는 분산형 컴퓨팅 환경에서 실행될 수도 있다. 분산형 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 디바이스 모두에 위치될 수 있다.
이제, 도 1을 참조하면, 본 발명의 다양한 실시예를 실행하는 개인용 컴퓨터(2)에 대한 예시적 컴퓨터 아키텍쳐가 설명된다. 도 1에 도시된 컴퓨터 아키텍쳐는, 중앙 처리 유닛(CPU; 4), 랜덤 액세스 메모리(RAM; 8) 및 리드 온리 메모리(ROM; 10)를 포함하는 시스템 메모리(6), 및 상기 메모리를 CPU(4)에 접속하는 시스템 버스(12)를 포함하는 종래의 개인용 컴퓨터를 도시한다. 기동 동안 등과 같은 컴퓨터 내의 구성요소들 간의 정보를 전송하는데 도움을 주는 기본 루틴을 포함하는 기본 입력/출력 시스템은 ROM(10)에 저장된다. 개인용 컴퓨터(2)는 오퍼레이팅 시스템(16), 애플리케이션 프로그램(205)과 같은 애플리케이션 프로그램, 및 데 이터를 저장하는 매스 저장 디바이스(14)를 더 포함한다.
매스 저장 디바이스(14)는 버스(12)에 접속된 매스 저장 컨트롤러(도시 생략)를 통해 CPU(4)에 접속된다. 매스 저장 디바이스(14) 및 관련 컴퓨터 판독가능 매체는 개인용 컴퓨터(2)에 비휘발성 저장을 제공한다. 본 명세서에 포함된 컴퓨터 판독가능 매체의 설명은, 하드 디스크 또는 CD-ROM 드라이브 같은 매스 저장 디바이스를 말하지만, 컴퓨터 판독가능 매체는 개인용 컴퓨터(2)에 의해 액세스될 수 있는 임의의 이용가능 매체일 수 있다는 것을 당업자는 이해할 수 있을 것이다.
예를 들면, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있지만, 이에 한정되는 것은 아니다. 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈 또는 기타 데이터 같은 정보를 저장하기 위한 임의의 방법 및 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 포함한다. 컴퓨터 저장 매체는, RAM, ROM, EPROM, EEPROM, 플래시 메모리 또는 기타 고상(solid state) 메모리 기술, CD-ROM, DVD, 또는 기타 광학 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터에 의해 액세스될 수 있고 원하는 정보를 저장하는데 사용될 수 있는 임의의 기타 매체를 포함하지만, 이에 한정되는 것은 아니다.
본 발명의 다양한 실시예에 따라, 개인용 컴퓨터(2)는, 인터넷과 같은 TCP/IP 네트워크(18)를 통해 원격 컴퓨터로의 논리적 접속을 사용하는 네트워킹 환경에서 동작할 수 있다. 개인용 컴퓨터(2)는 버스(12)에 접속된 네트워크 인터페이스 유닛(20)을 통해 TCP/IP 네트워크(18)에 접속할 수 있다. 네트워크 인터페이 스 유닛(20)은 다른 유형의 네트워크 및 원격 컴퓨터 시스템에 접속하기 위해 또한 사용될 수 있다. 개인용 컴퓨터(2)는, 키보드 또는 마우스(도시 생략)를 포함하는 수많은 디바이스들로부터 입력을 수신하여 프로세싱하는 입력/출력 컨트롤러(22)를 또한 포함할 수 있다. 유사하게, 입력/출력 컨트롤러(22)는 디스플레이 스크린, 프린터, 또는 다른 유형의 출력 디바이스에 출력을 제공할 수 있다.
간략하게 전술한 바와 같이, 수 많은 프로그램 모듈 및 데이터 파일이, 워싱턴 레드몬드 소재 마이크로소프트사의 WINDOW XP 오퍼레이팅 시스템과 같은 네트워킹 개인용 컴퓨터의 동작을 제어하는데 적당한 오퍼레이팅 시스템(16)을 포함하는 개인용 컴퓨터(2)의 매스 저장 디바이스(14) 및 RAM(8)에 저장될 수 있다. 매스 저장 디바이스(14) 및 RAM(8)은 또한 하나 이상의 애플리케이션 프로그램을 저장할 수 있다. 특히, 매스 저장 디바이스(14) 및 RAM(8)은 전자 문서(24)를 생성하고 편집하는 애플리케이션 프로그램(205)을 저장할 수 있다. 예를 들면, 애플리케이션 프로그램(205)은 워드 프로세싱 애플리케이션 프로그램을 포함할 수 있고, 전자 문서(24)는 워드 프로세싱 문서를 포함할 수 있다. 애플리케이션 프로그램(205)은 또한 스프레드시트 애플리케이션 프로그램을 포함할 수 있고, 전자 문서(24)는 스프레드시트를 포함한다. 유사하게, 애플리케이션 프로그램(205)은 전자 메일 애플리케이션 프로그램을 포함할 수 있고 전자 문서(24)는 전자 메일 메시지를 포함할 수 있다. 기타 유형의 전자 문서를 생성하여 편집하는 애플리케이션 프로그램은 또한 본 발명의 다양한 실시예로 사용될 수 있다.
본 발명의 실시예는, 전자 문서(24) 내에 참조되거나 설명된 위치에 관련된 정보를 제공하는 애플리케이션 프로그램(205)과 결합하여 사용하기 위한 프로그램 모듈을 제공한다. 본 발명의 실시예가 다른 소프트웨어 구조로 구현될 수 있다는 것을 이해할 수 있지만, 본 발명의 예시적 실시예는 인식기 플러그 인(220) 및 액션 플러그 인(225)을 제공한다. 하기에 상술하는 바와 같이, 인식기 플러그 인(220)은 위치와 관련된 스트링을 인식한다. 예시적 목적을 위해, 위치와 관련된 스트링은 지리적 위치 또는 임의의 유형의 영역에 레퍼런스를 포함할 수 있다. 위치와 관련된 스트링은 이름, 주, 나라, 지방, 구역, 카운티, 구역 등을 포함할 수 있다. 다른 예에서, 위치와 관계된 텍스트 스트링은 거주지, 사업 이름 또는 임의의 기타 엔티티(entity)를 포함할 수 있다. 인식기 플러그 인(220)은 이러한 정보를 액션 플러그 인(225)에 의해 사용하기 위해 애플리케이션 프로그램(205)으로 제공한다. 액션 플러그 인(225)은 인식된 스트링 상의 액션을 수행하여 위치와 관련된 부가의 정보를 디스플레이한다.
본 발명의 다양한 실시예에 따라, 액션 플러그 인(225)은 또한 주어진 스트링 상에서 수행될 수 있는 액션 리스트를 생성할 수 있다. 이 프로세스으 일부로서, 액션 플러그 인(225)은 애플리케이션 프로그램(205) 또는 오퍼레이팅 시스템(16)의 언어 세팅(26)을 질의할 수 있다. 언어 세팅(26)은 현재의 사용자 인터페이스 언어를 특정한다. 다음에 현재 사용자 인터페이스 언어로 액션 리스트가 생성된다. 더우기, 액션 플러그 인(225)은 또한 디스플레이 세팅 파일(28)을 참조하여 모든 인에이블된 언저로 사용하기 위해 인에이블된 각 소스 유닛 네임에 대해 그리고 현재 사용자 인터페이스 언어로 사용하기 위해 인에이블된 각 소스 유닛 네 임에 대해 액션 메뉴 아이템을 생성한다. 디스플레이 세팅 파일(28) 및 언어 세팅(26)의 사용을 포함하여, 인식기 플러그 인(220) 및 액션 플러그 인(225)의 동작에 관련하는 추가의 설명이 하기에 상세히 설명된다.
간략히 전술한 바와 같이, 디스플레이 세팅 파일(28)은 인식기 플러그 인(220)과 액션 플러그 인(225) 모두에 의해 사용된다. 특히, 인식기 플러그 인(220)은 디스플레이 세팅 파일(28)의 부분을 이용하여 위치 이름 또는 텍스트의 스트링 내에서 인식되는 다른 데이터를 결정하고, 액션 플러그 인(225)은 디스플레이 세팅 파일(28)을 사용하여 사용자에게 제공되는 액션 메뉴를 생성하고 위치에 관련된 추가의 정보를 실질적으로 디스플레이한다. 디스플레이 세팅 파일(28)이 본 발명을 구현하기 위한 한가지 방법으로 도시되지만, 위치에 관련되는 추가의 정보가 서버, 클라이언트 프로그램, 사용자 맞춤형, 또는 기타 임의의 데이터 소스와 같은 기타 소스로부터 얻어질 수 있다는 것을 당업자는 이해할 수 있을 것이다.
일 예에서, 디스플레이 세팅 파일(28)은 소스 이름들로 채워지는(populated) 많은 필드를 포함하며, 여기에서, 각 소스 이름은 하나의 위치에 관련된다. 전술한 바와 같이, 소스 이름은 도시 이름, 주, 시골, 지방, 지구, 카운티, 구역 등을 포함할 수 있다. 하기에 상술되는 바와 같이, 인식기 플러그 인(220)은 소스 이름 필드에 저장된 데이터 또는 텍스트를 사용하여 위치를 식별한다. 또한, 디스플레이 세팅 파일(28)은 각 소스 이름 필드에 참조되는 위치에 관련된 부가 정보로의 링크 또는 포인터를 포함 또는 구비할 수 있다. 예를 들면, 각 위치에 관련된 부가 정보는 맵(map), 실제 맵, 전화 영역 코드, 및 각 위치에 관련되는 임의의 기타 유형의 정보로의 링크를 포함할 수 있다. 상기 필드는 또는 로컬 식별 번호를 포함하여 본 발명이 서로 다른 언어로 동작하도록 할 수 있다. 또한, 디스플레이 세팅 파일(28)은 또한 환전, 또는 마일 및 킬로미터 간 변환, 인치 및 센티미터 간 변화, 및 다른 측정 유닛들 간 변환과 같은 기타 유형의 변환에 사용되는 데이터를 포함할 수 있다. 디스플레이 세팅 파일(28)의 상기 예는 본 발명 구현시 포함될 수 있는 데이터 유형의 단순한 예라는 것이 이해될 것이다.
도 2를 참조하면, 본 발명의 다양한 실시예와 결합하여 사용하기 위한 예시적 소프트웨어 아키텍쳐가 설명될 것이다. 도 2에 도시된 아키텍쳐는, 워드 프로세서 애플리케이션 프로그램, 이메일 애플리케이션 프로그램, 스프레드시트 애플리케이션 프로그램, 또는 전자 문서를 생성하여 편집하기 위한 기타 유형의 애플리케이션 프로그램과 같은 애플리케이션 프로그램(205)을 포함한다. 애플리케이션 프로그램(205)은 또한 웹 브라우저를 포함할 수 있다. 애플리케이션 프로그램(205)은 인식기 DLL(210) 및 액션 DLL(215)과 통신할 수 있다. 하기에 상술되는 바와 같이, 인식기 DLL(210)은 하나 이상의 인식기 플러그 인(220A - 220N)을 제어하고, 액션 DLL(215)은 하나 이상의 액션 플러그 인(225A - 225N)을 제어한다.
본 발명의 일 실시예에 따라, 인식기 플러그 인(220A - 220N) 및 액션 플러그 인(225A - 225N)은 오토메이션(automation) 서버이다. 오토메이션 서버는, 워싱턴 레드몬드 소재 마이크로소프트사의 WINDOWS XP 오퍼레이팅 시스템 상에서 실행하는 현존 프로그램에 기능을 추가하거나 프로그램으로 어셈블링된 공지된 소프트웨어 컴포넌트이다. 오토메이션 서버는 다양한 컴퓨팅 언어로 기록될 수 있고, 프로그램을 재컴파일할 필요없이 런타임에서 프로그램으로부터 플러그 및 언플러그될 수 있다.
인식기 DLL(210)은 애플리케이션 프로그램(205)에 의해 편집되는 전자 문서로부터 개갭의 인식기 플러그 인(220A - 220N)으로 텍스트 스트링의 분포를 핸들링한다. 인식기 플러그 인(220A -220N)은, 워드 프로세싱 문서 또는 스프레드시트 문서 같은 전자 문서에서 특정 스트링을 인식한다. 인식기 플러그 인(220A - 220N)은 애플리케이션 프로그램 모듈(205)로 패키징될 수 있거나, 흥미있는 특정 스트링을 인식하기 위해 제 3자에 의해 기록될 수 있다. 전형적으로, 인식기 DLL(210)은 단일 문단 또는 셀 값 증분에 있는 스트링을 인식기 플러그 인(220A - 220N)으로 제공한다. 그러나, 스트링은 다른 사이즈 및 포맷으로 인식기 플러그 인(220A - 220N)으로 제공될 수 있다.
의미론적 정보를 포함함으로써 임의의 스트링을 인식하는 부분으로서, 인식기 플러그 인(220A - 220N)은 어느 스트링이 레이블링되고 어떻게 레이블링되는지를 결정한다. 다양한 인식기 플러그 인(220)으로부터 결과를 수신한 후에, 인식기 DLL(210)은 의미론적 카테고리를 애플리케이션 프로그램 모듈(205)에 전송한다. 본 발명의 일 실시예에 따라, 디스플레이 세팅 파일(28) 또는 다른 저장 디바이스에 저장된 스트링을 인식하는 인식기 플러그 인(220)이 제공된다. 스트링이 인식되면, 인식기 플러그 인(220)은 스트링의 길이 및 제1 문자에 대한 ASCII 코드 같은 스트링을 설명하는 정보를 리턴할 수 있다.
각각의 인식기 플러그 인(220A - 220N)은 개별적으로 실행된다는 것이 이해 되어야 한다. 인식기 DLL(210)은 서로 다른 시간에 결과를 리턴하는 서로 다른 인식기 플러그 인(220A - 220N)으로부터의 결과의 동기를 핸들링할 책임이 있다. 본 방법에서, 각종 데이터는 각각 의미론적으로 레이블링된 스트링에 제공되는 서로 다른 액션 및 스트링 내에서 인식될 수 있다. 스트링에 있는 특정 워드 및 어구를 인식하기 위한 인식기 플러그 인(220)의 동작에 관한 추가의 상세한 설명이 도 4를 참조하여 후술된다.
인식기 플러그 인(220A - 220N)에 의해 스트링이 레이블링된 후, 디스플레이 세팅 파일(28)로부터의 정보를 포함할 수 있는 스키마(schema) 정보가 애플리케이션 프로그램 모듈(205)에 전송된다. 애플리케이션 프로그램 모듈(205)의 사용자는 인식된 스트링 상의 스키마 정보와 관련된 액션을 실행할 수 있다. 액션 DLL(215)은 액션을 수행하기 위해 실행되는 액션 플러그 인(225A - 225N)을 관리한다. 인식기 플러그 인(220A - 220N)에 따라, 액션 플러그 인(225A - 225N)은 애플리케이션 프로그램 모듈(205)로 패키징되거나 흥미있는 특정 액션을 수행하기 위해 제 3자에 의해 기록될 수 있다. 액션 플러그 인(225A - 225N)은 스트링과 관계된 스키마 정보에 기초하여 사용자에게 제공될 가능한 액션을 제공한다. 하기에 상술되는 바와 같이, 사용자에게 제공되는 액션 리스트는 각 스키마 유형에 대해 동적으로 생성된다. 다음에, 이 정보는 스트링이 선택될 때 사용자에게 액션 리스트를 디스플레이하는 애플리케이션 프로그램(205)에 제공된다.
액션이 액션 리스트로부터 선택된 후에, 액션 DLL(215)은 적당한 액션 플러그 인(225A - 225N)을 관리하여, 액션 플러그 인이 원하는 액션을 실행할 수 있도 록, 액션 플러그 인과 애플리케이션 프로그램 모듈(205) 간 필요한 정보를 제공한다. 전형적으로, 애플리케이션 프로그램 모듈(205)은 사용자가 선택한 액션을 실시하기 위해 액션 DLL(215)에 오토메이션 요청을 전송한다. 하기에 상술되는 바와 같이, 액션 플러그 인(225)의 일 실시예는 인식된 스트링에서 참조되는 지리적 영역 및 위치에 관련된 부가 정보를 제공한다.
도 3a 및 도 3b를 참조하면, 본 발명의 다양한 실시예에 의해 제공되는 예시적 사용자 인터페이스가 설명될 것이다. 본 예에서, 스트링은 워드 "France"를 철자한 문자를 갖는다. 사용자가 스트링을 제공하면, 스트링은 워드 "France" 같은 스트링 내에 포함된 문자 조합을 인식하는 인식기 플러그 인(220)에 제공된다. 본 예에서, 워드 "France"는 디스플레이 세팅 파일(28)에 위치되는 것으로 주어진다. 워드 "France"가 디스플레이 세팅 파일(28)에 위치되기 때문에, 스트링(32)은 인식기 플러그 인(220)에 의해 식별되는 관련 이름을 가질 것이다. 따라서, 애플리케이션 프로그램 모듈(205)은 액션이 스트링(32) 상에서 수행될 수 있다는 지시를 사용자에게 제공한다. 이 지시는 스트링(32)을 하이라이팅함으로써 또는 스트링(32)에 근사한 사용자 인터페이스 지시(34)를 제공함으로써 사용자에게 제공될 수 있다. 도 3a에 도시된 예시적 실시예에서, 사용자 인터페이스 지시(34)는 풀 다운 메뉴 기능을 갖는 아이콘으로서 도시된다.
스트링(32) 또는 사용자 인터페이스 지시(34)가 사용자에 의해 선택되는 경우, 액션 리스트가 디스플레이된다. 이 액션 리스트는 스트링(32) 상에서 수행될 수 있는 액션 리스트에 대응하는 하나 이상의 메뉴 아이템를 갖는 드롭다운 (dropdown) 메뉴(36)를 포함할 수 있다. 본 발명의 일 실시예에 따라, 드롭다운 메뉴(36)의 컨텐츠는 스트링(32)에서 참조되거나 설명된 위치에 관련되는 액션을 제공한다. 도 3a에 도시된 예에서, 제1 액션(44a)은 사용자가 프랑스에 관한 추가 정보를 볼 수 있게 한다. 일단 선택되면, 상기 제1 액션(44a)은 애플리케이션 프로그램(205)에 부가 정보를 디스플레이하거나 웹 브라우저 애플리케이션 또는 임의의 기타 사용자 인터페이스에서 보기에 적당한 웹 페이지로의 링크를 제공할 수 있다. 또한, 도 3a에 도시된 바와 같이, 제2 액션(44b)은 프랑스에 관련된 시간 존(zone) 정보를 디스플레이하고, 제3 액션(44c)은 프랑스에 관련된 전화 호출 코드를 디스플레이한다. 전화 호출 코드 정보는 인터넷 상의 다른 서버 또는 로컬 또는 원격 데이터베이스 같은 임의의 기타 적당한 소스로부터 수집된 정보의 기초일 수 있다.
제4 액션(44d)는 또한 환율 계산에 대한 부가 프로세싱을 실시할 수 있다. 환율 계산 프로세스 및 방법은, 발명의 명칭이 "Method, System, And Apparatus For Converting Numbers Between Measurement systems Based Upon Semantically Labeled Strings"인 미국 특허 출원 번호 제10/140,544호에 보다 상세하게 설명되어 있으며, 이것은 본 명세서에서 참조로서 사용된다. 일반적으로 설명되었지만, 시스템은 스트링(32)에 설명된 영역에 특정한 통화(currency)를 결정한 다음 환율을 계산한다. 환율은 환전 서버 같은 인터넷 상의 다른 서버 또는 로컬 컴퓨터 같은 임의의 기터 적당한 소스로부터 수집된 정보를 기초로할 수 잇다.
도 3a 및 도 3b에 도시된 바와 같이, 제5 액션(44e)을 선택하면 지도 정보 또한 디스플레이될 수 있다. 본 실시예에서, 실제 지도, 지리적 레이아웃을 설명하는 정보 또는 기타 정보가 사용자에게 디스플레이될 수 있다. 또한 디스플레이될 수 있는 다른 정보는 운전 방향, 지형, 지리 또는 위치에 관련된 임의의 기타 유사한 정보를 포함한다. 제5 액션(44e)이 선택되면, 도 3b에 도시된 지도(40)가 데이터 소스로부터 획득되어 애플리케이션 프로그램(205) 또는 임의의 기타 적당한 사용자 인터페이스에서 사용자에게 디스플레이될 수 있다. 당업자에게 이해될 수 있는 바와 같이, 데이터 소스는 인터넷 상의 서버 또는 로컬 데이터베이스 같은 임의의 적당한 컴퓨팅 소스일 수 있고 지도 정보는 웹 브라우저 애플리케이션 또는 임의의 기타 사용자 인터페이스에 디스플레이될 수 있다.
전술한 특징에 부가하여, 액션 리스트는 또한, 예를 들면 스트링(32)에 설명된 위치 인근 또는 그 내부에 관련된 다른 위치의 이름을 포함할 수 있다. 예를 들면, 도 3a의 액션 리스트는 프랑스에 관련된 다른 위치: Bordeaux, Paris, 및 Strasbourg에 대한 위치 메뉴 옵션(44f)을 디스플레이한다. 그러한 실시예에서, 이들 메뉴 옵션(44f) 각각은 리스트된 각각의 영역에 대한 메뉴 아이템의 부가 세트를 생성하도록 구성된다. 예를 들면, 선택되면, Bordeaux 메뉴 옵션은 지도, 전화 호출 코드 또는 기타 Bordeaux에 관련된 기타 정보를 도시하는 메뉴 옵션 리스트를 생성할 수 있다. 전술한 특징과 유사하게, 상기 정보는 디스플레이 세팅 파일(28) 또는 임의의 기타 네트워크 데이터 소스로부터 비롯될 수 있다.
도 4를 참조하면, 애플리케이션(205)에서 새로운 스트링의 입력을 프로세싱하기 위한 예시적 루틴(500)이 설명될 것이다. 루틴(500)은 블록(502)에서 시작하 며, 여기에서, 애플리케이션 프로그램(205)은,사용자가 새로운 문단을 전자 문서로 입력하거나 이전에 입력된 문단을 편집하는 경우와 같은 새로운 스트링을 수신한다. 블록(502)으로부터, 루틴(500)은 블록(504)로 진행하며, 여기에서, 애플리케이션 프로그램(205)은 새로운 스트링을 인식기 DLL(210)에 제공한다. 전술한 바와 같이, 인식기 DLL(210)은, 인식기 플러그 인(220A - 220N)에 의해 수행될 필요가 있는 잡(job)을 관리하면서, 인식기 플러그 인(220A - 220N)으로부터의 결과를 수신하면서, 그리고 인식된 스트링에 대하여, 전술한 스키마 정보 같은 정보를 애플리케이션 프로그램 모듈(205)로 전송하면서, 애플리케이션 프로그램(205)과 통신할 책임이 있다. 본 발명의 일 실시예에서, 문단은 블록(504)에서 인식기 DLL(210)로 제공된다. 그러나, 대체 실시예에서, 문장, 스프레드시트 셀의 컨텐츠, 문서의 선택, 전체 문서 등이 인식기 DLL(210)에 제공될 수 있다. 즉, 본 발명의 실시예는 인식기 DLL(210)에 단순히 문단을 제공하는 것에 한정되는 것이 아니라는 것이 이해될 것이다.
블록(504)으로부터, 루틴(500)은 블록(506)으로 진행하며, 여기에서 인식기 DLL(210)은 스트링을 인식기 플러그 인(220A - 220N)으로 제공한다. 다음에 루틴(500)은 블록(508)로 진행을 계속하며, 여기에서 스트링 내의 키워드 또는 문자를 인식하도록 문단 상에서 인식기 플러그 인이 실행된다. 전술한 바와 같이, 본 발명의 실시예는, 디스플레이 세팅 파일(28) 또는 로컬 컴퓨터 또는 원격 컴퓨터에 저장된 또 다른 유사한 파일과 같은 데이터 소스에 저장된 워드 또는 어구와 매칭하는 텍스트를 실행한다. 스트링의 텍스트와 데이터 소스에 있는 하나 이상의 워 드 또는 워드가 일치한다고 결정되면, 프로세스의 이 부분의 결과가 저장된다.
블록(510)에서, 인식기 플러그 인(220)으로부터의 결과가 인식기 DLL(210)에서 수신된다. 다음에, 루틴(500)은 블록(512)로 계속 진행하며, 여기에서, 스트링이 인식기 플러그 인(220A - 220N)으로 전송되었기 때문에 문단이 편집되었는지 여부에 대하여 인식기 DLL(210)에 의해 결정된다. 문단이 편집되었다면, 루틴(500)은 블록(504)로 리턴하며, 편집된 스트링은 인식기 DLL(210)로 제공된다. 문단이 편집되지 않았다면, 루틴(500)은 블록(514)로 계속 진행하며, 여기에서, 인식기 DLL(210)은 인식기 플러그 인(220)으로부터 수신된 결과를 애플리케이션 프로그램(205)으로 전송하고, 루틴(500)의 결과 및 인식된 스트링과 관련된 부가의 정보가 전술한 바와 같이 디스플레이된다. 다음에 루틴(500)은 블록(516)을 진행하여 종료한다.
전술한 것을 기초로, 본 발명의 다양한 실시예에서는 소정 스트링을 식별하고 위치에 관련된 정보를 제공하는 방법, 시스템, 장치, 및 컴퓨터 판독가능 매체를 제공한다는 것을 당업자는 이해할 수 있을 것이다. 전술한 설명, 예 및 데이터는 본 발명의 구성의 설명 및 제조의 설명을 완벽히 제공한다. 본 발명의 많은 실시예가 본 발명의 사상 및 범위로부터 벗어나지 않고 이루어질 수 있기 때문에, 본 발명은 첨부의 청구 범위내에 있게 된다.
상기한 바에 따라, 본 발명은 위치 또는 지리적 영역에 관련된 정보를 획득하고 디스플레이하는 방법, 시스템, 및 장치를 제공함으로써 서로 다른 유형의 타 겟 정보에 계속하여 적용할 수 있다.

Claims (22)

  1. 전자 문서를 생성하고 편집하는 시스템에서, 위치에 관련된 정보를 발견하는 방법으로서,
    전자 문서 내에 포함된 스트링이 위치에 관련되는지를 결정하는 단계;
    상기 스트링이 위치와 관련이 있다고 결정되면, 상기 스트링을 수행될 수 있는 액션 리스트와 관계시키는 단계 - 상기 액션 리스트는 상기 위치에 관련된 정보를 식별함 - ;
    상기 액션 리스트로부터 특정 액션의 선택을 수신하는 단계; 및
    상기 특정 액션의 선택에 기초하여 상기 위치에 관련된 선택 정보의 디스플레이를 생성하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 스트링은 상기 위치의 이름을 식별하는 방법.
  3. 제1항에 있어서,
    상기 위치에 관련된 정보는 상기 위치에 관련된 전화 영역 코드를 식별하고, 상기 선택된 정보의 디스플레이는 상기 전화 영역 코드의 디스플레이를 포함하는 방법.
  4. 제1항에 있어서,
    상기 위치에 관련된 정보는 상기 위치의 지리적 지도를 포함하고, 상기 선택된 정보의 디스플레이는 상기 위치의 지리적 지도의 디스플레이를 포함하는 방법.
  5. 제1항에 있어서,
    상기 위치에 관련된 정보는 환율의 결과를 포함하고, 상기 선택된 정보의 디스플레이는 상기 결과의 디스플레이를 포함하는 방법.
  6. 제1항에 있어서,
    상기 위치에 관련된 정보는 부가의 위치 목록을 포함하고, 상기 부가의 위치는 상기 위치와 지리적 관련을 갖는 방법.
  7. 제6항에 있어서,
    부가의 위치 목록으로부터 특정 부가의 위치의 선택을 수신하는 단계;
    수행될 수 있는 제2 액션 리스트를 관련 시키는 단계 - 상기 제2 액션 리스트는 상기 특정 부가의 위치에 관련되는 정보를 식별함 - ;
    상기 제2 액션 리스트의 디스플레이를 생성하는 단계를 더 포함하는 방법.
  8. 컴퓨터에 의해 실행될 때, 제1항의 방법을 컴퓨터가 실행할 수 있게 하는 컴 퓨터 판독가능 명령을 포함하는 컴퓨터 판독가능 매체.
  9. 제1항의 방법을 수행할 수 있는 컴퓨터 제어 장치.
  10. 전자 문서를 생성하고 편집하는 시스템에서, 위치에 관련된 정보를 발견하는 방법으로서,
    전자 문서 내에 포함된 스트링이 위치에 관련되는지를 결정하는 단계;
    상기 스트링이 위치와 관련이 있다고 결정되면, 상기 스트링을 아이템 리스트와 관계시키는 단계 - 상기 아이템 리스트는 상기 위치에 관련된 정보에 링크를 제공하고, 상기 하나 이상의 아이템은 상기 위치에 관련된 부가 정보를 직접 디스플레이함 - ;
    을 포함하는 방법.
  11. 제10항에 있어서,
    상기 스트링은 상기 위치의 이름을 식별하는 방법.
  12. 제10항에 있어서,
    상기 부가의 정보는 상기 위치에 관련된 전화 영역 코드를 포함하는 방법.
  13. 제10항에 있어서,
    상기 부가의 정보는 환율의 결과를 포함하는 방법.
  14. 제10항에 있어서,
    상기 부가의 정보는 부가의 위치 리스트를 포함하고, 상기 부가의 위치는 상기 위치와 지리학적 관련을 갖는 방법.
  15. 컴퓨터에 의해 실행될 때, 제10항의 방법을 상기 컴퓨터가 수행하도록 하는 컴퓨터 판독가능 명령을 포함하는 컴퓨터 판독가능 매체.
  16. 제10항의 방법을 수행할 수 있는 컴퓨터 제어 장치.
  17. 전자 문서를 생성하여 편집하고 위치에 관련된 정보를 발견하는 시스템으로서,
    상기 전자 문서 내에 포함된 스트링이 위치와 관련이 있는지를 결정하는 수단;
    상기 스트링을 수행될 수 있는 액션 리스트와 관계시키는 수단 - 상기 액션 리스트는 상기 위치에 관련되는 정보를 식별하고, 상기 스트링을 액션 리스트와 관계시키는 것은 스트링이 위치와 관련이 있다는 결정에 응답하는 것임 - ;
    상기 액션 리스트로부터 특정 액션의 선택을 수신하는 수단; 및
    상기 특정 액션의 선택을 기초로 상기 위치에 관련된 선택된 정보의 디스플 레이를 생성하는 수단
    을 포함하는 시스템.
  18. 제17항에 있어서,
    상기 스트링은 상기 위치의 이름을 식별하는 시스템.
  19. 제17항에 있어서,
    상기 위치에 관련되는 정보는 상기 위치에 관련되는 전화 영역 코드를 식별하고, 상기 선택된 정보의 디스플레이는 상기 전화 영역 코드의 디스플레이를 포함하는 시스템.
  20. 제17항에 있어서,
    상기 위치에 관련된 정보는 상기 위치의 지리적 지도를 포함하고, 상기 선택된 정보의 디스플레이는 상기 위치의 지리적 위치의 디스플레이를 포함하는 시스템.
  21. 제17항에 있어서,
    상기 위치에 관련된 정보는 환율의 결과를 포함하고, 상기 선택된 정보의 디스플레이는 상기 결과의 디스플레이를 포함하는 시스템.
  22. 제17항에 있어서,
    상기 위치에 관련되는 정보는 부가의 위치 리스트를 포함하고, 상기 부가의 위치는 상기 위치에 관련하는 지리적 관련을 갖는 시스템.
KR1020050058024A 2004-09-24 2005-06-30 의미론적으로 레이블링된 스트링의 발견을 기초로 정보를처리하는 방법, 시스템, 및 장치 KR20060049261A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/480,183 US20070070189A1 (en) 2005-06-30 2006-06-30 Mobile terminal having camera

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/948,948 US20050108195A1 (en) 2002-05-07 2004-09-24 Method, system, and apparatus for processing information based on the discovery of semantically labeled strings
US10/948,948 2004-09-24

Publications (1)

Publication Number Publication Date
KR20060049261A true KR20060049261A (ko) 2006-05-18

Family

ID=35560365

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050058024A KR20060049261A (ko) 2004-09-24 2005-06-30 의미론적으로 레이블링된 스트링의 발견을 기초로 정보를처리하는 방법, 시스템, 및 장치

Country Status (5)

Country Link
US (1) US20050108195A1 (ko)
EP (1) EP1640876A3 (ko)
JP (1) JP2006092514A (ko)
KR (1) KR20060049261A (ko)
CN (1) CN1752972A (ko)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US7788602B2 (en) 2000-06-06 2010-08-31 Microsoft Corporation Method and system for providing restricted actions for recognized semantic categories
US7770102B1 (en) 2000-06-06 2010-08-03 Microsoft Corporation Method and system for semantically labeling strings and providing actions based on semantically labeled strings
US7712024B2 (en) * 2000-06-06 2010-05-04 Microsoft Corporation Application program interfaces for semantically labeling strings and providing actions based on semantically labeled strings
US7716163B2 (en) 2000-06-06 2010-05-11 Microsoft Corporation Method and system for defining semantic categories and actions
US7778816B2 (en) 2001-04-24 2010-08-17 Microsoft Corporation Method and system for applying input mode bias
US7707496B1 (en) 2002-05-09 2010-04-27 Microsoft Corporation Method, system, and apparatus for converting dates between calendars and languages based upon semantically labeled strings
US7707024B2 (en) 2002-05-23 2010-04-27 Microsoft Corporation Method, system, and apparatus for converting currency values based upon semantically labeled strings
US7742048B1 (en) 2002-05-23 2010-06-22 Microsoft Corporation Method, system, and apparatus for converting numbers based upon semantically labeled strings
US7827546B1 (en) 2002-06-05 2010-11-02 Microsoft Corporation Mechanism for downloading software components from a remote source for use by a local software application
US7356537B2 (en) 2002-06-06 2008-04-08 Microsoft Corporation Providing contextually sensitive tools and help content in computer-generated documents
US7716676B2 (en) * 2002-06-25 2010-05-11 Microsoft Corporation System and method for issuing a message to a program
US7209915B1 (en) 2002-06-28 2007-04-24 Microsoft Corporation Method, system and apparatus for routing a query to one or more providers
US7783614B2 (en) * 2003-02-13 2010-08-24 Microsoft Corporation Linking elements of a document to corresponding fields, queries and/or procedures in a database
US7711550B1 (en) 2003-04-29 2010-05-04 Microsoft Corporation Methods and system for recognizing names in a computer-generated document and for providing helpful actions associated with recognized names
US7558841B2 (en) * 2003-05-14 2009-07-07 Microsoft Corporation Method, system, and computer-readable medium for communicating results to a data query in a computer network
US7739588B2 (en) * 2003-06-27 2010-06-15 Microsoft Corporation Leveraging markup language data for semantically labeling text strings and data and for providing actions based on semantically labeled text strings and data
US8442331B2 (en) 2004-02-15 2013-05-14 Google Inc. Capturing text from rendered documents using supplemental information
US7707039B2 (en) 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US7812860B2 (en) 2004-04-01 2010-10-12 Exbiblio B.V. Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device
US20060041484A1 (en) 2004-04-01 2006-02-23 King Martin T Methods and systems for initiating application processes by data capture from rendered documents
US8799303B2 (en) 2004-02-15 2014-08-05 Google Inc. Establishing an interactive environment for rendered documents
US8521772B2 (en) 2004-02-15 2013-08-27 Google Inc. Document enhancement system and method
US10635723B2 (en) 2004-02-15 2020-04-28 Google Llc Search engines and systems with handheld document data capture devices
US9008447B2 (en) 2004-04-01 2015-04-14 Google Inc. Method and system for character recognition
US8621349B2 (en) 2004-04-01 2013-12-31 Google Inc. Publishing techniques for adding value to a rendered document
US20070300142A1 (en) 2005-04-01 2007-12-27 King Martin T Contextual dynamic advertising based upon captured rendered text
US9143638B2 (en) 2004-04-01 2015-09-22 Google Inc. Data capture from rendered documents using handheld device
US8146156B2 (en) 2004-04-01 2012-03-27 Google Inc. Archive of text captures from rendered documents
US7990556B2 (en) 2004-12-03 2011-08-02 Google Inc. Association of a portable scanner with input/output and storage devices
US20080313172A1 (en) 2004-12-03 2008-12-18 King Martin T Determining actions involving captured information and electronic content associated with rendered documents
US8793162B2 (en) * 2004-04-01 2014-07-29 Google Inc. Adding information or functionality to a rendered document via association with an electronic counterpart
US7894670B2 (en) 2004-04-01 2011-02-22 Exbiblio B.V. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US9116890B2 (en) 2004-04-01 2015-08-25 Google Inc. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US8713418B2 (en) 2004-04-12 2014-04-29 Google Inc. Adding value to a rendered document
US9460346B2 (en) 2004-04-19 2016-10-04 Google Inc. Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device
US8874504B2 (en) 2004-12-03 2014-10-28 Google Inc. Processing techniques for visual capture data from a rendered document
US8620083B2 (en) 2004-12-03 2013-12-31 Google Inc. Method and system for character recognition
US8489624B2 (en) 2004-05-17 2013-07-16 Google, Inc. Processing techniques for text capture from a rendered document
US20050268219A1 (en) * 2004-05-28 2005-12-01 Microsoft Corporation Method and system for embedding context information in a document
US8346620B2 (en) 2004-07-19 2013-01-01 Google Inc. Automatic modification of web pages
US20110029504A1 (en) * 2004-12-03 2011-02-03 King Martin T Searching and accessing documents on private networks for use with captures from rendered documents
JP2009508238A (ja) * 2005-09-17 2009-02-26 テレズィゴロジー インク. 位置感知文書
US7788590B2 (en) 2005-09-26 2010-08-31 Microsoft Corporation Lightweight reference user interface
US7992085B2 (en) * 2005-09-26 2011-08-02 Microsoft Corporation Lightweight reference user interface
EP1868083A1 (en) * 2006-06-13 2007-12-19 Microsoft Corporation Use of context information in localisation
EP2067119A2 (en) 2006-09-08 2009-06-10 Exbiblio B.V. Optical scanners, such as hand-held optical scanners
US20080126450A1 (en) * 2006-11-28 2008-05-29 O'neill Justin Aggregation syndication platform
KR100968864B1 (ko) * 2007-06-01 2010-07-09 엔에이치엔(주) 전자메일에 대한 부가 정보 서비스 제공방법 및 그 시스템
KR20100038378A (ko) 2007-07-10 2010-04-14 인터내셔널 비지네스 머신즈 코포레이션 지능적인 텍스트 주석을 위한 방법, 시스템 및 컴퓨터 프로그램
US8107671B2 (en) 2008-06-26 2012-01-31 Microsoft Corporation Script detection service
US8266514B2 (en) 2008-06-26 2012-09-11 Microsoft Corporation Map service
WO2010096193A2 (en) 2009-02-18 2010-08-26 Exbiblio B.V. Identifying a document by performing spectral analysis on the contents of the document
US8447066B2 (en) 2009-03-12 2013-05-21 Google Inc. Performing actions based on capturing information from rendered documents, such as documents under copyright
US8990235B2 (en) 2009-03-12 2015-03-24 Google Inc. Automatically providing content associated with captured information, such as information captured in real-time
FR2948791B1 (fr) * 2009-07-30 2016-09-30 Cadege Tech Et Consulting Systeme de geolocalisation par analyse linguistique
US9081799B2 (en) 2009-12-04 2015-07-14 Google Inc. Using gestalt information to identify locations in printed information
US9323784B2 (en) 2009-12-09 2016-04-26 Google Inc. Image search using text-based elements within the contents of images
US9594831B2 (en) 2012-06-22 2017-03-14 Microsoft Technology Licensing, Llc Targeted disambiguation of named entities
US9959340B2 (en) 2012-06-29 2018-05-01 Microsoft Technology Licensing, Llc Semantic lexicon-based input method editor
WO2014101183A1 (en) * 2012-12-31 2014-07-03 Nokia Corporation Method, apparatus, and system for providing information
US20190243515A1 (en) * 2018-02-07 2019-08-08 Microsoft Technology Licensing, Llc Invoke a Service in an Electronic Document Using a Trigger Entry

Family Cites Families (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408655A (en) * 1989-02-27 1995-04-18 Apple Computer, Inc. User interface system and method for traversing a database
US5287448A (en) * 1989-05-04 1994-02-15 Apple Computer, Inc. Method and apparatus for providing help information to users of computers
JP3005031B2 (ja) * 1990-10-17 2000-01-31 キヤノン株式会社 通信装置
US5940614A (en) * 1991-04-18 1999-08-17 International Business Machines Corporation Hypertext control method and apparatus for displaying help information in an interactive data processing system
JP3811902B2 (ja) * 1991-09-11 2006-08-23 司文 安藤 コンピュータにおける自然言語処理法
US5546521A (en) * 1991-10-15 1996-08-13 International Business Machines Corporation Dynamic presentation of contextual help and status information
US5446891A (en) * 1992-02-26 1995-08-29 International Business Machines Corporation System for adjusting hypertext links with weighed user goals and activities
US5337233A (en) * 1992-04-13 1994-08-09 Sun Microsystems, Inc. Method and apparatus for mapping multiple-byte characters to unique strings of ASCII characters for use in text retrieval
US5535323A (en) * 1992-06-29 1996-07-09 Digital Equipment Corporation Method of and system for displaying context sensitive and application independent help information
US5799068A (en) * 1992-06-29 1998-08-25 Elonex I.P. Holdings Ltd. Smart phone integration with computer systems
DE4406668C2 (de) * 1993-04-27 1996-09-12 Hewlett Packard Co Verfahren und Vorrichtung zum Betreiben eines berührungsempfindlichen Anzeigegeräts
US5522089A (en) * 1993-05-07 1996-05-28 Cordata, Inc. Personal digital assistant module adapted for initiating telephone communications through DTMF dialing
US6282489B1 (en) * 1993-05-28 2001-08-28 Mapquest.Com, Inc. Methods and apparatus for displaying a travel route and generating a list of places of interest located near the travel route
US5764794A (en) * 1993-10-27 1998-06-09 Perlin; Kenneth Method and apparatus for electronically storing alphanumeric characters
US5657259A (en) * 1994-01-21 1997-08-12 Object Technology Licensing Corp. Number formatting framework
US5581684A (en) * 1994-08-01 1996-12-03 Ddtec Sa Application-external help system for a windowing user interface
US5761689A (en) * 1994-09-01 1998-06-02 Microsoft Corporation Autocorrecting text typed into a word processing document
US5717923A (en) * 1994-11-03 1998-02-10 Intel Corporation Method and apparatus for dynamically customizing electronic information to individual end users
US5617565A (en) * 1994-11-29 1997-04-01 Hitachi America, Ltd. Broadcast interactive multimedia system
US5805911A (en) * 1995-02-01 1998-09-08 Microsoft Corporation Word prediction system
JP3507571B2 (ja) * 1995-03-06 2004-03-15 シャープ株式会社 画像形成装置の現像装置
US5708825A (en) * 1995-05-26 1998-01-13 Iconovex Corporation Automatic summary page creation and hyperlink generation
US5778402A (en) * 1995-06-07 1998-07-07 Microsoft Corporation Method and system for auto-formatting a document using an event-based rule engine to format a document as the user types
US5794257A (en) * 1995-07-14 1998-08-11 Siemens Corporate Research, Inc. Automatic hyperlinking on multimedia by compiling link specifications
US5640560A (en) * 1995-08-02 1997-06-17 Microsoft Corporation CD-ROM content repurposing
US5752022A (en) * 1995-08-07 1998-05-12 International Business Machines Corp. Method for creating a hypertext language for a distributed computer network
US5826025A (en) * 1995-09-08 1998-10-20 Sun Microsystems, Inc. System for annotation overlay proxy configured to retrieve associated overlays associated with a document request from annotation directory created from list of overlay groups
US6473069B1 (en) * 1995-11-13 2002-10-29 Cirque Corporation Apparatus and method for tactile feedback from input device
US5822539A (en) * 1995-12-08 1998-10-13 Sun Microsystems, Inc. System for adding requested document cross references to a document by annotation proxy configured to merge and a directory generator and annotation server
US5875443A (en) * 1996-01-30 1999-02-23 Sun Microsystems, Inc. Internet-based spelling checker dictionary system with automatic updating
US5802299A (en) * 1996-02-13 1998-09-01 Microtouch Systems, Inc. Interactive system for authoring hypertext document collections
US5715415A (en) * 1996-06-05 1998-02-03 Microsoft Corporation Computer application with help pane integrated into workspace
US5920859A (en) * 1997-02-05 1999-07-06 Idd Enterprises, L.P. Hypertext document retrieval system and method
US5802530A (en) * 1996-07-01 1998-09-01 Sun Microsystems, Inc. Web document based graphical user interface
US6308171B1 (en) * 1996-07-30 2001-10-23 Carlos De La Huerga Method and system for automated data storage and retrieval
US6516321B1 (en) * 1996-07-30 2003-02-04 Carlos De La Huerga Method for database address specification
US6272505B1 (en) * 1998-07-07 2001-08-07 Carlos De La Huerga Document modification based hyperlink limiting method and apparatus
US5895461A (en) * 1996-07-30 1999-04-20 Telaric, Inc. Method and system for automated data storage and retrieval with uniform addressing scheme
SE515663C2 (sv) * 1996-08-23 2001-09-17 Ericsson Telefon Ab L M Pekskärm och användning av pekskärm
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US6292768B1 (en) * 1996-12-10 2001-09-18 Kun Chun Chan Method for converting non-phonetic characters into surrogate words for inputting into a computer
US5933139A (en) * 1997-01-31 1999-08-03 Microsoft Corporation Method and apparatus for creating help functions
US6073090A (en) * 1997-04-15 2000-06-06 Silicon Graphics, Inc. System and method for independently configuring international location and language
US5892919A (en) * 1997-06-23 1999-04-06 Sun Microsystems, Inc. Spell checking universal resource locator (URL) by comparing the URL against a cache containing entries relating incorrect URLs submitted by users to corresponding correct URLs
US5933140A (en) * 1997-06-30 1999-08-03 Sun Microsystems, Inc. Child window containing context-based help and a miniaturized web page
US5974413A (en) * 1997-07-03 1999-10-26 Activeword Systems, Inc. Semantic user interface
US5896321A (en) * 1997-11-14 1999-04-20 Microsoft Corporation Text completion system for a miniature computer
US6028605A (en) * 1998-02-03 2000-02-22 Documentum, Inc. Multi-dimensional analysis of objects by manipulating discovered semantic properties
US6092074A (en) * 1998-02-10 2000-07-18 Connect Innovations, Inc. Dynamic insertion and updating of hypertext links for internet servers
JP3666005B2 (ja) * 1998-03-03 2005-06-29 マツダ株式会社 特許情報検索システム、特許情報検索装置、情報検索中継装置並びに特許情報検索方法
US6031525A (en) * 1998-04-01 2000-02-29 New York University Method and apparatus for writing
US6006265A (en) * 1998-04-02 1999-12-21 Hotv, Inc. Hyperlinks resolution at and by a special network server in order to enable diverse sophisticated hyperlinking upon a digital network
US6122647A (en) * 1998-05-19 2000-09-19 Perspecta, Inc. Dynamic generation of contextual links in hypertext documents
NO984066L (no) * 1998-09-03 2000-03-06 Arendi As Funksjonsknapp for datamaskin
US6349295B1 (en) * 1998-12-31 2002-02-19 Walker Digital, Llc Method and apparatus for performing supplemental searches over a network
US6556984B1 (en) * 1999-01-19 2003-04-29 International Business Machines Corporation Hierarchical string matching using multi-path dynamic programming
US6311177B1 (en) * 1999-02-16 2001-10-30 International Business Machines Corporation Accessing databases when viewing text on the web
US6320496B1 (en) * 1999-04-29 2001-11-20 Fuji Xerox Co., Ltd Systems and methods providing tactile guidance using sensory supplementation
US6519603B1 (en) * 1999-10-28 2003-02-11 International Business Machine Corporation Method and system for organizing an annotation structure and for querying data and annotations
GB2355833B (en) * 1999-10-29 2003-10-29 Canon Kk Natural language input method and apparatus
US6963867B2 (en) * 1999-12-08 2005-11-08 A9.Com, Inc. Search query processing to provide category-ranked presentation of search results
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
US7712024B2 (en) * 2000-06-06 2010-05-04 Microsoft Corporation Application program interfaces for semantically labeling strings and providing actions based on semantically labeled strings
US7421645B2 (en) * 2000-06-06 2008-09-02 Microsoft Corporation Method and system for providing electronic commerce actions based on semantically labeled strings
US7716163B2 (en) * 2000-06-06 2010-05-11 Microsoft Corporation Method and system for defining semantic categories and actions
US7788602B2 (en) * 2000-06-06 2010-08-31 Microsoft Corporation Method and system for providing restricted actions for recognized semantic categories
US6857103B1 (en) * 2000-07-14 2005-02-15 International Business Machines Corporation Flexible help support in an object oriented application
US6441753B1 (en) * 2000-10-25 2002-08-27 Motorola, Inc. Multi-function key assembly for an electronic device
US7320019B2 (en) * 2000-11-30 2008-01-15 At&T Delaware Intellectual Property, Inc. Method and apparatus for automatically checking e-mail addresses in outgoing e-mail communications
US20020091803A1 (en) * 2001-01-08 2002-07-11 Kokoro Imamura Multi-user management process enabling user privacy for use in a network entertainment center
US6845499B2 (en) * 2001-01-31 2005-01-18 I2 Technologies Us, Inc. System and method for developing software applications using an extended XML-based framework
JP2002236684A (ja) * 2001-02-07 2002-08-23 Fujitsu Ten Ltd 情報処理方法
US7032174B2 (en) * 2001-03-27 2006-04-18 Microsoft Corporation Automatically adding proper names to a database
US7778816B2 (en) * 2001-04-24 2010-08-17 Microsoft Corporation Method and system for applying input mode bias
US7024658B1 (en) * 2001-09-28 2006-04-04 Adobe Systems Incorporated Extensible help facility for a computer software application
US20030182391A1 (en) * 2002-03-19 2003-09-25 Mike Leber Internet based personal information manager
US7325194B2 (en) * 2002-05-07 2008-01-29 Microsoft Corporation Method, system, and apparatus for converting numbers between measurement systems based upon semantically labeled strings
US7707024B2 (en) * 2002-05-23 2010-04-27 Microsoft Corporation Method, system, and apparatus for converting currency values based upon semantically labeled strings
US7003522B1 (en) * 2002-06-24 2006-02-21 Microsoft Corporation System and method for incorporating smart tags in online content
US20040001099A1 (en) * 2002-06-27 2004-01-01 Microsoft Corporation Method and system for associating actions with semantic labels in electronic documents

Also Published As

Publication number Publication date
EP1640876A3 (en) 2007-01-10
US20050108195A1 (en) 2005-05-19
CN1752972A (zh) 2006-03-29
JP2006092514A (ja) 2006-04-06
EP1640876A2 (en) 2006-03-29

Similar Documents

Publication Publication Date Title
KR20060049261A (ko) 의미론적으로 레이블링된 스트링의 발견을 기초로 정보를처리하는 방법, 시스템, 및 장치
US7716163B2 (en) Method and system for defining semantic categories and actions
US7325194B2 (en) Method, system, and apparatus for converting numbers between measurement systems based upon semantically labeled strings
JP4202041B2 (ja) 入力モードバイアスを適用するための方法およびシステム
US7739588B2 (en) Leveraging markup language data for semantically labeling text strings and data and for providing actions based on semantically labeled text strings and data
US7712024B2 (en) Application program interfaces for semantically labeling strings and providing actions based on semantically labeled strings
RU2328034C2 (ru) Способ и система сопоставления операций семантическим меткам в электронных документах
Rodriguez-Sanchez et al. GAT: Platform for automatic context-aware mobile services for m-tourism
US7770102B1 (en) Method and system for semantically labeling strings and providing actions based on semantically labeled strings
US7707024B2 (en) Method, system, and apparatus for converting currency values based upon semantically labeled strings
EP2570974B1 (en) Automatic crowd sourcing for machine learning in information extraction
US7788602B2 (en) Method and system for providing restricted actions for recognized semantic categories
US7246118B2 (en) Method and system for automated collaboration using electronic book highlights and notations
US7159185B1 (en) Function objects
US20020198909A1 (en) Method and system for semantically labeling data and providing actions based on semantically labeled data
US20050154741A1 (en) Methods and computer systems for workflow management
US7398214B2 (en) Method for translating slide presentations into different languages
CN111144128B (zh) 语义解析方法和装置
JP2004259271A (ja) 言語翻訳の方法およびシステム
KR20050082156A (ko) 컴퓨터-생성 문서의 인식된 텍스트 스트링들에 대해자동화된 동작들을 제공하는 방법 및 시스템
US20120158742A1 (en) Managing documents using weighted prevalence data for statements
US20200175114A1 (en) Embedding Natural Language Context in Structured Documents Using Document Anatomy
US20070005549A1 (en) Document information extraction with cascaded hybrid model
US20050235036A1 (en) Intelligent URL redirector
CN111611779A (zh) 辅助文本标注方法、装置、设备及其存储介质

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid