KR19980018172A - 인터액티브 어플리케이션 실행 방법, 클라이언트-서버 다이얼로그 시스템 및 터미널 장치 - Google Patents

인터액티브 어플리케이션 실행 방법, 클라이언트-서버 다이얼로그 시스템 및 터미널 장치 Download PDF

Info

Publication number
KR19980018172A
KR19980018172A KR1019970029752A KR19970029752A KR19980018172A KR 19980018172 A KR19980018172 A KR 19980018172A KR 1019970029752 A KR1019970029752 A KR 1019970029752A KR 19970029752 A KR19970029752 A KR 19970029752A KR 19980018172 A KR19980018172 A KR 19980018172A
Authority
KR
South Korea
Prior art keywords
client
document
information
page
server
Prior art date
Application number
KR1019970029752A
Other languages
English (en)
Other versions
KR100262432B1 (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 KR19980018172A publication Critical patent/KR19980018172A/ko
Application granted granted Critical
Publication of KR100262432B1 publication Critical patent/KR100262432B1/ko

Links

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Digital Computer Display Output (AREA)
  • Computer And Data Communications (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명에 개시된 메커니즘은 인터액티브 프로세싱 시스템에 기초한 클라이언트-서버에서 인터액티브 어플리케이션을 실행하기 위한 것으로서, 이들 어플리케이션은 문서로서 클라이언트에 표시된다.
본 발명의 메커니즘은 문서 페이지의 프리젠테이션을 위해 클라이언트 시스템 자원에 관계없이 문서를 기술하고, 페이지 셋업을 위해 실질적인 기능적 특징만을 결정하기 위해 제안되었다. 어플리케이션의 프리젠테이션을 위해 모든 가능한 시스템 자원에 공평하도록, 대화의 기술은 어플리케이션을 실행하기 위해 요구되는 최소 필요 유저 인터액션 장치와 같은 기능적인 면에만 국한된다.
실제 프린젠테이션 셋업은 유저에 의해 인터액션의 가능한 모드가 결정되는 클라이언트측(1)에 위치된 하드웨어 특정 자원 관리 장치(11)에 의해 생성된다. 서버(2)와 클라이언트(1)간의 대화 관련 정보의 전송(3)에 앞서, 문서는 클라이언트측의 페이지 셋업을 위해서만 사용되는 페이지 셋업 정보와 유저 대화에 관련된 페이지 정보 내용으로 분리하여 기술된다. 이 페이지 셋업 정보는, 예를 들어, 클라이언트측의 정보를 프리캐싱함으로써 실제 대화의 시작에 앞서 클라이언트측에 제공될 수 있다.
제안된 메커니즘 및 클라이언트-서버 구조는 이동 클라이언트가 무선 네트워크를 통해 어플리케이션 서버와 통신하는 이동 컴퓨팅의 분야에서 유리하게 적용될 수 있으며, 이것은 서버에 제공된 균일한 어플리케이션이 프리젠테이션을 위해 각종 상이한 시스템 자원을 포함하는 원격 클라이언트에서 대화를 프리젠테이션할 수 있게 한다. 또한, 어플리케이션의 교환 혹은 어플리케이션의 수정은 전체 클라이언트(도 1)가 아닌 서버측에서만 실행되어야 한다.

Description

인터액티브 어플리케이션 실행 방법, 클라이언트-서버 다이얼로그 시스템 및 터미널 장치
본 발명은 인터액티브 프로세싱 시스템(interactive processing system)에 기초한 클라이언트-서버(a client-server)에서 인터액티브 어플리케이션(interactive application)을 실행하는 것에 관한 것으로서, 인터액티브 어플리케이션은 유저(a user)와 대화가능한 문서(documents)로서 클라이언트에 표시된다. 특히, 본 발명은 이동 클라이언트(a mobile client)가 무선 네트워크(a radio network)를 통해 어플리케이션 서버(a application server)와 통신하는 이동 컴퓨팅(mobile computing)에 관한 것이다.
자동차에서와 같이 핸드헬드(handhelds), 랩탑(laptops)[노트북(notebooks)], 팜탑(palmtops), 혹은 내장형 컴퓨터(on-board computers)와 같은 휴대형 컴퓨터(portable computer)가 사용되는 이동 네트워크 컴퓨팅(mobile network computing) 분야에 있어서, 통신 링크(communication links)는 무선 통신 네트워크(a wireless telecommunication network)를 통해 휴대형 단말 장치(a portable end-device)(클라이언트)와 고정 어플리케이션 서버(a stationary application server)간에 유지된다. 이 결과 다음과 같은 최소한의 조건들이 수반된다.
1. 일반적인 클라이언트 하드웨어(common client hardware)의 성능은 디스크 오퍼레이팅 시스템(a Disk Operating System : DOS)의 성능을 넘어서지 않으며, 따라서 어플리케이션 소프트웨어(application software)는 제공된 시스템 자원에 대하여 압축되어야 한다. 클라이언트 하드웨어의 성능이 DOS의 성능을 넘어서면, 무선 네트워크에 대하여 전체적인 성능에 한층 더한 영향을 끼치는 서버와의 통신을 위해 통신 플랫폼(a communication platform)이 요구된다.
2. 현재 사용되는 이동 컴퓨터의 디스플레이 자원(display resources)은 데스크탑 컴퓨터(desktop computers) 혹은 워크스테이션(workstations)에 비해 심하게 변하며, 따라서 이 분야에 있어서 현재의 기술적 한계로 인해 비교적 제한된 자원을 포함한다. 더욱이, 이들 디스플레이 자원은 종종 서로 비교되는 매우 상이한 디스플레이 포맷(display formats)을 포함한다.
3. 현재 사용되는 이동 컴퓨터는 정보의 유저 입/출력(user input/output)을 위해 매우 제한되고 변화가 심한 자원만을 제공한다. 예를 들면, 자동차 산업에 사용되는 내장형 컴퓨터는 종종 입력 키(input keys)를 조작하기가 매우 간단하다. 그 반면에, 다른 장치들은 전체 키보드를 구비한다. 모든 결함은 어플리케이션을 표시하는 클라이언트측에 인스톨된 드라이버 소프트웨어(driver software)에 의한 전체 값 입력 장치(a full value input device)의 에뮬레이션(emulation)에 의해 보완된다.
4. 따라서, 이동 컴퓨팅을 위해 이용되는 네트워크는 많은 비용을 들임에도 불구하고 저속의 전송 속도만을 제공한다.
IBM사의 System/370과 같은 호스트 메인프레임 컴퓨터(a host mainframe computer)와 주변 퍼스널 컴퓨터(peripheral Personal Computers)(PC)간의 대화형 통신(conversational communication) 분야에 있어서 일반적인 해결법이 존재한다. 각각의 클라이언트에 인스트톨된 특정 드라이버 소프트웨어는 3270 터미널 에뮬레이션(terminal emulation)을 가능하게 한다. 이들 시스템에 제공된 어플리케이션은 한명 이상의 유저와 인터액티브 다이얼로그(interactive dialogs)를 가능하게 하는 클라이언트의 능력을 인식하지 못한다. 또한, 이들 클라이언트의 디스플레이 자원은 제한된 터미널 클래스의 세트(a limited set of terminal classes)로 분류된다. 최소 디스플레이 크기는 이들 디스플레이 클래스중 하나에 대하여 라인 및 열당 80×24 문자이다. 제공된 어플리케이션은 클라이언트측 어플리케이션의 프리젠테이션용 시스템 자원을 알아야 하고, 필요시 어플리케이션을 각각 구성해야 하는 클라이언트측의 다이얼로그 페이지(dialog pages)를 포맷할 책임이 있다. 따라서, 이러한 해결법은 각각의 클라이언트측에 제공된 각각의 하드웨어 플랫폼(hardware platform)에 관계없이 획일적인 호스트 통신(uniform host communication)(대화)만을 가능하게 한다.
또 다른 일반적인 분야는, 예를 들어, 인터넷(Internet)에서 일반적으로 사용되는 하이퍼텍스트 전송 프로토콜(Hypertext Transfer Protocol :HTTP) 통신 프로토콜이다. 이 프로토콜은 이미 클라이언트측에서 상이한 하드웨어 플랫폼의 사용을 가능하게 하며, 그에 따라 하나의 독특한 프로토콜만을 이용한다. 그러나, 첫째, 인터넷은 정보형 시스템(an information based system)이었지, 소위 웹 브라우저(Web Browser)에 의해 검색될 수 있는 다량의 정보만을 제공하는 다이얼로그형 시스템(a dialog based system)은 아니었다. 두 번째로, 이들 브라우저의 인터액티브 제공정보는 매우 제한되고 정보의 검색 메커니즘(browsing mechanism) 및 업-앤-다운로딩(up-and-downloading)에만 집중된다. 더욱이, 이들 브라우저의 구현을 위한 필요한 시스템 자원은 이동 컴퓨터 시스템에 대하여 상당히 크기가 크다.
전술한 해결법 이외에, 현재의 이동 컴퓨팅의 분야에서, 기존의 휴대용 컴퓨터는 국부적으로 인스톨된 소프트웨어에 의해 동작하며, 따라서 선천적으로 제한된 성능을 발휘할 수 밖에 없다. 특히, 각각의 어플리케이션 소프트웨어의 교환이 각각의 클라이언트에서 이루어져야 하므로 교환에 따른 추가적인 비용 및 동작 정지를 야기하며, 또한 잠깐 동안의 테스트 절차를 위한 시간을 필요로 한다.
따라서, 본 발명의 목적은 전술한 기존의 해결법이 갖는 결점을 해결하여 클라이언트-서버 정보 처리 시스템(a client-server information handling system)에서 장치에 무관하고 최적화된 대화의 전송을 가능하게 하는 방법 및 시스템을 제공하는데 있다. 더욱이, 본 발명은 서버에만 제공된 어플리케이션의 교환 혹은 수정이 서버측에서만 달성될 수 있도록 할 것이다.
본 발명은 청구항 1에 따라 정보 처리 시스템에 기초한 일반적인 클라이언트 서버(a generic client-server)에서 대화형 다이얼로그를 처리하기 위한 메커니즘(a mechanism), 청구항 13에 따른 각각의 다이얼로그 시스템 구조(a dialog system architecture), 및 각각의 기본적인 클라이언트의 하드웨어에 관계없이 멀티미디어 프리젠테이션(multimedia presentation)이 가능하도록 클라이언트측에 사용될 수 있는 특별한 터미널 장치(a particular terminal device)를 제공함으로써 상기 목적을 달성한다. 특히, 클라이언트의 터미널 장치는 특정한 하드웨어를 요구하는 어플리케이션에 대하여 자체적인-구성(self-configuration)을 제공할 수 있다.
본 발명의 기본적인 개념은 각각의 (문서) 페이지의 프리젠테이션용 클라이언트 시스템 자원에 관계없이 인터액티브 대화를 위한 문서를 기술하고, 페이지 셋업을 위해 단지 실질적인 기능적 특징만을 결정하는 것이다. 어플리케이션의 프리젠테이션을 위한 모든 가능한 시스템 자원에 공평하도록 하기 위해, 대화(다이얼로그 및 예상 응답)의 기술은 한정된 어플리케이션(a definite application)을 구동하기 위해 요구되는 최소 필요 유저 인터액션 장치(minimum necessary user interaction devices)(버튼 등)와 같은 기능적인 면에만 국한된다.
실제 프리젠테이션 셋업은, 예를 들어, 키보드(a keyboard), 터치스크린(a touchscreen), 혹은 소프트웨어 에뮬레이트형 버튼(software emulated buttons)을 통해 유저가 인터액션이 가능한 모드를 결정하는 클라이언트측에 위치된 하드웨어 특정 자원 관리 장치(a hardware specific resource management device)에 의해 생성된다. 또한, 이 장치는 개략적인 기능적 멀티미디어 요소(abstract functional multimedia elements)를 클라이언트측에 프리젠테이션할 필요가 있다. 바람직한 실시예에서, 이 관리 장치는 네트워크와 클라이언트의 프리젠테이션 장치(예를 들면, 디스플레이)간에 제공되는 자원 채택 소프트웨어 층(resource adaptation software layer)으로 구현된다. 어플리케이션은 각각의 현재 클라이언트에 의해 구현될 수 있는 다수의 피드백 메커니즘만을 이용하여야 한다.
서버와 클라이언트간 대화 관련 정보의 전송에 앞서, 문서는 실제 유저 대화(an actual user conversation) 자신이 아닌 클라이언트측의 페이지를 셋업하기 위해서만 사용되는 페이지 셋업 정보와, 어플리케이션에 의한 유저 대화와 관련되고 차후 대화 단계에서 전송되는 페이지 정보 내용을 분리하여 기술된다. 이러한 페이지 셋업 정보는, 예를 들어 클라이언트측 정보를 (프리)캐싱함으로써 실제 대화의 시작에 앞서 클라이언트측에 제공될 수 있다.
따라서, 본 발명은 서버 시스템에 제공된 어플리케이션이 프리젠테이션을 위해 각종 상이한 시스템 자원을 포함하는 원격 클라이언트(remote client)에서 대화의 프리젠테이션을 가능하게 한다. 더욱이, 어플리케이션의 교환 혹은 어플리케이션의 수정은 모든 클라이언트가 아닌 서버측에서만 실행되어야 한다.
또한, 기본적인 통신 네트워크의 전술한 결점은 제안된 캐싱 메커니즘(지능형 캐싱) 및 전송된 정보의 감소가 최소가 되도록 보증하는 효율적인 프로토콜에 의해 해결될 것이며, 또한 이동 컴퓨팅의 성능 및 임차능력(rentability)을 향상시킬 것으로 생각된다. 이 결과, 문서의 부분적인 구성요소는 클라이언트측에서 캐시된다. 이를 위해, 사전로드되고 어플리케이션의 구동 시간동안 변하지 않는 문서 정보를 캐싱하기 위한 정적 캐시(a static cache)와, 어플리케이션의 구동시간동안 수집되는 정보를 캐싱하기 위한 동적 캐시(a dynamic cache)가 제공되는 것이 바람직하다. 이들 두 캐시 메모리는 캐시 관리자(a cache manager)에 의해 제어될 수 있다.
객체 지향 기술(object-oriented technology)에 관해서, 페이지 셋업 정보는 기능적인 객체가 클라이언트 프리젠테이션 하드웨어 플랫폼(client presentation hardware platform)에 관계없이 정의될 수 있는 기능적인 객체 및 프리젠테이션 객체에 의해 표시될 수 있는 것이 유리하다. 제안된 구조로 인해, 특정 클라이언트 하드웨어에 대한 문서의 채택이 자동적으로 달성될 수 있으며, 유저에게 분명하게 표시된다.
본 발명의 다른 실시예에서, 예를 들어, 음성, 버튼, 스크린 셋업 등과 관련된 문서의 멀티미디어 프리젠테이션을 위한 특별한 객체가 제공된다. 클라이언트의 알려지지 않은 멀티미디어 자원에 우선적으로 자동 채택되는 멀티미디어 프리젠테이션이 가능하도록 개략적인 멀티미디어 기능 요소가 더 제공될 수 있다.
문서(페이지)의 프리젠테이션은 컴퓨터 디스플레이(a computer display)상에서 볼 수 있는 페이지에 국한되지 않는다. 더욱이, 사운드, 동화상(motion pictures) 등과 같은 멀티미디어 구성요소의 구현에 대한 제한은 없다.
전송된 정보 스트림은 전송을 위한 대역폭 요구를 최소화하기 위해 더욱 압축 및 확장될 수 있다. 클라이언트측의 유저 질의로 인해 서버 액세스와 같은 어플리케이션을 구동하기 위해 서버측에 필요한 특정 정보의 전송을 가능하게 하기 위해 서버와 클라이언트간정보 흐름은 양방향인 것이 바람직할 수 있다. 예를 들면, 클라이언트는 멀티미디어 프리젠테이션 객체를 표시하기 위해 자신의 시스템 자원에 관해 서버에 통지할 수 있다.
제안된 메커니즘 및 구조는 클라이언트 각각의 디스플레이 포맷에 관계없이 서로에 대해 박스의 상대 치수를 유지하는 디스플레이 포맷을 자동으로 채택할 수 있는 확장가능한 박스를 사용하여 구현되는 것이 바람직할 수 있다. 각각의 박스는 멀티미디어 프리젠테이션 객체(a multimedia presentation object)를 포함할 수 있으며, 여기서 확장가능한 박스의 목적은 각각의 서버에 좌우되며 각각의 어플리케이션에 의해 결정된다. 본 발명의 바람직한 실시예에서, 이들 박스는 문서의 실선으로 제공된다.
클라이언트측에 표시된 다이얼로그 마스크(dialog masks)는 종종 클라이언트에서 서버로 전체 문서의 중간 전송(an intermediate transmission)과 대조적으로 다이얼로그 마스크의 일부만이 갱신되어야 하는 입력 어레이를 포함한다. 예를 들면, 도 3에 도시된 의학용 어플리케이션의 경우에 있어서, 어레이내의 하부 필드(bottom field)(30)를 클릭하면 건강 보험 회사의 목록이 표시되고 이들 회사중 한 회사가 다른 다이얼로그의 단계를 위해 선택될 수 있다. 이것은 유저에 의한 어떠한 인터액션도 없이 클라이언트로부터 서버로 전송되는 소위 자동-전송 필드(auto-send fields)를 사용함으로써 달성된다.
본 발명의 이러한 목적 및 기타 목적, 특징 및 장점은 첨부 도면을 참조함으로써 보다 잘 이해될 것이다.
도 1은 이동 클라이언트가 고정 어플리케이션 서버(a stationary application server)에 접속되는 본 발명에 따른 바람직한 구조를 도시하는 블록도
도 2는 확장가능한 박스에 기초한 예시적인 시각(문서) 페이지 셋업을 도시하는 도면
도 3은 의료 환자 정보 처리의 분야에서 예시적인 대화를 도시하는 도면
도 4a 및 도 4b는 각각의 다이얼로그 마스크의 프리젠테이션을 위해 상이한 시스템 자원을 제공하는 두 클라이언트에 표시되는 동일한 어플리케이션 다이얼로그의 두 스냅샷
* 도면의 주요 부분에 대한 부호의 설명 *
1: 이동 클라이언트2: 고정 서버
4, 5: 캐시 관리 모듈6: 어플리케이션 프로그램 인터페이스(API)
9: 가상 터미널 모듈11: 하드웨어 종속 디바이스 드라이버 유닛
12: 정적 부분(캐시)23: 더미 확장가능 박스
47: 어플리케이션 윈도53: 스크롤바
클라이언트-서버 구조
블록도로서, 도 1은 이동 클라이언트(a mobile client)(1)가 컴퓨터 시스템에 적합한 임의의 서버일 수 있는 고정 서버(a stationary server)(2)와 통신하는 클라이언트-서버 시스템(a client-server system)의 바람직한 구조를 도시한다. 도 1은 또한 서버 및 클라이언트가 무선 네트워크(a wireless network)(3)를 통해 상호접속되는 것으로 간주된다. 이 결과, 본 발명은 무선 네트워크에 국한되지 않으면, 또한 인터넷 혹은 사설 인트라넷(private Intranet)으로서 ISDN(Integrated Switching Digital Network) 혹은 기타 광역 네트워크(wide area network :WAN) 혹은 근거리 통신망(local area network :LAN)과 같은 통신 네트워크가 적합하거나, 혹은 적외선(Infrared light)이 대부분의 일반 상점에서 제공되는 것과 같이 통신 네트워크를 제어하기 조차 한다는 것을 주목할 필요가 있다.
어플리케이션의 실행은 클라이언트측 어플리케이션의 프리젠테이션, 특히 대화형 프리젠테이션에 대하여 서버와 클라이언트간의 정보 교환을 수반한다. 이 정보는 프리젠테이션의 셋업과 관련된 정보와 문서의 정보 내용으로 간주될 수 있는 유저 인터액션에 의해 교환되는 정보로 구분될 수 있다. 이들 정보 스트림은 서버(2)와 클라이언트측(1)에 제공되는 캐시 관리 모듈(cache management module)(4, 5)을 통과한다. 캐시된 모든 정보에 대하여, 기준 정보(a reference information)만이 전송되어야 한다. 캐시 관리 모듈(4,5)을 통과할 필요가 없는 예외적인 정보는 오직 서버(2)와 클라이언트(1)간에 교환되는 기본적인 제어 및 명령(질의) 정보이다.
어플리케이션 프로그램 인터페이스(Application Program Interface :API)(6)의 직접적인 이용이나 혹은 예를 들어, 호스트-PC 통신에 이용될 수 있는 채택층(adaption layer)(7)의 삽입에 의해 모든 종류의 어플리케이션이 서버에서 구동될 수 있는 어플리케이션 프로그램 인터페이스가 또한 제공된다.
전송된 정보 스트림은 클라이언트측(1)에서 이미 캐시된 정보에 대하여 축소되는 것이 유리하다. 무선 전송 라인(a wireless radio transmission line)(3)을 통해 정보 스트림이 이동 클라이언트(1)로 전송된다. 클라이언트측(1)의 캐시 관리 모듈(5)은 원래대로 스트림을 다시 확장시킨다. 문서 내용 정보의 경우에 있어서, 확장된 스트림은 페이지 생성 모듈(a page generation module)(8)에 의해 해석되어 가상 터미널 모듈(a virtual terminal module)(9)로 보내진다. 가상 터미널 모듈은 페이지의 개략적이고 기능적인 기술에 근거한 실제(문서) 페이지를 구축하고, 이 페이지는 하드웨어 종속 디바이스 드라이버 유닛(a hardware dependent device driver unit)(11)에 의해 기존의 클라이언트 하드웨어(10)에 표시된다.
본 발명의 실시예에서, 디바이스 드라이버 유닛(11)은 또한 추가적인 통지가 클라이언트의 터미널에 의해 표시될 수 있으며, 가상 터미널 모듈(9)에 관계없이 표시되는 경고 신호, 원격측정 데이터 등과 같은 다수의 프리젠테이션 원어(presentation primitives)를 제공한다. 이 결과, 클라이언트에 의해 제공된 실행가능한 로컬 어플리케이션, 예를 들어 자동차의 엔진 데이터, 혹은 지리 위치 시스템(global positioning system :GPS) 데이터와 같은 원격측정 데이터의 질의에 대한 어플리케이션이 처리될 수 있다. 또한, 이들 데이터는 또한 장치에 무관한 드라이버 유닛(11)의 프리젠테이션 원어로 표시될 수 있다.
문서 기술
본 발명에 따르면, 문서, 즉 셋업 및 정보 내용의 기술은 개략적이며 클라이언트 각각의 프리젠테이션에 관계없이 장치를 실행한다. 문서의 구체적인 물리적 의미는 예를 들어 페이지로서 문서가 클라이언트의 터미널 장치(10)에 표시될 때 최초로 제공된다. 프리젠테이션의 모습은 각각의 클라이언트의 프리젠테이션 능력에 따라 변할 수 있다. 그러나, 문서의 기본적인 요소 및 그에 따른 기능성은 개략적인 기술로 인해 유지된다.
제안된 메커니즘에 따라 문서를 생성하기 위한 다수의 실시예가 존재한다. 제 1 실시예에서, 문서의 생성은 공식적인 기술 언어(a formal description language)에 의해 순수한 문자 형식(a pure textual form)으로 달성될 수 있다. 다른 실시예에서, 문자의 생성은 각각의 API 기능에 의해 페이지 요소를 구성함으로써 실현된다. 이 결과, 문서의 내부적인 표시를 위해 요구되는 각각의 데이터 구조는 어플리케이션의 프로그램 코드의 범위내에서 분명하게 생성되는 반면에, 기술은 파서(a parser)를 이용한 공식적인 언어에 의해 내부적인 페이지 프리젠테이션으로 변환된다.
전술한 실시예에서, 문서는 어플리케이션과 유저간의 대화형 다이얼로그에 대응하는 문자 패턴 부분의 유지(retention) 및 제거(elimiation)를 제어하는데 사용된 다이얼로그 마스크(a dialog mask)에 대응하는 정적 부분(a static portion)과, 문서의 입력 및 출력 필드의 내용 혹은 유저에 의한 필드의 실제 선택에 대응하는 제 2 동적 부분(a second dymamic portion)으로 나뉘어진다. 전송전에, 두 부분은 하나의 문서내에만 위치되지만, 전송 단계에서 개별적으로 처리된다. 클라이언트측(1)에 이미 제공된 문서의 정적 부분(즉, 캐시(12))에 대해 일치하는 동적 정보만이 기존의 마스크내에 삽입된 클라이언트로 전송된다.
본 발명의 실시예에서, 문서는 다수의 중첩선으로 기술된다. 각각의 라인은 제공된 프리젠테이션 포맷으로 자동 확장되고 출력 정보(예를 들면, 텍스트) 혹은 입력 필드와 같은 적어도 하나의 형상 요소에 대응하는 적어도 하나의 나란하게 배치된 박스로 구성된다. 라인의 높이는 가장 큰 박스에 의해 결정된다. 라인내의 박스는 최대 라인 높이에 대하여 중심에 위치될 수 있거나, 혹은 라인의 상부 혹은 하부에 표시될 수 있다. 라인(20)내에 표시된 박스(20)는 나란히 정렬되지만, 또한 넓은 라인의 최대 폭, 적어도 각각의 클라이언트의 프리젠테이션 장치의 최대 물리적인 폭 포맷까지 확장될 수 있다. 이것은 도 2에 참조로서 예시되어 있으며, 전체적인 폭은 제 2 라인(22)의 폭에 의해 결정된다. 제 1 라인내에 표시된 박스(20)는 그 폭에 비례하여 확장된다. 더미(빈) 확장가능한 박스(dummy expansible boxes)(23) 정면에 배치하거나 혹은 표시된 기능 박스에 추가함으로써, 기능 박스가 중앙 혹은 우측의 정렬위치에 표시되도록 할 수 있다. 각각의 AUTO_FILL(확장가능한) 박스는 동일한 라인(행(row))내 전체적인 기존의 AUTO_FILL 박스에 대하여 좌측 자유 공간의 동일한 지분을 얻게됨으로써, 중재를 가능하게 하고, 박스의 위치에 무관한 장치를 가능하게 한다.
또한, 박스는 기능적인 요소뿐 아니라, 다수의 라인 혹은 기타 논리적인 페이지를 포함할 수 있어야 한다. 이 결과, 모든 종류의 순환 네스팅(recursive nesting)이 가능하다. 따라서, 문서는 의도된 시스템 자원 독립성에 영향을 끼치지 않고 자유로이 디자인될 수 있다.
전술한 언어 개념에 의해 생성된 (문서) 페이지의 실제적인 물리적 크기는 클라이언트측의 표시 장치에 의해 독점적으로 결정된다. 따라서, 어플리케이션의 관점에서, 절대적인 프리젠테이션 크기는 고려되지 않을 수 있다. 문자 폭 혹은 입력 및 출력 필드를 위해 사용되는 라인의 수만이 뚜렷한 한도내에서 결정될 수 있다. 그러나, 최종적인 크기는 사용된 문자 세트에 좌우된다.
각각의 확장가능한 박스는 전술한 문서의 하나 이상의 개별적인 기능 요소에 대한 프레임을 나타낸다. 대화는 이들 요소를 조합함으로써 디자인될 수 있다. 전술한 실시예에 따른 구성요소는 지금까지 모든 종류의 멀티미디어 구성요소가 수반됨에 따라서 각각의 클라이언트 하드웨어에 의해 지지될 수 있는 예시적인 요소만이 표 1에 도시되어 있다. AUTO_FILL의 필드 폭을 지정함으로써, 각각의 확장가능한 박스가 넓어지게 되어 전체 라인 폭은 가장 넓은 라인의 폭까지 연장되지만, 적어도 표시된 디스플레이의 물리적인 폭까지 연장된다. 이러한 파라미터를 포함하는 하나 이상의 필드의 경우에 있어서, 이들 박스모두는 비례적으로 확장된다. 입력 필드 및 n분의 1 선택 필드에 대한 '자동-활성' 속성은 버튼의 활성, 즉 일치된 메시지가 서버로 전송됨에 따라 모든 선택 혹은 입력 확인이 처리된다는 것을 의미한다. 이들 기능의 구현을 위한 공식적인 기술 언어는 이하 본 명세서에 제시된다.
각각의 필드 요소는 다수의 속성을 포함하며, 이들 속성의 일부는 모든 필드형에 대하여 동일하고, 나머지 부분은 각각의 필드 혹은 다수의 필드에 대하여 특정하다. 폭 및/혹은 높이가 결정되지 않은 필드에 대한 각각의 박스 크기는 표시된 필드 내용으로부터 계산된다. 필드의 사전결정된 폭 및/혹은 높이의 경우에 있어서는, 예를 들어, 선택된 문자 세트의 표준 문자 라인(a standard character line)의 배수로서 공간 프리젠테이션이 필드형에 따라서 절단, 브로큰 다운, 혹은 수동으로 프리젠테이션 공간의 볼수 있는 부분으로 스크롤된다.
도 4a 및 도 4b에는 2개의 상이한 클라이언트의 터미널 장치(40, 41)에 대한 어플리케이션 다이얼로그 마스크의 디스플레이 프리젠테이션이 도시되어 있으며, 이들 클라이언트는 문서의 프리젠테이션을 위해 서로 상이한 시스템 자원을 갖는다. 도 4a의 장치는 디스플레이 영역(display area)(42), OK, Cancel 및 Func 실행을 위한 3개의 기능키(43, 44, 45), 및 디스플레이 네비게이션(display navigation)을 위한 화살표키(46)를 포함한다. 디스플레이상에는 어플리케이션 다이얼로그 윈도(application dialog window)의 현재 스냅샷(snapshot)이 도시되어 있다.
이와 대조적으로, 도 4b에 도시된 터미널 장치는 상이한 모양 및 크기의 디스플레이(a display)(47)와, 기능키(43, 44, 45) 및 화살표 키(46) 대신에 8개의 기능키(F1-F8)(48), 및 디스플레이 네비게이션을 위한 트랙볼(a trackball)(49)을 포함한다.
도 4b에서 알 수 있는 바와 같이, 어플리케이션 윈도(47)는 모니터형(a monitor type), 머더보드형(a motherboard type) 혹은 사운드카드형과 같이 다수의 컴퓨터 부품을 포함하는 상부(an upper portion)(50)로 구성된다. 또다른 윈도 부분(51)에서, 상부 윈도(50)내에는 각각의 아이템에 대해 이용가능한 배경 정보가 디스플레이된다. 아이템은 F1 버튼을 누름으로써 선택되거나, F2 버튼을 누름으로써 취소될 수 있는데, 이는 이들 버튼이 디스플레이의 하부(52)에 표시되어 유저로 하여금 알 수 있게 하기 때문이다. 유저는 트랙볼(49)을 이용해 상부 디스플레이 윈도를 처음부터 끝까지 스크롤할 수 있으며, 실제 아이템은 스크롤바(슬라이더)(a scroll bar)(53)에 접속된 커서 바(a cursor bar)에 의해 밝게 표시된다. 도 4b의 터미널 장치(41)의 경우에 있어서, 요구되는 필요한 인터액티브 수단(OK 및 Cancel 기능)은 물리적인 기존의 기능키(48)에 맵되고, 이 맵핑은 디스플레이(47) 하부의 추가적인 정보 라인(52)내 스크린(47)에 디스플레이된다.
특히, 도 4a에 도시된 장치(40)의 디스플레이 영역(42)은 도 4b에 도시된 디스플레이(47)에 비해 크기가 작다. 결과적으로, 또다른 슬라이더(a slider)(54)가 디스플레이(42)의 우측에 디스플레이되는데, 이는 현재의 페이지가 클라이언트 터미널(40)에 의해 물리적으로 제공된 공간보다 수직인 공간을 필요로 하기 때문이다.
페이지 설명 언어
이어서, 전술한 기능이 구현될 수 있는 공식적인 기술 언어가 기술된다. 이 공식적인 언어에 의해 대화형 다이얼로그 및 인터액티브 특징(interactive features)이 기술되는 것이 바람직할 수 있다. 도 3에 도시된 예시적인 다이얼로그는 다음과 같은 의사 코드(pseudo code)에 따라서 기술될 수 있다.
예시적인 문서는 유저의 표준 응답 OK, Cancel 및 F0의 리턴을 위해 구성된다. 클라이언트 터미널상의 이들 응답의 프리젠테이션은 각각의 하드웨어 자원에 좌우된다. 클라이언트의 하드웨어가 이들 기능에 대해 적절한 기능 요소를 제공하는 경우, 예를 들어, 키보드의 기능키에 따라 추가적인 요소가 클라이언트의 디스플레이상에 표시되어서는 안된다. 그 반면에, 클라이언트가 이러한 키를 제공하지 않으면, 각각의 기능들이 클라이언트의 디스플레이상에 표시될 수 있다.
문서를 기술하기 위한 공식적인 언어가 다음과 같이 도시된다. 이 결과, 기본적인 데이터형은 명백한 목적을 위해서만 언급된다.
어플리케이션 프로그램 인터페이스
어플리케이션에 대한 문서의 생성을 위해, 다음과 같은 어플리케이션 프로그램 인터페이스(API)가 사용되는 것이 바람직할 수 있다. 전술한 제한에 대하여, 어플리케이션 프로그램 인터페이스는 요구되는 모든 필요한 구조의 생성에 충분한 몇몇의 기본적인 기능으로만 구성된다.
문서의 내부적인 표시를 유저가 알기는 어렵다. 문서는 사전결정된 텍스트 혹은 입력, 동적 출력 필드의 정의, 혹은 선택 필드에서 사용자를 선택하기 위한 설명 내용으로서 사용되는 동적으로 변하는 정보와 마찬가지로 전송된 정보 스트림(다이얼로그 마스크)의 정적 부분을 저장한다. 이들 동적 데이터는 전송되고 전송된 후 버려질 정보 스트림의 생성 단계에서만 존재한다. 이 결과, 기타 동적 정보의 유첨 후 선행 데이터가 다시 전송되는 것이 방지된다. API를 사용함으로써 문서의 동적 부분은 어느 때나 수정될 수 있으며 각각의 정적 부분(다이얼로그 마스크)에 관계없이 클라이언트에 전송될 수 있다.
전송된 정보 스트림은 제어 명령(control command) 및 질의 명령(query command), 혹은 기타 동적 데이터에 의해 확대될 수 있으며, 완전한 정보 패킷이 클라이언트에 일괄적으로 전송될 수 있다.
다음의 C-언어로 작성된 발췌 프로그램 코드는 도 3에 도시된 예시적인 대화(다이얼로그)의 생성을 나타낸다. 각가의 속성명은 접두사 TT_에 의해 확장되는 허여된 기술 언어 파라미터로 구성된다.
이어, API에 의한 함수가 열거된다. 가능한 리턴 코드는 tt_api.h로 지정된 API 헤더 파일의 각 코멘트로부터 축적될 수 있다.
TTDocHandle ttNewDocument(void)
이 함수는 새로운 빈 문서의 생성을 위해 사용된다. 리턴된 핸들은 이러한 문서에 대한 모든 연산에 대하여 명명되어야 한다. (포인터(pointer)와 대조적으로, 핸들(handle)은 객체에 대해 개략적인 기준 (용어)이다.
int ttFreeDocument(TTDocHandle handle)
각각의 문서에 대해 내부적으로 다수의 자원이 할당될 것이다. 이 경우, 문서는 더 이상 필요없으며, 이들 자원은 이 함수에 의해 완전히 다시 해제될 수 있다.
int ttFreeDynamic(TTDocHandle handle)
이 함수는 문서의 모든 동적 데이터를 해제시킬 것이며 문서의 동적 부분이 함수 ttAddDyn2DataStream에 의해 정보 스트림내에 삽입될 때 자동적으로 실행될 것이다.
TTDocHandle ttParseDocument(char *string)
TTDL 문서가 널-종료 버퍼(a null-terminal buffer)(C-스트링)에 제공될 때, TTDL 문서는 이 함수에 의해 문서 핸들(a document handle)로 변환될 수 있다. 성공적인 변환 후, 이 함수는 문서 핸들을 전달한다.
char *ttLastParseError(void)
이 함수는 문서를 스캐닝 혹은 파싱(parsing)하는 동안 각각의 마지막 에러를 지정하는 스트링(a string)으로 포인터(a pointer)를 운반한다.
TTDocHandle ttReadDocument(char *filename)
TTDL 포맷이 텍스트 파일(a text file)로 제공될 때, TTDL 포맷은 이 함수에 의해 내부 포맷으로 변환될 수 있다. 성공적인 판독 및 변환 후 문서 핸들이 리턴된다.
int ttWriteDocument(TTDocHandle handle, char *filename)
이 함수에 의해, 문서 핸들에 의해 제공된 문서는 TTDL 텍스트 문서로서 파일에 기록될 수 있다.
int ttAddReply(TTDocHandle handle, int button, char *modifier)
여기서, 표준 응답 버튼(a standard response button)이 문서에 대해 결정될 수 있다. 타이틀의 수정이 필요없다면, 각각의 '널' 포인터가 명명되어야 한다.
int ttAddRow(TTDocHandle handle)
이 함수는 새로운 빈 라인을 문서에 추가한다.
int ttAddBox(TTDocHandle handle, int fieldType, int v_align)
이 함수는 우측에 정렬된 새로운 박스를 문서의 실제 라인내에 삽입한다. 특정되지 않은 박스의 특정한 수직 조정이 필요없다면, 디폴트값으로서 TT_DEFAULT가 명명되어야 한다. 더욱이, 포함된 함수 요소의 유형, 즉 TT_STATIC, TT_DYNAMIC, TT_INPUT, TT_RADIO, TT_MULTI, 혹은 TT BUTTON이 표시되어야 한다.
int ttSetAttribute(TTDocHandle handle, int attrib_type, AttribValue Value)
이 함수에 의해 셀제 함수 요소의 모든 속성이 마침내 생성되거나, 혹은 ttSetCurrentBox에 의해 세트 박스가 결정될 수 있다.
int ttSetCurrentBox(TTDocHandle handle, char *id)
이 함수에 의해, 신분증명(an identification) id를 갖는 박스가 실제로 세트될 수 있으며, 따라서 ttSetAttribute와 같은 또다른 연산이 박스에 관련된다. 이 함수는 각각의 신분증명 속성이 박스의 구성 단계에서 정의된 박스에만 적용될 수 있다.
TTDataStreamHandle ttOpenDataStream(void)
이 함수에 의해 본 발명에 따른 데이터 스트림이 설정될 수 있다. 스트림 설정 후, 이 정보 스트림은 임의의 문서, 혹은 동적 제어 및 질의 데이터에 의해 채워진 후 전송될 수 있다.
void ttCloseDataStream(TTDataStreamHandle ttds)
이 함수와 결합된 자원과 함께 자신의 핸들을 운반함으로써 더 이상 필요없는 데이터 스트림이 해제될 수 있다.
int ttAddDoc2DataStream(TTDataStreamHandle ttds, TTDocHandle doc)
전달된 문서의 정적 및 동적 부분은 주어진 데이터 스트림내에 삽입될 수 있다. 삽입 후, 문서의 동적 정보가 폐기된다.
int ttAddDyn2DataStream(TTDataStreamHandle ttds, TTDocHandle doc)
전달된 문서의 동적 부분은 이 함수에 의해 주어진 데이터 스트림내에 삽입될 수 있다. 삽입 후, 전술한 바와 같이 동적 정보는 폐기된다. 동적 데이터를 실제 문서내에 삽입하기 위해 클라이언트에 개별적으로 전송될 문서내의 동적 데이터를 교환하는 경우, 이들 동적 데이터는 데이터 스트림에 의해 포함되는 부분에만 존재할 것이다.
표 2에는 함수 ttSetAttribute에 대한 가능한 파라미터가 보다 상세히 서술된다.
데이터 스트림의 코딩
정보 스트림의 생성에 의해, 전송 패킷을 가능한 압축하기 위해 데이터가 코드된다. 1바이트보다 큰 워드 길이(a word length)를 갖는 모든 데이터는 네트워크 바이트 순서(Network Byte Order)로 버퍼, 즉 워드의 최상위 바이트가 보다 낮은 어드레스에서 제공된다. 양의 정수에 대해, 데이터형 Packed Unsigned Integer: PUINT가 사용, 즉 1바이트중 7비트는 번호의 값으로 사용되고 최상위 바이트(MSE)가 존재하는 세트는 또다른 바이트가 이어진다는 것을 의미한다.
이어서, 이러한 데이터 스트림의 구조는 앞서 도시한 코드 예와 유사한 주석에 의해 예시된다. 모든 코멘트는 괄호내에 세트되고 라인의 각 끝에 흘림글씨로 표시된다.
캐싱 메커니즘
문서의 디자인 단계에서 이미, 정보 스트림은 정적 부분과 동적 부분으로 나뉘어진다. 이들 별개의 데이터는 서로에 대해 독립적으로 캐시되는 두 개의 분리된 블록에서 처리된다. 따라서, 예를 들면, 다이얼로그 마스크는 정적(사전로드된) 캐시 메모리(a static cache memory)(13)내의 클라이언트측(1)에 전부 제공될 수 있으며, 이에 의해 마스크의 정보 내용만이 각각 전송된다.
유저가 데이터 스트림(a data stream)의 발생 단계동안 개별적인 데이터 블록을 선택함으로써 캐시 성능에 영향을 줄 수 있다 하더라도, 유저는 제 1 정보 스트림의 전송동안 전송된 정보의 캐싱을 유저에게 분명하게 표시할 수 있다.
따라서, 본 발명은 전술한 기존의 해결법이 갖는 결점을 해결하여 클라이언트-서버 정보 처리 시스템(a client-server information handling system)에서 장치에 무관하고 최적화된 대화의 전송을 가능하게 하는 방법 및 시스템을 제공한다. 더욱이, 본 발명은 서버에만 제공된 어플리케이션의 교환 혹은 수정이 서버측에서만 달성될 수 있도록 한다.
본 발명은 청구항 1에 따라 정보 처리 시스템에 기초한 일반적인 클라이언트 서버(a generic client-server)에서 대화형 다이얼로그를 처리하기 위한 메커니즘(a mechanism), 청구항 13에 따른 각각의 다이얼로그 시스템 구조(a dialog system architecture), 및 각각의 기본적인 클라이언트의 하드웨어에 관계없이 멀티미디어 프리젠테이션(multimedia presentation)이 가능하도록 클라이언트측에 사용될 수 있는 특별한 터미널 장치(a particular terminal device)를 제공함으로써 상기 목적을 달성한다. 특히, 클라이언트의 터미널 장치는 특정한 하드웨어를 요구하는 어플리케이션에 대하여 자체적인-구성(self-configuration)을 제공할 수 있다.
[표 1]

Claims (21)

  1. 어플리케이션을 구동하고 문서를 표시하기 위한 시스템 자원(10, 40, 41)을 제공하는 클라이언트(a client)(1)와의 인터액션을 위해 문서(20-23)를 이용하는 인터액티브 어플리케이션을 다이얼로그 시스템에 기초한 클라이언트-서버(a client-server)에서 실행하기 위한 방법에 있어서, 상기 방법은,
    페이지 셋업(a page setup)(도 2) 및 페이지 정보 내용(page information contents)에 대하여 상기 문서를 서버측(2)에 기술하고, 상기 시스템 자원에 관계없이 문서 정보를 생생하는 단계와,
    상기 문서 정보를 상기 서버에서 상기 클라이언트로 전송하는 단계(3)와,
    상기 전송된 문서 정보에 대하여 상기 시스템 자원에 관계없는 문서를 상기 클라이언트측에 생성하는 단계(8)와,
    상기 시스템 자원에 대하여 문서 페이지를 상기 클라이언트측에 생성하는 단계(11)와,
    상기 클라이언트측에 상기 문서 페이지를 표시하는 단계(10)
    를 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  2. 제 1 항에 있어서,
    상기 각각의 어플리케이션의 기능적인 요구에 대하여 상기 문서 페이지 셋업을 상기 클라이언트의 상기 시스템 자원에 맵핑하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 페이지 셋업 정보가 기능적인 객체 및 프리젠테이션 객체에 의해 표시되는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  4. 전술한 어느 한 항에 있어서,
    상기 클라이언트에 의해 표시되는 문서 페이지의 실제적인 시스템 자원 요구에 대하여 상기 클라이언트의 상기 시스템 자원을 자동적으로 채택하고 구성하기 위한 시스템 자원 채택 수단을 제공하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  5. 제 3 항 또는 제 4 항에 있어서,
    문서의 상기 인터액티브 요구와 관련된 정보와 함께 상기 프리젠테이션 객체를 전송하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  6. 제 5 항에 있어서,
    상기 클라이언트 및/혹은 상기 서버측의 문서를 캐싱(4, 5, 12-14)하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  7. 전술한 어느 한 항에 있어서,
    전송에 앞서 정보 스트림(a information stream)을 축소하고, 상기 전송후 상기 정보 스트림을 확장하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  8. 전술한 어느 한 항에 있어서,
    상기 서버와 상기 클라이언트간에 유저 조치 정보를 양방향으로 전송하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  9. 전술한 어느 한 항에 있어서,
    상기 클라이언트측의 유저에 의해 가능한 인터액션을 지정하기 위해 상기 서버에서 상기 클라이언트로 대화 인터액션 문구를 전송하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  10. 전술한 어느 한 항에 있어서,
    멀티미디어 프리젠테이션 객체(a multimedia presentation object)를 나타내는 적어도 하나의 확장가능한 박스(20-23)로 문서를 기술하고, 상기 확장가능한 박스내의 상기 문서 페이지 정보 내용을 표시하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  11. 제 10 항에 있어서,
    각 라인이 적어도 하나의 확장가능한 박스로 구성된 다수의 실선(21, 22)으로 상기 문서를 기술하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  12. 전술한 어느 한 항에 있어서,
    활성시 상기 클라이언트에서 상기 서버로 자동적으로 전송되는 자동-전송 객체를 제공하는 것을 특징으로 하는 인터액티브 어플리케이션 실행 방법.
  13. 어플리케이션을 구동하고 문서를 표시하기 위한 시스템 자원(10)을 제공하는 클라이언트(1)와의 인터액션을 위해 문서(도 2)를 제공하는 인터액티브 어플리케이션을 실행하기 위한 클라이언트-서버 다이얼로그 시스템에 있어서, 상기 다이얼로그 시스템은,
    상기 페이지 셋업 및 상기 시스템 자원에 관계없이 상기 페이지 정보 내용과 관련된 문서 정보를 생성하기 위한 상기 서버측(2)의 수단(6)과,
    상기 문서 정보를 상기 서버에서 상기 클라이언트로 전송하기 위한 수단(3)과,
    상기 페이지 셋업 정보 및 상기 전송된 문서 정보에 대하여 문서 페이지를 생성하기 위한 상기 클라이언트측(1)의 페이지 생성 수단(8)과,
    상기 전송된 문서 정보에 대하여 상기 문서 페이지의 상기 페이지 셋업을 상기 시스템 자원에 채택하기 위한 상기 클라이언트측의 자원 관리 수단(11)과,
    상기 문서 페이지를 표시하기 위한 상기 클라이언트측의 수단(10)
    을 포함하는 것을 특징으로 하는 클라이언트-서버 다이얼로그 시스템.
  14. 제 13 항에 있어서,
    사전로드되고 어플리케이션의 구동시간동안 교환불가능한 문서 정보를 캐시하기 위한 정적 캐시 수단(13)과,
    상기 구동시간동안 수집된 정보를 캐시하기 위한 동적 캐시 수단(14)과,
    상기 정적 및 동적 캐시 수단을 제어하기 위한 캐시 관리 수단(4, 5)
    을 포함하는 것을 특징으로 하는 클라이언트-서버 다이얼로그 시스템.
  15. 제 13 항 또는 제 14 항에 있어서,
    상기 페이지 생성 수단(8)에 의해 생성되는 문서 페이지를 상기 시스템 자원에 맵핑하기 위한 가상 터미널 수단(9)을 더 포함하는 것을 특징으로 하는 클라이언트-서버 다이얼로그 시스템.
  16. 제 13 항 내지 제 15 항중 어느 한 항에 있어서,
    상기 전송된 정보 스트림을 압축하고 확장하기 위한 수단을 더 포함하는 것을 특징으로 하는 클라이언트-서버 다이얼로그 시스템.
  17. 제 13 항 내지 제 16 항중 어느 한 항에 있어서,
    상기 클라이언트는 상기 대화를 위해 개략적인 멀티미디어 기능 요소(프리젠테이션 원어)를 표시하기 위한 프리젠테이션 수단을 더 포함하는 것을 특징으로 하는 클라이언트-서버 다이얼로그 시스템.
  18. 제 13 항 내지 제 17 항중 어느 한 항에 있어서,
    상기 클라이언트에 의해 표시되는 문서 페이지의 상기 실제 시스템 자원 요구에 대하여 상기 클라이언트의 상기 시스템 자원을 자동적으로 채택하고 구성하기 위한 시스템 자원 채택 수단을 포함하는 것을 특징으로 하는 클라이언트-서버 다이얼로그 시스템.
  19. 문서의 프리젠테이션이 터미널 장치의 각 시스템 자원(10)에 관계없이 문서(20-23)에 기초한 클라이언트-서버 다이얼로그 시스템에서 인터액티브 어플리케이션을 표시하기 위한 터미널 장치에 있어서, 상기 터미널 장치는,
    수신 문서 정보에 대하여 문서 페이지를 생성하기 위한 페이지 생성 수단(8)과,
    상기 각각의 어플리케이션에 의해 기술된 바와 같이 셋업을 포함하는 가상 문서 페이지 정보를 제공하기 위한 가상 터미널 수단(9)과,
    상기 제공된 가상 문서 페이지 정보 및 상기 수신된 문서 정보에 대하여 문서 페이지를 생성하기 위한 자원 관리 수단(11)
    을 포함하는 하는 것을 특징으로 하는 터미널 장치.
  20. 제 19 항에 있어서,
    상기 가상 터미널 수단은 상기 가상 문서 페이지 정보를 상기 시스템 자원에 맵핑하는 것을 특징으로 하는 터미널 장치.
  21. 제 19 항 또는 제 20 항에 있어서,
    사전로드되고 어플리케이션의 구동시간동안 교환불가능한 문서 정보를 캐시하기 위한 정적 캐시 수단(13)과,
    상기 구동시간동안 수집되는 정보를 캐시하기 위한 동적 캐시 수단(14)과,
    상기 정적 및 동적 캐시 수단을 제어하기 위한 캐시 관리 수단(4, 5)
    을 더 포함하는 것을 특징으로 하는 터미널 장치.
KR1019970029752A 1996-08-19 1997-06-30 인터액티브어플리케이션실행방법,클라이언트-서버다이얼로그시스템 KR100262432B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP96113274.3 1996-08-19
EP96113274 1996-08-19

Publications (2)

Publication Number Publication Date
KR19980018172A true KR19980018172A (ko) 1998-06-05
KR100262432B1 KR100262432B1 (ko) 2000-08-01

Family

ID=8223122

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970029752A KR100262432B1 (ko) 1996-08-19 1997-06-30 인터액티브어플리케이션실행방법,클라이언트-서버다이얼로그시스템

Country Status (5)

Country Link
US (1) US5937421A (ko)
JP (1) JPH10133989A (ko)
KR (1) KR100262432B1 (ko)
CN (1) CN1109306C (ko)
TW (1) TW359800B (ko)

Families Citing this family (36)

* 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
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
JP3076260B2 (ja) * 1997-03-10 2000-08-14 松下電器産業株式会社 情報提供装置
US6065041A (en) * 1997-09-18 2000-05-16 Electronics For Imaging, Inc. Interface code architecture
US6226750B1 (en) 1998-01-20 2001-05-01 Proact Technologies Corp. Secure session tracking method and system for client-server environment
US6108675A (en) * 1998-01-22 2000-08-22 International Business Machines Corporation Positioning of transmitted document pages in receiving display station windows for maximum visibility of information on pages
JPH11249948A (ja) * 1998-02-27 1999-09-17 Toshiba Corp コンピュータシステム、同システムで使用されるファイルリソース切り替え方法および記録媒体
US6108003A (en) * 1998-03-18 2000-08-22 International Business Machines Corporation Maintaining visibility and status indication of docked applications and application bars
US6148340A (en) * 1998-04-30 2000-11-14 International Business Machines Corporation Method and system for differencing container files
US7089331B1 (en) 1998-05-29 2006-08-08 Oracle International Corporation Method and mechanism for reducing client-side memory footprint of transmitted data
US6757705B1 (en) * 1998-08-14 2004-06-29 Microsoft Corporation Method and system for client-side caching
US6385642B1 (en) 1998-11-03 2002-05-07 Youdecide.Com, Inc. Internet web server cache storage and session management system
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US20020078300A1 (en) * 1999-08-16 2002-06-20 Chanda Dharap Semantics-based caching policy to minimize latency
GB9921721D0 (en) * 1999-09-14 1999-11-17 Tao Group Ltd Loading object-oriented computer programs
GB9921720D0 (en) * 1999-09-14 1999-11-17 Tao Group Ltd Loading object-oriented computer programs
WO2001057721A2 (en) 2000-02-04 2001-08-09 America Online Incorporated Dynamic web page generation
US7389284B1 (en) 2000-02-29 2008-06-17 Oracle International Corporation Method and mechanism for efficient processing of remote-mapped queries
US8751248B2 (en) * 2000-07-28 2014-06-10 Visual Telecommunications Network, Inc. Method, apparatus, and medium using a master control file for computer software interoperability between disparate operating systems
US7092803B2 (en) * 2000-08-18 2006-08-15 Idsc Holdings, Llc Remote monitoring, configuring, programming and diagnostic system and method for vehicles and vehicle components
KR100436702B1 (ko) * 2000-10-11 2004-07-03 맹성현 가상문서 제공 시스템 및 그 방법
US20020184507A1 (en) * 2001-05-31 2002-12-05 Proact Technologies Corp. Centralized single sign-on method and system for a client-server environment
US7155321B2 (en) * 2001-08-06 2006-12-26 Idsc Holdings Llc System, method and computer program product for remote vehicle diagnostics, monitoring, configuring and reprogramming
US7103590B1 (en) 2001-08-24 2006-09-05 Oracle International Corporation Method and system for pipelined database table functions
US7580972B2 (en) 2001-12-12 2009-08-25 Valve Corporation Method and system for controlling bandwidth on client and server
US7831278B2 (en) * 2001-12-18 2010-11-09 Intel Corporation Method and device for communicating data with a personal wireless storage device
US7202783B2 (en) * 2001-12-18 2007-04-10 Intel Corporation Method and system for identifying when a first device is within a physical range of a second device
US20030115038A1 (en) * 2001-12-18 2003-06-19 Roy Want Method and device for emulating electronic apparatus
US20030162523A1 (en) * 2002-02-27 2003-08-28 Michael Kapolka Vehicle telemetry system and method
US7610351B1 (en) 2002-05-10 2009-10-27 Oracle International Corporation Method and mechanism for pipelined prefetching
US6973457B1 (en) * 2002-05-10 2005-12-06 Oracle International Corporation Method and system for scrollable cursors
US7813910B1 (en) 2005-06-10 2010-10-12 Thinkvillage-Kiwi, Llc System and method for developing an application playing on a mobile device emulated on a personal computer
US8589140B1 (en) 2005-06-10 2013-11-19 Wapp Tech Corp. System and method for emulating and profiling a frame-based application playing on a mobile device
US20120144123A1 (en) * 2010-12-01 2012-06-07 International Business Machines Corporation Read-ahead processing in networked client-server architecture
TWI692958B (zh) * 2016-07-15 2020-05-01 王逸塵 智慧型通訊裝置用雙向資訊交流方法及運用該方法之系統
KR102440934B1 (ko) 2020-07-30 2022-09-06 김세연 간편세척구조를 갖는 가발 세척장치

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0540696A (ja) * 1991-08-02 1993-02-19 Canon Inc 仮想記憶アドレス制御の方法及びその情報処理装置
US5491820A (en) * 1994-11-10 1996-02-13 At&T Corporation Distributed, intermittently connected, object-oriented database and management system
US5754771A (en) * 1996-02-12 1998-05-19 Sybase, Inc. Maximum receive capacity specifying query processing client/server system replying up to the capacity and sending the remainder upon subsequent request
US5768510A (en) * 1996-07-01 1998-06-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server application enabler system

Also Published As

Publication number Publication date
CN1109306C (zh) 2003-05-21
US5937421A (en) 1999-08-10
TW359800B (en) 1999-06-01
JPH10133989A (ja) 1998-05-22
KR100262432B1 (ko) 2000-08-01
CN1175036A (zh) 1998-03-04

Similar Documents

Publication Publication Date Title
KR100262432B1 (ko) 인터액티브어플리케이션실행방법,클라이언트-서버다이얼로그시스템
US20210067609A1 (en) Content management and transformation system for digital content
US6493758B1 (en) Offline viewing of internet content with a mobile device
US5778372A (en) Remote retrieval and display management of electronic document with incorporated images
US7366976B2 (en) Methods and systems for generating a viewable document using view descriptors and generic view stylesheets
US7574486B1 (en) Web page content translator
US6510468B1 (en) Adaptively transforming data from a first computer program for use in a second computer program
US7054952B1 (en) Electronic document delivery system employing distributed document object model (DOM) based transcoding and providing interactive javascript support
US6829746B1 (en) Electronic document delivery system employing distributed document object model (DOM) based transcoding
US6725424B1 (en) Electronic document delivery system employing distributed document object model (DOM) based transcoding and providing assistive technology support
US20020087596A1 (en) Compact tree representation of markup languages
US6772144B2 (en) Method and apparatus for applying an adaptive layout process to a layout template
US7216177B1 (en) Apparatus and method for supplying electronic content to network appliances
US20020010725A1 (en) Internet-based font server
EP1280075A2 (en) System and method for formatting content to be published
US20080065980A1 (en) Modifying a markup language document which includes a clickable image
US20020093683A1 (en) Method and system for virtual machine rendering of non-latin1 unicode glyphs
GB2344197A (en) Content conversion of electronic documents
KR19990013421A (ko) 관련 웹 페이지를 프린트하기 위한 장치 및 방법
JP2003323402A (ja) シンクライアントシステム、並びに、シンクライアント端末、シンクライアント端末制御方法、及び、制御プログラム
JPH1055269A (ja) 情報処理装置
KR20030094320A (ko) 마크업 언어로 인코딩된 문서의 효율적인 프로세싱 방법및 그 시스템
US7149969B1 (en) Method and apparatus for content transformation for rendering data into a presentation format
US20030106025A1 (en) Method and system for providing XML-based web pages for non-pc information terminals
US20010054114A1 (en) Wireless data transport of internet content to display device

Legal Events

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

Payment date: 20050324

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee