KR100255627B1 - 이동 클라이언트 컴퓨터 - Google Patents

이동 클라이언트 컴퓨터 Download PDF

Info

Publication number
KR100255627B1
KR100255627B1 KR1019970029749A KR19970029749A KR100255627B1 KR 100255627 B1 KR100255627 B1 KR 100255627B1 KR 1019970029749 A KR1019970029749 A KR 1019970029749A KR 19970029749 A KR19970029749 A KR 19970029749A KR 100255627 B1 KR100255627 B1 KR 100255627B1
Authority
KR
South Korea
Prior art keywords
processor
control program
predictive
data
entry
Prior art date
Application number
KR1019970029749A
Other languages
English (en)
Other versions
KR19980018169A (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 KR19980018169A publication Critical patent/KR19980018169A/ko
Application granted granted Critical
Publication of KR100255627B1 publication Critical patent/KR100255627B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • G06F15/025Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators adapted to a specific application
    • 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/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Position Input By Displaying (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

컴퓨터 시스템, 바람직하게는 이동 클라이언트 컴퓨터는 예측성 위제트(predictive widgets)를 사용하여 데이타 처리 및 디스플레이를 최적화한다. 예측성 위제트는 서식 기입 애플리케이션에서와 같이, 일단 사용자가 필드내로의 기입을 개시하면, 필드에 대한 예측성 디폴트 엔트리 또는 예측성 기입을 제공하도록 정의된 서식 필드내로 기입될 가능성있는 엔트리들의 예측성 리스트를 사용한다.

Description

이동 클라이언트 컴퓨터{MOBILE CLIENT COMPUTER PROGRAMMED TO PREDICT INPUT}
일반적으로, 퍼스널 컴퓨터, 특히 IBM 퍼스널 컴퓨터는 폭넓게 사용되어 오늘날 사회 각 분야에 컴퓨터 기능을 제공하고 있다. 퍼스널 컴퓨터 시스템은, 통상적으로 단일의 시스템 프로세서와 이와 관련된 휘발성 메모리와 비휘발성 메모리를 포함하는 시스템 유닛, 디스플레이 모니터, 키보드, 하나 또는 그 이상의 디스켓 드라이브, 고정 디스크 저장장치, 선택사양의 프린터로 구성되는 데스크탑 컴퓨터(desk top), 플로어 스탠딩 컴퓨터(floor standing), 또는 휴대용(portable) 마이크로컴퓨터로서 정의될 수 있다. 이러한 시스템들의 뚜렷한 특징들 중의 하나는 이러한 구성요소들을 전기적으로 접속하는 데 마더보드(motherboard) 또는 시스템 플래너(system planar)를 사용한다는 것이다. 이러한 시스템들은 주로 단일의 사용자에게 독립적인 컴퓨터 기능(computing power)을 제공하도록 설계되어 있으며 개개인 또는 소기업이 구매할 수 있도록 가격이 저렴하다. 이러한 퍼스널 컴퓨터 시스템들의 예로서는 IBM사가 제공하는 퍼스널 컴퓨터로서 PERSONAL COMPUTER AT, PERSONAL SYSTEM/2, PS/1, Aptiva 등이 알려져 있다. 컴퓨터 분야의 숙련가들은 이러한 시스템들에 정통해 있을 것이다.
이러한 시스템들은 두가지의 일반적인 계열로 분류될 수 있다. 통상 모델 Ⅰ계열로 지칭되는 제 1 계열은 IBM PERSONAL COMPUTER AT 및 다른 IBM 호환 기종으로 예시되는 버스 아키텍쳐를 사용하고 있다. 모델 Ⅱ계열로 지칭되는 제 2 계열은 IBM 사의 PERSONAL SYSTEM/2 모델 50 내지 95로 예시되는 IBM사의 MICRO CHANNEL 버스 아키텍쳐를 사용하고 있다. 본래 모델 Ⅰ계열은 시스템 프로세서로서 대중적인 인텔 8088 또는 8086 마이크로프로세서를 사용했다. 이러한 프로세서들은 1 메가 바이트의 메모리를 어드레싱할 수 있는 능력을 가지고 있다. 모델 Ⅱ계열은 통상적으로 보다 저속의 인텔 8086 마이크로프로세서를 에뮬레이트하기 위해 리얼 모드에서 동작가능하거나 몇몇 모델에 대해 1 메가 바이트 내지 4 기가 바이트의 어드레싱 범위를 갖도록 보호 모드에서 동작가능한 고속의 인텔 80286, 80386, 80486 마이크로프로세서를 사용했다. 본질적으로, 80286, 80386, 80486 프로세서의 리얼 모드 특징은 8086 및 8088 마이크로프로세서에 대해 작성된 소프트웨어와 하드웨어적인 호환성을 제공하고 있다. 기술 수준이 향상됨에 따라, 계열 Ⅰ의 시스템은 일찌기 인텔의 펜티엄 마이크로프로세서와 그와 경쟁관계에 있는 다른 마이크로프로세서들, IBM사 및 모토로라사의 Power PC 프로세서와 같은 RISC(Reduced Instruction Set Computing) 마이크로프로세서, VESA 및 PCI 버스와 같은 고기능의 버스를 포함하는 고기능의 중앙 처리 장치쪽으로 개발되어 왔다. 이제, 컴퓨터 분야의 숙련가는 이러한 시스템들에 대해서는 정통해 있을 것이다.
회사와 소비자 환경에서 컴퓨팅이 행해지는 방식에 미치는 진보의 영향은 복잡해지고 있다. 퍼스널 컴퓨터 시스템이 개발되기 이전에는, 대부분의 컴퓨터들이 업무용으로만 사용되었으며 데이타 처리는 컴퓨터 시스템을 격납하는 "온실(glass house)"내에서 행해졌다. 질문들은 컴퓨터 기술자들에 의해 처리되기 위해 정보 관리자(information manager)를 통해 교환되었다. 퍼스널 컴퓨터 시스템이 폭넓게 사용됨에 따라, 한때는 기업 단위의 컴퓨터 시스템상에서 유지되던 데이타에 대한 액세스가 관리자 및 일선의 고용인들에게 까지 중요해지게 되었다. 기업의 데이타가 저장된 기업 시스템 또는 메인프레임에 대한 네트워크 서버를 통한 계층화된 액세스가 증가함에 따라, 퍼스널 컴퓨터 시스템 네트워크는 성장을 거듭하여 왔다.
정보와 관련한 업무(information work)가 기업내에서 정보 업무자에게 확산되고 기업내의 더욱 확산된 고용인 그룹의 업무에 영향을 끼침에 따라, 이러한 고용인들이 이동해야 할 필요성이 발생했다. 특히, 판매 영업사원, 운전 기사, 또는 사업 컨설턴트와 같은 "외근" 업무 종사자에 있어서, 그 업무 종사자가 기업측으로부터 멀리 떨어져 있는 동안 컴퓨터 시스템의 네트워크를 통해 기업 시스템에 통상적으로 저장되어 있는 기업 데이타에 액세스하는 것은 날로 중요해지고 있다. 이러한 액세스는 부분적으로는 노트북 또는 랩탑 컴퓨터 시스템과 같은 유선 접속된 퍼스널 컴퓨터 시스템을 사용하여 달성되었다. 통상적으로, 이러한 시스템에는 모뎀 또는 통신 소프트웨어가 장착되고, 그 결과, 이러한 시스템은 공중 전화 교환망(PSTN)에 접속될 때 보조 서버(supporting server) 또는 메인프레임과 접속되어 사용자는 원하는 데이타에 액세스할 수 있게 되어있다.
셀룰러 전화 네트워크에 의해 예시되는 바와 같은 무선 통신의 개발에 따라, 퍼스널 컴퓨터 시스템과 보조 서버 간의 유선 접속을 제거하는 것이 가능하게 되었다. 이러한 시스템은, 특히 소매 및 도매 사업에 사용되는 시스템용으로 개발되었으며, 이 시스템에 따라 사용자는 무선 송수신 서비스를 갖는 지역내에서 자유롭게 이동할 수 있으며 기업 활동을 보조하는 메인프레임 또는 서버와 데이타가 교환될 수 있게 하는 데이타 채널에 간헐적으로 또는 지속적으로 접속된다. 설명의 편이를 위해, 사용자가 휴대하는 이러한 시스템을 본 명세서에서 "이동 클라이언트 시스템"으로 지칭한다. 이동 클라이언트 시스템은, 유선 접속에 의해 발생하는 이동에 대한 구속으로부터 자유로이 사용자가 이동할 수 있다는 점과, 이동 클라이언트 시스템에 의해 액세스되는 기업 정보가 이동 클라이언트와 통신중에 있는 서버 또는 메인프레임 컴퓨터 시스템에 유지된다는 시스템의 클라이언트 특성에 의해 구별된다. 이러한 이동 클라이언트 시스템들은 또한 때때로 개인 통신용 단말기(personal communications assistants) 또는 개인 휴대용 단말기(personal digital assistants)로 지칭된다. 관심있는 독자(reader)는 이동 클라이언트 시스템에 관한 부가적인 배경 및 정보에 대해 이라 브로드스키(Ira Brodsky)에 의한 "Wireless: The Revolution in Personal Telecommunications"(Artech House, Boston, 1995)을 참조하기 바란다.
지금까지 기술된 이동 클라이언트 시스템의 경우, 다른 설계상의 특성을 성취하는 반면 제한된 디스플레이 영역이 제공됨에 따라 여러가지의 어려움이 발생된다. 이러한 어려움들중 일부는 거리 번지와 고객명과 같은 영문숫자(alphanumeric) 데이타를 필요로 하는 필드에 대한 데이타 엔트리와 관련된다. 이러한 필요는 통상적으로 도매 주문, 택배 사업, 병원 환자, 및 진료 기록의 처리 등과 같은 임의의 서식 기입(form filling)응용에서 발생한다. 이러한 모든 사용자 환경들은 데이타 저장 시스템에 접속된 이동 클라이언트 시스템들이 이용되고 있는 환경들이다.
서식 기입 기능이 요구될 경우, 본 명세서에서 "서식 위제트(forms widgets)"로 지칭되는 만족스러운 방법이 개발되고 있다. AIX 프로그래밍에서 발생된 그래픽 장치를 의미하는 전문 용어 "위제트"는 키보드 또는 포인터로부터 입력을 수신할 수 있으며 콜백(callback) 수단에 의해 응용 프로그램 또는 다른 위제트와 통신할 수 있다. 본 명세서에서 AIX 정의에 일관성있게 사용되는 바와 같이, "위제트"는 특정 태스크를 수행하는 디스플레이상에서의 코드 요소 또는 소형의 툴(tool)이다. 가령, 서식 위제트는 사용중인 서식내의 특정의 데이타 또는 정보 필드에 문자열을 제공할 수 있다. 그 일예로는, 번지를 필요로 하는 서식내의 특정 필드에 두개의 문자 상태의 식별자를 제공하는 서식 위제트일 수 있다. 이 경우에, 서식 위제트는 미국의 주를 식별하기 위해 미국 우편국(United States Postal Service)에서 채택한 두개의 문자의 50개의 조합으로부터 선택할 수 있다. 이러한 일예에서, 데이타가 제공될 리스트는 제한되고 있다. 다른 일예에서, 번지 서식에 대한 이름 필드와 같이, 리스트는 본질적으로 제한받지 않으며, 임의의 사전선택된 리스트와는 별도로 부가하거나 수동 입력이 가능하도록 오픈되어야 한다.
본 발명은 전술한 바와 같이, 서식 기입 애플리케이션에 예측성(predictive) 위제트들이 사용되는 이동 클라이언트 시스템을 제공하고 있다. 예측성 위제트는 필드내로 예측성 디폴트를 입력하거나 또는 필드내로 예측성 기입을 제공하기 위해 사용되는 예측성 리스트의 하나이다. 예측성 위제트는 시스템 사용자에 의해 서식 기입 애플리케이션의 사용에 지능적으로 응답하여 사용자의 생산성을 향상시킬 수 있다.
도 1 은 본 발명에 따른 이동 클라이언트 컴퓨터 시스템의 몇몇 구성요소들의 분해 사시도.
도 2 는 도 1 의 시스템에 대한 조립 사시도.
도 3 은 도 1 및 도 2 에 도시된 이동 클라이언트 시스템과 주변장치 및 시스템과의 사이의 상호관계를 개략적으로 도시한 도면.
도 4 는 도 2의 이동 클라이언트내에 구현되는 몇몇 회로 요소들의 개략적인 도면.
도 5 는 도 2의 이동 클라이언트에서 몇몇 회로 요소들과 그들의 관계를 개략적으로 도시한 도면.
도 6은 도 2의 이동 클라이언트에 대한 전력 모드들의 상태도와 그들 모드들간의 천이를 도시한 도면.
도 7은 도 6과 유사한 도면으로서, 도 2의 이동 클라이언트의 몇몇 요소들의 상태를 도시하며 이동 클라이언트상에서의 소프트웨어 실행 상태를 포함하는 도면.
도 8은 어떤 데이타를 디스플레이하기 위해 이동 클라이언트상에서 응용 프로그램의 실행에 의해 구동되는 도 2의 이동 클라이언트의 디스플레이 스크린을 도시한 도면.
도 9는 도 8과 유사한 것으로, 다른 스크린 디스플레이를 도시한 도면.
도 10은 위제트, 위제트에 대한 디폴트 및 기입(fill) 기능, 디폴트 및 기입 기능이 데이타를 인출하는 리스트 간의 관계를 개략적으로 도시한 도면.
도 11은 도 8과 유사한 도면으로, 도 8의 서식상에서 디스플레이되는 리스트 부분을 포함하는 키보드의 외관을 도시한 도면.
도 12는 본 발명에 따른 성명 필드 위제트(name field widget)에 잠재적으로 사용되는 항목 표를 도시한 도면.
도면의 주요 부분에 대한 부호의 설명
10: 이동 클라이언트 시스템 15: LCD
20: 서버 30: 프로세서
40: 배터리 50: 터치스크린
본 발명의 양호한 실시예가 도시된 첨부된 도면을 참조하여 본 발명이 더욱 상세히 후술되겠지만, 당해 기술분야의 숙련가라면 본 발명의 바람직한 결과를 얻는 범위내에서 다양한 변경을 가할 수 있음을 이해할 수 있을 것이다. 따라서, 후술하는 설명은 본 발명을 제한하는 것이 아닌, 당해 분야의 숙련가에게 본 발명을 개시하는 목적으로 넓게 해석되어야 하는 것으로 이해할 수 있다.
이제, 첨부되는 도면을 더욱 상세히 참조하면, 도 1 및 도 2에는 전체가 10으로 표시되는 본 발명에 따른 이동 클라이언트 퍼스널 컴퓨터 시스템(이하, 이동 클라이언트로 지칭됨)의 일예가 도시되고 있다. 전술한 설명으로부터 명백한 바와 같이, 이동 클라이언트는 본 발명의 사상에 해당하는 범위내에서 다양한 특성을 갖는다. 이러한 특성들 중의 중심이 되는 것은, 이동 클라이언트 시스템이 이동 클라이언트 시스템과 보조 서버 및 메인프레임 간에 적어도 데이타, 가능하게는 음성과 같은 오디오와 데이타 모두를 통신하는 기능을 제공한다는 것이다. 이 실시예에서, 이러한 통신 기능은 세 개의 구별되는 구성요소, 즉 시스템 태블릿(system tablet)(11), 홀스터(holster)(12), 송수신기(13)로 분리될 수 있는 시스템을 제공함으로써 구현된다. 도시된 형태에서, 송수신기(13)는 홀스터(12)내에 장착될 수 있는 셀룰러 전화이며, 홀스터(12)는 홀스터(12)내에 제공되는 리셉터클(receptacle)내에 상기 태블릿을 미끄러뜨림으로써 상기 시스템 태블릿(11)에 접속될 수 있다. 본 발명의 시스템이 본 명세서에서 세개의 구성요소를 갖는 시스템으로서 기술 및 도시되었지만, 후술하는 바와 같이 이동 클라이언트 시스템(10)이 통합된 경우, 다시 말해서, 무선 송수신기(13)가 시스템 태블릿(11)과 일체화되고 그 사이의 접속이 어떠한 홀스터(12)도 사용하지 않고 시스템의 단일 커버내에서 이루어지는 경우, 본 발명의 여러 이점들이 실현될 것이라는 것을 이해할 수 있을 것이다. 송수신기/홀스터/태블릿 구조는 몇몇의 환경에서 소정의 효과를 제공한다. 그러나, 본 발명은 이러한 특정의 구조와 다른 형태로 실행될 수 있을 것이라는 것을 이해할 수 있다.
이러한 3요소 구조로 실현되는 장점은 하나의 무선 송수신기를 다른 것으로 쉽게 대체할 수 있다는 것이다. 특히, 디지탈 데이타 및 아날로그 오디오는 셀룰러 전화 무선 인터페이스상에서 셀룰러 디지탈 패킷 데이타(CDPD) 프로토콜 기술을 사용하여 데이타 교환이 행해질 수 있지만 상기 기술 외에도 다른 기술이 사용될 수 있다. 이러한 기술들중에는 주파수 분할 다중 접속(FDMA) 및 시분할 다중 접속(TDMA)과 같은 디지탈 무선 기법과, 다이렉트 시퀀스 스프레드 스펙트럼(DS-SS) 및 결과적 코드 분할 다중 접속(CDMA)과 같은 스프레드 스펙트럼 기법과, 주파수 호핑 확산 스펙트럼(FH-SS) 기술과, 개선형 이동 전화 시스템(AMPS) 또는 개선형 무선 데이타 정보 서비스(ARDIS) 또는 RAM 이동 데이타로서 알려진 것과 전술한 기법들중의 하나가 조합된 기법이 있다. 이러한 기법들이 진보하고 폭넓게 받아들여짐에 따라, 3요소 구조에 의해 최근에 등장하기 시작한 무선 송수신기(13)에 기존의 태블릿(11)을 적용시킬 수 있게 되며, 그에 따라 사용자가 시스템에 투자한 자본을 보호할 수 있게 된다. 그러나, 온도, 습도의 환경 조건이 나쁜 상태에서 사용하거나, 떨어뜨림으로 인한 충격에 노출되는 것과 같은 조건에 대해서는, 단일의 커버내에 송수신기 및 태블릿과 보조 회로를 갖는 일체형 시스템이 바람직한 선택이 될 수 있다.
이제, 도 3을 참조하면, 본 발명에 따른 시스템(10)과 보조 서버 및 주변장치사이의 관계가 개략적으로 도시되어 있다. (이후에 보다 완전하게 설명되는 바와 같이) 백리트 액정 디스플레이 장치(backlit liquid crystal display)로 구현된 터치스크린(touchscreen)(15)을 통한 사용자 입력을 위해 통상적으로 태블릿(11)이 이용되지만, 시스템(10)은 보다 통상적인 키보드(16)를 수용할 수 있다. 도시된 바와 같이 키보드는 시스템(10)에 유선 접속되어, 사용을 원할 경우 접속 컨덕터(18)에 의해 데이타 입력이 시스템(10)에 도달할 신호 경로를 제공하도록 할 수 있다. 다른 방법으로, 키보드는 데이타 전송을 위해 적외선 링크를 이용하는 등 당업자에게 알려진 다른 수단에 의해 알려진 프로토콜(protocol)을 이용하여 링크될 수 있다. 도면에 있어서, 시스템은 적외선 방사에 의한 데이타 전송을 위해 IrDA 링크에 의해 프린트(19)에 링크되는 것으로 도시된다.
전술한 바와 같이, 무선 송수신기는 서버(20)에 무선 주파수 링크를 제공하며, 서버(20)는 보조 메인프레임 데이타 저장장치(21)와 유선을 통해 통신할 수 있다. 전체적인 기업 경영에 관련한 데이타는 보조 메인프레임상에 유지되며, 본 발명에 따라 이동 클라이언트(10)가 이용할 수 있도록 만들어진다.
본 발명에 따라 함께 데이타 처리를 행하는 회로 요소들을 참조하면, 도 4는 상기 회로 요소들의 구성의 한 형태를 도시하고 있다. 도시된 바와 같이, 예시된 이동 클라이언트 시스템(10)은 가장 중요한 부분으로 마이크로프로세서(30)를 가지며, 이 마이크로프로세서(30)는 RISC(Reduced Instruction Set Computing) 특성을 가진다. 이러한 프로세서는 액정 디스플레이를 위한 제어기(31), PC 카드(PCcards) 또는 PCMCIA 카드로 알려진 형태의 주변 장치를 위한 제어기(32), 인스트럭션/데이터 캐쉬(33), 메모리 및 외부 버스(34)에 대한 인터페이스, 실시간 클럭(35)을 포함하는 소자들을 가진다. 이 마이크로프로세서는 또한, 인터럽트 제어기(36) 및 다양한 서비스(37)에 대해 규정된 인터페이스를 가진다. 본 명세서에서는 이와 같은 특성을 가진 단일 프로세서로서 개시되지만, 적절한 보조로직 또는 칩에 의해 둘러싸인 인텔(Intel) X86 기반 프로세서를 사용하는 등 다른 수단에 의해 그와 같은 컴퓨팅 기능 및 인터페이스 기능을 성취할 수 있다는 것이 종래 기술의 컴퓨터 시스템 제조 및 사용으로부터 알려져 있다. 따라서, 도 4의 실시예는 본 발명에 따른 시스템의 실시예로서 제공된 것으로, 그와 같은 이동 클라이언트 시스템의 핵심적인 기능은 다른 방법으로도 구성될 수 있음을 알 수 있다.
도 4에 도시된 바와 같이, 핵심의 마이크로프로세서(30)는 주변 장치에 의해 지원된다. 가장 중요하게, 시스템의 동작을 위한 전력은 배터리(40)로부터 제공된다. 바람직하게, 배터리(40)는 "스마트(smart)" 배터리로 알려진 형태의 것으로서, 이러한 배터리에서는 하전 상태 및 재충전 과정의 셀프 모니터링(self monitoring)이 이루어진다. 그와 같은 배터리는 알려져 있으며, 이동 클라이언트 시스템(30)으로 신호를 제공하며, 이 신호는 배터리 상태, 충전 후 재사용에 대한 용이성 등을 사용자에게 알리는 표시를 발생하는 데 이용될 수 있다. 이동 클라이언트는 또한 바람직하게 유선에 의해 접속되는 경우 사용을 위한 통상적인 모뎀(41)과, 전화 상호 접속점(telephone interconnection point)(42)(RJ-11접속기로 표시)을 가진다. 시스템을 위한 메모리로는 플래시 메모리 액세서리 카드(flash memory accessary card)(44), 다이내믹 랜덤 액세스 메모리(dynamic random access memory ; DRAM)(45), 코어 플래시 메모리(core flash memory)(46)가 제공된다. 바람직하게는, 부가적인 다른 기능을 위해 한 쌍의 타입 II PCMCIA 슬롯(48, 49)이 제공된다.
이동 클라이언트 시스템에 의해 수행된 데이터 처리 동작의 결과를 디스플레이하기 위해, 시스템(10)은 상기한 바와 같이 LCD(15)를 가진다. LCD에는 적절한 터치스크린(50)이 중첩되며, 터치스크린(50)은 사용자에 의해 입력이 이루어지는 경우 이를 인식하기 위한 디지타이저(digitizer)로서 기능한다. 본 명세서에서 이러한 기능에 대해 다른 논의가 후술될 것이다. 배터리 및 온도 센서로부터의 입력과 같이, 터치 스크린으로부터의 입력은 아날로그/디지털 변환기(51)를 통해 프로세서(30)의 입출력(I/O) 포트에 전달된다. 전술한 바와 같이 키보드, IrDA 포트(52), 오디오 코덱(54), 연관된 스피커(55)와 마이크로폰(56)에 대한 접속을 위해 프로세서(30)의 다른 I/O 포트가 제공되며 무선 송수신기(13)에 대한 접속을 위해 인터페이스 접속기(58)가 제공된다.
전술한 바와 같이, 도 4를 참조하여 본 명세서에 개시된 기능의 특정 구조는 지원될 기능, 프로세서 코어 및 보조로직에 대한 설계자의 선택으로 인해 변경될 수 있다.
전술한 바와 같이, 이동 클라이언트 시스템(10)은 배터리로부터 전력을 공급받는다. 이러한 동작은 이동 클라이언트용으로는 적합하지만, 시스템(10)의 보조를 위해 교류 전원 형태의 보다 통상적인 전원과의 접속도 제공된다. 이러한 전원들은 도 5에서 60으로 표시되며, 후술하는 전력 관리 관계에서 참조된다. 쉽게 이해되는 바이지만, 이동 클라이언트 시스템에 의한 전력 사용의 관리는 상기 시스템의 활용도와 관련하여 중요하다.
도 5는 전원과 전력 소모의 관점에서 프로세서(30) 근방의 주변장치의 구성을 도시하고 있다. 전력 관리 토폴로지에 따라, 메인 배터리(40)로부터 태블릿(11)내의 프로세서(30)로 전력이 흐르는 한편, 별도의 전력 및 제어 신호가 홀스터(12)와, 홀스터내에 장착된 임의의 무선 송수신기(13)와, 시스템에 의해 사용되는 임의의 PC카드 액세서리에 영향을 끼친다. 이러한 개별적인 전력 흐름은 본 명세서에 기술되는 이동 클라이언트 시스템(10)에 중요하다. 특히, 홀스터(12)내에는 별도의 배터리(61)가 제공된다. 홀스터 배터리(61)는 바람직하게 "스마트" 배터리이며, 홀스터(12)내에 관련 배터리 제어기(62)와, 홀스터 주변장치 제어기(63)와, 프로세서(30)로/로부터 흐르는 데이타 스트림을 무선 송수신기(13)에 효과적으로 인터페이스하는 관련 회로(64)와 관련된다. 따라서, 홀스터(12) 및 송수신기(13)의 회로는 (이하 상세하게 기술되는 바와 같이) 프로세서(30)의 제어하에 있지만, 전원은 적어도 어느 정도는 태블릿(11)과 독립적이다. 이러한 분리는 중요하다. 태블릿이 홀스터와 맞물릴 때(engaged), 두 구성요소내의 회로는 전체의 관리에 있어서 서로 협력하여 동작한다. (통상적인 셀룰러 전화인 경우, 자체적인 전원과 전력 관리 기법을 가질 수 있는) 송수신기(13)가 홀스터(12)내에 배치되면, 송수신기(13)는 3요소 구조의 시스템에 대한 전력 관리에 있어서 협력하여 역할을 수행할 수 있다.
태블릿(11)에 대해 보다 상세히 살펴보면, 이 시스템은 배터리(40)용 제어기 회로(66)와 전원 장치(68)를 가지며, 배터리(40)는 태블릿(11)의 동작 전력을 전원 장치(68)에 공급한다. 본 시스템에서, 코어 프로세서(30)로부터의 요구를 일부 분담(off-load)하기 위해 전원 장치에 대한 제어를 실행하는 별도의 마이크로콘트롤러(69)가 제공된다. 이 마이크로콘트롤러는 프로세서(30) 및 변환기(70)로부터 입력을 수신한다. 프로세서(30) 및 변환기(70)는 실시간 클럭(35)용 배터리(71)에 의해 최소한의 기능을 수행하도록 지원된다. 상세히 후술되는 바와 같이, RTC 배터리(71)는 태블릿 시스템이 호출될 경우 기동(wakeup)할 것을 보장한다.
이제, 이동 클라이언트 시스템(10)에 대한 하드웨어 토폴로지로부터 시스템(10)의 전력 모드와 천이 이벤트(transition event)로 관심을 돌리면, 도 6은 이러한 방식들 중의 한 예를 도시하고 있다. 이후의 설명을 위해, 이동 클라이언트 시스템의 사용자에게 시스템의 동작 레벨에 대한 표시자(indicator)가 제공될 것이라는 것에 유의해야 한다. 통상적으로, 이러한 표시자 또는 지시자(annunciator)는 발광 다이오드 형태이며, 이러한 다이오드 장치들은 저렴한 가격에 용이하게 이용할 수 있으며, 대부분의 사용자에게 알려져 있다. 상기 3요소 구조 시스템에는 태블릿(11)용 표시자와, 홀스터(12)용 표시자와, 송수신기(13)용 표시자가 제공될 수 있다. 도 6에서, 태블릿(11)과 홀스터(12) 간의 상이한 동작 레벨을 반영하는 동작 상태들 간의 차이가 도출되며, 도시된 시스템은 태블릿과 홀스터가 결합된 3요소 구조 시스템인 것으로 가정한다.
이러한 배경을 염두에 두면, 시스템의 완전동작 상태에 해당하는 LED와 백라이트 LCD(15)의 발광으로 표시되는 바와 같이 태블릿(11)과 홀스터(12)는 모두 완전히 동작할 것이다. 이 상태는 75로 도시된다. (마치 모든 배터리가 제거된 것처럼) 모든 구성요소가 파워 다운(power down)된 완전히 반대의 상태는 76으로 도시되며, 모든 LED와 백라이트 LCD가 발광하지 않는 상태로 된다. 완전 동작 상태로부터, 사용자는 홀스터(12)를 턴오프시킬 목적으로 제공된 스위치를 동작시키거나, 홀스터와 태블릿을 분리시키거나 홀스터와 무선 송수신기를 분리시켜 필요한 상호접속을 차단함으로써 홀스터를 턴오프시킬 수 있다. 이러한 경우, 홀스터 LED는 발광되지 않는 상태(78)로 되지만, 태블릿 LED와 LCD는 (태블릿이 동작을 유지하는 것과 같이) 발광된 상태로 유지될 수 있다. 이동 클라이언트는 메모리에 저장된 데이타를 사용하여 데이타를 처리할 수 있지만, 보조 서버(20) 및 데이타 저장장치(21)와 (간헐적으로 또는 일시적으로) 분리될 수 있다. 이동 클라이언트 시스템상에서의 소프트웨어 실행에 의해 결정되는 바에 따라, 시스템은 서스펜드로서 알려진 상태로 진입할 수 있다. 서스펜드 상태(79)에서, 태블릿 LED 및 LCD와 홀스터 LED는 꺼진 상태이다. 상기 3요소 구조 시스템 중 무선 송수신기를 제외한 나머지가 서스펜드 상태로 유지되는 동안 무선 송수신기가 적절히 사용된다면, 시스템은 홀스터 LED가 발광하고 무선 송수신기가 동작하는 상태(80)로 진입할 수 있다. 마찬가지로, 이동 클라이언트 시스템상에서의 소프트웨어 실행에 의해 결정되는 또 한번의 이벤트에 따라, 시스템은 스탠바이(81)로서 알려진 상태로 진입할 수 있다. 스탠바이 상태에서, 태블릿 LCD는 전력을 절약하기 위해 꺼질 것이며, 태블릿 LED는 시스템이 즉시 기동될 수 있다는 것을 나타내도록 발광을 유지할 것이다. 홀스터는 파워 다운되거나(LED꺼짐) 동작 상태로 유지될 수 있다. 시스템(10)의 사전결정된 시간 간격의 스탠바이 모드가 경과한 후 상기 시스템을 서스펜드 모드로 천이시키는 타이머 기능이 제공된다.
시스템은 온/오프 스위치를 사용함으로써 오프 상태(76)와 동작 상태(78 또는 75)사이에서 천이할 수 있다. 시스템은 온/오프 스위치를 사용하거나 또는 배터리를 제거함으로써 서스펜드 또는 스탠바이 상태로부터 오프 상태(76)로 천이할 수 있다. 시스템은 사용자로부터의 서스펜드/재개(suspend/resume) 입력과, 홀스터에 접속된 무선 송수신기로부터의 입력 호출 표시와, 시간 간격의 종료와, 스마트 배터리 제어기로부터의 배터리 저충전 상태 표시에 응답하여 서스펜드 상태(79) 또는 (80)에서 동작 상태(78 또는 75)로 천이할 수 있다. 시스템은 터치스크린 또는 키보드를 통한 입력과 같은 사용자 이벤트에 응답하여 스탠바이 상태에서 동작 상태(78 또는 75)로 천이할 수 있다.
다른 관점의 전원 모드와 천이 이벤트가 도 7에 도시된다. 여기서, 시스템 상태들은 온 상태(81)와, 아이들 상태(82)와, 스탠바이 상태(84)와, 서스펜드 상태(85)와, 오프 상태(86)로서 도시된다. 온 상태(81)에서, 시스템 LED와 LCD는 발광되고, 프로세서(30)는 고기능 모드에서 동작하며, 다른 주변장치들은 필요에 따라 전력 관리된다. 비동작의 시간이 경과하면, 시스템은 프로세서에 의한 응용 프로그램의 실행이 종료되는 아이들 상태(82)로 진입하고, 프로세서는 전력 관리의 "도즈 하이(dose high)"모드로 진입하며, LCD는 발광되고, 다른 주변장치들은 필요에 따라 전력 관리된다. 임의의 사용자 이벤트에 의해 시스템이 온 상태로 복귀된다. 시간 경과로 인해 시스템이 스탠바이 상태(84)로 진입하면, 응용 프로그램은 정적(static)으로 되며, 프로세서는 전력 관리의 "도즈 로우(dose low)"모드로 진입하고, LCD는 꺼지며, 다른 모든 주변장치들은 필요에 따라 전력 관리된다. 시간 경과로 인해 시스템이 서스펜드 상태(85)로 진입하게 되면, 응용 프로그램은 정적으로 되고 재개를 위해 체크포인트가 설정되며, 프로세서는 전력 관리의 "슬립(sleep)"모드로 진입하고, LCD는 꺼지며, 다른 모든 주변장치들은 오프된다. 따라서, 완전한 동작 상태(81)로 복귀하는데 소요되는 시간 간격에 의하면, 시스템은 아이들 상태(82)로부터는 가장 신속하게, 스탠바이 상태(84)로부터는 덜 신속하게, 서스펜드 상태(85)로부터는 보다 덜 신속하게, 오프 상태(86)로부터는 가장 천천히 복귀할 것이다.
본 발명의 이동 클라이언트 시스템에 대해 이루어지는 데이타 통신 및 디스플레이에 대해서 간략히 언급하는 것이 유익할 것이라 생각된다. 이제 도 8을 더욱 상세히 참조하면, 시스템(10)상에서 실행되는 응용 프로그램에 대한 디스플레이 스크린의 일예가 도시된다. 바람직하게는 시스템(10)은 하이퍼텍스트 전송 프로토콜(HyperText Transfer Protocal:HTTP)에 의한 접속용과 하이퍼텍스트 마크업 언어(HyperText Markup Language:HTML)의 파일용으로 사용되는 것과 같은 브라우저(browser) 프로그램의 성질을 가지는 응용 프로그램을 실행한다. HTTP 및 HTML은 인터넷(internet) 또는 월드 와이드 웹(WWW)으로서 알려진 환경에서 널리 사용되고 있다. 이러한 기법들은 본 명세서에서 클라이언트의 최소 자원을 갖는 이동 클라이언트 시스템의 동작을 용이하게 하고 보조 서버 및 메인프레임 데이타 저장장치를 통해 이용가능한 자원을 최대로 활용하기 위해 사용된다.
특히, 클라이언트 시스템의 프로세서(30)는 시스템 플래시 메모리(46)에 저장된 운영 체제(operating system) 프로그램 및 브라우저 프로그램을 실행한다. 이러한 프로그램들을 실행할 경우, 시스템은 송수신기(13) 및 인터페이스(58)에 의해 제공된 무선 링크 또는 와이어 접속된 경우의 모뎀을 통해 데이타를 전달함으로써 보조 서버와 데이타를 교환한다. 이렇게 교환된 데이타는 시스템 DRAM 메모리(45)내에 저장되어 운영 체제와 브라우저에 의해 조작될 수 있다. 브라우저는 보조 서버로부터 획득되는 데이타와 함께, 가령 도 8에서 도시되는 바와 같이 나타날 수 있는 스크린을 상기 LCD(15)상에 디스플레이할 것이다. 도시된 스크린은 디스플레이될 필드의 상한을 가로질르는 타이틀 바(90)를 포함하며, 디스플레이될 필드내에 숫자 또는 이름을 식별하는 것과 같이 데이타용으로 정의된 필드를 갖는 서식을 갖는다. 도시된 특정의 서식에서, 필드는 식별된 환자의 센터 번호용 필드, 병원 번호용 필드, 생년월일용 필드, 입원 허가일용 필드 등을 포함한다. 타이틀 바(90)에 인접한 곳에 91로 도시된 동물(여기서는 캥거루로 예시됨)이 표시되어 있다. 동물 표시는 본 발명의 한 실시예에 따라, 시스템이 한 데이타 액세스에서 다른 데이타 액세스로 "점프"중이고 사용자가 상기 "점프"의 종료를 대기해야 한다는 것을 나타내기 위해 사용되고 있다. 또한, 타이틀 바(90) 바로 아래에는 메인(또는 초기) 스크린으로의 복귀와, 한 스크린으로 뒤로 돌아감과, 무선 링크를 통한 데이타 교환과, 배터리 충전 상태와, 제시된 스크린 사이의 이동과 같은 기능 "버튼"의 표시가 도시된다. 중환자실(ICU)에 대한 입원 허가일과 클래스 필드와 같은 소정의 필드들에는 사용자가 코멘트를 붙일 수 있으며, 이들 필드를 근처에 "노트북"아이콘을 두어 표시할 수 있다. 노트북은 어떠한 코멘트도 현재 부가되어 있지 않다는 것을 나타내도록 (입원 허가일 필드에 인접한 것처럼)덮혀져 있거나(closed), 현재 코멘트를 포함하고 있다는 것을 나타내도록 (클래스 필드에 인접한 것처럼)펼쳐져(open) 있을 수 있다.
이동 클라이언트 시스템(10)이 LCD(15)위에 놓여지는 터치스크린(50)을 가지므로, 터치스크린 필드에 가해지는 스타일러스(stylus), 포인터(pointer), 또는 손가락에 의해 시스템으로 데이타가 입력될 수 있다. 따라서, 도 8을 참조하면, 사용자가 특정 환자의 성별을 나타내는 정보를 입력하고자 한다면, 사용자는 이 데이타를 입력하기 위해 (스타일러스, 포인터, 또는 손가락으로)"남성" 버튼 또는 "여성" 버튼을 터치해야 한다. 마찬가지로, 사용자가 코멘트를 입력하고자 한다면, 사용자는 노트북 아이콘에 의해 정의된 필드를 터치하여 이 아이콘이 덮여진 상태와 펼쳐진 상태 사이에서 변화하도록 함으로써 적절한 수치적 혹은 영문자 데이타를 입력하기 위한 필드를 개방할 수 있다.
쉽게 이해되는 바이지만, 여기서 기술되는 유형의 이동 클라이언트 시스템의 스크린 디스플레이에 대해 이용가능한 영역은 제한적이다. 이러한 제한은 디스플레이를 발생시키며 디스플레이 영역위에 놓여지는 터치스크린을 사용하여 데이타를 입력하는데 사용되는 스크린 기술의 전면에 심각한 제한을 가한다. 본 발명은 이동 클라이언트 시스템의 프로세서에 액세스가능하게 저장된 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 제한된 디스플레이 영역을 시스템의 사용자의 요구에 따라 수용하는 경우 제공된 다른 구성요소와 협력하여 동작할 것이라는 것을 예상하고 있다.
전술한 바와 같이, 서식 기입 애플리케이션들이 통상적으로 컴퓨터 시스템상에서 흔히 사용된다. 도 9는 다수의 서식 위제트가 제공되는 하나의 단순화된 서식을 나타낸다. 이들 서식은 텍스트 엔트리 필드("이름")와 멀티라인 텍스트 영역("주석")에 대한 텍스트 위제트들을 포함한다. 또한, 상기 서식에는 선택을 위한 다수의 위제트들 중의 하나의 위제트가 포함되는데, 상기 위제트에서, 제공된 다수의 옵션들 중의 하나의 옵션을 선택함에 따라 하나의 항목(item)이 풀다운 리스트로부터 선택될 수 있는 소위 "라디오 버튼"("눈") 또는 옵션 리스트("헤어")를 갖는 그룹의 나머지가 선택해제된다. 또한, 풀다운 리스트에서 각각의 항목이 체크되거나 체크되지 않는 체크 박스("애완 동물") 및 옵션 리스트("취미")에 대한 온/오프 스위치 위제트들이 포함된다.
도 9에서의 서식은 다수의 가능한 스타일을 대표하는 위제트 스타일을 사용한다. 중요한 것은 디스플레이될 특정의 스타일이 아니라 입력 위제트의 클래스들이다.
많은 컴퓨터 애플리케이션들은 사용자로 하여금 서식에 대해 "디폴트"를 설정할 수 있도록 한다. 가령, 워드퍼펙(WorldPerfect) 6.1이라는 상표로 판매되는 워드 프로세싱 프로그램에서, 템플릿(templete)은 성명, 주소, 전화번호와 같은 개인 정보에 대한 서식을 제공한다. "디폴트로서 저장"버튼은 이후의 템플릿으로 하여금 현재 정보로 서식을 초기화시키도록 한다. 많은 애플리케이션들은 입력된 각각의 서식을 디폴트로서 저장하며, 이전 서식으로부터의 데이타로서 다음 서식의 필드를 초기화한다. 애플리케이션은 이전 서식으로부터 단지 일부의 위제트들만을 초기화하면서 다른 위제트들은 일정한 디폴트로 초기화할 수도 있다. 텍스트 엔트리 위제트들은 종종 공백(blank)으로 초기화된다.
많은 애플리케이션들은 이전 서식으로부터 일치하는 데이타를 사용함으로써 사용자가 타이핑할 때 텍스트 위제트의 내용을 기입한다. 가령, 상표, 퀵큰(Quicken) 3.0으로 판매되는 회계 프로그램(accounting program)은 개인 전표를 기록하는 서식을 갖는다. 사용자가 "수취인" 텍스트 필드에 각 문자를 타이핑한 후, 퀵큰은 지금까지 타이핑된 문자로부터 개시되는 이전 엔트리로 필드를 완성한다. 따라서, 사용자는 이전에 입력된 수취인을 유일하게 확인하기에 충분한 문자들을 타이핑하기만 하면 된다. 이러한 특징은 퀵필(QuickFill)로 지칭된다.
퀵필이 이전 엔트리의 영문자 리스트를 사용하고 있음을 주지하는 것이 중요하다. 가령, 이전의 전표에는 지난달의 "Ace Hardware"에 대한 12장의 전표와 세 달 전의 "AAA"에 대한 한 장의 전표가 포함되어 있다고 가정한다. 사용자가 문자 A를 타이핑하는 경우, 퀵필은 "AAA"를 제시하는데 그 이유는 상기 "AAA"가 알파벳순으로 "Ace Hardware" 이전에 오기 때문이다. 퀵필은 "Ace Hardware"가 더욱 최근에 혹은 더욱 빈번히 사용되었기 때문에 "Ace Hardware"가 더 가능성이 있을 것으로는 추론하지 않는다. 퀵필은 사용자가 문자 C를 타이핑한 후에만 "Ace Hardware"를 제시한다. 퀵필에 의한 제시의 알파벳적인 성질은 텍스트 엔트리 위제트에 대한 전형적인 성질이다.
본 발명에 따르면, 시스템 프로세서에 액세스가능하게 메모리에 저장된 제어 프로그램이, 도 9에서 예시되고 참조되는 모든 타입의 위제트에 대한 개선점을 제공하는 것으로 된다. 간략히 말하면, 각 위제트는 가장 가능성이 높을 듯한 선택에 대해 이전 서식에 근거하여 디폴트로 가리키고 있다. 그러나, 가장 가능성이 높을 듯한 선택은 이전 엔트리의 빈도 및 최신도에 의해 결정되며, 알파벳 순서는 단지 타이브레이커(tie-breaker)이다. 텍스트 엔트리 위제트들은 사용자가 입력하고 있는 내용을 완료하는데 이전 엔트리를 사용하지만, 가장 빈번하고 가장 최신의 엔트리가 선호된다.
사용자의 선택을 예측하는데 빈도 및 최신도를 이용하는 위제트들은 본 명세서에서 예측성 위제트로 지칭된다. 각각의 예측성 위제트는 그 위제트에 대한 예측성 리스트, 이전 리스트, 또는 사전결정된 엔트리를 포함한다. 예측성 리스트는 각 엔트리의 레코드를 포함함으로써 일치하는 엔트리의 빈도 및 최신도를 분석할 수 있도록 한다. 예측성 리스트는 더욱 상세히 후술되는 방식으로 용도 또는 오버타임(overtime)에 따라 변화할 특정의 순서로 확률을 제공하도록 구성되는 일련의 가능성있는 데이타 엔트리이다.
예측성 위제트는 그 예측성 리스트를 두가지 방법으로 사용한다. 첫째, 위제트는 예측성 디폴트를 설정하기 위해 상기 리스트를 이용한다. 예측성 디폴트는 서식을 사용하기 위해 오픈될 때 상기 위제트의 초기상태를 설정한다. 둘째, 위제트는 문제가 되는 필드에 대한 예측성 기입(predictive fill)을 설정하기 위해 상기 리스트를 이용한다. 다시 말해서, 필드가 채워지기 위해 선택되고 사용자가 이 필드에 대한 데이타 입력 동작을 개시할 때, 입력된 초기의 몇몇 문자들은 상기 필드를 채우는데 필요한 완전한 데이타를 예측하는데 사용된다. (사용자는 제안된 기입(fill)을 받아들이거나 버릴 수 있다.)
도 10은 예측성 위제트, 예측성 리스트, 예측성 디폴트, 예측성 기입 사이의 관계를 도시하고 있다. 이러한 각 대상은 차례차례 검사될 것이다.
본 발명을 구현하는 서식 기입 프로그램은 기존 서식 시스템상에서 사용될 수 있다. 가령, 하이퍼텍스트 마크업 언어(HTML)는 도 9에서 확인된 위제트 타입들을 갖는 서식들을 지원한다. HTML이 개방형이고 확장가능하기 때문에, 서식 위제트들에 대한 신택스(syntax)는 예측성 위제트들을 포함하도록 확장될 수 있다. 본 발명을 구현하는 서식 기입 프로그램은 시스템의 텍스트 기입 기능과는 무관하다. 다시 말해서, 상기 프로그램들은 키보드, 수기 인식, 음성 인식, 다른 문자 기입 수단과 적절히 기능한다.
전술한 바와 같이, 예측성 디폴트 기능은 서식이 디스플레이될 때 위제트의 초기 상태를 설정한다. 이러한 것은 텍스트 기입 위제트들외의 다른 위제트들을 포함하는 모든 타입의 예측성 위제트들에 적용된다. 예측성 디폴트는 상기 위제트를 일정한 디폴트로 설정할 수 있는데, 이러한 설정에서는 예측성 리스트를 전혀 사용하지 않으며, 이것이 전통적인 위제트가 동작하는 방식을 나타낸다. 또한, 사용자는 상기 일정한 디폴트를 수동으로 설정할 수 있다.
그러나, 예측성 디폴트는 보통 이전 엔트리의 최신도 및/또는 빈도에 근거하여 필드를 초기화한다. 만약 예측성 디폴트가 최신도를 이용한다면, 이전 서식으로부터의 엔트리는 항상 새로운 서식상에 나타나게 된다. 가령, 도 9에서, 만약 동일 가족이 함께 입력된다면 성(last name)에 대한 디폴트는 최신성에 기초를 둘 수 있다. 만약 예측성 디폴트가 빈도를 이용한다면, 가장 많이 사용된 이전 엔트리가 새로운 서식상에 나타나게 된다. 이러한 경우, 최신도는 두개 또는 그 이상의 엔트리가 동일 빈도를 가질때 타이브레이커로서 기능할 것이다. 가령, 도 9에서, 입력되는 대부분의 사람이 청색의 눈을 갖는다면, 항상 "청색"이 선택된다. 디폴트는 또한 빈도 또는 최신도 중 하나에만 의존하지 않고 빈도 및 최신도를 조합할 수 있다. 이러한 것은, 빈도에 대한 "F"와 최신도에 대한 "R"를 갖는 도 10에서 "F+R" 바 또는 밸런스에 의해 도시된다. 빈도와 최신도 간의 스위치 대신에 예측성 디폴트는 연속 입력단자(continuum)를 제공한다.
가령, 컴퓨터 시스템에 각 소포의 목적지를 기록하는 노쓰 캐롤라이나 소포 배달 회사의 작업자를 가정한다. 만약 회사 소포의 30%가 샬러트(Charlotte)로 가고, 20%가 채플 힐(Chapel Hill)로 가며, 20% 미만이 임의의 다른 도시로 간다고 가정한다. 첫번째 고려사항은 작업자의 컴퓨터 시스템상의 도시 엔트리 위제트에 대한 예측성 디폴트가 항상 샬러트인 것으로 간주될 수 있다. 다시 말해서, 상기 예측성 디폴트는 빈도에만 근거를 두어야 한다. 그러나, 클라이언트는 한 장소에서 다른 장소로 소포들을 그룹으로 운반하는 경향이 있기 때문에 특정의 도시로 가는 소포들이 종종 서로 인접하게 위치된다고 가정하자. 따라서, 만일 한 소포가 채플 힐 행이라면, 또한 인접한 다음의 소포가 채플 힐 행일 가능성이 높다. 또한, 만일 한줄로 나열된 두개의 소포가 채플 힐 행이라면, 다음의 소포는 샬러트 행이 아니라 채플 힐 행일 가능성이 더 높다. 따라서, 예측성 디폴트는 빈도 및 최신도에 근거를 두는 편이 매우 적절할 것이다. 아마도 두개의 채플 힐 소포가 입력된 후, 디폴트 스위치는 채플 힐 행으로 전환될 것이다. 그러나, 작업자가 샬러트 행의 소포로 채플 힐 시퀀스를 차단하면, 샬러트에 대한 한번의 최신도 엔트리에 샬러트에 대한 엔트리의 빈도를 부가한 것에 의해 상기 디폴트는 샬러트로 다시 전환된다.
예측성 디폴트의 특별한 경우는 스크롤 바와 같은 연속 입력단자로부터 선택하는 위제트이다. 이러한 위제트에 대해, 예측성 디폴트는 중간값 대신 이전 엔트리들의 평균을 제시할 수 있다. 목표는 가장 가능성있는 최종값에 위제트를 근접하도록 하는 데 있다.
예측성 기입 기능은 사용자가 입력하고 있는 것을 완성하기 위해 가장 가능성있는 스트링을 제시하는 데 있으며, 텍스트 엔트리 위제트에 가장 많이 적용된다. 상기 예측성 디폴트와 같이, 예측성 기입 기능은 빈도, 최신도, 이들 두개의 조합을 이용한다. 예측성 디폴트 및 예측성 기입 기능은 동일한 예측성 리스트를 이용한다. 그러나, 이러한 두개의 기능은 상이한 밸런스의 빈도 및 최신도를 이용할 수 있다. 이러한 것은 "F+R"밸런스 빔상에서의 상이한 지지점(fulcrum) 또는 포인터 위치에 의해 도 10에서 도시된다.
전술한 소포 배달 회사의 일예를 수정하여, 35%의 소포가 랠리(Raleigh)로 가고, 30%가 샬러트로 가며, 20%가 채플 힐로 간다고 가정하자. 예측성 디폴트가 완전히 빈도에만 근거를 두고 있으며 "Raleigh"로 설정된다면, 최초 문자 C를 기입하는 사용자는 상기 필드의 입력에 대해 상이한 제시를 받게 될 것이다. 예측성 기입이 완전히 빈도에만 의존한다면, "Charlotte"을 제시할 것이다. 만약 예측성 기입 기능이 완전히 최신도에 의존한다면, 샬러트 또는 채플 힐 중 가장 최근에 사용된 적이 있는 쪽을 제시할 것이다. 만약 예측성 기입이 빈도 및 최신도의 조합을 이용한다면, 예측성 기입은 채플 힐이 가장 최근에 사용된 적이 없는 경우 샬러트를 제시하는데, 이 경우, 채플 힐이 우선 선택된다.
본 발명을 이용하는 애플리케이션 개발자는 빈도와 최신도 사이의 최적의 밸런스를 결정해야 한다. 각 서식상의 각 필드는 예측성 디폴트와 예측성 기입 모두에 대해 유일한 빈도/최신도 밸런스를 가질 수 있다. 최적의 밸런스를 결정하기 위해서는 단말 사용자 환경과 실험치에 대해 정통해 있어야 한다. 일반적으로, 사용자는 예측성 디폴트가 최신도 또는 빈도중 어느 하나에만 의존하기 때문에 너무 자주 변화하지 않는 예측성 디폴트를 더 선호할 것이라는 것을 예상할 수 있다. 반면, 예측성 기입은 빈도/최신도 밸런스를 이용할 가능성이 보다 높다.
예측성 기입을 더욱 유용하게 만들 수 있는 몇몇의 구현예가 있다. 만약 필드에 대한 예측성 디폴트가 거절되면, 예측성 디폴트값은 예측성 기입에 의해 다시 제시되어서는 안된다. 가령, 만약 상기 예측성 디폴트가 "Charlotte"이고 사용자가 C를 타이핑하면, 예측성 기입은 비록 샬러트가 더 바람직하더라도 "Charlotte" 대신에 "Chapel Hill"을 제시할 것이다. 그 이유는 사용자가 이미 샬러트를 거절했기 때문이다.
사용자는 예측성 기입(또는 예측성 디폴트)를 받아들여서 문자들 중 일부만을 사용할 수 있다. 가령, 사용자가 "Chapel Hill"을 기입하고자 한다고 가정할 때, 문자 C를 기입하는 순간 예측성 기입은 "Charlotte"을 제시한다. 사용자는 "Chapel Hill"이 제시될 때까지 H, A, P를 입력할 필요는 없다. 대신에, 사용자는 "Charlotte"의 R로 이동하여, 여기에 P를 입력할 수 있다.
예측성 기입은 그 리스트에 몇몇의 상위 항목(top items)을 디스플레이할 수 있다. 사용자가 문자를 타이핑할 때, 예측성 기입은 가장 가능성있는 값으로 필드를 완성할 수 있다. 그러나, 예측성 필드는 또한 스크린상에 리스트의 가장 가능성있는 상위 5개의 값을 디스플레이한다. 이 리스트는 사용자가 입력한 각각의 문자로 갱신된다. 사용자는 상기 리스트로부터 임의의 값을 선택할 수 있다. 예측성 기입은 사용자가 임의의 것을 타이핑하기 전일지라도 상기 리스트를 디스플레이할 수 있지만, 이 필드는 여전히 예측성 디폴트를 포함하고 있다. 이러한 동작의 일예는 도 11에 도시되는데, 여기서 예측성 기입 리스트는 키보드 디스플레이의 좌측에 디스플레이된다. 예측성 기입은 완전한 필드 뿐만 아니라 서브필드상에서 동작할 수 있다. 도 9의 "성명"필드에서, 이름(first name) 및 성(last name)은 완전히 분리된 예측성 리스트를 가질 수 있다. 예측성 기입은 필드의 어느 부분이 입력될 것으로 여겨지는지에 따라 통상적인 이름(가령, "John") 또는 통상적인 성(가령, "Smith")을 제시한다. 이러한 실시예에서, 공백(a space)이 이름과 성의 두 서브필드들을 분리한다. "코멘트"필드에 대해, 마침표(a period)가 서브필드를 분리할 수 있고 예측성 기입은 문장을 기억해 낼 것이다.
예측성 리스트는 필드(또는 서브필드) 또는 프로그램 개발자에 의해 설정된 유사한 사전결정된 리스트에 대해 시간을 통해 누적된 후보자 모임이다. 필드의 예측성 디폴트 및 예측성 기입은 동일한 예측성 리스트를 사용하지만, 보통 상이한 빈도/최신도 밸런스를 갖는 예측성 리스트를 사용한다. 바람직하게, 예측성 리스트는 동적이며, 사용자가 필드를 포함하는 서식을 완성할 때마다 변화한다.
예측성 리스트는 몇가지 방법으로 정렬(sort)된 항목을 갖는 리스트들을 동시에 유지한다. 이러한 것들은 빈도(이 항목이 얼마나 자주 사용되는가?), 최신도(이 항목이 각각 사용된 후 얼마나 지났는가?), 사전설정된 가중화도(이전에 항목들이 사용된 적이 없다면, 즉 빈도 또는 최신도 이력이 없다면 어느 것이 가장 적합한가)를 포함한다. 이러한 정렬은 알파벳적인 특성(alphabetically)을 포함할 수 있다. 알파벳 필드 혹은 텍스트 필드에 대해, 예측 리스트는 사용자가 입력하는 문자로 시작하는 항목으로 탐색(search)을 제한해야 한다.
예측성 리스트가 커지면, 방금 사용되었거나 사용된 이후 리스트 정렬(sort)하는 데에 성능상의 문제를 야기한다. 배경에서 정렬을 수행하기 위해서는 멀티태스킹 시스템을 이용할 필요가 있다. 만약 정렬(sorting) 알고리즘이 종료되기 전에 인터럽트되면, 예측성 리스트는 완성한(알파벳 만을 강제로 이용한) 정렬만을 사용하여 기능을 수행할 수 있어야 한다. 이러한 것은 사용자가 정렬 알고리즘이 종료할 때까지 대기하게 하는 편 보다는 보다 가능성이 적은 제시를 제공하는 편이 더 바람직하기 때문이다.
본 발명을 구현하는 서식 준비 프로그램은 정렬 알고리즘을 디스에이블시켜 새로운 엔트리의 부가를 중지시키는 "고정(freeze)" 기능을 제공하여, 상기 예측성 리스트를 고정시킨다. 시스템이 잠시동안 사용된 후, (정적인 환경을 가정하여) 빈도가 설정되고, 사용자는 예측성 리스트의 일부 또는 전부를 고정시킬 것을 선택할 수 있다. 사용자는 이러한 것을 다음의 두가지 이유로 인해 원할 수 있다. 첫째, 상기 예측성 리스트를 고정시키면, 시스템 성능이 개선된다. 둘째, 예측성 리스트를 고정시키면, 예측성 디폴트 및 예측성 기입 기능이 보다 일관성있게 되고 예측가능해진다. 가령, 동일 항목이 항상 예측성 기입 리스트의 동일 위치에 나타날 것이다. 고정되고 매우 적은 항목을 가진 예측성 리스트에 대해, 본 발명을 구현하는 서식 프로그램은 리스트의 "키패드" 뷰(view)를 갖는다. 리스트내의 항목들을 제공하는 대신, 서식은 자체적인 버튼내에 예측성 리스트의 각 항목을 디스플레이한다. 항목들이 더욱 대형이고 그들 사이의 공백이 더 넓어, 상기 예측성 리스트를 보다 용이하게 사용할 수 있다.
몇몇의 필드는 공통의 예측성 리스트를 공유할 수 있다. 가령, 서식상의 성명에 대한 필드가 하나 이상 존재한다면, 이 필드들은 성명들에 대해 동일한 예측성 리스트를 공유할 것이다. 또한, 완전히 상이한 서식상의 필드들이 예측성 리스트를 공유할 수도 있다.
예측성 리스트는 부가적인 서식 저장에 대한 필요성을 제거할 수 있다. 만약 서식이 완전히 예측성 위제트들로 이루어지면, 사용자가 입력한 각 서식의 내용들을 예측성 리스트들을 조합함으로써 기억해 낼 수 있다. 가령, 만약 도 9의 모든 위제트들이 예측성 위제트들이라면, n 번 이전의 엔트리로부터의 서식 내용은 각 위제트의 예측성 리스트의 n 번째 항목을 기억해 냄으로써 복구된다. 이러한 작업 체계에 대해, 사용자 인터페이스가 예측성 리스트를 이용하지 않을 경우에도 모든 위제트들은 예측성 리스트를 갖는 예측성 위제트들이어야 한다. 또한, 예측성 리스트는, 내부에 항목이 가득 차게 된 경우, 항목들이 다른 위치에 저장되지 않거나 더 이상 필요없게 되지 않는 때에는 항목들위에 중복기록(overwriting)해서는 안된다.
본 발명에 따라 구현되는 제어 프로그램이 모듈로 되어 있어서, 개발자는 임의의 구성요소에 액세스할 수 있다. 개발자는 예측성 위제트들을 전적으로 사용하지 않고도 예측성 디폴트 및 예측성 기입 객체(object)들을 사용할 수 있다. 이러한 것은 본 발명자가 예상하지 못한 다른 타입의 위제트들을 개발하는데 유용하다. 또한, 개발자는 데이타를 직접 기억해 내기 위해 예측성 리스트 객체들을 사용할 수 있다. 또한, 예측성 리스트들은 일반적인 서식 저장장치와 데이타를 공유할 수 있다.
도 12는 최신도에 의해 정렬된 예측성 리스트의 일예를 도시하고 있다. 도면에서, n은 최신도를 나타내는 것으로, 가장 최근의 엔트리에 대해서는 n=0이고, 최초 엔트리에 대해서는 n=9이다. 괄호의 항목들은 보다 최근에 입력된 항목들의 "새도우(shadows)"이며, 별도의 저장장치를 필요로 하지 않는다. 가령, 항목 0은 텍스트 "Champion"을 저장하지만, 항목 2는 항목 0에 대한 포인터만을 저장한다.
각 항목의 확률적인 가중치는 소문자 w로 주어진다. (새도우의 W를 조합하는) 주어진 스트링의 가중치는 대문자 W로 주어진다. w는 다음의 수학식 1에 의해 계산된다.
Figure pat00001
여기서, b는 빈도/최신도 밸런스이다. 만약 b가 작다면, 밸런스는 최신도 쪽으로 기운다. 만약 b가 크다면, 상기 밸런스는 빈도 쪽으로 기운다. 새도우되지 않은 각 항목에 대해, 가중치는 다음의 수학식 2에 의해 결정된다.
Figure pat00002
따라서, 새도우되지 않은 전체 가중치는 각각의 가중치에 각각의 새도우를 합산한 값이다. 표는 1, 4, 10의 밸런스에 대한 가중치를 나타낸다. b=1은 최신도에 대한 가장 강한 선호도를 나타낸다. 사용자가 최근 "Champion"을 두번 입력했으므로 "Champion"이 가장 높은 확률을 갖는다(W=1.33). b가 0에 접근함에 따라, 가장 최근의 항목이 항상 w=1이고 후속하는 W들이 빠르게 감소하기 때문에 완전히 최신도의 주도하에 있게 된다는 것에 유의해야 한다. b=10 은 빈도가 가장 우세한 것을 나타낸다. 사용자가 "Brittenham"을 어느것보다도 자주 입력함에 따라, "Brittenham"이 가장 높은 확률을 가지게 된다(W=2.96). b가 무한대로 접근함에 따라, 각 항목이 w=1을 가지기 때문에 완전히 빈도의 주도하에 있게 된다는 것에 유의해야 한다. 최신도는 단지 타이브레이커이다. b=4는 "Bertram"을 가장 확률이 높은 것으로 제시하는 빈도와 최신도 사이의 밸런스를 나타낸다. 사용자는 최근에 "Bertram"을 세번 입력했다. 사용자가 "Champion"을 더욱 최근에 입력했지만, 단지 두번 입력했을 뿐이며, 사용자는 "Brittenham"을 더욱 빈번히 입력했지만 오래전에 입력했다. 예측성 리스트는 이러한 최신도 및 빈도의 조합에 의해 "Brittenham"을 제시한다.
명백한 바이지만, b의 값이 다양하기 때문에 발생하는 효과는 예측성 리스트의 사이즈에 따라 달라진다. 따라서, 개발자는 이러한 알고리즘으로 밸런스를 설정할 때, 예측성 리스트의 사이즈를 고려해야만 한다.
"이름"으로 지칭되는 텍스트 엔트리 필드는 b=1의 예측성 디폴트와 b=10의 예측성 기입을 갖는다고 가정한다. 전술한 표에서의 예측성 리스트 상태가 주어지면, b=1인 경우에 "Champion"이 가장 높은 가중치를 가지기 때문에 필드에 대한 디폴트는 "Champion"이다. 만약 사용자가 문자 B를 타이핑하면, 예측성 기입은 "Bertram" 대신에 "Brittenham"을 제시하는데 그 이유는 전자가 b=10 인 경우 더 높은 가중치를 가지기 때문이다.
이러한 알고리즘은 본 발명의 단지 한 구현예이다. 특히, w를 계산하기 위한 더욱 정교한 수학식이 적절할 수 있다. 가령, 밸런스는 예측성 리스트의 사이즈에 무관하게 일관성있게 동작하는 절대적인 값이어야 한다. 이 알고리즘은 사용자에 의한 각 동작 후 정렬 동작을 감소시킴으로써 저장량을 감소시키고 성능을 높이도록 더욱 최적화될 수 있다.
본 발명에 따르면, 예측성 리스트내에 제공되는 이용가능한 데이타는 전술한 밸런스 방식과는 다른 방식으로 최신도 및 빈도 특성에 참여할 수 있다. 특히, 임의의 이용가능한 갯수, 가령, 10개 엔트리의 예측성 리스트를 고려하면, 순차적인 리스트의 초기의 임의의 위치들의 갯수는 단지 최신도 결정만을 위해 할당될 수 있다. 리스트의 나머지는 단지 빈도에 기초하여 할당된 시퀀스 위치의 엔트리를 가질 수 있다. 따라서, 예측성 기입 또는 예측성 디폴트에 대한 리스트를 디스플레이할 때, 디스플레이되는 최초 엔트리는 사용자에 의해 선택된 가장 최근의 엔트리에 근거를 두고 있을 것이지만, 디스플레이되는 리스트의 보다 아래부분의 엔트리는 엔트리들이 과거의 애플리케이션 사용동안 선택된 빈도에 기초하여 디스플레이될 것이다. 최신도와 빈도 사이의 "경계선(parting line)"은 사용자에 의해 결정된다. 따라서, 10개의 엔트리 리스트 일예에서, 사용자는 최신도에 근거하여 디스플레이되는 최초 3개의 위치와, 빈도에 근거하여 4내지 10개의 위치를 가지도록 선택할 수 있다. 따라서, 리스트의 각각을 재정렬(resorting)하면, 가장 최근에 사용된 엔트리가 바로 이전에 선택된 엔트리위의 제 1 위치에 디스플레이될 수 있을 것이다.
최신 및 빈번한 엔트리를 처리하는 이러한 방법은 여러가지의 장점을 갖는다. 이러한 것은 일반적으로 적용되어, 애플리케이션 개발자는 각 텍스트 위제트에 대한 최상의 빈도 및 최신도 특성을 더 이상 결정할 필요는 없다. 애플리케이션에서의 모든 텍스트 위제트들은 동일한 알고리즘을 사용할 수 있어서, 사용자는 어떠한 동작이 기대될 것인지를 알 수 있다. 위제트 간의 알고리즘의 일관성에 따라, 사용자는 한 엔트리에서 다음 엔트리까지 어떠한 것이 발생할 것인지를 용이하게 이해할 수 있다. 계산이 단순화됨에 따라, 시스템 성능에 대한 부정적 영향이 감소된다. 각 엔트리에 대한 최신 데이타의 저장이 방지되고 빈번한 데이타가 각 항목에 대해 지속적으로 저장됨에 따라, 시스템 메모리에 대한 요구사항은 감소되지만, 최신도는 최종 n개 항목들(앞에서 주어진 실시예에서 n=3)에 대한 짧은 포인터 리스트에 의해 처리된다.
지금까지 기술된 방법은 이동 클라이언트 컴퓨터 시스템의 경우에 유용한 서식 기입 위제트 뿐만 아니라 서식을 완성하는데 필요한 것을 제공할 수 있는 다른 타입의 시스템에도 적용가능하다. 본 발명이 이용할 수 있는 다른 시스템의 일예들은 1996년 7월 23일에 특허된 미국 특허 제 5,539,479호에 기술되고 있다.
본 발명의 바람직한 실시예는 도면 및 상세한 설명에서 특정의 전문기술 용어를 사용하여 기술되고 있지만 그러한 용어는 일반적인 서술적인 의미로만 사용될 뿐이지 제한 목적의 의미로 사용되는 것은 아니다.
본 발명에 따르면, 서식 기입 적용시에 이동 클라이언트 시스템에 사용되는 예측성 위제트들에 의해, 시스템 사용자에 의한 서식 기입 애플리케이션의 사용에 지능적으로 응답하여 사용자의 생산성을 향상시킬 수 있다.

Claims (36)

  1. 이동 클라이언트 컴퓨터에 있어서,
    ① 손에 쥘 수 있는 사이즈를 가지며 사용자의 손에 의해 조작되는 하우징(a housing)과,
    ② 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 프로세서와,
    ③ 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 프로세서에 접속되는 메모리와,
    ④ 상기 하우징내에 장착되고 상기 프로세서 및 메모리에 접속되어, 상기 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    ⑤ 상기 프로세서에 접속되어 사용자에 의한 디지탈 데이타를 입력하기 위한 입력 디지타이저―상기 디지타이저는 상기 하우징내에 장착되며 상기 디스플레이를 덮어씌움―와,
    ⑥ 상기 메모리에 저장되고 상기 프로세서에 의해 액세스가능하며, 상기 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 정의된 데이타 필드에 대해 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는
    이동 클라이언트 컴퓨터.
  2. 제 1 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 데이타 필드에 예측성 디폴트를 제공하도록 예측성 위제트를 실행하는 이동 클라이언트 컴퓨터.
  3. 제 2 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 예측성 디폴트 엔트리를 선택하는 이동 클라이언트 컴퓨터.
  4. 제 1 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 데이타 필드에 예측성 기입 엔트리를 제공하도록 예측성 위제트를 실행하는 이동 클라이언트 컴퓨터.
  5. 제 4 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 예측성 기입 엔트리를 선택하는 이동 클라이언트 컴퓨터.
  6. 제 1 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 이동 클라이언트 컴퓨터.
  7. 제 6 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용의 최신도에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 이동 클라이언트 컴퓨터.
  8. 제 6 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용 빈도에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 이동 클라이언트 컴퓨터.
  9. 제 6 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용의 최신도 및 빈도에 대해 사용자에 의해 선택된 가중치 부여된 결정에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 이동 클라이언트 컴퓨터.
  10. 제 6 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 예측성 리스트를 가능성있는 데이타 엔트리의 시퀀스로서 저장하고, 리스트된 데이타 엔트리의 사용의 최신도에 기초하여 상기 시퀀스의 선행 부분을 위치지정하고 리스트된 데이타 엔트리의 사용 빈도에 기초하여 상기 시퀀스의 후행 부분을 위치지정함으로써 상기 시퀀스를 순서화하는 이동 클라이언트 컴퓨터.
  11. 제 6 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 필드내로 입력될 사용자 데이타 엔트리를 획득하고 예측성 리스트에 획득된 엔트리를 저장하는 이동 클라이언트 컴퓨터.
  12. 이동 클라이언트 컴퓨터에 있어서,
    ① 손에 쥘 수 있는 사이즈를 가지며 사용자의 손에 의해 조작되는 하우징과,
    ② 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 프로세서와,
    ③ 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 프로세서에 접속되는 메모리와,
    ④ 상기 하우징내에 장착되고 상기 프로세서 및 메모리에 접속되어, 상기 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    ⑤ 상기 프로세서에 접속되어 사용자에 의한 디지탈 데이타를 입력하기 위한 입력 디지타이저―상기 디지타이저는 상기 하우징내에 장착되며 상기 디스플레이를 덮어씌움―와,
    ⑥ 상기 메모리에 저장되고 상기 프로세서에 의해액세스가능하며, 상기 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 정의된 필드내로 입력되는 데이타의 사용자 엔트리를 획득하고,
    c) 상기 정의된 데이타 필드에 대한 데이타 엔트리의 예측성 리스트내에 획득된 사용자 엔트리를 저장하고,
    d) 상기 예측성 리스트로부터 선택된 예측성 리스트 및 예측성 기입 중의 하나를 상기 정의된 데이타 필드에 대한 데이타 엔트리로서 제공하도록 예측성 위제트를 실행하는
    이동 클라이언트 컴퓨터.
  13. 컴퓨터에 있어서,
    ① 하우징과,
    ② 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 프로세서와,
    ③ 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 프로세서에 접속되는 메모리와,
    ④ 상기 프로세서 및 메모리에 접속되어, 상기 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    ⑤ 상기 메모리에 저장되고 상기 프로세서에 의해 액세스가능하며, 상기 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대한 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는
    컴퓨터.
  14. 제 13 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 데이타 필드에 예측성 디폴트 엔트리를 제공하도록 예측성 위제트를 실행하는 것에 협력하는 컴퓨터.
  15. 제 14 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 예측성 디폴트 엔트리를 선택하는 컴퓨터.
  16. 제 13 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 데이타 필드에 예측성 기입 엔트리를 제공하도록 예측성 위제트를 실행하는 컴퓨터.
  17. 제 16 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 예측성 기입 엔트리를 선택하는 컴퓨터.
  18. 상기 제 13 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행중될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 컴퓨터.
  19. 제 18 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용의 최신도에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 컴퓨터.
  20. 제 18 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용 빈도에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 컴퓨터.
  21. 제 18 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용의 최신도 및 빈도에 대해 사용자에 의해 선택된 가중치 부여된 결정에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 컴퓨터.
  22. 제 18 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 예측성 리스트를 가능성있는 데이타 엔트리의 시퀀스로서 저장하고, 리스트된 데이타 엔트리의 사용의 최신도에 기초하여 상기 시퀀스의 선행 부분을 위치지정하고 리스트된 데이타 엔트리의 사용 빈도에 기초하여 상기 시퀀스의 후행 부분을 위치지정함으로써 상기 시퀀스를 순서화하는 컴퓨터.
  23. 제 18 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 필드내로 입력될 사용자 데이타 엔트리를 획득하고 예측성 리스트에 획득된 엔트리를 저장하는 컴퓨터.
  24. 컴퓨터에 있어서,
    ① 하우징과,
    ② 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 프로세서와,
    ③ 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 프로세서에 접속되는 메모리와,
    ④ 상기 프로세서 및 메모리에 접속되어, 상기 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    ⑤ 상기 메모리에 저장되고 상기 프로세서에 의해 액세스가능하며, 상기 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 필드내로 입력될 데이타의 사용자 엔트리를 획득하고,
    c) 상기 정의된 데이타 필드에 대한 데이타 엔트리의 예측성 리스트내에 획득된 사용자 엔트리를 저장하고,
    d) 상기 예측성 리스트로부터 선택된 예측성 리스트 및 예측성 기입 중의 하나를 상기 정의된 데이타 필드에 대한 데이타 엔트리로서 제공하도록 예측성 위제트를 실행하는
    컴퓨터.
  25. 디스플레이 발생 시스템에 있어서,
    ① 하우징과,
    ② 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 프로세서와,
    ③ 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 프로세서에 접속되는 메모리―상기 프로세서 및 메모리는 협력하여 가시적 영상의 디스플레이를 구동하는 디지탈 데이타를 제공함―와,
    ④ 상기 메모리에 저장되고 상기 프로세서에 의해 액세스가능하며, 상기 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대한 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는
    디스플레이 발생 시스템.
  26. 제 25 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 데이타 필드에 예측성 디폴트 엔트리를 제공하도록 예측성 위제트를 실행하는 디스플레이 발생 시스템.
  27. 제 26 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 예측성 디폴트 엔트리를 선택하는 디스플레이 발생 시스템.
  28. 제 25 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 데이타 필드에 예측성 기입 엔트리를 제공하도록 예측성 위제트를 실행하는 디스플레이 발생 시스템.
  29. 제 28 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 예측성 기입 엔트리를 선택하는 디스플레이 발생 시스템.
  30. 제 25 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 예측성 리스트를 저장하고, 사전결정된 알고리즘에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 디스플레이 발생 시스템.
  31. 제 30 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용의 최신도에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 디스플레이 발생 시스템.
  32. 제 30 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용 빈도에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 디스플레이 발생 시스템.
  33. 제 30 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 리스트된 데이타 엔트리의 사용의 최신도 및 빈도에 대해 사용자에 의해 선택된 가중치 부여된 결정에 기초하여 상기 예측성 리스트로부터 데이타 엔트리를 선택하는 디스플레이 발생 시스템.
  34. 제 30 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 예측성 리스트를 가능성있는 데이타 엔트리의 시퀀스로서 저장하고, 리스트된 데이타 엔트리의 사용의 최신도에 기초하여 상기 시퀀스의 선행 부분을 위치지정하고 리스트된 데이타 엔트리의 사용 빈도에 기초하여 상기 시퀀스의 후행 부분을 위치지정함으로써 상기 시퀀스를 순서화하는 디스플레이 발생 시스템.
  35. 제 30 항에 있어서,
    상기 제어 프로그램과 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 정의된 필드내로 입력될 사용자 데이타 엔트리를 획득하고 예측성 리스트에 획득된 엔트리를 저장하는 디스플레이 발생 시스템.
  36. 디스플레이 발생 시스템에 있어서,
    ① 하우징과,
    ② 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 프로세서와,
    ③ 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 프로세서에 접속되는 메모리―상기 프로세서 및 메모리는 협력하여 가시적 영상의 디스플레이를 구동하는 디지탈 데이타를 제공함―와,
    ④ 상기 메모리에 저장되고 상기 프로세서에 의해 액세스가능하며, 상기 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 프로세서는 협력하여, 상기 제어 프로그램이 상기 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 필드내로 입력될 데이타의 사용자 엔트리를 획득하고,
    c) 상기 정의된 데이타 필드에 대한 데이타 엔트리의 예측성 리스트내에 획득된 사용자 엔트리를 저장하고,
    d) 상기 예측성 리스트로부터 선택된 예측성 리스트 및 예측성 기입 중의 하나를 상기 정의된 데이타 필드에 대한 데이타 엔트리로서 제공하도록 예측성 위제트를 실행하는
    디스플레이 발생 시스템.
KR1019970029749A 1996-08-22 1997-06-30 이동 클라이언트 컴퓨터 KR100255627B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/703,171 US5864340A (en) 1996-08-22 1996-08-22 Mobile client computer programmed to predict input
US8/703,171 1996-08-22

Publications (2)

Publication Number Publication Date
KR19980018169A KR19980018169A (ko) 1998-06-05
KR100255627B1 true KR100255627B1 (ko) 2000-05-01

Family

ID=24824325

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970029749A KR100255627B1 (ko) 1996-08-22 1997-06-30 이동 클라이언트 컴퓨터

Country Status (5)

Country Link
US (2) US5864340A (ko)
JP (1) JP3393795B2 (ko)
KR (1) KR100255627B1 (ko)
CN (1) CN1114159C (ko)
TW (1) TW310398B (ko)

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6804726B1 (en) 1996-05-22 2004-10-12 Geovector Corporation Method and apparatus for controlling electrical devices in response to sensed conditions
US6141011A (en) 1997-08-04 2000-10-31 Starfish Software, Inc. User interface methodology supporting light data entry for microprocessor device having limited user input
US6232970B1 (en) * 1997-08-04 2001-05-15 Starfish Software, Inc. User interface methodology supporting light data entry for microprocessor device having limited user input
US6587122B1 (en) * 1998-01-30 2003-07-01 Rockwell Automation Technologies, Inc. Instruction syntax help information
US6098064A (en) * 1998-05-22 2000-08-01 Xerox Corporation Prefetching and caching documents according to probability ranked need S list
US8938688B2 (en) * 1998-12-04 2015-01-20 Nuance Communications, Inc. Contextual prediction of user words and user actions
EP1171813B1 (en) * 1999-03-18 2003-06-04 602531 British Columbia Ltd. Data entry for personal computing devices
US7293231B1 (en) * 1999-03-18 2007-11-06 British Columbia Ltd. Data entry for personal computing devices
US7216292B1 (en) * 1999-09-01 2007-05-08 Microsoft Corporation System and method for populating forms with previously used data values
GB2354609B (en) 1999-09-25 2003-07-16 Ibm Method and system for predicting transactions
US6646572B1 (en) * 2000-02-18 2003-11-11 Mitsubish Electric Research Laboratories, Inc. Method for designing optimal single pointer predictive keyboards and apparatus therefore
US7010503B1 (en) 2000-03-10 2006-03-07 Ams Services, Inc. Traffic reduction in networked data collection
WO2001069433A1 (en) * 2000-03-10 2001-09-20 Ams Services, Inc. Traffic reduction in networked data collection
US6925602B1 (en) * 2000-03-20 2005-08-02 Intel Corporation Facilitating access to digital video
US6829607B1 (en) * 2000-04-24 2004-12-07 Microsoft Corporation System and method for facilitating user input by automatically providing dynamically generated completion information
US7406657B1 (en) 2000-09-22 2008-07-29 International Business Machines Corporation Audible presentation and verbal interaction of HTML-like form constructs
CA2323856A1 (en) * 2000-10-18 2002-04-18 602531 British Columbia Ltd. Method, system and media for entering data in a personal computing device
US6895559B2 (en) * 2000-12-12 2005-05-17 Matsushita Mobile Communications Development Corporation Of U.S.A. Auto-completion algorithm for dialing telephone numbers
EP1256875A1 (en) * 2001-05-10 2002-11-13 Nokia Corporation Method and device for context dependent user input prediction
TWI235942B (en) * 2001-10-29 2005-07-11 Oqo Inc Keyboard with variable-sized key
US7185271B2 (en) * 2002-08-20 2007-02-27 Hewlett-Packard Development Company, L.P. Methods and systems for implementing auto-complete in a web page
WO2004021141A2 (en) * 2002-08-30 2004-03-11 Racom Products Modular analog wireless data telemetry system adapted for use with web based location information distribution method and method for developing and disseminating information for use therewith
AU2003288909A1 (en) * 2002-09-20 2004-04-08 Racom Products, Inc. Method for wireless data system distribution and disseminating information for use with web base location information
JP2004171229A (ja) * 2002-11-19 2004-06-17 Fujitsu Ltd 情報処理装置、中継装置、サーバ、通信方法、およびプログラム
US7716584B2 (en) * 2003-06-30 2010-05-11 Panasonic Corporation Recording medium, reproduction device, recording method, program, and reproduction method
EP1665036A1 (de) * 2003-09-11 2006-06-07 BenQ Corporation Verfahren zum zugriff auf ein diensterbringungsprogramm
US7634720B2 (en) * 2003-10-24 2009-12-15 Microsoft Corporation System and method for providing context to an input method
US7747690B2 (en) * 2003-12-29 2010-06-29 International Business Machines Corporation Method for extracting and managing message addresses
US8095364B2 (en) 2004-06-02 2012-01-10 Tegic Communications, Inc. Multimodal disambiguation of speech recognition
US7107147B2 (en) * 2004-09-14 2006-09-12 Alpine Electronics, Inc Data correction method and apparatus using key filtering function for entering data in navigation system
TWI336876B (en) * 2004-11-10 2011-02-01 Himax Tech Inc Data driving system and display having adjustable common voltage
US8942985B2 (en) 2004-11-16 2015-01-27 Microsoft Corporation Centralized method and system for clarifying voice commands
US8296678B2 (en) 2005-01-04 2012-10-23 International Business Machines Corporation System and method for read-ahead enhancements
US8552984B2 (en) * 2005-01-13 2013-10-08 602531 British Columbia Ltd. Method, system, apparatus and computer-readable media for directing input associated with keyboard-type device
US7630980B2 (en) * 2005-01-21 2009-12-08 Prashant Parikh Automatic dynamic contextual data entry completion system
US7703037B2 (en) * 2005-04-20 2010-04-20 Microsoft Corporation Searchable task-based interface to control panel functionality
US9785329B2 (en) * 2005-05-23 2017-10-10 Nokia Technologies Oy Pocket computer and associated methods
US7886233B2 (en) * 2005-05-23 2011-02-08 Nokia Corporation Electronic text input involving word completion functionality for predicting word candidates for partial word inputs
US20070024646A1 (en) * 2005-05-23 2007-02-01 Kalle Saarinen Portable electronic apparatus and associated method
US8185841B2 (en) * 2005-05-23 2012-05-22 Nokia Corporation Electronic text input involving a virtual keyboard and word completion functionality on a touch-sensitive display screen
US7925975B2 (en) * 2006-03-10 2011-04-12 Microsoft Corporation Searching for commands to execute in applications
EP2013709A4 (en) * 2006-04-14 2012-07-18 Vertafore Inc METHOD, SYSTEM AND COMPUTER-READABLE MEDIUM FOR MAINTAINING AND / OR PURGING FILES OF A DOCUMENT MANAGEMENT SYSTEM
US7516418B2 (en) * 2006-06-01 2009-04-07 Microsoft Corporation Automatic tracking of user data and reputation checking
JP4285704B2 (ja) * 2006-08-16 2009-06-24 ソニー・エリクソン・モバイルコミュニケーションズ株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
US8032834B2 (en) * 2006-11-07 2011-10-04 International Business Machines Corporation Context-based user assistance
US20080189179A1 (en) * 2007-02-04 2008-08-07 Joseph Marouani System, Application and Method for Facilitating Online Advertising
CA2581824A1 (en) * 2007-03-14 2008-09-14 602531 British Columbia Ltd. System, apparatus and method for data entry using multi-function keys
US8412145B2 (en) * 2007-05-31 2013-04-02 Telenav, Inc. Mobile battery management system
US9043727B2 (en) * 2007-07-26 2015-05-26 Microsoft Technology Licensing, Llc Visualization techniques for imprecise statement completion
US8010465B2 (en) 2008-02-26 2011-08-30 Microsoft Corporation Predicting candidates using input scopes
US8407599B1 (en) * 2009-01-30 2013-03-26 Sprint Communications Company L.P. Address book extension
US20100293457A1 (en) * 2009-05-15 2010-11-18 Gemstar Development Corporation Systems and methods for alphanumeric navigation and input
US8812533B1 (en) * 2009-05-21 2014-08-19 Salesforce.Com, Inc. System, method and computer program product for automatically presenting selectable options in a lookup field
US9063932B2 (en) * 2009-12-18 2015-06-23 Vertafore, Inc. Apparatus, method and article to manage electronic or digital documents in a networked environment
US8700682B2 (en) * 2009-12-24 2014-04-15 Vertafore, Inc. Systems, methods and articles for template based generation of markup documents to access back office systems
US9384198B2 (en) 2010-12-10 2016-07-05 Vertafore, Inc. Agency management system and content management system integration
US8731973B2 (en) 2011-04-19 2014-05-20 Vertafore, Inc. Overlaying images in automated insurance policy form generation
JP5954975B2 (ja) * 2011-12-06 2016-07-20 キヤノン株式会社 情報処理装置、情報処理方法、コンピュータプログラム
US9292203B2 (en) 2012-05-10 2016-03-22 Apple Inc. Providing a vertical candidate bar with an on-screen keyboard
US8930181B2 (en) 2012-12-06 2015-01-06 Prashant Parikh Automatic dynamic contextual data entry completion
US10228819B2 (en) 2013-02-04 2019-03-12 602531 British Cilumbia Ltd. Method, system, and apparatus for executing an action related to user selection
US9507814B2 (en) 2013-12-10 2016-11-29 Vertafore, Inc. Bit level comparator systems and methods
US9367435B2 (en) 2013-12-12 2016-06-14 Vertafore, Inc. Integration testing method and system for web services
US9747556B2 (en) 2014-08-20 2017-08-29 Vertafore, Inc. Automated customized web portal template generation systems and methods
US20160328423A1 (en) * 2015-05-05 2016-11-10 Cisco Technology, Inc. System and method for data change detection and recency indication
US9600400B1 (en) 2015-10-29 2017-03-21 Vertafore, Inc. Performance testing of web application components using image differentiation
JP7053995B2 (ja) * 2018-04-16 2022-04-13 富士通株式会社 最適化装置及び最適化装置の制御方法
RU2713872C1 (ru) * 2019-05-14 2020-02-07 Федеральное государственное бюджетное образовательное учреждение высшего образования "Казанский государственный энергетический университет" (ФГБОУ ВО "КГЭУ") Цифровое прогнозирующее устройство
US11568307B2 (en) * 2019-05-20 2023-01-31 International Business Machines Corporation Data augmentation for text-based AI applications
CN110941426B (zh) * 2019-12-02 2023-09-19 苏州金蒲芦物联网技术有限公司 一种面向NB-IoT终端的图形化编程系统
US11727284B2 (en) 2019-12-12 2023-08-15 Business Objects Software Ltd Interpretation of machine learning results using feature analysis
US20210192376A1 (en) * 2019-12-23 2021-06-24 Sap Se Automated, progressive explanations of machine learning results
US11580455B2 (en) 2020-04-01 2023-02-14 Sap Se Facilitating machine learning configuration
US11783198B2 (en) * 2020-04-03 2023-10-10 Baidu Usa Llc Estimating the implicit likelihoods of generative adversarial networks
WO2023205103A1 (en) * 2022-04-18 2023-10-26 Celligence International Llc Method and computing apparatus for operating a form-based interface

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6316325A (ja) 1986-07-08 1988-01-23 Hitachi Ltd メニユ−表示方法
JPS6476267A (en) 1987-09-18 1989-03-22 Hitachi Ltd Document input method
JPH01211067A (ja) * 1988-02-19 1989-08-24 Hitachi Ltd 文書編集装置
JP2758617B2 (ja) 1988-11-11 1998-05-28 日本電気データ機器株式会社 文字列入力用キーボード
JPH02155033A (ja) * 1988-12-07 1990-06-14 Hitachi Ltd 帳票ソート制御方法およびデータ処理装置
CA2003687C (en) * 1989-03-13 1999-11-16 Richard Edward Shelton Forms manager
US5187787B1 (en) * 1989-07-27 1996-05-07 Teknekron Software Systems Inc Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
US5257369A (en) * 1990-10-22 1993-10-26 Skeen Marion D Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
CA2038244A1 (en) 1990-04-19 1991-10-20 Arthur D. Markowitz Hand held computer terminal
US5367619A (en) * 1990-04-27 1994-11-22 Eaton Corporation Electronic data entry system employing an expert system to facilitate generation of electronic data forms with complex interrelationships between fields and subforms
US5276793A (en) * 1990-05-14 1994-01-04 International Business Machines Corporation System and method for editing a structured document to preserve the intended appearance of document elements
US5060980A (en) * 1990-05-30 1991-10-29 Xerox Corporation Form utilizing encoded indications for form field processing
US5255363A (en) * 1990-06-19 1993-10-19 Mentor Graphics Corporation Graph-based programming system and associated method
US5265246A (en) * 1990-12-10 1993-11-23 International Business Machines Corporation Graphic definition of range in the selection of data from a database field
JPH04296919A (ja) 1991-03-26 1992-10-21 Brother Ind Ltd 複合型入力表示装置
US5901246A (en) * 1995-06-06 1999-05-04 Hoffberg; Steven M. Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
JP2850674B2 (ja) 1992-11-09 1999-01-27 レーム プロパティズ ビーブイ ペン操作可能な携帯型コミュニケータ
JP2513135B2 (ja) 1993-07-15 1996-07-03 日本電気株式会社 簡易入力装置
JP3434045B2 (ja) 1994-09-22 2003-08-04 アイシン・エィ・ダブリュ株式会社 階層的メニュ選択による指示入力装置
US5536010A (en) * 1994-09-22 1996-07-16 Lambourne; G. Thomas Electronic golf scorecard
JP4025821B2 (ja) * 1994-11-12 2007-12-26 合田 光▲廣▼ テキスト入力装置
US5805911A (en) * 1995-02-01 1998-09-08 Microsoft Corporation Word prediction system
US5666502A (en) * 1995-08-07 1997-09-09 Apple Computer, Inc. Graphical user interface using historical lists with field classes

