[go: up one dir, main page]

KR19990006437A - 메시지 처리 방법, 메시지 처리 장치 및 메시지 처리를 제어하는 프로그램을 저장하는 기록 매체 - Google Patents

메시지 처리 방법, 메시지 처리 장치 및 메시지 처리를 제어하는 프로그램을 저장하는 기록 매체 Download PDF

Info

Publication number
KR19990006437A
KR19990006437A KR1019980017147A KR19980017147A KR19990006437A KR 19990006437 A KR19990006437 A KR 19990006437A KR 1019980017147 A KR1019980017147 A KR 1019980017147A KR 19980017147 A KR19980017147 A KR 19980017147A KR 19990006437 A KR19990006437 A KR 19990006437A
Authority
KR
South Korea
Prior art keywords
message
message processing
interpreter
processing apparatus
message packet
Prior art date
Application number
KR1019980017147A
Other languages
English (en)
Other versions
KR100340179B1 (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 KR19990006437A publication Critical patent/KR19990006437A/ko
Application granted granted Critical
Publication of KR100340179B1 publication Critical patent/KR100340179B1/ko

Links

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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Multi Processors (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 통신을 행할 때, 회화의 배경개념이나 어휘를 나타내는 온토로지에 따른 해석 실행 부품을 사용함으로써 적절한 응답을 행할 수 있는 통신시스템을 제공한다.
다양한 에이전트 통신 언어, 내용 표현 언어, 온토로지에 따라 동적으로 적절한 인터프리터 등의 해석 실행 부품을 할당함으로써 에이전트간 또는 에이전트와 기존시스템간에서 유연하면서도 원할한 정보교환과 협동작업을 행할 수 있게 된다. 본 발명의 바람직한 실시예에 있어서의 에이전트 통신 시스템은 해석 실행 부품 관리기능을 가지며, 시동시 또는 실행시에는 회화내용 감시부품, 인터프리터, 트랜스레이터 등의 해석 실행 부품의 디렉토리를 주사하고, 어떠한 해석 실행 부품이 존재하는지에 관해서는 해석 실행 부품 테이블을 작성하여 관리하고 있다.

Description

메시지 처리 방법, 메시지 처리 장치 및 메시지 처리를 제어하는 프로그램을 저장하는 기록 매체
본 발명은 데이타 처리에 대한 기술에 관한 것으로, 특히 처리하여야 할 데이타의 내용에 따라 처리를 행하는 자원을 동적으로 변경하는 기술에 관한 것이다.
인간끼리 회화를 하는 경우, 통상, 그 사람이 현재 놓여져 있는 상황이나, 과거의 경험, 회화를 하는 상대, 회화의 경위 등의 환경 조건에 의해, 지금 어떠한 주제로 회화가 행해지고 있고, 어떻게 상대가 말한 것을 해석해야 하는지를 판단할 수 있다. 예를 들면, 다방의 웨이터는, 자리에 앉아 있는 손님이 「뜨거운 것 하나」라고 말한 것만으로, 그 손님이 그 자리에 있는 메뉴의 핫커피 란에 쓰여진 금액을 지불할 것을 승낙하고, 커피잔에 부어진 한잔의 핫커피를 주문하고 있다고 해석한다. 또한, 그 웨이터는, 그 손님에 대해 그 주문이 접수되었음을 확인하고, 핫커피를 준비하고, 준비된 핫커피가 들어있는 컵에 스푼과 설탕과 밀크를 함께 담아, 손님의 테이블로 운반하고, 손님이 요금을 지불할 때까지 대기하는 등의 행동을 취할 것임을 이해한다.
그러나, 환경 조건이 변해서, 예를 들면 서점의 점원에게 「뜨거운 것 하나」라고 말을 하더라도, 그 점원은 그 말의 의미를 이해할 수는 없을 것이다. 이와 같이, 환경에 따라서 자기에게 들려진 말을 유연하게 해석할 수 있으면, 가령 정보량이 적은 데이타를 수령하였다고 해도, 그 데이타를 적절하게 해석할 수 있다.
일반적으로, 「회화」라는 행위에는,
1. 말하는 사람은, 말하는 사람의 의도를 듣는 사람에게 전달하기 위해, 이야기할 내용을 준비하고,
2. 이야기를 시작한다.
3. 듣는 사람은, 그 이야기를 듣고, 이야기의 흐름을 이해하고,
4. 그 이야기의 배경을 자신이 경험한 것으로 연상하여, 관련시키고,
5. 그 이야기의 내용을 이해하고,
6. 그 결과, 행위를 일으킨다.
라고 한 스텝으로 구성된다.
이와 같이 회화를 패턴화함으로써, 단순한 컴퓨터의 메시징 시스템을 보다 자연 언어의 메시지 처리에 가까운 것으로서 정의하고, 재이용 가능한 디자인으로 하면, 종래부터 자연 언어계에 가까운 메시지의 처리가 가능해져서, 이용하는 사용자에게 쉽게 친숙해지고, 어떠한 문맥을 갖는 일련의 패킷의 흐름의 교환을 문맥을 의식하면서 행하는 지능형 메시지 시스템을 구축할 수 있다.
한편, 종래부터, 분산 컴퓨터 환경에 있어서, 네트워크 상에 존재하는 서버에 제공되어 있는 장소에 자기 자신의 내부 상태를 유지한 상태 그대로 이동하고, 이동처의 장소에 있어서 인스트럭션을 형성하는 이동 에이전트(모빌 에이전트) 기술이 존재한다(특개평7-182174호 공보(USP5, 603, 031),「닛케이 커뮤니케이션 별책, 최신 인터넷 테크놀로지」 닛케이 BP사 pp 104-117, 니시다 후미히코, 후지와라 스스므 저 등).
이러한 이동 에이전트는, 이 이동처의 장소에 있어서 다른 에이전트(이동 에이전트 또는 상주 에이전트)와 컨택트하고, 필요한 서비스를 받을 수 있다. 장소는, 네트워크 상에 존재하는 서버에 의해 제공되어 있는 에이전트의 이동 장소이고, 에이전트 간의 컨택트를 서포트하고, 또한, 하드웨어 및 플랫폼의 차이를 흡수하고 있다.
이러한 이동 에이전트의 기술은, 사내 회의의 셋팅을 사원의 스케줄이나 회의실의 예약 상황에 따라 동적으로 조정하거나, 네트워크 상에 분산하는 원하는 정보를 입수하는 등, 지금까지 사람의 손에 의해 이루어져 있는 작업을 이 이동 에이전트가 대행하는 것을 가능하도록 하고 있다.
그러나, 이와 같은 에이전트 간의 통신을 행하는데 있어서, 하나의 장소에서 여러 종류의 통신을 서포트한다고 하면, 회화 내용에 어울하는 응답을 할 수 없거나, 응답에 요하는 처리 시간이 길어져서, 장소를 제공하는 서버의 부담이 컸다. 또한, 장소에서 제공을 받는 서비스의 요구가 복잡화하고, 의뢰를 발신하는 측의 부담으로 되어 있었다. 또한, 네트워크를 통해 송신되는 데이타의 데이타량이 커져서, 통신 시스템에 부담이 되고 있었다. 그리고, 회화 내용의 해석을 행하는 해석 실행 부품에 변경이 발생된 경우, 종래는 1개의 해석 실행 부품에 의존하고 있었기 때문에, 변경 후의 해석 실행 부품의 등록이나 도입 시 등에 있어서, 재시동을 요하고, 시스템을 일시적으로 정지시킬 필요가 있다고 하는 문제도 있었다.
공지 기술로서 네트워크 관리 시스템을 새로운 버젼으로 갱신하는데 있어서, 갱신 기간 동안에 상호 접속(interconnection)을 유지하도록 호환 자원(compatible resource)과의 치환을 행하는 비교 그룹(compatible class) 대응 테이블을 갖는 시스템 등도 존재하지만(특개평7-93235호 공보), 이러한 시스템에 있어서는, 시스템의 내부 상태를 검사하고, 그 검사 결과에 따라 자원의 치환을 행하는 것이어서, 수령한 메시지를 해석하고, 그것을 해석하는 해석 실행 부품을 동적으로 변경할 수 없고, 또한, 시스템이 정지되는 것을 피하기 위해 변경이 발생된 자원의 대체 자원을 준비할 필요가 있어, 사용자에게 부담이 되고 있었다.
본 발명의 하나의 목적은 에이전트 간의 회화의 내용(배경 개념, 어휘)에 따른 해석 실행 부품을 사용함으로써, 적절한 응답을 행할 수 있는 통신 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 불필요한 판단 논리를 삭감하여 고속 처리를 가능하게 한 메시지 처리 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 실행 시에 필요해지는 자원을 삭감한 메시지 처리 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 고속 병렬 회화 처리를 실현한 메시지 처리 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 에이전트 간의 통신을 서포트할 때에, 프로그래머의 개발이나 보수에 요하는 노동력 및 시간을 가능한 한 경감시키는 것이다.
본 발명의 또 다른 목적은 에이전트 간의 회화에 유연하게 대응할 수 있는 메시지 처리 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 통신 시스템으로의 부담이 적은 메시지 처리 시스템을 제공하는 것이다.
본 발명은 여러가지 에이전트 통신 언어, 내용 표현 언어, 콘텐트로 사용되는 배경 개념이나 어휘를 나타내는 온토로지(ontology)에 따라서, 동적으로 적절한 해석 실행 부품(interpretation execution parts)을 할당함으로써, 에이전트 간 또는 에이전트와 기존 시스템 사이에서, 유연하고 원활한 정보 교환, 협조 작업을 행할 수 있도록 한다.
본 발명의 바람직한 실시예에 있어서의 에이전트 통신 시스템은, 해석 실행 부품 관리 기능을 갖고, 시동 시에 회화 내용 감시 부품, 인터프리터, 트랜스레이터 등의 해석 실행 부품의 디렉토리를 주사하고, 어떠한 해석 실행 부품이 존재하는지를 해석 실행 부품 테이블을 작성하여 관리하고 있다.
가동 중에 테이블에 존재하지 않는 에이전트 통신 언어, 내용 표현언어, 온토로지의 조합의 메시지를 수신한 경우, 재차, 해석 실행 부품 저장 디렉토리를 주사하고, 그것에 대응하는 해석 실행 부품이 추가되어 있지 않는지의 여부를 조사한다. 해석 실행 부품이 추가되어 있는 경우에는, 테이블에 그 부품을 추가하고, 그 부품에 메시지의 처리를 시킨다.
본 발명의 1 태양에 있어서는,
(a) 온토로지 특정 정보와, 콘텐트를 포함하는 메시지 패킷을 수령하는 단계와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 단계와,
(c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트를 해석하는 단계,
를 포함하는 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 방법이 제공된다.
본 발명의 특허 청구의 범위에 있어서는, 「온토로지」란, 본 발명의 바람직한 실시예에 있어서 설명하는 「배경 개념이나 어휘」만이 아니라, 전달된 정보의 내용을 판단함에 있어서, 판단 결과를 압축(squeeze)하거나, 또는 판단 과정을 삭감하기 위한 모든 정보를 포함하는 개념이고, 「온토로지 특정 정보」란, 상기 온토로지를 특정하기 위한 모든 정보를 포함하는 개념이다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와, 기술 언어 특정 정보와, 콘텐트 특정 정보를 포함하는 메시지 패킷을 수령하는 단계와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 단계와,
(c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트 특정 정보에 대응한 콘텐트를 해석하는 단계
를 포함하는 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 방법이 제공된다.
본 발명의 특허 청구의 범위에 있어서는, 「콘텐트 특정 정보」란, 콘텐트 자체 뿐만 아니라 콘텐트를 지시하기 위한 링크 정보 등을 포함하는 개념이다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 콘텐트에 대응된 온토로지 특정 정보에 따라서, 복수의 해석 실행부 중에서 1 이상의 해석 실행부를 선택하는 단계와,
(b) 상기 선택된 1 이상의 해석 실행부에 의해, 상기 콘텐트를 해석하는 단계
를 포함하는 복수 종류의 해석 실행부를 갖는 메시지 처리 장치로 실행되는 메시지 처리 방법이 제공된다.
본 발명의 특허 청구의 범위에 있어서는, 「해석 실행부」란, 본 발명의 바람직한 실시예에서 설명하는 회화 내용 감시부, 인터프리터, 트랜스레이터를 포함하는 개념이다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와 콘텐트를 포함하는 메시지 패킷을 수령하는 단계와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 인터프리터 관리 테이블에 등록되어 있는지의 여부를 판단하는 단계와,
(c) 상기 메시지 패킷에 포함되는 온토로지 특정 정보가 상기 인터프리터 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하는 단계와,
(d) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 인터프리터를 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응시켜, 상기 인터프리터 관리 테이블에 등록하는 단계와,
(e) 상기 메시지 패킷에 포함되는 콘텐트를 상기 대응하는 인터프리터에 의해 해석하는 단계
를 포함하는 복수 종류의 인터프리터와, 상기 복수 종류의 인터프리터의 각각에 대응하는 복수의 온토로지 특정 정보를 관리하는 인터프리터 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 방법이 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 해석 실행부 특정 정보와 콘텐트를 포함하는 메시지 패킷을 수령하는 단계와,
(b) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 해석 실행 관리 테이블에 등록되어 있는지의 여부를 판단하는 단계와,
(c) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보가 상기 해석 실행 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하는 단계와,
(d) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 해석 실행부를 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응시켜, 상기 해석 실행부 관리 테이블에 등록하는 단계
를 포함하는 복수 종류의 인터프리터와, 상기 복수 종류의 해석 실행부와 해석 실행부 특정 정보를 대응시켜 관리하는 해석 실행부 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 방법이 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와, 콘텐트를 포함하는 메시지 패킷을 수령하는 에이전트 통신 언어 매니저와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 인터프리터용 로더
를 포함하는 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와, 기술 언어 특정 정보와, 콘텐트 특정 정보를 포함하는 메시지 패킷을 수령하는 에이전트 통신 언어 매니저와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 인터프리터용 로더
를 포함하는 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
복수 종류의 해석 실행부를 갖는 메시지 처리 장치에 있어서, 콘텐트에 대응시킨 온토로지 특정 정보에 따라서, 상기 복수의 해석 실행부 중에서 1 이상의 해석 실행부를 선택하고, 상기 선택된 1 이상의 해석 실행부에 의해, 상기 콘텐트를 해석하는 메시지 처리 장치가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와 콘텐트를 포함하는 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 인터프리터 관리 테이블에 등록되어 있는지의 여부를 판단하고,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보가 상기 인터프리터 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하고,
(c) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 인터프리터를 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응시켜, 상기 인터프리터 관리 테이블에 등록하는 인터프리터용 로더를 포함하는 복수 종류의 인터프리터와, 상기 복수 종류의 인터프리터의 각각에 대응하는 복수의 온토로지 특정 정보를 관리하는 인터프리터 관리 테이블을 갖는 메시지 처리 장치가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 해석 실행부 특정 정보와 콘텐트를 포함하는 메시지 패킷에 포함되는 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 해석 실행 관리 테이블에 등록되어 있는지의 여부를 판단하고,
(b) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보가 상기 해석 실행 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하고,
(c) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 해석 실행부를 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응시켜, 상기 해석 실행부 관리 테이블에 등록하는 인터프리터용 로더를 포함하는 복수 종류의 인터프리터와, 상기 복수 종류의 해석 실행부와 해석 실행부 특정 정보를 대응시켜 관리하는 해석 실행부 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 방법이 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와, 기술 언어 특정 정보와, 콘텐트 특정 정보와, 응답ID를 포함하는 메시지 패킷을 수령하는 에이전트 통신 언어 매니저와,
(b) 상기 메시지 패킷에 포함되는 응답 ID를 해석하고, 회화 스래드(thread)를 생성하는 회화 스래드 제어부와,
(c) 상기 메시지 패킷을 기록하는 메시지 로그와,
(d) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터 프리터를 선택하는 인터프리터용 로더
를 포함하는 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와, 콘텐트를 포함하는 메시지 패킷을 수령하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트를 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드를 포함하는 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와, 기술 언어 특정 정보와, 콘텐트 특정 정보를 포함하는 메시지 패킷을 수령하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트 특정 정보에 대응한 콘텐트를 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드를 포함하는 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 콘텐트에 대응된 온토로지 특정 정보에 따라서, 상기 복수의 해석 실행부중에서 1 이상의 해석 실행부를 선택하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(b) 상기 선택된 1 이상의 해석 실행부에 의해, 상기 콘텐트를 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
를 포함하는 복수 종류의 해석 실행부를 갖는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 온토로지 특정 정보와 콘텐트를 포함하는 메시지 패킷을 수령하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 인터프리터 관리 테이블에 등록되어 있는지의 여부를 판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(c) 상기 메시지 패킷에 포함되는 온토로지 특정 정보가 상기 인터프리터관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(d) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 인터프리터를 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응시켜, 상기 인터프리터 관리 테이블에 등록하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(e) 상기 메시지 패킷에 포함되는 콘텐트를 상기 대응하는 인터프리터에 의해 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
를 포함하는 복수 종류의 인터프리터와, 상기 복수 종류의 인터프리터의 각각에 대응하는 복수의 온토로지 특정 정보를 관리하는 인터프리터 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체가 제공된다.
본 발명의 또 다른 1 태양에 있어서는,
(a) 해석 실행부 특정 정보와 콘텐트를 포함하는 메시지 패킷을 수령하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(b) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 해석 실행 관리 테이블에 등록되어 있는지의 여부를 판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(c) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보가 상기 해석 실행 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
(d) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 해석 실행부를 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응시켜, 상기 해석 실행부 관리 테이블에 등록하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
를 포함하는 복수 종류의 인터프리터와, 상기 복수 종류의 해석 실행부와 해석 실행부 특정 정보를 대응시켜 관리하는 해석 실행부 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체가 제공된다.
도 1은 본 발명의 이동 에이전트가 동작하는 분산 네트워크 환경(distributed network environment)을 도시한 도면.
도 2는 본 발명의 클라이언트 시스템 또는 서버 시스템의 하드웨어 구성의 1실시예를 도시한 블록도.
도 3은 본 발명의 클라이언트 사이트 또는 서버 사이트에서 처리 요소의 1실시예를 도시한 블록도.
도 4는 본 발명의 메시지 패킷의 일예를 도시한 개념도.
도 5는 본 발명의 클라이언트(또는 서버) 사이트에서의 처리 요소의 1실시예를 도시한 블록도.
도 6은 본 발명의 바람직한 실시예에서의 콤포넌트(components) 사이의 오브젝트 인터액션 다이어그램.
도 7은 본 발명의 바람직한 실시예에서의 회화 내용 감시 부품 관리 테이블을 도시한 개념도.
도 8은 본 발명의 서버(또는 클라이언트) 사이트에서의 처리 요소의 1실시예를 도시한 블록도.
도 9는 본 발명의 바람직한 실시예에서의 콤포넌트 사이의 오브젝트 인터액션 다이어그램.
도 10은 본 발명의 바람직한 실시예에서의 인터프리터 관리 테이블을 도시한 개념도.
도 11은 본 발명의 바람직한 실시예에서의 트랜스레이터 관리 테이블을 도시한 개념도.
도 12는 본 발명의 클라이언트(또는 서버) 사이트에서의 처리 요소의 1실시예를 도시한 블록도.
도 13은 본 발명의 서버(또는 클라이언트) 사이트에서의 처리 요소의 1실시예를 도시한 블록도.
도 14는 본 발명의 에이전트 통신 시스템을 네트워크상에서 이동시키는 경우 처리 수순의 1실시예를 도시한 흐름도.
도면의 주요 부분에 대한 부호의 설명
100 : 노드 시스템
200 : 에이전트 통신 시스템
203 : 에이전트 통신 언어 매니저(agent communication language manager)
205 : 회화 스래드 제어부(conversation thread control part)
207 : 회화 스래드
211 : 메시지 으로그
213 : ID 제너레이터
215 : 회화 내용 감시부용 로더(conversation content monitoring part loader)
217 : 회화 내용 감시부
219 : 트랜스레이터용 로더
221 : 트랜스레이터
223 : 인터프리터용 로더
225 : 인터프리터
이하, 도면을 참조하여 본 발명의 실시예를 설명한다.
A. 분산 네트워크 환경
도 1을 참조하면, 본 발명의 이동 오브젝트를 실행하는 분산 네트워크 환경(150)이 도시되어 있다. 각 서버(112)∼(115)에는 이동 에이전트(125, 135, 141) 등에 서비스를 주는 것이 가능한 플레이스(102)∼(105)가 준비되어 있다. 이 분산 네트워크 환경에서의 플레이스군(group of places)을 크라우드(crowd)라고 부르고 있다.
클라이언트 시스템(101)에 있어서는 이동 에이전트를 생성하고, 이동시키기 위한 애플리케이션(113)이 존재한다. 애플리케이션(113)이 송출한 이동 에이전트(125) 등은 각 플레이스(102)∼(105)에 있어서 존재하는 다른 에이전트(이동 에이전트 또는 상주 에이전트)와 콘택하고(이동 에이전트와 콘택하고, 서비스를 제공하는 에이전트를 특히 액터 에이전트(actor agent)라 함), 요구(request)를 송출하고, 그 요구의 결과를 받을 수 있다. 플레이스는 에이전트 사이의 콘택을 서포트하고 있다. 또한, 이동 에이전트(125) 등은 액터 에이전트에서 수령한 요구의 결과를 유지하고, 이동을 계속하고, 또는 이동 도중에 결과를 클라이언트(101) 또는 다른 플레이스로 송출할 수도 있다.
또한, 이동 에이전트(또는 상주 에이전트)(125)는 다른 플레이스에 메시지 패킷을 송출하여, 다른 플레이스에서 회화를 실행하고, 명령을 실행할 수도 있다.
도 2는 도 1에 도시한 분산 네트워크 환경 상에 존재하는 각 노드(서버 또는 클라이언트 사이트)의 하드웨어 구성의 개념도를 도시하고 있다. 각 노드(100)는 중앙 처리 장치(CPU)(1)와 메모리(4)를 포함하고 있다. CPU(1)와 메모리(4)는 보조 기억 장치로 동작하는 하드 디스크 장치(13)에 버스(2)를 통해 접속되어 있다. 플로피 디스크 장치(20), 하드 디스크 장치(13, 30), CD-ROM 드라이브(26, 29), MO 드라이브(28) 등의 기억 매체 구동 장치(storage media drives)는 플로피 디스크 콘트롤러(19), IDE 콘트롤러(25), SCSI 콘트롤러(27) 등의 각종 콘트롤러를 통해 버스(2)에 접속되어 있다.
플로피 디스크 장치(20) 등의 기억 매체 구동 장치에는 플로피 디스크 등의 휴대형(可搬型) 기억 매체(portable storage media)가 삽입되고, 이 플로피 디스크와,하드 디스크 장치(13), ROM(14) 등의 기억 매체에는 오퍼레이팅 시스템과 협동하여 CPU 등에 명령을 주고, 본 발명을 실시하기 위한 컴퓨터 소프트웨어를 기록할 수 있고, 이 소프트웨어가 메모리(4)에 로드됨으로써 실행된다. 이 컴퓨터 소프트웨어는 압축 또는 복수로 분할하여 복수의 매체에 기록할 수도 있다.
노드 시스템(node system;100)은 또 유저 인터페이스 하드웨어를 구비한 시스템으로 할 수 있고, 유저 인터페이스 하드웨어로서는 예를 들면, 입력을 하기위한 포인팅 디바이스(마우스, 조이스틱 등)(7) 또는 키보드(6)나 시각 데이터를 유저에게 제시하기 위한 디스플레이(12)가 있고, 또 패러렐 포트(16)를 통해 프린터를 접속하는 것도 가능하다. 이 노드 시스템(100)은 시리얼 포트(15)를 거쳐 모뎀을 접속하는 것이 가능하고, 시리얼 포트(15) 및 모뎀 또는 토큰링(token ring)이나 통신 어댑터(18) 등을 거쳐 네트워크에 접속하여, 다른 컴퓨터 시스템과 통신을 실행하고 있다.
이와 같이, 본 발명은 통상의 퍼스널 컴퓨터(PC), 워크스테이션, 범용기나 그들의 조합에 의해 실시가능함을 용이하게 이해할 수 있을 것이다. 단, 이들 구성 요소는 예시이고, 그 모든 구성 요소가 본 발명의 필수 구성 요소로 되는 것은 아니다. 특히, 서버측에서는 서버를 원격 조작하는 것도 가능하기 때문에 유저 인터페이스 등은 필요없고, CPU나 메모리 등의 기본적인 데이터 처리 기능과 통신 기능이 있으면 충분하다. 또한, 클라이언트측에서는 후술하는 메시지 패킷을 송출하는 데 필요한 구성을 갖고 있으면 좋고, 통신 기능과 메시지 패킷의 지정을 실행하고, 메시지 패킷의 송출을 지시하기 위한 몇가지 데이터 처리 기능과 입력 수단이 있으면 좋다.
클라이언트 시스템측, 서버 시스템측, 모두 오퍼레이팅 시스템으로서는, WindowsNT(마이크로소프트의 상표), Windows95(마이크로소프트의 상표), Windows3.x(마이크로소프트의 상표), OS/2(IBM의 상표), AIX(IBM의 상표) 상의 X-WINDOW 시스템(MIT의 상표), Solaris(선마이크로시스템의 상표) 등의 표준으로 GUI 멀티윈도우 환경을 서포트하는 것이나, PC-DOS(IBM의 상표), MS-DOS(마이크로소프트의 상표) 등의 캐릭터 베이스 환경의 것, 더욱이는 OS/Open(IBM의 상표) VxWorks(Wind River Systems, Inc.의 상표) 등의 리얼타임 OS로도 실현가능하고, 특정 오퍼레이팅 시스템 환경에 한정되는 것은 아니다.
B. 시스템 구성
이어서, 도 3의 블록도를 참조하여, 본 발명의 바람직한 실시예에서 서버측 시스템 구성에 대하여 설명한다.
에이전트(201)는 이 서버에 보내져 온 이동 에이전트 또는 이 서버에 상주하고 있는 상주 에이전트이다. 이 에이전트(201)는 후술하는 메시지 패킷을 송출하고 또는 수령함으로써 에이전트 통신 시스템(200)과 대화할 수 있다.
에이전트 통신 언어 매니저(203)는 에이전트(201)나 기존 시스템, 네트워크에서 전송되는 메시지를 수령하고, 또 메시지를 이들 시스템에 송신하기 위한 콤포넌트이다.
회화 스래드 제어부(205)는 에이전트(201) 등과 대화하는 각 회화에 대응하는 스래드(207)(복수의 회화를 비동기로 받기 위해 멀티스래드화하고 있음. 이 스래드를 회화 스래드라고 함)를 관리하고, 회화의 흐름에 따라 적절한 스래드를 생성하거나 또는 이미 생성된 스래드로 제어를 넘기는 콤포넌트이다.
메시지 으로그(211)는 회화를 기억하는 콤포넌트이다. 회화 내용 감시부(217)는 메시지 으로그(211)에 저장된 회화의 로그와 현재 발화되어 있는 내용에서 회화가 성립하는가 어떤가의 폴리시 체크(policy check)를 실행하는 콤포넌트이다. 또한, 회화 내용 감시부용 로더(215)는 메시지 패킷(300)의 메시지 타입에 따른 회화 내용 감시부(217)를 호출하기 위한 콤포넌트이다.
트랜스레이터(221)는 회화에 쓰이고 있는 에이전트 통신 언어를 다른 언어로 번역하는 콤포넌트이다. 트랜스레이터용 로더(219)는 이 트랜스레이터군을 관리하는 콤포넌트이다.
인터프리터(225)는 회화의 내용을 이해하고 실행하는 콤포넌트이다. 이 인터프리터는 후술하는 온토로지(ontology)나 기술(記述) 언어에 대응하여 복수 종류 마련되어 있고, 각각 온토로지로 특화한 포맷 체크 루틴이나 콘텐트 해석 루틴, 실행 루틴을 갖고 있다. 예를 들면, 교통 기관의 예약에 관한 온토로지였던 경우, R, flight, Narita to Tacoma, 1997/07/06/15:00-1997/07/06/18:00라고 하는 콘텐트를 수령하고, 소정의 포맷 체크를 실행하여, R을 예약을 지시하는 커맨드로 해석하는 등의 특유의 콘텐트 해석 루틴을 실행하고, 소정의 항공 회사의 데이터베이스에 액세스하여, 예약 상황 등을 체크하는 등의 고유의 실행 루틴을 실행한다. 그리고, 최종적으로 1997년7월5일17시10분 나리타 공항발, 시에틀의 타코마 공항행의 xx항공 26편, 이코노미 금연석의 예약을 실행하고, 발신자에 대하여 예약의 확인을 실행한다.
인터프리터용 로더(223)는 이 인터프리터(225) 군을 관리하는 콤포넌트이다. 프로토콜 매니저(230)는 접속하는 네트워크의 종류에 따른 프로토콜로 변환하기 위한 콤포넌트이다.
이상 도 3에 도시한 각 기능 블록을 설명하였지만, 이들 기능 블록(콤포넌트)은 논리적 기능 블록이고, 각각 하나의 조합을 가진 하드웨어나 소프트웨어에 의해 실현되는 것 만을 의미하는 것은 아니고, 복합 또는 공통한 하드웨어나 소프트웨어에 의해서도 실현 가능하다. 또한 이 도 3에 도시한 모든 기능 블록이 본 발명에 필수 구성 요소라고 해석되는 것은 아니다.
이상, 도 3 및 도 4에 나타낸 각 기능블록을 설명하였지만, 이들 기능 블록은 논리적 기능블록이고, 각각 1개의 통합을 갖는 하드웨어나 소프트웨어에 의해 실행되는 것을 의미하는 것은 아니고, 복합하거나 또는 공통된 하드웨어나 소프트웨어에 의해 실현가능하다. 또, 도 3, 도 4에 나타낸 모든 기능 블록이 본 발명에 필수 구성요소로 해석되는 것은 아니다.
예를 들면, 본 발명은 회화 내용 감시부(217), 트랜스레이터(221), 인터프리터(225) 등의 해석 실행 부품 몇 개를 다이나믹하게 전환하고, 사용할 해석 실행 부품을 나타내는 회화 내용 감시부용 로더(215), 트랜스레이터용 로더(219), 인터프리터용 로더(223) 중 어느 것이 존재하면 되며, 에이전트 통신 언어 매니저(203), 회화 스래드 제어부(205), 회화 스래드(207), 메시지 으로그(211), ID 제너레이터(213), 회화 내용 감시부(217), 트랜스레이터(221), 인터프리터(225)는 본 발명의 1 태양에 있어서는 필수 구성 요소로 되지 않는다.
C. 동작 설명
도 4는 본 발명의 바람직한 실시예에 있어서 사용되는 메시지 패킷(300)의 개념도이고, 도 5는 도 3에 도시한 각 콤포넌트의 발화시의 동작 상태를 도시한 도면이다.
본 발명의 바람직한 실시예에 있어서 도 4의 메시지 패킷(300)에 포함되는 메시지 타입(301)은 에이전트 통신 언어(ACL:Agent Communication Language)의 퍼포머티브(performative)가 사용되고 있다. ACL은 에이전트 사이의 통신을 인간의 언어에 가까운 형으로 제공하고 있는 고급 언어이고, FIPA(Foundation for Intelligent Physical Agents)가 제공하고 있는 ACL이나 KQML(Knowledge Query Manipulation Language), KIF(Knowledge Interchange Format) 등이 있고, 이들 언어는 SEMANTICS FOR AN AGENT COMMUNICATION LANGUAGE, Yannis Labrou, A Doctoral Dissertation for the Phd Defense Examination, Submitted to the Defense Committee, at the Computer Science and Electrical Engineering Department(CSEE), University of Maryland Graduate School 이나 TR CS-97-03, A Proposal for a new KQML Specification, Yannis Labrou and Tim Finin February 3, 1997 등에 의해 공표되어 있다.
ACL의 하나인 KQML의 퍼포머티브에는 다음과 같은 것이 있다.
ask-if, ask-all, ask-one, stream-all, eos, tell, untell, deny, insert, uninsert, delete-one, delete-all, undelete, achieve, unachieve, advertise, unadvertise, subscribe, error, sorry, standby, ready, nest, rest, discard, register, unregister, forward, broadcast, transport-address, broker-one, broker-all, recommend-one, recommend-all, recruit-one, recruit-all
센더(303)는 메시지의 송출원(sender)이고, 리시버(305)는 메시지의 수취처(receiver)이다.
응답 ID(307)는 선행하는 회화에 이어지는 ID이다. 에이전트(201)가 복수의 상대와 회화하는 경우, 후술하는 회화 스래드에 대응하여 복수의 응답 ID가 할당된다.
회화 ID(309)는 회화 상대에게 이 ID로 응답할 것을 지시하기 위한 ID이다.
기술 언어 타입(description language type;311)은 콘텐트를 기술하고 있는 언어를 특정하는 정보이다. 온토로지(313)는 콘텐트가 규정하고 있는 온토로지를 특정하는 정보이다.
콘텐트(315)는 메시지의 구체적 내용이고, 본 발명의 바람직한 실시예에서는다른 플레이스로 이동한 후에 명령을 형성하기 위한 소프트웨어를 포함하고 있다. 이 콘텐트(315)의 내부에는 또 메시지 패킷을 포함할 수도 있고, 중계점을 거쳐, 다른 플레이스로 이동시킬 수도 있다. 본 발명의 바람직한 실시예에 있어서는 이러한 경우, 센더(303)와 리시버(305)는 따로 참 송신자와 최종적인 수신자를 나타내는 From 엔트리와 to 엔트리가 마련되어 있다.
이어서, 도 5를 참조하면서 도 3에 도시한 각 콤포넌트의 발화시 동작 상태를 설명한다. 에이전트(201)는 에이전트 통신 시스템(200)에 대하여 도 4의 메시지 패킷을 송출한다. 본 발명의 바람직한 실시예에 있어서는 도 3에 도시한 콤포넌트가 오브젝트 지향 언어의 클래스로서 정의되어 있고, 발화에 즈음해서의 각 오브젝트는 도 6의 콤포넌트 사이의 오브젝트 명령 다이어그램에 도시한 바와 같이, 다른 오브젝트에 명령을 송출함으로써 다른 오브젝트의 동작을 촉구하고 있다.
메시지 패킷(300)을 수령한 에이전트 통신 언어 매니저(203)는 자신이 sendMessage로 불리어진 경우에는 발화처리를 행하고, receiveMessage로 불리어진 경우에는 수화처리(受話處理)를 행하고 있다.
회화 스래드 제어부(205)는 메시지 패킷(300)에 포함되는 응답 ID(307)를 참조하고, 이미 생성되어 있는 회화 스래드에 처리를 의뢰할 것인지의 여부를 판단한다. 회화 스래드 제어부(205)가 새로운 회화라고 판단한 경우에는 회화 스래드(207)를 새로 생성하고, ID 제너레이터(213)에 새로운 응답 ID(307), 회화 ID(309)의 할당을 회화 스래드(207)를 거쳐 지시하고, 처리를 회화 스래드(207)로 옮긴다. 본 발명의 바람직한 실시예에 있어서, 이 응답 ID(307)는 「URL + Date + Time + 시리얼 번호」 등의 네트워크 상에서 한결같이 결정하기 위한 ID가 할당된다.
응답 ID(307)에 대응하는 회화 스래드(207)가 존재하고 있는 경우, 회화 스래드 제어부(205)는 새로운 회화가 아니라고 판단하고, 대응하는 회화 스래드(207)로 처리를 옮긴다. 회화를 계속할 것을 원하는 경우에는 회화 스래드(207)가 ID 제너레이터(213)에 회화 ID(309)의 할당을 지시한다.
메시지 으로그(211)는 회화 스래드(207)에 보내진 메시지 패킷(300)을 기억한다.
회화 내용 감시부용 로더(215)는 메시지 패킷(300)의 메시지 타입(301)에 따른 회화 내용 감시부(217)를 호출한다. 메시지 타입(301)에 따른 회화 내용 감시부(217)를 호출하는 것은 도 7에 도시한 바와 같은 회화 내용 감시 부품 테이블을 마련하여도 회화 내용 감시 부품의 클래스명을 메시지 타입과 같게 하여 직접 호출하여도 좋다.
회화 내용 감시부(217)는 메시지 으로그(211)에 저장된 회화의 로그와 핸재 발화되고 있는 내용에서 회화가 성립하는지 어떤지에 대한 폴리시 체크를 실행한다. 예를 들면, 수령한 메시지 패킷(300)의 메시지 타입(301)이 sorry(회화의 내용은 이해가능하지만, 자신에게는 처리 능력이 없음을 나타내는 메시지 타입)이었던 경우, 메시지 으로그(211)에서 대응하는 응답 ID를 갖고, 하나전의 회화 ID를 갖는 메시지의 메시지 타입을 참조하고, ask-if(상대편의 처리 능력을 묻는 경우의 메시지 타입) 등의 회화로서 성립하는 메시지 타입이면 문제없다고 판단하고, 예를 들면, deny(부정(否定))을 나타내는 메시지 타입) 등의 회화로서 성립하지 않는 메시지 타입이라고 판단한 경우는 에러라고 판단하고, 메시지 패킷(300)의 센더(303)에 대하여 error(에러를 나타내는 메시지 타입)의 메시지 패킷을 송부하는 등의 처리를 실행한다.
회화로서 성립한다고 판단된 경우, 메시지 패킷(300)은 회화 스래드(207)로부터 프로토콜 매니저(230)를 통해 리시버(303)로 지정되는 노드에 송신된다. 이때, 프로토콜 매니저(230)는 접속하는 네트워크의 종류에 따른 프로토콜로 변환하므로, 에이전트 통신 시스템(200)은 네트워크 프로토콜을 의식하지 않고 메시지 패킷(300)의 송수신을 할 수 있다.
이어서, 도 8, 도 9를 참조하여, 이 송출된 메시지 패킷(300)을 수령한 노드에서 각 콤포넌트의 동작 상태를 설명한다.
프로토콜 매니저(230)에서 메시지 패킷(300)을 수령한 에이전트 통신 언어 매니저(203)는 handleMessage에 의해 호출되었으므로, 수령한 메시지 패킷(300)이 수화(受話)하기 위한 메시지 패킷이라고 판단하고, 회화 스래드 제어부(205)에 처리를 의뢰한다. 본 발명의 바람직한 실시예에 있어서 프로토콜 매니저(230)는 에이전트 통신 언어 매니저(203)가 내부적으로 실증하고(instantiate) 있으므로, 에이전트 통신 언어 매니저(203)의 존재를 알고 있고, 유입 데이터를 에이전트 통신 언어 매니저(203)로 넘길 수 있다.
회화 스래드 제어부(205)는 메시지 패킷(300)에 포함되는 응답 ID(307)를 참조하고, 이미 생성되어 있는 회화 스래드에 처리를 의뢰할 것인지 여부를 판단한다. 회화 스래드 제어부(205)가 새로운 회화라고 판단한 경우에는 회화 스래드(207)를 새로 생성하고, 처리를 회화 스래드(207)로 옮긴다.
응답 ID(307)에 대응하는 회화 스래드(207)가 존재하고 있는 경우, 회화 스래드 제어부(205)는 새로운 회화가 아니라고 판단하고, 대응하는 회화 스래드(207)로 처리를 옮긴다.
메시지 으로그(211)는 회화 스래드(207)로 보내진 메시지 패킷(300)을 기억한다.
회화 내용 감시부용 로더(215)는 메시지 패킷(300)의 메시지 타입(301)에 따른 회화 내용 감시부(217)를 호출한다.
회화 내용 감시부(217)는 메시지 으로그(211)에 저장된 회화의 로그와 현재 발화되고 있는 내용에서 회화가 성립하는가 어떤가의 폴리시 체크를 실행한다.
회화로서 성립한다고 판단된 경우, 회화 스래드(207)는 인터프리터용 로더(223)로 처리를 옮긴다. 인터프리터용 로더(223)는 메시지 패킷(300)의 에이전트 통신 언어를 파악하고, 또 메시지 패킷(300)에 포함되는 기술 언어 타입(311), 온토로지(313)에 대응하는 인터프리터가 도 10에 도시한 바와 같은 인터프리터 관리 테이블(350)에 등록되어 있는가 아닌가를 판단한다.
만일, 수령한 메시지 패킷(300)의 에이전트 통신 언어, 기술 언어 타입(311), 온토로지(313)에 대응하는 인터프리터가 인터프리터 관리 테이블(350)에 등록되어 있는 경우에는 그 인터프리터를 사용하여 콘텐트(315)의 해석을 실행한다. 수령한 메시지 패킷(300)의 에이전트 통신 언어, 기술 언어 타입(311), 온토로지(313)에 대응하는 인터프리터가 인터프리터 관리 테이블(350)에 등록되어 있지 않은 경우, 본 발명의 바람직한 실시예에 있어서는 시스템이 관리하는(액세스 가능한) 인터프리터 라이브러리에 그 조합에 대응하는 인터프리터가 존재하는지 않는지를 판단한다.
존재한 경우에는 인터프리터 관리 테이블(350)에 등록을 실행하고, 그 인터프리터를 사용하여 콘텐트(315)의 해석을 실행한다. 에이전트 통신 언어, 기술 언어 타입(311), 온토로지(313)의 조합에 대응하는 인터프리터가 인터프리터 라이브러리에 존재하지 않는 경우는 기술 언어 타입(311), 온토로지(313)의 조합에 대응하는 인터프리터가 인터프리터 라이브러리에 존재하는지 않는지를 판단한다. 존재하지 않는 경우에는 처리 불능으로서 처리한다. 본 발명의 바람직한 실시예에 있어서, 온토로지는 계층 구조에 의해 대응지어져 있고, 가장 대응 관계가 깊은 온토로지의 인터프리터를 사용할 수도 있다.
존재한 경우에는 콘텐트(315)를 발견한 인터프리터의 에이전트 통신 언어로 번역하도록 처리를 트랜스레이터용 로더(219)로 옮긴다. 트랜스레이터용 로더(219)는 도 11에 도시한 바와 같은 트랜스레이터 관리 테이블(340)을 참조하고, 요구된 번역을 실행가능한 트랜스레이터가 존재하는지 않는지를 판단한다. 본 발명의 바람직한 실시예에 있어서, 존재하지 않는 경우는 인터프리터의 경우와 마찬가지로 트랜스레이터 라이브러리를 탐색하여, 테이블로의 등록을 실행하고, 번역된 콘텐트(315)를 선택한 인터프리터에 의해 처리한다. 존재하지 않는 경우에는 처리 불능으로서 처리한다.
본 발명의 바람직한 실시예에 있어서, 인터프리터(225)가 해석한 결과는 에이전트(231)로 전달되고, 콘텐트(315)에 기재된 명령의 내용에 따른 처리를 실행한다. 이 콘텐트(315)의 내용에 의해서는 회화 스래드를 소멸시키는 처리를 실행하거나 새루운 발화를 개시하는 처리로 이행하거나, 새로 에이전트를 생성하는 처리를 실행하거나 한다. 본 발명의 바람직한 실시예에 있어서, 인터프리터(225)는 처리를 회화 스래드(207)로 복귀시킨다. 회화 스래드(207)는 다음 메시지 패킷을 수령하기 까지 대기한다.
이상 설명한 본 발명의 바람직한 실시예에 있어서는 해석 실행 부품의 각종 관리 테이블로의 등록을 실행할 때에 실행되고 있지만, 실행시에는 실행하지 않고, 시동시에만 해석 실행 부품의 디렉토리를 주사하고, 어떠한 해석 실행 부품이 존재하는가 검사하고, 해석 실행 부품 테이블을 작성하여 관리하여도 좋다.
또한, 메시지 패킷(300)이 노드 사이를 이동하는 형식을 채용하고 있지만, 도 12, 도 13에 도시한 바와 같이, 메시지 패킷(300)을 이동 에이전트(233)에 첨부하여 송부할 수도 있다. 이러한 경우, 이동 에이전트(233)는 메시지 패킷(300)을 유지한 채, 복수의 플레이스를 전전하고, 회화를 실행하고, 또 그 처리 결과를 사용하여 다른 플레이스에서 회화를 실행하는 등의 복잡한 작업을 하는 것도 가능하게 된다.
이동 에이전트가 네트워크 상을 이동하는 경우, 도 14에 도시된 스텝을 실행함으로써 이동이 가능하게 된다.
이상 설명한 바와 같이, 본 발명에 의하면, 에이전트 간의 회화의 내용(배경개념, 어휘)에 따른 해석 실행 부품을 사용함으로써 적절한 응답을 행할 수 있는 통신 시스템을 제공할 수 있다.
본 발명의 1 태양에 있어서는 불필요한 판단 블록을 삭감하고, 고속처리를 가능하게 한 메시지 처리시스템을 제공할 수 있다.
본 발명의 1 태양에 있어서는 실행시에 필요로되는 자원을 삭감한 메시지 처리 시스템을 제공할 수 있다.
본 발명의 1 태양에 있어서는 고속인 병렬회화처리를 실현한 메시지 처리 시스템을 제공할 수 있다.
본 발명의 1 태양에 있어서는 에이전트간의 통신을 서포트할 때, 프로그램의 개발이나 보수에 요하는 노력 및 시간을 가능한한 줄일 수 있다.
본 발명의 1 태양에 있어서는 에이전트간의 회화에 유연하게 대응할 수 있는 메시지 처리 시스템을 제공할 수 있다.
본 발명의 1 태양에 있어서는 통신 시스템으로의 부담이 적은 메시지 처리 시스템을 제공할 수 있다.

Claims (16)

  1. 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 방법에 있어서,
    (a) 온토로지 특정 정보(ontology specifying information)와 콘텐트를 포함하는 메시지 패킷을 수령하는 단계와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 단계와,
    (c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트를 해석하는 단계
    를 포함하는 것을 특징으로 하는 메시지 처리 방법.
  2. 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 방법에 있어서,
    (a) 온토로지 특정 정보와, 기술 언어 특정 정보(describing language specifying information)와, 콘텐트 특정 정보를 포함하는 메시지 패킷을 수령하는 단계와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 단계와,
    (c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트 특정 정보에 대응한 콘텐트를 해석하는 단계
    를 포함하는 것을 특징으로 하는 메시지 처리 방법.
  3. 복수 종류의 해석 실행부(analysis execution parts)를 갖는 메시지 처리 장치로 실행되는 메시지 처리 방법에 있어서,
    (a) 콘텐트에 대응된 온토로지 특정 정보에 따라서, 상기 복수 종류의 해석 실행부 중에서 1 이상의 해석 실행부를 선택하는 단계와,
    (b) 상기 선택된 1 이상의 해석 실행부에 의해, 상기 콘텐트를 해석하는 단계
    를 포함하는 것을 특징으로 하는 메시지 처리 방법.
  4. 복수 종류의 인터프리터와, 상기 복수 종류의 인터프리터의 각각에 대응하는 복수의 온토로지 특정 정보를 관리하는 인터프리터 관리 테이블(interpreter control table)을 갖는 메시지 처리 장치로 실행되는 메시지 처리 방법에 있어서,
    (a) 온토로지 특정 정보와 콘텐트를 포함하는 메시지 패킷을 수령하는 단계와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 인터프리터 관리 테이블에 등록되어 있는지의 여부를 판단하는 단계와,
    (c) 상기 메시지 패킷에 포함되는 온토로지 특정 정보가 상기 인터프리터 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하는 단계와,
    (d) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 인터프리터를 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응시켜, 상기 인터프리터 관리 테이블에 등록하는 단계와,
    (e) 상기 메시지 패킷에 포함되는 콘텐트를 상기 대응하는 인터프리터에 의해 해석하는 단계
    를 포함하는 것을 특징으로 하는 메시지 처리 방법.
  5. 복수 종류의 인터프리터와, 복수 종류의 해석 실행부와 해석 실행부 특정 정보를 대응시켜 관리하는 해석 실행부 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 방법에 있어서,
    (a) 해석 실행부 특정 정보와 콘텐트를 포함하는 메시지 패킷을 수령하는 단계와,
    (b) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 해석 실행 관리 테이블에 등록되어 있는지의 여부를 판단하는 단계와,
    (c) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보가 상기 해석 실행 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하는 단계와,
    (d) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 해석 실행부를 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응시켜, 상기 해석 실행부 관리 테이블에 등록하는 단계
    를 포함하는 것을 특징으로 하는 메시지 처리 방법.
  6. 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치에 있어서,
    (a) 온토로지 특정 정보와 콘텐트를 포함하는 메시지 패킷을 수령하는 에이전트 통신 언어 매니저(agent communication language manager)와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 인터프리터용 로더(interpreter loader)
    를 포함하는 것을 특징으로 하는 메시지 처리 장치.
  7. 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치에 있어서,
    (a) 온토로지 특정 정보와, 기술 언어 특정 정보와, 콘텐트 특정 정보를 포함하는 메시지 패킷을 수령하는 에이전트 통신 언어 매니저와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 인터프리터용 로더
    를 포함하는 것을 특징으로 하는 메시지 처리 장치.
  8. 복수 종류의 해석 실행부를 갖는 메시지 처리 장치에 있어서, 콘텐트에 대응된 온토로지 특정 정보에 따라서, 상기 복수의 해석 실행부 중에서 1 이상의 해석 실행부를 선택하고, 상기 선택된 1 이상의 해석 실행부에 의해, 상기 콘텐트를 해석하는 것을 특징으로 하는 메시지 처리 장치.
  9. 복수 종류의 인터프리터와, 상기 복수 종류의 인터프리터의 각각에 대응하는 복수의 온토로지 특정 정보를 관리하는 인터프리터 관리 테이블을 갖는 메시지 처리 장치에 있어서,
    온토로지 특정 정보와 콘텐트를 포함하는 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 인터프리터 관리 테이블에 등록되어 있는지의 여부를 판단하고,
    상기 메시지 패킷에 포함되는 온토로지 특정 정보가 상기 인터프리터 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하고,
    상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 인터프리터를 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응시켜, 상기 인터프리터 관리 테이블에 등록하는 인터프리터용 로더를 포함하는 것을 특징으로 하는 메시지 처리 장치.
  10. 복수 종류의 인터프리터와, 복수 종류의 해석 실행부와 해석 실행부 특정 정보를 대응시켜 관리하는 해석 실행부 관리 테이블을 갖는 메시지 처리 장치에 있어서,
    해석 실행부 특정 정보와 콘텐트를 포함하는 메시지 패킷에 포함되는 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 해석 실행 관리 테이블에 등록되어 있는지의 여부를 판단하고,
    상기 메시지 패킷에 포함되는 해석 실행부 특정 정보가 상기 해석 실행 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하고,
    상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 해석 실행부를 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응시켜, 상기 해석 실행부 관리 테이블에 등록하는 인터프리터용 로더를 포함하는 것을 특징으로 하는 메시지 처리 장치.
  11. 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치에 있어서,
    (a) 온토로지 특정 정보와, 기술 언어 특정 정보와, 콘텐트 특정 정보와, 응답ID를 포함하는 메시지 패킷을 수령하는 에이전트 통신 언어 매니저와,
    (b) 상기 메시지 패킷에 포함되는 응답 ID를 해석하고, 회화 스래드를 생성하는 회화 스래드 제어부와,
    (c) 상기 메시지 패킷을 기록하는 메시지 로그와,
    (d) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하는 인터프리터용 로더
    를 포함하는 것을 특징으로 하는 메시지 처리 장치.
  12. 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체에 있어서,
    상기 메시지 처리 프로그램은,
    (a) 온토로지 특정 정보와, 콘텐트를 포함하는 메시지 패킷을 수령하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트를 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
    를 포함하는 것을 특징으로 하는 기록 매체.
  13. 복수 종류의 인터프리터를 갖고, 네트워크를 통해 수령한 메시지를 처리하는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체에 있어서,
    상기 메시지 처리 프로그램은,
    (a) 온토로지 특정 정보와, 기술 언어 특정 정보와, 콘텐트 특정 정보를 포함하는 메시지 패킷을 수령하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보와, 기술 언어 특정 정보에 따라서, 상기 복수 종류의 인터프리터 중에서 1 이상의 인터프리터를 선택하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (c) 상기 선택된 1 이상의 인터프리터에 의해, 상기 메시지 패킷에 포함되는 콘텐트 특정 정보에 대응한 콘텐트를 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
    를 포함하는 것을 특징으로 하는 기록 매체.
  14. 복수 종류의 해석 실행부를 갖는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체에 있어서,
    상기 메시지 처리 프로그램은,
    (a) 콘텐트에 대응된 온토로지 특정 정보에 따라서, 상기 복수의 해석 실행부 중에서 1 이상의 해석 실행부를 선택하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (b) 상기 선택된 1 이상의 해석 실행부에 의해, 상기 콘텐트를 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
    를 포함하는 것을 특징으로 하는 기록 매체.
  15. 복수 종류의 인터프리터와, 상기 복수 종류의 인터프리터의 각각에 대응하는 복수의 온토로지 특정 정보를 관리하는 인터프리터 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체에 있어서,
    상기 메시지 처리 프로그램은,
    (a) 온토로지 특정 정보와 콘텐트를 포함하는 메시지 패킷의 수령을 인식하기 위한 프로그램 코드와,
    (b) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 인터프리터 관리 테이블에 등록되어 있는지의 여부를 판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (c) 상기 메시지 패킷에 포함되는 온토로지 특정 정보가 상기 인터프리터 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를 판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (d) 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응하는 인터프리터가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 인터프리터를 상기 메시지 패킷에 포함되는 온토로지 특정 정보에 대응시켜, 상기 인터프리터 관리 테이블에 등록하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (e) 상기 메시지 패킷에 포함되는 콘텐트를 상기 대응하는 인터프리터에 의해 해석하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
    를 포함하는 것을 특징으로 하는 기록 매체.
  16. 복수 종류의 인터프리터와, 복수 종류의 해석 실행부와 해석 실행부 특정 정보를 대응시켜 관리하는 해석 실행부 관리 테이블을 갖는 메시지 처리 장치로 실행되는 메시지 처리 프로그램을 저장한 기록 매체에 있어서,
    상기 메시지 처리 프로그램은,
    (a) 해석 실행부 특정 정보와 콘텐트를 포함하는 메시지 패킷의 수령을 인식하기 위한 프로그램 코드와,
    (b) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 해석 실행 관리 테이블에 등록되어 있는지의 여부를 판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (c) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보가 상기 해석 실행 관리 테이블에 등록되어 있지 않다고 판단된 경우에, 상기 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능한지의 여부를판단하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드와,
    (d) 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응하는 해석 실행부가 상기 메시지 처리 장치에 있어서 이용 가능하다고 판단된 경우, 상기 대응하는 해석 실행부를 상기 메시지 패킷에 포함되는 해석 실행부 특정 정보에 대응시켜, 상기 해석 실행부 관리 테이블에 등록하도록 상기 메시지 처리 장치에 지시하기 위한 프로그램 코드
    를 포함하는 것을 특징으로 하는 기록 매체.
KR1019980017147A 1997-06-10 1998-05-13 메시지처리방법및메시지처리장치 KR100340179B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP15217097A JP3229240B2 (ja) 1997-06-10 1997-06-10 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP97-152170 1997-06-10

Publications (2)

Publication Number Publication Date
KR19990006437A true KR19990006437A (ko) 1999-01-25
KR100340179B1 KR100340179B1 (ko) 2002-07-18

Family

ID=15534576

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980017147A KR100340179B1 (ko) 1997-06-10 1998-05-13 메시지처리방법및메시지처리장치

Country Status (6)

Country Link
US (1) US6772109B2 (ko)
JP (1) JP3229240B2 (ko)
KR (1) KR100340179B1 (ko)
CN (1) CN1167015C (ko)
GB (1) GB2327515B (ko)
TW (1) TW432287B (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3883647B2 (ja) * 1997-06-10 2007-02-21 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP4256543B2 (ja) * 1999-08-17 2009-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 表示情報確定方法及び装置、表示情報確定のためのソフトウエア・プロダクトを格納した記憶媒体
JP2002123467A (ja) * 2000-10-16 2002-04-26 Oki Electric Ind Co Ltd 電子掲示板システム
US20020152260A1 (en) * 2001-03-12 2002-10-17 Qiming Chen Dynamic agent with embedded web server and mark-up language support for e-commerce automation
EP1374524A1 (en) * 2001-03-29 2004-01-02 BRITISH TELECOMMUNICATIONS public limited company Protocol conversion
US20020169592A1 (en) * 2001-05-11 2002-11-14 Aityan Sergey Khachatur Open environment for real-time multilingual communication
US7356820B2 (en) * 2001-07-02 2008-04-08 International Business Machines Corporation Method of launching low-priority tasks
US7447991B2 (en) * 2002-04-01 2008-11-04 Hewlett-Packard Development Company, L.P. Document agents
US20040167892A1 (en) * 2003-02-25 2004-08-26 Evan Kirshenbaum Apparatus and method for translating between different role-based vocabularies for multiple users
US7386436B2 (en) * 2003-12-22 2008-06-10 Inmedius, Inc. Viewing system that supports multiple electronic document types
GB0407145D0 (en) * 2004-03-30 2004-05-05 British Telecomm Inter-agent communication
US7450696B2 (en) * 2004-05-11 2008-11-11 At&T Intellectual Property I, L.P. Knowledge management, capture and modeling tool for multi-modal communications
US8332226B1 (en) * 2005-01-07 2012-12-11 At&T Intellectual Property Ii, L.P. System and method of dynamically modifying a spoken dialog system to reduce hardware requirements
TWI475481B (zh) * 2008-11-28 2015-03-01 Wistron Corp 用於一作業系統之鍵盤轉譯方法及其相關裝置
CN102868600B (zh) * 2012-09-10 2015-07-08 北京用友政务软件有限公司 一种多线程报文转发方法及系统
US9589565B2 (en) * 2013-06-21 2017-03-07 Microsoft Technology Licensing, Llc Environmentally aware dialog policies and response generation
BR102015004521B1 (pt) * 2015-02-27 2023-09-26 Samsung Eletrônica da Amazônia Ltda. Método para comunicação entre usuários e dispositivos inteligentes

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3846763A (en) * 1974-01-04 1974-11-05 Honeywell Inf Systems Method and apparatus for automatic selection of translators in a data processing system
US5339421A (en) * 1991-03-22 1994-08-16 International Business Machines Corporation General data stream parser for encoding and decoding data and program interface for same
JPH06195278A (ja) * 1992-11-09 1994-07-15 Toshiba Corp 送信メッセージ自動処理装置及び送信メッセージ自動処理方法
US6012074A (en) * 1993-09-17 2000-01-04 Digital Equipment Corporation Document management system with delimiters defined at run-time
US5630066A (en) * 1994-12-20 1997-05-13 Sun Microsystems, Inc. System and method for locating object view and platform independent object
WO1997008616A1 (en) * 1995-08-29 1997-03-06 Bell Communications Research, Inc. System and method for parsing and building data signals
GB2304944A (en) * 1995-09-12 1997-03-26 Ibm Support for application programs in a distributed environment
US5867175A (en) * 1996-05-24 1999-02-02 Microsoft Corporation Method and apparatus for scriping animation
US5953716A (en) * 1996-05-30 1999-09-14 Massachusetts Inst Technology Querying heterogeneous data sources distributed over a network using context interchange
US6233601B1 (en) * 1996-11-14 2001-05-15 Mitsubishi Electric Research Laboratories, Inc. Itinerary based agent mobility including mobility of executable code
US6065039A (en) * 1996-11-14 2000-05-16 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Dynamic synchronous collaboration framework for mobile agents

Also Published As

Publication number Publication date
KR100340179B1 (ko) 2002-07-18
GB9812094D0 (en) 1998-08-05
US20020055846A1 (en) 2002-05-09
GB2327515B (en) 2002-07-17
US6772109B2 (en) 2004-08-03
JP3229240B2 (ja) 2001-11-19
CN1201941A (zh) 1998-12-16
GB2327515A (en) 1999-01-27
CN1167015C (zh) 2004-09-15
TW432287B (en) 2001-05-01
JPH1115665A (ja) 1999-01-22

Similar Documents

Publication Publication Date Title
US7512660B2 (en) Message handling method, message handling apparatus, and memory media for storing a message handling apparatus controlling program
KR100340179B1 (ko) 메시지처리방법및메시지처리장치
US20010054105A1 (en) Message handling method, message handling apparatus, amd memory media for storing a message handling apparatus controlling program
US6049819A (en) Communications network incorporating agent oriented computing environment
JP3943543B2 (ja) マルチモーダル環境における対話管理およびアービトレーションを提供するシステムおよび方法
US6567848B1 (en) System for coordinating communication between a terminal requesting connection with another terminal while both terminals accessing one of a plurality of servers under the management of a dispatcher
US7401337B2 (en) Managing application interactions using distributed modality components
US20050203757A1 (en) System and method for pervasive enablement of business processes
US20050132009A1 (en) Instant message awareness and migration allowing for multiple simultaneous client logins
CN1968123B (zh) 动态多方、多个媒体通信自动协调的方法与装置
KR100307973B1 (ko) 전자메일또는에이전트를이용하여클라이언트상에서gui를작성하는정보처리방법및정보처리장치,정보처리장치를제어하는프로그램을저장한기억매체
JPH1031637A (ja) エージェント通信装置
CA2119215A1 (en) Method and apparatus for linking object managers for cooperative processing in an object oriented computing environment
JP2002324055A (ja) メッセージ処理方法
KR19980086598A (ko) 전자 메일을 이용한 정보 처리 방법과 정보 처리 장치 및 정보 처리 장치 제어 프로그램을 저장한 기억 매체
Naffah et al. Agora-an experiment in multimedia message systems
GB2338575A (en) Message handling
Lee Development of translation telephone system by using MQTT protocol
JP2002163054A (ja) ユーザ支援方法、装置およびシステム
Choi et al. Message-based agent communications in a tightly coupled multiagent system
Park et al. A framework for multi-agent systems with multi-modal user interfaces in distributed computing environments
Jang et al. Controlling agent interactions in a tightly coupled multiagent framework
Ko An Adaptive Dynamic Window Binding
Kim et al. An adaptive dynamic window binding model for RCSM

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 19980513

A201 Request for examination
AMND Amendment
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 19981002

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 19980513

Comment text: Patent Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20001129

Patent event code: PE09021S01D

AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20010912

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20001129

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

J201 Request for trial against refusal decision
PJ0201 Trial against decision of rejection

Patent event date: 20011213

Comment text: Request for Trial against Decision on Refusal

Patent event code: PJ02012R01D

Patent event date: 20010912

Comment text: Decision to Refuse Application

Patent event code: PJ02011S01I

Appeal kind category: Appeal against decision to decline refusal

Decision date: 20020305

Appeal identifier: 2001101004005

Request date: 20011213

AMND Amendment
PB0901 Examination by re-examination before a trial

Comment text: Amendment to Specification, etc.

Patent event date: 20020112

Patent event code: PB09011R02I

Comment text: Request for Trial against Decision on Refusal

Patent event date: 20011213

Patent event code: PB09011R01I

Comment text: Amendment to Specification, etc.

Patent event date: 20010228

Patent event code: PB09011R02I

Comment text: Amendment to Specification, etc.

Patent event date: 19981002

Patent event code: PB09011R02I

B701 Decision to grant
PB0701 Decision of registration after re-examination before a trial

Patent event date: 20020305

Comment text: Decision to Grant Registration

Patent event code: PB07012S01D

Patent event date: 20020128

Comment text: Transfer of Trial File for Re-examination before a Trial

Patent event code: PB07011S01I

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20020528

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20020529

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20050324

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20060417

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20060417

Start annual number: 5

End annual number: 5

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee