JPH08153010A - Information processing method, apparatus and system - Google Patents
Information processing method, apparatus and systemInfo
- Publication number
- JPH08153010A JPH08153010A JP6296995A JP29699594A JPH08153010A JP H08153010 A JPH08153010 A JP H08153010A JP 6296995 A JP6296995 A JP 6296995A JP 29699594 A JP29699594 A JP 29699594A JP H08153010 A JPH08153010 A JP H08153010A
- Authority
- JP
- Japan
- Prior art keywords
- event
- application
- information
- script
- group
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Landscapes
- Multi Processors (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】
【目的】動的に構成要素が変動しうる複雑な環境に対応
可能な、柔軟なマスタ・アプリケーションを提供するこ
とを可能とする。
【構成】あるアプリケーションにおいて、稼働中の作業
環境でアプリケーションの連携動作を行うためのイベン
トが発生すると、前記アプリケーション群の個々のアプ
リケーション毎に連係動作に関するイベントの処理内容
を示すイベント情報群より、該イベントに対応する当該
アプリケーションのイベント情報が検索され、検索され
たイベント情報に基づいて当該イベントの処理が実行さ
れる。
(57) [Abstract] [Purpose] It is possible to provide a flexible master application that can cope with a complicated environment in which the constituent elements can dynamically change. [Configuration] When an event occurs in a certain application in order to perform a cooperative operation of the application in a working work environment, an event information group indicating the processing content of the event related to the cooperative operation for each individual application of the application group is Event information of the application corresponding to the event is searched, and processing of the event is executed based on the searched event information.
Description
【0001】[0001]
【産業上の利用分野】この発明は、1台ないしそれ以上
のコンピュータ上で動作するアプリケーション・プログ
ラムを制御する機構に関するものである。特に、アプリ
ケーション・プログラムの起動,終了,メッセージ配送
処理などの制御をおこなうことにより、複数のアプリケ
ーション間の連係を可能にする機構に関するものであ
る。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a mechanism for controlling an application program running on one or more computers. In particular, the present invention relates to a mechanism that enables coordination among a plurality of applications by controlling the start and end of application programs and message delivery processing.
【0002】[0002]
【従来の技術】近年、パーソナルコンピュータやワーク
ステーション上でウィンドウ・システムを利用したGUI
(グラフィカル・ユーザ・インタフェース)の普及がめ
ざましい。それに伴いユーザに提供されるべきアプリケ
ーションも、かつてのGUI以前のプログラム環境におけ
るアプリケーションにくらべ、より複雑かつ多様な機能
をより洗練させた形で提供することが要求されるように
なってきた。2. Description of the Related Art In recent years, GUIs using window systems on personal computers and workstations
The spread of (graphical user interface) is remarkable. Along with this, the applications to be provided to users are required to provide more complicated and diverse functions in a more sophisticated form than the applications in the programming environment before GUI.
【0003】このような要求に対し、単独のアプリケー
ションの拡張により対応するのではなく、アプリケーシ
ョン間の協調動作メカニズムの提供により、比較的単純
なアプリケーションを複数組み合わせることを可能に
し、さまざまな状況に対応しようとするシステムが現れ
てきている。In response to such a request, it is possible to combine a plurality of relatively simple applications by responding to various situations by providing a cooperative operation mechanism between the applications, instead of responding by extending a single application. The system to try is appearing.
【0004】このような要求に対し、以下のような2つ
の実現方法が提案され試みられている。即ち、 (1)アプリケーション連係の要となるアプリケーショ
ン・プログラム(これをマスタ・アプリケーションと呼
ぶ)が1つ存在し、これが他のアプリケーション(スレ
ーブ・アプリケーションと呼ぶ)をコントロールする方
法. (2) 全てのアプリケーションが対等にコミュニケー
ションを行い、互いに処理を分担し合う方法. である。ここでは方法(1)をマスタ方式、方法(2)
をコミュニケーション方式と呼ぶことにする。In response to such demands, the following two methods of implementation have been proposed and attempted. That is, (1) there is one application program (called a master application) that is the key to application coordination, and this controls another application (called a slave application). (2) A method in which all applications communicate equally and share the processing with each other. Is. Here, method (1) is the master method, and method (2)
Will be called a communication method.
【0005】各方式の特徴をまとめると、 ・マスタ方式 … アプリケーションの連係と統合のメ
カニズムがマスタに集中する。このためスレーブの作成
は容易になるが、その分マスタのプログラムが複雑化す
る。また、マスタに負荷が集中しやすい. ・コミュニケーション方式 … 各アプリケーションが
連係・統合のメカニズムをそれぞれ持っている。このた
め、個々の各アプリケーションが複雑となるが、代わり
に負荷の分散がやりやすい。また、1つのアプリケーシ
ョンのトラブルが全体に及ぼす影響が小さい。The features of each system are summarized as follows: Master system: The coordination and integration mechanisms of applications are concentrated on the master. For this reason, the slave can be easily created, but the master program is complicated accordingly. Also, the load is likely to concentrate on the master.・ Communication method: Each application has its own coordination and integration mechanism. This complicates each individual application, but instead facilitates load balancing. Further, the trouble of one application has a small effect on the whole.
【0006】一般に、マスタ方式では、複雑なアプリケ
ーション制御をマスタが集中しておこなうことができる
のに対し、コミュニケーション方式ではアプリケーショ
ン間のプロトコルを規定しなければ高度な処理を実現す
ることが難しい。このため、特に同じプログラムが単純
なデータ交換のみ行うような場合をのぞき、マスタ方式
が採用されることが多い。In general, in the master method, the master can centrally perform complicated application control, but in the communication method, it is difficult to realize high-level processing unless a protocol between applications is specified. For this reason, the master method is often adopted except for the case where the same program only performs simple data exchange.
【0007】[0007]
【発明が解決しようとする課題】しかしながら、マスタ
方式では連係して動作しているアプリケーション群に新
しいアプリケーションを追加したり、新たな連係プロト
コルを導入しようとすると、マスタ・アプリケーション
のプログラム(マスタ・プログラム)の修正が必要とな
り、全面書き替えを要求されることさえある。However, in the master system, when a new application is added to an application group operating in cooperation with each other or a new cooperation protocol is introduced, the master application program (master program ) Need to be modified and even completely rewritten.
【0008】またマスタの修正が小規模なものであった
としても、関連するアプリケーションの構成が動的に変
化するような環境では、個々のマスタ・プログラムの修
正によって対応することは不可能である。この要求は、
LANやWANなどの発達により複数のコンピュータを作業環
境とすることが普及するに従ってより切実なものとなっ
てきている。このため動的に構成が変化し得る複雑なア
プリケーション連係に対応可能な柔軟なアプリケーショ
ン連係コントロール機構の実現が要求されるようになっ
てきた。Even if the modification of the master is small, it is impossible to deal with the modification of the individual master programs in the environment where the configuration of the related application dynamically changes. . This request is
With the development of LAN and WAN, it has become more and more urgent as the use of multiple computers as a work environment has become widespread. For this reason, it has been required to realize a flexible application linkage control mechanism that can deal with complicated application linkage whose configuration can change dynamically.
【0009】本発明は、上記の問題点に鑑みてなされた
ものであって、動的に構成要素が変動しうる複雑な環境
に対応可能な、柔軟なマスタ・アプリケーションを提供
することを可能とする情報処理方法及び装置及びシステ
ムを提供することを目的とする。The present invention has been made in view of the above problems, and it is possible to provide a flexible master application capable of coping with a complicated environment in which the constituent elements can dynamically change. An information processing method, device, and system for
【0010】また、本発明の他の目的は、動的に構成要
素が変動しうる複雑な環境を特に意識することなく、そ
の環境で動作するアプリケーションを容易に構築するこ
とを可能とする情報処理方法及び装置及びシステムを提
供することを目的とする。Further, another object of the present invention is to perform an information processing which makes it possible to easily construct an application which operates in the environment without being aware of a complicated environment in which the constituent elements can dynamically change. It is an object to provide a method, an apparatus and a system.
【0011】[0011]
【課題を解決するための手段】上記の目的を達成するた
めの本発明の情報処理システムは以下の構成を備えてい
る。即ち、1台もしくは複数台のコンピュータによって
構成される作業環境上でアプリケーション群を連携動作
させる情報処理システムであって、前記アプリケーショ
ン群の個々のアプリケーション毎に連係動作に関するイ
ベントの処理内容を示すイベント情報群を保持する保持
手段と、1つのアプリケーションにおいてイベントが発
行されたとき、該イベントに対応する当該アプリケーシ
ョンのイベント情報を前記保持手段のイベント情報群よ
り検索する検索手段と、前記検索手段で検索されたイベ
ント情報に基づいて前記イベントの処理を実行する実行
手段とを備える。The information processing system of the present invention for achieving the above object has the following configuration. That is, it is an information processing system that causes an application group to operate cooperatively in a work environment configured by one or a plurality of computers, and event information indicating processing contents of an event related to a link operation for each individual application of the application group. Holding means for holding the group, search means for searching event information of the application corresponding to the event from the event information group of the holding means when an event is issued in one application, and the searching means for searching. And executing means for executing the processing of the event based on the event information.
【0012】また、好ましくは、前記保持手段における
イベント情報群のイベント構成を変更する変更手段を更
に備える。動的に変化する作業環境やアプリケーション
群に柔軟に対応することが可能となるからである。[0012] Preferably, it further comprises changing means for changing the event configuration of the event information group in the holding means. This is because it is possible to flexibly cope with a dynamically changing work environment and application group.
【0013】また、好ましくは、前記保持手段における
各イベント情報の、イベントの処理内容を変更する変更
手段を更に備える。動的に変化する作業環境やアプリケ
ーション群に柔軟に対応することが可能となるからであ
る。[0013] Further, preferably, it further comprises a changing means for changing the processing content of the event of each event information in the holding means. This is because it is possible to flexibly cope with a dynamically changing work environment and application group.
【0014】[0014]
【作用】上記の構成によれば、あるアプリケーションに
おいて、稼働中の作業環境でアプリケーションの連携動
作を行うためのイベントが発生すると、前記アプリケー
ション群の個々のアプリケーション毎に連係動作に関す
るイベントの処理内容を示すイベント情報群より、該イ
ベントに対応する当該アプリケーションのイベント情報
が検索され、検索されたイベント情報に基づいて当該イ
ベントの処理が実行される。According to the above configuration, when an event occurs in a certain application in order to perform the cooperative operation of the application in the working environment under operation, the processing content of the event related to the cooperative operation is displayed for each individual application of the application group. Event information of the application corresponding to the event is searched from the event information group shown, and the process of the event is executed based on the searched event information.
【0015】[0015]
【実施例】以下に添付の図面を参照して本発明の好適な
実施例を説明する。Preferred embodiments of the present invention will be described below with reference to the accompanying drawings.
【0016】<実施例1>図1は実施例1による統合ア
プリケーション管理システムの概要図である。この統合
アプリケーション管理システムは、複数のアプリケーシ
ョンを連係させあたかも1つのアプリケーションである
かのように振る舞わせる。本実施例において、この連係
して動作する複数のアプリケーションを一括して管理す
る論理的単位を「統合アプリケーション」とよぶ。統合
アプリケーション管理システムは、この統合アプリケー
ションを実現するメカニズムを提供する。<First Embodiment> FIG. 1 is a schematic diagram of an integrated application management system according to a first embodiment. This integrated application management system allows a plurality of applications to be linked and behave as if they were one application. In this embodiment, a logical unit that collectively manages a plurality of applications that operate in cooperation with each other is called an "integrated application". The integrated application management system provides a mechanism for realizing this integrated application.
【0017】図1において、ワークステーション101
は、本実施例の処理を実行するCPU111と、本統合
アプリケーション管理システムの基本ソフトウェアであ
るDesktopMgr102を保持する主記憶112を計算機バ
ス113で結合して構成されている。In FIG. 1, the workstation 101
Is configured by connecting a CPU 111 that executes the processing of the present embodiment and a main memory 112 that holds DesktopMgr 102 that is the basic software of this integrated application management system with a computer bus 113.
【0018】DesktopMgr102がアプリケーションを管
理するために使用するデータをアプリケーション情報1
03と呼び、DesktopMgr102がデータベース104を
利用して管理している。このデータベース104は、リ
レーショナル・データベースやオブジェクト指向データ
ベースなどのデータ検索が可能な一般的なデータベース
である。データベース104とワークステーション10
1は、イーサネット・ケーブル114で結合されてい
る。データベース104は、統合アプリケーションの動
作を規定するスクリプト情報105の管理にも使用され
る。また、ユーザが入出力などのアプリケーションの操
作をおこなうためのユーザインタフェースはディスプレ
イ106上に表示される。Application information 1 is used as data used by DesktopMgr 102 to manage the application.
It is called 03 and is managed by DesktopMgr 102 using the database 104. The database 104 is a general database capable of data search such as a relational database or an object-oriented database. Database 104 and workstation 10
1 are connected by an Ethernet cable 114. The database 104 is also used to manage the script information 105 that defines the operation of the integrated application. A user interface for the user to operate the application such as input / output is displayed on the display 106.
【0019】DesktopMgr102は、内部的に以下の4つ
のソフトウェア・モジュールから構成されている。即
ち、アプリケーション情報管理モジュール107、スク
リプト情報管理モジュール108、スクリプト実行モジ
ュール109及びイベント制御モジュールである。以下
に、各モジュールについて説明する。The DesktopMgr 102 is internally composed of the following four software modules. That is, the application information management module 107, the script information management module 108, the script execution module 109, and the event control module. Each module will be described below.
【0020】[アプリケーション情報管理モジュール1
07]アプリケーション情報管理モジュール(AppServi
ce)107は、アプリケーション情報103の管理と、
アプリケーションの起動,終了など、アプリケーション
情報に基づいたアプリケーション制御の手段を、ユーザ
やアプリケーションあるいは他のソフトウェア・モジュ
ールに提供する。[Application Information Management Module 1
07] Application information management module (AppServi
ce) 107 manages the application information 103,
It provides a user, an application, or another software module with a means for controlling the application based on the application information such as starting and ending the application.
【0021】[スクリプト情報管理モジュール108]
スクリプト情報管理モジュール(ScriptService)10
8は、スクリプト情報105 の管理をおこなう。スク
リプト情報105は、統合アプリケーションに対してお
こなわれた操作(これを統合アプリケーションに対する
「出来事」とみなし、これを「イベント」よぶ)に対し
てDesktopMgrがどのように振る舞うべきかを規定する情
報である。本実施例では、この「振る舞い」は簡単なス
クリプト言語によって記述されている。このスクリプト
言語によって記述されたプログラムを単にスクリプトと
呼ぶ。[Script Information Management Module 108]
Script information management module (ScriptService) 10
Reference numeral 8 manages the script information 105. The script information 105 is information that defines how DesktopMgr should behave in response to an operation performed on the integrated application (this is regarded as an “event” for the integrated application and this is called an “event”). . In this embodiment, this "behavior" is described in a simple script language. A program written in this script language is simply called a script.
【0022】[スクリプト実行モジュール109]スク
リプト実行モジュール(ScriptEngine)109はスクリ
プト情報105に記述された処理を実行する。即ち、ス
クリプト情報を記述するために使用されるスクリプト言
語のインタプリタとして実現されている。[Script Execution Module 109] The script execution module (ScriptEngine) 109 executes the processing described in the script information 105. That is, it is realized as an interpreter of a script language used to describe script information.
【0023】[イベント制御モジュール110]イベン
ト制御モジュール(EventService)110は、ユーザや
アプリケーションから送られてきたイベントを受け取り
処理するというDesktopMgr102全体の動作の制御をお
こなう。[Event Control Module 110] The event control module (EventService) 110 controls the overall operation of the Desktop Mgr 102, which receives and processes events sent from users and applications.
【0024】なお、本実施例では、これらのモジュール
はDesktopMgrという1つのプログラムにまとめられてい
るが、各モジュールが独立したプログラムとして機能す
るという形態の実装も可能である。In the present embodiment, these modules are integrated into one program called DesktopMgr, but it is also possible to implement such a form that each module functions as an independent program.
【0025】図2は本実施例におけるアプリケーション
連係の様子をあらわす概念図である。図2において、参
照番号201から210までの各構成は図1における参
照番号101から110までの各構成に対応している。
この図ではアプリケーションA211,アプリケーショ
ンB212,アプリケーションC213がDesktopMgr2
02の管理下にあり、1つの統合アプリケーション21
4を形成している。また、アプリケーション211,2
12,213のように統合アプリケーションの構成要素
となっているアプリケーションを要素アプリケーション
と呼ぶ。本実施例における要素アプリケーションは、従
来例におけるマスタ方式およびコミュニケーション方式
と同様に、それぞれが連係して動作するためにプロセス
間通信機構をもっている。FIG. 2 is a conceptual diagram showing the state of application linkage in this embodiment. In FIG. 2, reference numerals 201 to 210 correspond to reference numerals 101 to 110 in FIG.
In this figure, the application A211, the application B212, and the application C213 are DesktopMgr2.
One integrated application 21 under the control of 02
4 are formed. In addition, the applications 211 and 211
Applications that are constituent elements of the integrated application, such as 12, 213, are called element applications. The element application in the present embodiment has an inter-process communication mechanism in order to operate in cooperation with each other, as in the master method and the communication method in the conventional example.
【0026】ここで、ユーザ215がアプリケーション
A211上で、統合アプリケーション214全体で処理
されるべき操作をおこなったと仮定する。本実施例で
は、この統合アプリケーション214全体で処理される
べきユーザの操作をイベントと定義する。さらに、この
ようなユーザ操作によって2次的に引き起こされる統合
アプリケーション214全体で処理されるべき「出来
事」もイベントとして扱う。Here, it is assumed that the user 215 has performed an operation on the application A 211 that should be processed by the integrated application 214 as a whole. In this embodiment, a user operation to be processed by the entire integrated application 214 is defined as an event. Further, an “incident” that is secondarily caused by such a user operation and should be processed by the entire integrated application 214 is also treated as an event.
【0027】イベントには名前(イベント名)がつけら
れ、イベント発生時におこなわれる処理を規定するスク
リプト情報をアプリケーション情報管理モジュール20
7に登録することにより、本システムにおけるイベント
が定義される。アプリケーションA211は、このよう
なユーザの操作をイベントとしてDesktopMgr202に通
知する。このイベント通知メカニズムは、例えばユーザ
の操作をトリガとして、イベントの名前をあらわす文字
列をメッセージとしてDesktopMgr202に発行すること
によって実現できる。An event is given a name (event name), and script information defining the processing performed when the event occurs is stored in the application information management module 20.
Registration in 7 defines the event in this system. The application A211 notifies the DesktopMgr 202 of such user operation as an event. This event notification mechanism can be realized by issuing a character string representing the event name as a message to the DesktopMgr 202, triggered by a user operation, for example.
【0028】ただし、1つの統合アプリケーションに属
するすべての要素アプリケーションがこの機構をもって
いる必要はなく、最低1つがその機構をもっていれば一
応統合アプリケーションとして機能する。この機構をも
つ要素アプリケーションは、統合アプリケーションのユ
ーザインタフェースを提供することができるため、UIプ
ロバイダ(UI provider)ともよぶ。However, all the element applications belonging to one integrated application do not have to have this mechanism, and if at least one has this mechanism, they function as an integrated application. An element application having this mechanism is also called a UI provider because it can provide the user interface of an integrated application.
【0029】さて、DesktopMgr202は通知されたイベ
ントに対応するスクリプト情報が存在したならば、その
スクリプト情報を評価・実行する。多くの場合は、 (1) 他のアプリケーション212,213やアプリ
ケーションA211自身にメッセージを送る. (2) 動作中のアプリケーションの終了. (3) 新たなアプリケーションの起動. などの処理が実行され、統合アプリケーション214全
体の処理として扱われる。If the script information corresponding to the notified event exists, the DesktopMgr 202 evaluates and executes the script information. In many cases, (1) send a message to another application 212, 213 or application A211 itself. (2) Termination of running applications. (3) Launching a new application. The above processing is executed and handled as the processing of the integrated application 214 as a whole.
【0030】図3は、図2におけるDesktopMgr202の
内部でおこなわれる処理の様子をあらわす図である。な
お、図3における301から315までの各構成は、図
2における201から215までの項目に対応してい
る。また、図4は、実施例1における処理の流れを表す
フローチャートである。以下、図3及び図4を参照して
本実施例1の処理を説明する。FIG. 3 is a diagram showing a state of processing performed inside the DesktopMgr 202 in FIG. Note that each configuration from 301 to 315 in FIG. 3 corresponds to the items from 201 to 215 in FIG. Further, FIG. 4 is a flowchart showing the flow of processing in the first embodiment. The processing of the first embodiment will be described below with reference to FIGS. 3 and 4.
【0031】アプリケーションA311から送られてき
たイベント316は、EventService310によって受け
取られる(ステップS401)。EventService310
は、AppService307にイベントの発行元であるアプリ
ケーションA311のアプリケーション情報303の検
索を依頼する。ここで検索のキーとして使用されるアプ
リケーション名は、送られてきたイベントに必ず付加さ
れているものとする。AppService307はこのイベント
に付加されたアプリケーション名をキーとしてデータベ
ース304からアプリケーション情報303を取り出す
(ステップS402)。The event 316 sent from the application A311 is received by the EventService 310 (step S401). EventService310
Requests the AppService 307 to search for the application information 303 of the application A311 that is the issuer of the event. It is assumed that the application name used as the search key is always added to the sent event. The AppService 307 retrieves the application information 303 from the database 304 using the application name added to this event as a key (step S402).
【0032】ここで、アプリケーション情報303は、
本実施例ではC++プログラム言語のデータ構造として、 class ApplicationInfo { char* appName; int portNumber; int processNumber; ... ApplicationInfo* integrated_in; ListOf<ApplicationInfo> components; ListOf<char*> eventNames; }; のように定義されている。Here, the application information 303 is
In this embodiment, as a data structure of the C ++ programming language, class ApplicationInfo {char * appName; int portNumber; int processNumber; ... ApplicationInfo * integrated_in; ListOf <ApplicationInfo>components; ListOf <char *>eventNames;}; Is defined as
【0033】appNameはアプリケーションの識別子とし
て使用されるアプリケーション名である。アプリケーシ
ョン情報303内の属性eventNamesでは、そのアプリケ
ーションに関連するイベント名のリストが管理されてい
る。このイベント名はスクリプト情報検索時のキーとし
て使用される。またintegrated_inには、このアプリケ
ーションが統合アプリケーションの1部になっている場
合に、その統合アプリケーションのアプリケーション情
報への参照子(ポインタ)が登録される。また、このア
プリケーション自身が統合アプリケーションならば、co
mponentsでその構成要素となっているアプリケーション
の情報へのポインタが管理される。AppName is an application name used as an application identifier. The attribute eventNames in the application information 303 manages a list of event names related to the application. This event name is used as a key when searching script information. In integrated_in, when this application is a part of the integrated application, a reference (pointer) to the application information of the integrated application is registered. If this application itself is an integrated application, co
mponents manages pointers to the application information that is its component.
【0034】また、本実施例では、統合アプリケーショ
ン自身も対応するアプリケーション情報をもつ。このよ
うにすることにより、ある統合アプリケーションが別の
統合アプリケーションの構成要素となるような状況に対
応することができる。統合アプリケーションを含むアプ
リケーション情報の生成機構については後述する。ま
た、その他アプリケーションの制御や通信に必要なプロ
セス番号processNumberやポートportNumberなどの情報
もアプリケーション情報内で管理される。Further, in this embodiment, the integrated application itself also has corresponding application information. By doing so, it is possible to deal with a situation in which one integrated application becomes a component of another integrated application. A mechanism for generating application information including the integrated application will be described later. In addition, information such as the process number processNumber and port portNumber necessary for controlling and communicating other applications is also managed in the application information.
【0035】さて、EventService310は、次にスクリ
プト情報管理モジュール308に処理対象であるイベン
ト316と関連づけられたスクリプト情報305の検索
を依頼する。スクリプト情報管理モジュール308は、
取り出されたアプリケーション情報303と、処理対象
であるイベント316の名前をキーとしてスクリプト情
報305を取り出す(ステップS403)。Next, the EventService 310 requests the script information management module 308 to retrieve the script information 305 associated with the event 316 to be processed. The script information management module 308
The script information 305 is extracted using the extracted application information 303 and the name of the event 316 to be processed as keys (step S403).
【0036】スクリプト情報自身の定義は、例えばC++
プログラム言語により以下のように定義されている: ここで、eventNameはこのスクリプト情報と関連づけら
れているイベントの名前である。またownerはこのスク
リプト情報を利用するアプリケーションのアプリケーシ
ョン情報、最後のscriptTextはスクリプト言語で記述さ
れたプログラムをあらわす文字列である。本実施例にお
けるスクリプト言語は、TCLプログラム言語に幾つか
のコマンド群を追加したものである(TCLプログラム
言語については、"Tcl and the Tk Toolkit",John K. O
usterhout, Addison-Wesley, 1994. 参照のこと)。他
のスクリプト言語に同様な拡張をおこなうことにより、
TCLプログラム言語を置換することも可能である。こ
のスクリプトをScriptEngine309が評価することによ
りイベントの処理がおこなわれる(ステップS40
4)。The definition of the script information itself is, for example, C ++.
It is defined by the programming language as follows: Here, eventName is the name of the event associated with this script information. Also, owner is application information of an application using this script information, and the last scriptText is a character string representing a program written in a script language. The script language in this embodiment is the TCL programming language with some command groups added (for the TCL programming language, "Tcl and the Tk Toolkit", John K. O).
See usterhout, Addison-Wesley, 1994.). By making similar extensions to other scripting languages,
It is also possible to replace the TCL programming language. Event processing is performed by the ScriptEngine 309 evaluating this script (step S40).
4).
【0037】本実施例におけるTCLプログラムの拡張
コマンド群により、個々の要素アプリケーションが提供
する機能を組み合わせることが可能となる。追加された
コマンド群は以下の3つのカテゴリに分類される。即
ち、 ・アプリケーション情報の操作 ・アプリケーションの操作 ・スクリプト情報の操作 である。以下、各カテゴリについて詳しく説明する。With the extended command group of the TCL program in this embodiment, it is possible to combine the functions provided by individual element applications. The added command group is classified into the following three categories. That is, operation of application information, operation of application, operation of script information. Hereinafter, each category will be described in detail.
【0038】[アプリケーション情報の操作]アプリケ
ーション情報の参照・更新をおこなう。以下のコマンド
がこのカテゴリに属している。即ち、 (1) AppInfo "アプリ名" create (2) AppInfo "アプリ名" info "属性名" ?"
属性値"? である。[Operation of application information] Reference / update of application information is performed. The following commands belong to this category. That is, (1) AppInfo "app name" create (2) AppInfo "app name" info "attribute name"? "
The attribute value is "?".
【0039】(1)がアプリケーション情報の生成、
(2)はアプリケーション情報の参照および更新であ
る。属性名はApplicationInfoクラスで宣言されている
インスタンス変数の名前をあらわす文字列である。ここ
で「?」で両端を囲まれた項目は、指定してもしなくて
もよいことをあらわす。(2)の場合、「属性値」が与
えられた場合は「属性名」であらわされるアプリケーシ
ョン情報の属性の値を更新する。「属性値」が与えられ
ない場合は参照を意味する。(1) is the generation of application information,
(2) is reference and update of application information. The attribute name is a character string representing the name of the instance variable declared in the ApplicationInfo class. Items with both ends surrounded by "?" May or may not be specified. In the case of (2), when the "attribute value" is given, the attribute value of the application information represented by the "attribute name" is updated. When "attribute value" is not given, it means reference.
【0040】[アプリケーションの操作]アプリケーシ
ョンの制御をおこなう以下のコマンドがこのカテゴリに
属している。即ち、 (3) launchApp "アプリ名" (4) terminateApp "アプリ名" である。[Operation of Application] The following commands for controlling the application belong to this category. That is, (3) launchApp "app name" (4) terminateApp "app name".
【0041】(3)と(4)は、それぞれ指定されたア
プリケーションの起動と終了をおこなう。これらの操作
は最終的に本実施例が起動されているオペレーティング
・システムの機能を利用しておこなわれるが、そのため
に必要な情報はアプリケーション情報から取り出され
る。In (3) and (4), the designated application is activated and terminated, respectively. These operations are finally performed by utilizing the function of the operating system in which the present embodiment is activated, and the information necessary for that purpose is extracted from the application information.
【0042】また、メッセージの配送をおこなうため
の、 (5) forwardMessage "アプリ名" "メッセー
ジのテキスト" というコマンドもこのカテゴリに属している。(5)
は、指定されたアプリケーションにメッセージを転送す
る。このコマンドにより要素アプリケーションが提供す
る機能を利用する。本実施例ではメッセージは文字列と
して扱われる。The commands (5) forwardMessage "application name""messagetext" for delivering messages also belong to this category. (5)
Forwards the message to the specified application. The function provided by the element application is used by this command. In this embodiment, the message is treated as a character string.
【0043】[スクリプト情報の操作]イベントに対応
するスクリプト情報の参照・更新をおこなう。コマンド
としては、 (6) ScriptInfo "イベント名" info "属性
名" "属性値" がある。(6)は指定されたイベント対応するスクリプ
ト情報の属性値の参照および更新をおこなうコマンドで
ある。[Operation of script information] The script information corresponding to the event is referred and updated. The commands include (6) ScriptInfo "event name" info "attribute name""attributevalue". (6) is a command for referring to and updating the attribute value of the script information corresponding to the specified event.
【0044】以下に上記のコマンド群を組み合わせアプ
リケーションの連係を可能にするスクリプトの例を挙げ
る。The following is an example of a script that combines the above command groups to enable application coordination.
【0045】[例1]統合アプリケーションIntegWork
の起動をイベントとして定義する。そのスクリプトは、 set component_tools [AppInfo IntegWork info components]; foreach tool $component_tools { launchApp $tool; } となる。このスクリプトは、IntegWorkのアプリケーシ
ョン情報から要素アプリケーションのリストcomponents
の値を取り出し、リスト中の全アプリケーションを起動
する。[Example 1] Integrated application IntegWork
Defines the activation of as an event. The script is set component_tools [AppInfo IntegWork info components]; foreach tool $ component_tools {launchApp $ tool;}. This script is a list of element applications from IntegWork application information components
Takes out the value of and launches all applications in the list.
【0046】[例2]同じくIntegWorkの終了は、 set component_tools [AppInfo IntegWork info components]; foreach tool $component_tools { terminateApp $tool; } 要素アプリケーションの終了を引き起こす。[Example 2] Similarly, termination of IntegWork causes termination of set component_tools [AppInfo IntegWork info components]; foreach tool $ component_tools {terminateApp $ tool;} element application.
【0047】[例3]IntegWorkに対するdo_something
というイベントを、例えばEditorという要素アプリケー
ションに処理させるならば、 forwardMessage Editor "do-something"; と記述する。[Example 3] do_something for IntegWork
If you want the element application called Editor to process such event, write forwardMessage Editor "do-something";.
【0048】次に図5および図6を用いて、上記のよう
に動作する統合アプリケーションの作成機構について説
明する。図5は、統合アプリケーション作成処理の概要
を説明する図である。図6は、統合アプリケーション作
成処理の手順を表すフローチャートである。図5におけ
る参照番号501から510の各構成は図1における参
照番号101から110までの各構成に対応している。
また、図中のウィンドウ511はディスプレイ506上
でユーザ512に、統合アプリケーションの作成のため
のユーザインタフェースを提供する。Next, the mechanism for creating an integrated application that operates as described above will be described with reference to FIGS. FIG. 5 is a diagram for explaining the outline of the integrated application creating process. FIG. 6 is a flowchart showing the procedure of the integrated application creating process. Each of the reference numerals 501 to 510 in FIG. 5 corresponds to each of the reference numerals 101 to 110 in FIG.
The window 511 in the figure also provides the user 512 on the display 506 with a user interface for creating an integrated application.
【0049】ユーザがウインドウ511で作成されるべ
き統合アプリケーション名を指定すると、EventService
510がその要求を受け取り、指定されたアプリケーシ
ョン名をキーとしてアプリケーション情報管理モジュー
ル507に統合アプリケーションのアプリケーション情
報503の検索を依頼する(ステップS601)。この
とき、指定したアプリケーション情報503が存在しな
かったら、新たにアプリケーション情報を生成する(ス
テップS602,S603)。When the user specifies an integrated application name to be created in window 511, EventService
510 receives the request and requests the application information management module 507 to search the application information 503 of the integrated application using the designated application name as a key (step S601). At this time, if the designated application information 503 does not exist, new application information is generated (steps S602 and S603).
【0050】アプリケーション情報503が得られる
と、イベント名のリストである属性eventNamesから、関
連づけられているイベント名のリストを取り出し、ウィ
ンドウ510に表示する(ステップS604)。このと
き、上述のステップS603で作成されたばかりのアプ
リケーション情報なら、表示されるべきイベント名のリ
ストは空である。イベント名のリストが表示されると、
ユーザによって処理の終了が指示されるまでステップS
605からステップS616までの処理が繰り返され
る。When the application information 503 is obtained, a list of associated event names is taken out from the attribute eventNames, which is a list of event names, and is displayed in the window 510 (step S604). At this time, if the application information has just been created in step S603, the list of event names to be displayed is empty. When the list of event names is displayed,
Step S until the end of processing is instructed by the user
The processing from 605 to step S616 is repeated.
【0051】ユーザ512は、ウィンドウ511を介し
て、DesktopMgr502に新たなイベントの追加・削除を
指示することができる。ユーザによって処理の終了が指
示されなかった場合、処理はステップS605よりステ
ップS606へ進む。The user 512 can instruct the DesktopMgr 502 to add / delete a new event via the window 511. If the user has not instructed to end the process, the process proceeds from step S605 to step S606.
【0052】イベントの追加は、追加するイベントのイ
ベント名を与えることにより(ステップS606)、そ
のイベント名がアプリケーション情報503のeventNam
es属性に属性値として追加され(ステップS607)、
さらに新たなスクリプト情報505が生成される(ステ
ップS608)。この時点でのスクリプト情報505の
eventName属性とowner属性は指定されているが、script
Text属性の値はNULL文字列である。To add an event, the event name of the event to be added is given (step S606) so that the event name is eventNam of the application information 503.
is added as an attribute value to the es attribute (step S607),
Further, new script information 505 is generated (step S608). Of the script information 505 at this point
eventName attribute and owner attribute are specified, but script
The value of the Text attribute is the null string.
【0053】イベントの削除は、ユーザがイベント名を
与えず(ステップS606)、削除するイベント名をウ
ィンドウ511上のリストで選択し(ステップS60
9)、さらにユーザがDesktopMgr502に削除を要求す
る(ステップS610)ことによって実行される。この
場合、選択されたイベント名に対応するスクリプト情報
505が取り出されて削除される(ステップS61
1)。次に、アプリケーション情報503のeventNames
からそのイベント名が削除される(ステップS61
2)。To delete an event, the user does not give an event name (step S606) and selects the event name to be deleted from the list on the window 511 (step S60).
9) Further, the user requests the DesktopMgr 502 for deletion (step S610). In this case, the script information 505 corresponding to the selected event name is fetched and deleted (step S61).
1). Next, eventNames of application information 503
The event name is deleted from (step S61)
2).
【0054】また、すでに登録されているイベントに対
する処理を変更することも可能である。即ち、ユーザが
ウインドウ511上でイベント名を指定した時に(ステ
ップS609)、ユーザが削除要求をおこなわなかった
場合(ステップS610)、対応するスクリプト情報5
05を取り出し(ステップS613)、ウインドウ51
1上に表示する(ステップS614)。本実施例では、
scriptText属性に登録されているスクリプトのみ更新が
可能である。Further, it is possible to change the processing for the already registered event. That is, when the user specifies the event name on the window 511 (step S609) and the user does not make a deletion request (step S610), the corresponding script information 5
05 is taken out (step S613), and the window 51
No. 1 is displayed (step S614). In this embodiment,
Only the script registered in the scriptText attribute can be updated.
【0055】ここで、ユーザはウインドウ511上で表
示されたスクリプトの編集をおこなう。変更がおこなわ
れた場合(ステップS615)、変更されたスクリプト
はscriptText属性の新しい値となりデータベースにスト
アされる(ステップS616)。変更後、あるいは変更
がおこなわれなかった場合(ステップS615)は、ス
テップS605に戻って、操作の継続か処理の終了かを
判断し、ユーザからの終了指示がなければ上述の処理を
繰り返す。Here, the user edits the script displayed on the window 511. When the change is made (step S615), the changed script becomes the new value of the scriptText attribute and is stored in the database (step S616). After the change or when the change has not been made (step S615), the process returns to step S605, and it is determined whether the operation is continued or the process is ended. If there is no end instruction from the user, the above process is repeated.
【0056】以上の機構を利用すると、アプリケーショ
ン情報503のeventNames属性に登録されているイベン
ト名リストとスクリプト情報505のscriptText属性に
登録されているスクリプトを修正することにより、既に
作成されていた統合アプリケーションのアプリケーショ
ン構成やイベントの数および処理などを変更すること
や、新たに統合アプリケーションを作成することが可能
となる。Using the above mechanism, the integrated application that has already been created by modifying the event name list registered in the eventNames attribute of the application information 503 and the script registered in the scriptText attribute of the script information 505. It is possible to change the application configuration, the number and processing of events, and create a new integrated application.
【0057】例えば、図3に示した例に、新たにアプリ
ケーションA311をアプリケーションA’で置き換え
る場合、統合アプリケーション314に対応するアプリ
ケーション情報に登録されているイベント中の、アプリ
ケーションA311が発行元となるイベントを、アプリ
ケーションA’が発行元となるイベントで置き換えれば
よい。For example, when the application A311 is newly replaced with the application A'in the example shown in FIG. 3, the event in which the application A311 is the issuing source in the events registered in the application information corresponding to the integrated application 314 is issued. Should be replaced with the event whose application A ′ is the issuer.
【0058】アプリケーションA311に統合アプリケ
ーション314からforwardMessageコマンドによりメッ
セージを送るようなスクリプトが指定されていた場合
も、その部分をアプリケーションA’が受け入れられる
ように変更することにより、アプリケーションA’にア
プリケーションA311の代わりに動作させることが可
能である。Even when a script for sending a message by the forwardMessage command is specified from the integrated application 314 to the application A311, by changing the part so that the application A'can be accepted, the application A'is changed to the application A311. It is possible to operate instead.
【0059】また、図3に示した例に、新たにアプリケ
ーションDを追加するような場合でも、統合アプリケー
ション314に対応するアプリケーション情報にアプリ
ケーションDが発行元となるイベントを追加し、既存の
イベントに対応するスクリプト情報内のスクリプトを、
アプリケーションDの追加を考慮して修正することによ
り、マスタの全面書き替えをおこなうことなくカスタマ
イズすることが可能である。Further, in the case where the application D is newly added to the example shown in FIG. 3, the event in which the application D is the issuer is added to the application information corresponding to the integrated application 314, and the existing event is added. The script in the corresponding script information,
By making a modification in consideration of the addition of the application D, it is possible to customize the master without rewriting the entire surface.
【0060】また、本実施例における統合アプリケーシ
ョンは1つのユーザ環境内でのアプリケーション連係機
構を提供するが、本実施例で説明した統合アプリケーシ
ョン管理システムをそのまま適用することにより、複数
のユーザ環境上で同時に動作する複数のアプリケーショ
ンを連係させて、複数のユーザ環境下における協調作業
環境を実現することも可能である。Further, although the integrated application in this embodiment provides an application linking mechanism within one user environment, by applying the integrated application management system described in this embodiment as it is, the integrated application can be used in a plurality of user environments. It is also possible to realize a collaborative work environment under a plurality of user environments by linking a plurality of applications operating simultaneously.
【0061】以上の様にして本実施例では、統合アプリ
ケーションで処理されるべきイベントを定義することを
可能とし、拡張したTCLスクリプト言語を提供して、
スクリプト情報でイベントと関連づけることにより、イ
ベントに対する処理を要素アプリケーションの連係動作
として記述することを可能としている。As described above, in this embodiment, it is possible to define the event to be processed by the integrated application, and provide the extended TCL script language,
By associating an event with script information, it is possible to describe the processing for the event as a linked operation of element applications.
【0062】また、アプリケーション情報とスクリプト
情報の導入により、統合アプリケーションで処理される
べきイベントの種類とそのイベントに対する処理を任意
に変更することを可能にした。Further, by introducing the application information and the script information, it is possible to arbitrarily change the type of event to be processed by the integrated application and the processing for the event.
【0063】このため、DesktopMgrで記述されるスクリ
プトにより要素アプリケーションがコントロールされる
ため、個々の要素アプリケーションが統合アプリケーシ
ョンがどのように構成されているかを意識する必要がな
くなるという効果がある。また、各要素アプリケーショ
ンの外部インタフェースの差異を統合アプリケーション
のイベント処理によって吸収することも可能となる。For this reason, since the element application is controlled by the script described in DesktopMgr, it is not necessary for each element application to be aware of how the integrated application is constructed. It is also possible to absorb the difference in the external interface of each element application by the event processing of the integrated application.
【0064】さらに、構成が動的に変化する様な統合ア
プリケーションの実現が可能になり、変更が必要になっ
てもアプリケーション情報とスクリプト情報を修正する
だけで対応することができる。Furthermore, it becomes possible to realize an integrated application in which the configuration dynamically changes, and even if a change is necessary, it can be dealt with only by modifying the application information and the script information.
【0065】<実施例2>上記の実施例1において、統
合アプリケーション管理システムへの適用例について述
べたが、本実施例2では、実施例1で述べたものと同様
な統合アプリケーションを実現するマスタ・アプリケー
ション生成システムについて説明する。<Second Embodiment> In the first embodiment, the application example to the integrated application management system has been described. In the second embodiment, a master for realizing an integrated application similar to that described in the first embodiment.・ Explain the application generation system.
【0066】このマスタ・アプリケーション生成システ
ムは、統合アプリケーションをコントロールするマスタ
・アプリケーションのプログラムを自動生成するプログ
ラムである。第1の実施例とは異なり、マスタ・アプリ
ケーション生成システム自身は直接アプリケーションの
制御をおこなわない。This master application generation system is a program for automatically generating a master application program for controlling an integrated application. Unlike the first embodiment, the master application generation system itself does not directly control the application.
【0067】本実施例2が作成するマスタ・アプリケー
ションは、他のアプリケーションをコントロールする機
能だけをもつものであるが、生成されたプログラムを基
礎として他の機能を追加することが可能である。The master application created by the second embodiment has only the function of controlling other applications, but it is possible to add other functions based on the generated program.
【0068】図7は本実施例2のマスタ・アプリケーシ
ョン生成システムの概略図である。同図において、2次
記憶ディスク701には、アプリケーション情報702
が蓄積されている。このアプリケーション情報702
は、ユーザ712がマスタ・アプリケーションを作成す
るために必要となるアプリケーションの機能に関する情
報である。本実施例2におけるアプリケーション情報7
02は実施例1におけるアプリケーション情報103か
らポート番号やプロセス番号など動的な情報を取り除
き、代りにイベント名をキーとしてそのイベントに対す
る処理内容と変更履歴等の付加情報を管理するハッシュ
・テーブルを付加した物である。このハッシュ・テーブ
ルをイベント・スクリプト対応表と呼ぶ。FIG. 7 is a schematic diagram of the master application generation system of the second embodiment. In the figure, application information 702 is stored in the secondary storage disk 701.
Has been accumulated. This application information 702
Is information about the application functions that the user 712 needs to create a master application. Application information 7 in the second embodiment
Reference numeral 02 removes dynamic information such as port numbers and process numbers from the application information 103 in the first embodiment, and instead adds a hash table that manages additional information such as processing content and change history for the event using the event name as a key. It is a thing. This hash table is called an event script correspondence table.
【0069】マスタ・アプリケーション生成サーバ70
4は、アプリケーション情報の管理と、それらを組み合
わせてマスタ・アプリケーションの生成を支援するユー
ザインタフェースの提供および、最終結果としてのマス
タ・プログラムの作成をおこなう。マスタ・アプリケー
ション生成サーバ704は2個のソフトウェア・モジュ
ールから構成される。Master application generation server 70
4 manages application information, provides a user interface that supports the generation of a master application by combining them, and creates a master program as a final result. The master application generation server 704 is composed of two software modules.
【0070】705はアプリケーション情報管理モジュ
ールである。本実施例におけるアプリケーション情報管
理モジュール705は、データベース104の機能を利
用していた実施例1におけるアプリケーション情報管理
モジュール107とは異なり、アプリケーション名をキ
ーとするハッシュ・テーブルの機能を利用して、二次記
憶ディスク701上のアプリケーション情報702の管
理をおこなう。アプリケーション情報702自身も前述
したように実施例1におけるアプリケーション情報10
3とは異なる構造を持っている。Reference numeral 705 is an application information management module. Unlike the application information management module 107 in the first embodiment, which uses the function of the database 104, the application information management module 705 in the present embodiment uses a hash table function using an application name as a key, and The application information 702 on the next storage disk 701 is managed. The application information 702 itself is also the application information 10 in the first embodiment as described above.
It has a different structure from 3.
【0071】さらに、このアプリケーション情報管理モ
ジュール705は、アプリケーション情報702と同様
のメカニズムにより、スクリプト・テンプレート情報7
07をも管理している。このスクリプト・テンプレート
情報707はスクリプト・プログラムの骨格の代表的パ
ターンを記述したスケルトン・プログラムである。ユー
ザはスケルトン・プログラムを基に実際に実行可能なス
クリプトを作成することができる。Further, the application information management module 705 uses the same mechanism as the application information 702 to execute the script template information 7
It also manages 07. The script template information 707 is a skeleton program that describes a typical pattern of the skeleton of the script program. The user can create an actually executable script based on the skeleton program.
【0072】711はプログラム生成モジュールであ
る。このモジュールは、メイン・ルーチンプログラム7
09とアプリケーション情報702をユーザからの指定
に基づいて結合し、マスタ・アプリケーションのプログ
ラムを作成する。メイン・ルーチンプログラム709は
アプリケーションからイベントを受け取ると、対応する
スクリプトを実行するだけの単純なプログラムである。Reference numeral 711 is a program generation module. This module is the main routine program 7
09 and the application information 702 are combined based on the designation from the user to create a master application program. The main routine program 709 is a simple program that executes a corresponding script when receiving an event from an application.
【0073】710はユーザインタフェースを提供する
ウィンドウである。ここでユーザは、マスタによって統
合されるべきアプリケーションの指定、各アプリケーシ
ョンのイベントに対応するスクリプトの記述および登録
などをおこなう。A window 710 provides a user interface. Here, the user specifies an application to be integrated by the master, writes and registers a script corresponding to the event of each application, and the like.
【0074】ここで、本実施例におけるアプリケーショ
ン情報は以下の様に定義される。即ち、 class ApplicationInfo { class EventInfo { char* eventName; ApplicationInfo* owner; char* info; char* scriptText; }; char* appName; ... ApplicationInfo* integrated_in; ListOf<ApplicationInfo> components; HashTable<char*, EventInfo> eventHandlers; }; となる。Here, the application information in this embodiment is defined as follows. That is, class ApplicationInfo {class EventInfo {char * eventName; ApplicationInfo * owner; char * info; char * scriptText;}; char * appName; ... ApplicationInfo * integrated_in; ListOf <ApplicationInfo>components; HashTable <char *, EventInfo>eventHandlers;};.
【0075】アプリケーション情報における、イベント
に対する処理内容と変更履歴等の付加情報は、イベント
・スクリプト対応表eventHandlersで管理され、第1の実
施例におけるスクリプト情報とほぼ同じ構造を持ってい
る。本実施例ではイベント処理が少しずつ改良されてい
くことが重要であるため、変更履歴等の付加情報を記述
する項目infoが付加されている。本実施例では、処理内
容と変更履歴等の付加情報をイベント情報とよぶ。The additional information such as the processing contents and the change history for the event in the application information is managed by the event / script correspondence table eventHandlers and has almost the same structure as the script information in the first embodiment. In the present embodiment, it is important that the event processing be improved little by little, so that the item info that describes additional information such as a change history is added. In the present embodiment, additional information such as processing content and change history is called event information.
【0076】本実施例2と実施例1との主な相違は、ア
プリケーション情報とイベントに関する情報の関連が、
実施例1ではイベント名による緩やかなものであったの
に対し、本実施例2ではアプリケーション情報に組み込
まれていることである。The main difference between the second embodiment and the first embodiment is that the relation between the application information and the information about the event is
In the first embodiment, the event name is loose, but in the second embodiment, it is included in the application information.
【0077】図8はメイン・ルーチンプログラムの動作
概要を説明する図である。また、図9はメイン・ルーチ
ンプログラムの処理を表すフローチャートである。FIG. 8 is a diagram for explaining the outline of the operation of the main routine program. FIG. 9 is a flowchart showing the processing of the main routine program.
【0078】メイン・ルーチンプログラムにはイベント
・スクリプト対応表から取り出されたスクリプト・テキ
スト801とイベント・スクリプト対応表802自身が
付加される。アプリケーション情報でイベント・スクリ
プト対応表802内で管理されていたスクリプト・テキ
ストが、メイン・ルーチンプログラムに付加される時に
分離される理由は、生成されたマスタ・プログラムを後
から変更する場合の便宜を図るためである。もちろん図
に示す様に、イベント・スクリプト対応表802とスク
リプト・テキスト801の対応関係は、イベント・スク
リプト対応表がスクリプト・テキスト801への参照子
803を保持していることにより、保存されている。The script text 801 extracted from the event script correspondence table and the event script correspondence table 802 itself are added to the main routine program. The reason why the script text managed in the event / script correspondence table 802 in the application information is separated when it is added to the main routine program is that it is convenient when the generated master program is changed later. This is because it is intended. Of course, as shown in the figure, the correspondence between the event / script correspondence table 802 and the script text 801 is saved because the event / script correspondence table holds a reference 803 to the script text 801. .
【0079】本実施例2におけるスクリプトからこの対
応表802を参照するには、イベント名を引き数として
とりスクリプトのテキストを返すEventTableという名前
の関数として参照する。イベントループ804がイベン
トを受け取ると(ステップS901)、イベントに付加
されているイベント名をキーとしてイベント・スクリプ
ト対応表802から対応するスクリプト・テキスト80
1を取り出し(ステップS902)、そのスクリプト・
テキストに制御を移す(ステップS903)。メイン・
ルーチンプログラムは基本的にこの動作を繰り返すだけ
の単純なプログラムである。In order to refer to the correspondence table 802 from the script in the second embodiment, it is referred to as a function named EventTable which takes the event name as an argument and returns the text of the script. When the event loop 804 receives the event (step S901), the corresponding script text 80 from the event / script correspondence table 802 using the event name added to the event as a key.
1 is taken out (step S902), and the script
The control is transferred to the text (step S903). Maine·
The routine program is basically a simple program that repeats this operation.
【0080】本実施例2においては、スクリプト言語と
してLispプログラム言語を拡張したものを使用するが、
プログラム生成モジュールは最終的にLispスクリプトを
C言語によるプログラムに変換する(Lispプログラム言
語については、 Guy L. Steel Jr. et al., 井田昌之
訳, "Common LISP"(共立出版株式会社)を参照)。In the second embodiment, the Lisp programming language extended is used as the script language.
The program generation module finally converts a Lisp script into a program in C language (For the Lisp programming language, see Guy L. Steel Jr. et al., Translated by Masayuki Ida, "Common LISP") ).
【0081】この変換メカニズムそのものは一般的なプ
ログラム翻訳機構を利用している。本実施例2における
Lispスクリプトの拡張は以下コマンドの追加によってな
される。即ち、 (1)(launchApp "アプリ名") (2)(terminateApp "アプリ名") (3)(forwardMessage "アプリ名" "メッセージのテ
キスト") である。コマンド(1),(2),(3)の機能は、実
施例1における同名のコマンドと同じく、アプリケーシ
ョンの起動,終了およびメッセージの配送である。This conversion mechanism itself uses a general program translation mechanism. In the second embodiment
Lisp script extension is done by adding the following commands. That is, (1) (launchApp "app name") (2) (terminateApp "app name") (3) (forwardMessage "app name""messagetext"). The functions of the commands (1), (2), and (3) are the same as the command of the same name in the first embodiment, that is, the start and end of the application and the delivery of the message.
【0082】本実施例2では、必要な情報をマスタのプ
ログラムに組み込むことができるので、アプリケーショ
ン情報などを取得するために特別なコマンドは必要がな
い。このため上記のアプリケーションの制御のためのコ
マンドのみ用意される。これらの機能は、オペレーティ
ングシステムの基本的な機能として提供されるので、そ
れらの機能をLispから利用するだけでよい。In the second embodiment, since necessary information can be incorporated in the master program, no special command is required to obtain application information or the like. Therefore, only commands for controlling the above-mentioned application are prepared. These features are provided as basic features of the operating system, so you only need to use them from Lisp.
【0083】さて、図7と図10及び図11を用いてプ
ログラム生成モジュール711の動作を説明する。図1
0及び図11は、プログラム生成モジュールの処理手順
を表すフローチャートである。Now, the operation of the program generation module 711 will be described with reference to FIGS. 7, 10 and 11. FIG.
0 and FIG. 11 are flowcharts showing the processing procedure of the program generation module.
【0084】ユーザがウインドウ710で作成されるべ
き統合アプリケーション名を指定すると、アプリケーシ
ョン生成サーバ704はそのアプリケーション名をキー
としてアプリケーション管理モジュール705にアプリ
ケーション情報702の検索を依頼する(ステップS1
001)。アプリケーション情報が存在しなかった場合
は(ステップS1002)、新たにアプリケーション情
報を生成する(ステップS1003)。When the user specifies the integrated application name to be created in the window 710, the application generation server 704 requests the application management module 705 to search the application information 702 using the application name as a key (step S1).
001). If the application information does not exist (step S1002), new application information is generated (step S1003).
【0085】アプリケーション情報702が得られる
と、アプリケーション情報702のeventHandlersか
ら、イベント・スクリプト対応表が取り出され、ウィン
ドウ710に表示される(ステップS1004)。イベ
ント名のリストが表示されると、ユーザによって処理の
終了が指示されるまで(ステップS1005)、ステッ
プS1006からステップS1016までの処理が繰り
返される。When the application information 702 is obtained, the event / script correspondence table is retrieved from the eventHandlers of the application information 702 and displayed in the window 710 (step S1004). When the list of event names is displayed, the processing from step S1006 to step S1016 is repeated until the end of processing is instructed by the user (step S1005).
【0086】本実施例2においても、実施例1と同様に
イベントの追加・削除・更新が可能である。Also in the second embodiment, it is possible to add / delete / update the event as in the first embodiment.
【0087】即ち、ユーザによって処理の終了が指示さ
れなかった場合(ステップS1005)、イベントの追
加は、追加するイベントのイベント名を与えることによ
り(ステップS1006)、あらたにイベント情報が生
成され(ステップS1007)、イベント・スクリプト
対応表に追加される(ステップS1008)。この時点
でのイベント情報のeventName属性とowner属性は指定さ
れているが、scriptText属性とinfo属性の値はNULL文字
列である。That is, when the user has not instructed the end of the process (step S1005), the event is newly added by giving the event name of the event to be added (step S1006) (step S1006). S1007) is added to the event / script correspondence table (step S1008). The eventName attribute and owner attribute of the event information at this point are specified, but the values of the scriptText attribute and info attribute are null character strings.
【0088】また、イベントの削除は、イベント名がユ
ーザによって与えられず(ステップS1006)、イベ
ント名がウィンドウ710上のリストで選択され(ステ
ップS1009)、さらにユーザがマスタ・アプリケー
ション作成サーバ704に削除を要求することによって
実行される(ステップS1010)。この場合、選択さ
れたイベント情報がイベント・スクリプト対応表から削
除される。即ち、ステップS1011において指定され
たイベント情報を削除し、ステップS1012において
アプリケーション情報から選択されたイベント情報を削
除する。To delete an event, the event name is not given by the user (step S1006), the event name is selected from the list on the window 710 (step S1009), and the user deletes it in the master application creation server 704. Is executed by requesting (step S1010). In this case, the selected event information is deleted from the event script correspondence table. That is, the event information designated in step S1011 is deleted, and the event information selected from the application information is deleted in step S1012.
【0089】また、イベント処理の変更に対しては、ユ
ーザがウインドウ710上でイベントを指定した時に
(ステップS1009)、ユーザが削除要求をおこなわ
なければ(ステップS1010)、対応するイベント情
報がイベント・スクリプト対応表から取り出され(ステ
ップS1013)、ウインドウ710上に表示される
(ステップS1014)。本実施例2では、scriptText
属性に登録されているスクリプトとinfo属性に登録され
ている付加情報のみ更新が可能である。ユーザはウイン
ドウ710上で必要に応じてスクリプトおよび付加情報
を編集することによりイベント情報を更新する。For changing the event processing, when the user specifies an event on the window 710 (step S1009) and the user does not make a deletion request (step S1010), the corresponding event information is the event. It is taken out from the script correspondence table (step S1013) and displayed on the window 710 (step S1014). In the second embodiment, scriptText
Only the script registered in the attribute and the additional information registered in the info attribute can be updated. The user updates the event information by editing the script and additional information on the window 710 as necessary.
【0090】イベント情報がウィンドウ710上で変更
された場合(ステップS1015)、その変更は2次記
憶ディスク701上のアプリケーション情報703に書
き込まれる(ステップS1016)。変更後、あるいは
変更がおこなわれなかった場合(ステップS1015)
は、ステップS1005に戻って、操作の継続か処理の
終了かを判断し、ユーザからの終了指示がなければ、上
述のステップS1006からステップS1016までの
処理を続行する。When the event information is changed on the window 710 (step S1015), the change is written in the application information 703 on the secondary storage disk 701 (step S1016). After the change or when the change has not been made (step S1015)
Returns to step S1005, determines whether to continue the operation or to end the process. If there is no end instruction from the user, the process from step S1006 to step S1016 described above is continued.
【0091】イベント情報のチェックの終了がユーザに
より指示されると(ステップS1005)、プログラム
生成モジュール708はアプリケーション情報からイベ
ント・スクリプト対応表を取り出し(ステップS101
7)、さらにイベント・スクリプト対応表からスクリプ
ト・テキストを分離する(ステップS1018)。When the user gives an instruction to finish checking the event information (step S1005), the program generation module 708 extracts the event / script correspondence table from the application information (step S101).
7) Further, the script text is separated from the event script correspondence table (step S1018).
【0092】次に、メイン・ルーチン・プログラム70
9とイベント・スクリプト対応表および取り出したスク
リプト・テキストをマージしてLispプログラム言語によ
るマスタ・プログラムを作成する(ステップS101
9)。最後に生成されたLispマスタ・プログラムをCプ
ログラム言語に変換することにより最終的なマスタ・プ
ログラムが生成される(ステップS1020)。Next, the main routine program 70
9 and the event / script correspondence table and the retrieved script text are merged to create a master program in the Lisp programming language (step S101).
9). The final master program is generated by converting the finally generated Lisp master program into the C programming language (step S1020).
【0093】本実施例2では、以上の機構を利用するこ
とにより、統合アプリケーションに変更が必要な時も、
変更前のアプリケーション情報を基に適当な変更をアプ
リケーション情報に加えることにより、変更に対応した
バージョンのマスタ・プログラムを生成することが可能
となる。In the second embodiment, by utilizing the above mechanism, even when the integrated application needs to be changed,
By adding an appropriate change to the application information based on the application information before the change, it is possible to generate a version of the master program corresponding to the change.
【0094】また、本実施例2において提供されたマス
タ・プログラムによる統合アプリケーションも、実施例
1で実現された統合アプリケーションと同様に、複数の
ユーザ環境上で同時に動作する複数のアプリケーション
を連係させて、複数のユーザ環境下における協調作業環
境を実現することが可能である。Further, the integrated application by the master program provided in the second embodiment also links a plurality of applications simultaneously operating in a plurality of user environments in the same manner as the integrated application realized in the first embodiment. It is possible to realize a collaborative work environment under a plurality of user environments.
【0095】以上の様にして本実施例では、 ・統合アプリケーションにおける、ユーザ間で反映され
るべきユーザ操作をイベントとして定義する手段を提供
し、 ・拡張したLispプログラム言語を提供してイベント・ス
クリプト変換テーブル生成手段を導入する ことにより、イベントの処理を各ユーザ環境で動作する
アプリケーションの連係動作として記述する手段を提供
した。As described above, in the present embodiment, the means for defining the user operation to be reflected among the users in the integrated application as an event is provided, and the extended Lisp programming language is provided to provide the event script. By introducing the conversion table generation means, we provided a means to describe the processing of an event as a coordinated operation of an application operating in each user environment.
【0096】また、アプリケーション情報とスクリプト
情報から半自動的にマスタ・プログラムを生成する手段
を提供することにより、統合アプリケーションで処理さ
れるべきイベントの構成と、そのイベントに対する処理
を変更する手段が提供される。By providing means for semi-automatically generating a master program from application information and script information, a means for changing the configuration of an event to be processed by the integrated application and the processing for the event is provided. It
【0097】本実施例によれば、共同作業のおける参加
者や使用アプリケーションなどの変更によりマスタ・プ
ログラムの変更が必要となった時にも、2次記憶ディス
クで管理されているアプリケーション情報を更新するこ
とにより、マスタ・プログラムを容易に修正する事が可
能となる。According to the present embodiment, the application information managed by the secondary storage disk is updated even when the master program needs to be changed due to the change of participants and applications used in the joint work. This makes it possible to easily modify the master program.
【0098】また、生成されたマスタ・プログラム自身
は対象となるアプリケーション連係に特化した制御をお
こなうことができるので、効率的な処理を実現すること
が可能である。Further, since the generated master program itself can perform control specialized for the target application linkage, it is possible to realize efficient processing.
【0099】尚、本発明は、複数の機器から構成される
システムに適用しても1つの機器からなる装置に適用し
ても良い。また、本発明はシステム或いは装置に本発明
により規定される処理を実行させるプログラムを供給す
ることによって達成される場合にも適用できることはい
うまでもない。The present invention may be applied to a system composed of a plurality of devices or an apparatus composed of a single device. Further, it goes without saying that the present invention can also be applied to a case where it is achieved by supplying a program that causes a system or an apparatus to execute the processing defined by the present invention.
【0100】[0100]
【発明の効果】以上説明したように、本発明によれば、
動的に構成要素が変動しうる複雑な環境に対応可能な、
柔軟なマスタ・アプリケーションを提供することが可能
となる。As described above, according to the present invention,
Capable of handling complex environments in which the components can dynamically change,
It is possible to provide a flexible master application.
【0101】また、動的に構成要素が変動しうる複雑な
環境を特に意識することなく、その環境で動作するアプ
リケーションを構築することが可能になる。Further, it becomes possible to construct an application which operates in the environment without paying particular attention to the complicated environment in which the constituent elements can dynamically change.
【0102】[0102]
【図1】実施例1による統合アプリケーション管理シス
テムの概要図である。FIG. 1 is a schematic diagram of an integrated application management system according to a first embodiment.
【図2】本実施例におけるアプリケーション連係の様子
をあらわす概念図である。FIG. 2 is a conceptual diagram showing a state of application cooperation in the present embodiment.
【図3】図2におけるDesktopMgrの内部でおこなわれる
処理の様子を表す図である。FIG. 3 is a diagram showing a state of processing performed inside DesktopMgr in FIG.
【図4】実施例1における処理の流れを表すフローチャ
ートである。FIG. 4 is a flowchart showing the flow of processing in the first embodiment.
【図5】統合アプリケーション作成処理の概要を説明す
る図である。FIG. 5 is a diagram illustrating an overview of integrated application creation processing.
【図6】統合アプリケーション作成処理の手順を表すフ
ローチャートである。FIG. 6 is a flowchart showing a procedure of integrated application creation processing.
【図7】本実施例2のマスタ・アプリケーション生成シ
ステムの概略図である。FIG. 7 is a schematic diagram of a master application generation system according to the second embodiment.
【図8】メイン・ルーチンプログラムの動作概要を説明
する図である。FIG. 8 is a diagram illustrating an outline of operation of a main routine program.
【図9】メイン・ルーチンプログラムの処理を表すフロ
ーチャートである。FIG. 9 is a flowchart showing the processing of a main routine program.
【図10】プログラム生成モジュールの処理手順を表す
フローチャートである。FIG. 10 is a flowchart showing a processing procedure of a program generation module.
【図11】プログラム生成モジュールの処理手順を表す
フローチャートである。FIG. 11 is a flowchart showing a processing procedure of a program generation module.
101 ワークステーション 102 DesktopMgr 103 アプリケーション情報 104 データベース 105 スクリプト情報 106 ディスプレイ 107 アプリケーション情報管理モジュール 108 スクリプト情報管理モジュール 109 スクリプト実行モジュール 110 イベント制御モジュール 111 CPU 112 主記憶装置 113 計算機バス 114 ネットワークケーブル 101 workstation 102 DesktopMgr 103 application information 104 database 105 script information 106 display 107 application information management module 108 script information management module 109 script execution module 110 event control module 111 CPU 112 main storage 113 computer bus 114 network cable
Claims (7)
て構成される作業環境上でアプリケーション群を連携動
作させる情報処理システムであって、 前記アプリケーション群の個々のアプリケーション毎に
連係動作に関するイベントの処理内容を示すイベント情
報群を保持する保持手段と、 1つのアプリケーションにおいてイベントが発行された
とき、該イベントに対応する当該アプリケーションのイ
ベント情報を前記保持手段のイベント情報群より検索す
る検索手段と、 前記検索手段で検索されたイベント情報に基づいて前記
イベントの処理を実行する実行手段とを備えることを特
徴とする情報処理システム。1. An information processing system for operating an application group in cooperation in a work environment constituted by one or a plurality of computers, wherein the processing content of an event related to a link operation is set for each individual application of the application group. Holding means for holding the event information group shown; searching means for searching event information of the application corresponding to the event from the event information group of the holding means when the event is issued in one application; An information processing system, comprising: an execution unit that executes the processing of the event based on the event information retrieved in.
ベント構成を変更する変更手段を更に備えることを特徴
とする請求項1に記載の情報処理システム。2. The information processing system according to claim 1, further comprising changing means for changing the event configuration of the event information group in the holding means.
イベントの処理内容を変更する変更手段を更に備えるこ
とを特徴とする請求項1に記載の情報処理システム。3. Each event information in the holding means,
The information processing system according to claim 1, further comprising a changing unit that changes the processing content of the event.
内容がスクリプト言語で記述されていることを特徴とす
る請求項1に記載の情報処理システム。4. The information processing system according to claim 1, wherein the processing content of the event in the event information is described in a script language.
ストを保持するリスト保持手段と、 前記リスト保持手段で保持されたイベント名に対応する
イベント処理の手続きを保持する手続保持手段とを備え
ることを特徴とする請求項1に記載の情報処理システ
ム。5. The holding means holds a list holding means for holding a list of event names registered for each individual application, and an event processing procedure corresponding to the event name held by the list holding means. The information processing system according to claim 1, further comprising procedure holding means.
が可能な情報処理装置であって、 前記アプリケーション群の個々のアプリケーション毎に
連係動作に関するイベントの処理内容を示すイベント情
報群を保持する保持手段と、 1つのアプリケーションにおいてイベントが発行された
とき、該イベントに対応する当該アプリケーションのイ
ベント情報を前記保持手段のイベント情報群より検索す
る検索手段と、 前記検索手段で検索されたイベント情報に基づいて前記
イベントの処理を実行する実行手段とを備えることを特
徴とする情報処理装置。6. An information processing apparatus capable of operating an application group in cooperation with each other, and holding means for holding an event information group indicating processing contents of an event related to a link operation for each individual application of the application group, When an event is issued in one application, search means for searching event information of the application corresponding to the event from the event information group of the holding means, and the event based on the event information searched by the search means An information processing apparatus, comprising: an executing unit that executes the process of.
の情報処理方法であって、 前記アプリケーション群の個々のアプリケーション毎に
連係動作に関するイベントの処理内容を示すイベント情
報群を保持する保持工程と、 1つのアプリケーションにおいてイベントが発行された
とき、該イベントに対応する当該アプリケーションのイ
ベント情報を前記保持工程で保持されたイベント情報群
より検索する検索工程と、 前記検索工程で検索されたイベント情報に基づいて前記
イベントの処理を実行する実行工程とを備えることを特
徴とする情報処理方法。7. An information processing method for operating an application group in cooperation, comprising: a holding step of holding an event information group indicating processing contents of an event related to a link operation for each individual application of the application group; When an event is issued in the application, a search step of searching event information of the application corresponding to the event from the event information group held in the holding step, and the search step based on the event information searched in the search step An information processing method, comprising: an execution step of executing event processing.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6296995A JPH08153010A (en) | 1994-11-30 | 1994-11-30 | Information processing method, apparatus and system |
DE69535478T DE69535478T2 (en) | 1994-11-30 | 1995-11-29 | Information processing system |
US08/564,661 US6021444A (en) | 1994-11-30 | 1995-11-29 | Information processing system |
EP95308588A EP0715268B1 (en) | 1994-11-30 | 1995-11-29 | Information processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6296995A JPH08153010A (en) | 1994-11-30 | 1994-11-30 | Information processing method, apparatus and system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08153010A true JPH08153010A (en) | 1996-06-11 |
Family
ID=17840896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6296995A Pending JPH08153010A (en) | 1994-11-30 | 1994-11-30 | Information processing method, apparatus and system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08153010A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998019235A1 (en) * | 1996-10-29 | 1998-05-07 | Mitsubishi Denki Kabushiki Kaisha | Software linkage system for information processor |
JPH11242600A (en) * | 1996-10-29 | 1999-09-07 | Mitsubishi Electric Corp | Software linkage system for information processing equipment |
JP2005182805A (en) * | 2003-12-19 | 2005-07-07 | Fuji Xerox Co Ltd | Method and system for extending an existing user interface |
JP2009087119A (en) * | 2007-10-01 | 2009-04-23 | Hitachi Ltd | Operation support program |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05298052A (en) * | 1992-04-21 | 1993-11-12 | Fujitsu Ltd | Window system and event processing method |
-
1994
- 1994-11-30 JP JP6296995A patent/JPH08153010A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05298052A (en) * | 1992-04-21 | 1993-11-12 | Fujitsu Ltd | Window system and event processing method |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998019235A1 (en) * | 1996-10-29 | 1998-05-07 | Mitsubishi Denki Kabushiki Kaisha | Software linkage system for information processor |
GB2323192A (en) * | 1996-10-29 | 1998-09-16 | Mitsubishi Denki Kabushiki Kaisha | Software linkage system for information processor |
JPH11242600A (en) * | 1996-10-29 | 1999-09-07 | Mitsubishi Electric Corp | Software linkage system for information processing equipment |
GB2323192B (en) * | 1996-10-29 | 2001-09-26 | Mitsubishi Electric Corp | Software linking system in information processor |
US6438620B2 (en) | 1996-10-29 | 2002-08-20 | Mitsubishi Denki Kabushiki Kaisha | Software linking system in information processor |
JP2005182805A (en) * | 2003-12-19 | 2005-07-07 | Fuji Xerox Co Ltd | Method and system for extending an existing user interface |
JP2009087119A (en) * | 2007-10-01 | 2009-04-23 | Hitachi Ltd | Operation support program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5860004A (en) | Code generator for applications in distributed object systems | |
US6189138B1 (en) | Visual composition tool for constructing application programs using distributed objects on a distributed object network | |
US5339435A (en) | Heterogenous software configuration management apparatus | |
JP2724256B2 (en) | Computer system | |
US7917888B2 (en) | System and method for building multi-modal and multi-channel applications | |
US6083277A (en) | Filtering an object interface definition to determine services needed and provided | |
US5301270A (en) | Computer-assisted software engineering system for cooperative processing environments | |
US5734905A (en) | User interface in object oriented computer system for performing intuitive object transformations | |
US5819089A (en) | Portable and dynamic distributed transaction management method | |
US6507833B1 (en) | Method and apparatus for dynamically rendering components at run time | |
US6499036B1 (en) | Method and apparatus for data item movement between disparate sources and hierarchical, object-oriented representation | |
KR102397494B1 (en) | Low code web development and operating system, and service method using of it | |
US20070150507A1 (en) | System for a configurable open database connectivity conduit | |
US20070079282A1 (en) | Browser based designer and player | |
US20030093420A1 (en) | Method and system for retrieving sharable information using a hierarchically dependent directory structure | |
KR20060101221A (en) | Rich data bound application | |
JP2008512794A (en) | Object processing graph application development system | |
JPH10105410A (en) | Internet enabling portfolio manager system and its method | |
JPH08339355A (en) | Method and apparatus for calling processing task execution in distributed system | |
US7240072B2 (en) | Dynamic generic framework for distributed tooling | |
JPH0635709A (en) | Object class specifying device, widget and realizing method thereof | |
US6032198A (en) | Application design supporting method and apparatus for client/server system | |
US20080066002A1 (en) | Method for creation, management, and presentation of user-scoped navigation topologies for web applications | |
US6493704B1 (en) | Method and apparatus for using metadata to dynamically generate a display page to solicit input from a user | |
JPH08153010A (en) | Information processing method, apparatus and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040419 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040618 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040712 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040910 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050415 |