Also Published As

Publication number Publication date
US7043700B1 (en) 2006-05-09
JP3393795B2 (ja) 2003-04-07
JPH1097365A (ja) 1998-04-14
CN1177146A (zh) 1998-03-25
CN1114159C (zh) 2003-07-09
US5864340A (en) 1999-01-26
TW310398B (en) 1997-07-11
KR19980018169A (ko) 1998-06-05

Similar Documents

Publication Publication Date Title
KR100255627B1 (ko) 이동 클라이언트 컴퓨터
KR100288493B1 (ko) 이동클라이언트컴퓨터컴퓨터및디스플레이발생시스템
KR100288492B1 (ko) 정보처리시스템
US5943692A (en) Mobile client computer system with flash memory management utilizing a virtual address map and variable length data
JP2880705B2 (ja) モバイル・クライアント・コンピュータ及び表示作成システム
US6073136A (en) Mobile computer with minimized function display and maximized content display
US5784060A (en) Mobile client computer programmed to display lists and hexagonal keyboard
US5666502A (en) Graphical user interface using historical lists with field classes
US5801941A (en) Mobile client computer programmed to establish soft keyboard targeting sensitivity
KR100259329B1 (ko) 사용자 입력 장치를 위한 이동 클라이언트 컴퓨터 인터페이스
EP0788630B1 (en) Handheld computer with automatic data synchronization with host computer
US6008810A (en) Mobile client computer programmed for system message display
JPH1091347A (ja) 六角キーボードを表示するようにプログラムされたモービル・クライアント・コンピュータ
JP2938421B2 (ja) 空テーブル要素を隠すようにプログラムされたモービル・クライアント・コンピュータ
US5880724A (en) Mobile client computer programmed for importation of data into title display

Legal Events

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

Payment date: 20130128

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20140128

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20150128

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20160203

Year of fee payment: 17