Query augmenting and refining (e.g., inexact access)

Information processing unit for automatically building work environment for holding information necessary to reflect activities carried out in work environment

5828375

Abstract

A work environment is expressed as an information unit set (Snap), a data object or the like to be used in the work environment is expressed as an information unit (Mediator), a plurality of information unit sets are collected into a Place and are stored in Places into an information unit set hold history storage part 3, and an information unit set to be used in a current work environment is held by an information unit set hold part 14. If a given condition such as the change of a work or the like is prepared, then the information unit set held by the information unit set hold part 14 is stored into the information unit set hold history storage part 3 by a storage instruct part 7, and selection information such as the name of a work and the like is applied to the thus stored information unit set. If a certain piece of selection information is input from a user in order that a certain information unit set can be selected and used in a current work environment, then an information unit set select part 4 uses the thus input select information to select an information unit set corresponding to the present select information from the information unit set hold history storage part 3, and the present information unit set is then read out into the information unit set hold part 14 by an information unit set read part 5.


Claims

What is claimed is:

1. An information processing unit including data objects and application objects for operating the data objects and further including a work space for collecting and creating the data objects using the application objects, said information processing unit comprising:

information unit set hold means for holding a set of information units consisting of said data objects or said application objects;

information unit set hold history storage means capable of storing a plurality of said information unit sets;

storage instruct means for instructing that said information unit sets held by said information unit set hold means should be stored into said information unit set hold history storage means;

selection information apply means for applying selection information to said information unit sets stored into said information unit set hold history storage means by said storage instruct means;

select means for selecting said information unit set to be stored into said information unit set hold means from said information unit sets stored into said information unit set hold history storage means using said selection information applied by said selection information apply means; and

read means for reading out said information unit set selected by said select means into said information unit set hold means.

2. An information processing unit as set forth in claim 1, further including information unit edit means for editing information units with respect to said information unit set held by said information unit set hold means, and increased or decreased information unit name storage means for storing the names of said information units added to or deleted from said information unit edit means;

wherein said selection information apply means applies said information unit names stored as said selection information by said increased or decreased information unit name storage means to said information unit set as selection information, and said select means selects said information unit set using said information unit name applied by said selection information apply means.

3. An information processing unit as set forth in claim 1, further including:

information unit specify means for specifying an information unit held by said information unit set hold means;

second select means for selecting one of said information unit sets stored in said information unit set hold history storage means, said selected information unit set serving as the destination of the movement or copy of said information units specified by said information unit specify means;

information unit move means for adding said information unit specified by said information unit specify means to said information unit set selected by said second select means; and

movement source information unit set name storage means for storing said information unit set names of the movement source and movement destination of said specified information unit in accordance with the movement of said specified information unit between information unit sets by said information unit move means;

wherein said selection information apply means stores therein, as said selection information, the information unit set name of the movement source stored by said movement source information unit set name storage means, and said select means selects said information unit set using said movement source information unit set name applied by said selection information apply means.

4. An information processing unit as set forth in claim 1, further including:

information unit instruct means for receiving an instruction to perform a processing on said information unit held by said information unit set hold means;

information unit process means for performing a processing on the information unit instructed by said information unit instruct means; and

execution information unit name storage means for storing therein the name of the information unit on which said processing was executed by said information unit process means, wherein said selection information apply means applies said information unit name stored as said selection information by said execution information unit name storage means to said information unit set as selection information, and said select means selects said information unit set using said information unit name applied by said selection information apply means.

5. An information processing unit as set forth in claim 4, further including execution command name storage means for storing the name of a command executed on said information unit by said information unit process means;

wherein said selection information apply means applies said command name stored as said information selection by said execution command name storage means to said information unit set as selection information, and said select means selects said information unit set using said command name applied by said selection information apply means.

6. An information processing unit as set forth in claim 1, further including:

selection information sort and display means for sorting and displaying said selection information applied to said information unit set stored by said information unit set hold history storage means;

selection information sort and display format hold means for holding the display format of selection information displayed by said selection information sort and display means; and

selection information specify means for specifying said selection information displayed by said selection information sort and display means;

wherein said information unit set hold history storage means stores said selection information in such a manner that said selection information is divided to one or more selection information attributes and said selection information attributes are respectively applied to said information unit sets; said selection information sort and display means a first hierarchy of selection information attribute display area and a second hierarchy of selection information attribute display area, a list of selection information having said selection information attributes is displayed as a first hierarchy in a format decided by said selection information sort and display format hold means in said first hierarchy of selection information attribute display area, a list of selection information having said selection information attributes is displayed as a second hierarchy in a format decided by said selection information sort and display format hold means in said second hierarchy of selection information attribute display area, and in accordance with the fact that said selection information of said first hierarchy is specified by said selection information specify means, only a second hierarch of selection information applied to information unit sets stored in said information unit set hold history storage means including said specified selection information is displayed on said second hierarchy of selection information attribute display area; and, said select means selects one of said information unit sets stored by said information unit set hold history storage means using both of selection information specified in said first hierarchy and selection information specified in said second hierarchy.

7. An information processing unit as set forth in claim 6, further including selection information newest date and time hold means, with respect to all of said selection information applied to said information unit sets stored by said information unit set hold history storage means, for holding the newest dates and times of creation of said information unit sets respectively having their respective pieces of selection information applied thereto, wherein said selection information sort and display means displays said selection information in such a manner that said selection information is re-arranged according to said newest dates and times of creation held by said selection information newest date and time hold means.

8. An information processing unit as set forth in claim 6, further including selection information application date and time hold means, with respect to all of said selection information applied to said information unit sets stored by said information unit set hold history storage means, for holding the dates and times of application of said information unit sets in correspondence to the dates and times of creation of said information unit sets, wherein said selection information sort and display means displays said selection information in such a manner that said selection information is re-arranged according to said dates and times of application held by said selection information application date and time hold means.

9. An information processing unit as set forth in claim 6, wherein said information sort and display means displays said selection information applied to said information unit sets stored by said information unit set hold history storage means, and said select means selects the newest one of said information unit sets having said selection information specified according to said selection information applied to said information unit sets to be read into said information unit set hold means, among said selection information displayed by said information sort and display means.

10. An information processing unit as set forth in claim 6, further including selection information input means which, in accordance with the fact that said storage instruct means instructs the storage of said information unit sets into said information unit set hold history storage means, allows a user to input or specify selection information to be applied to said information unit sets to be stored into said information unit set hold history storage means, wherein said selection information input means accepts the input of the name of a work being executed by said user at the time of the storage of said information unit sets, and said selection information sort and display means sorts and displays said information unit sets according to the display of said work name or according to said work name to be stored into said information unit set hold history storage means.

11. An information processing unit as set forth in claim 6, wherein said selection information sort and display means sorts and displays said information unit sets according to the display of a user name or according to a user name to be stored into said information unit set hold history storage means.

12. An information processing unit as set forth in claim 6, wherein said selection information sort and display means sorts and displays said information unit sets according to the display of said information unit name or according to said information unit name to be stored into said information unit set hold history storage means.

13. An information processing unit as set forth in claim 1, further including third select means for selecting two or more of said information unit sets held by said information unit set hold means or by said information unit set hold history storage means, and information unit set synthesize means for executing a set operation on said information units held by two or more information unit sets selected by said third select means;

wherein a new information unit set created by said set operation is read into said information unit set hold means to thereby make the same said information unit set held by said information unit set hold means.

14. An information processing unit as set forth in claim 13, further including:

fourth select means for selecting said information unit sets held by said information unit set hold means or by said information unit set hold history storage means;

confinement condition specify means, with respect to the set of information units held by information unit sets selected by said fourth select means, for specifying a condition to confine said information units; and

confinement execute means for deleting the information unit set that does not satisfy said confinement condition specified by said confinement condition specify means from said information unit sets selected by said fourth select means, wherein said information unit confinement processing is performed on said information unit sets to thereby create a new information unit set, and said new information unit set is read into said information unit set hold means to thereby make the same said information unit set held by said information unit set hold means.

15. An information processing unit as set forth in claim 1, further including storage execution judge means, in accordance with the occurrence of an event due to an instruction from a user or from a command, for judging based on a previously set rule whether information unit sets are to be stored into said information unit set hold history storage means or not;

wherein said information unit edit means, in accordance with the judgment by said storage execution judge means, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

16. An information processing unit as set forth in claim 15, wherein said storage execution judge means executes said judgment in accordance with the occurrence of an event to read said information unit set stored by said information unit set hold history storage means into said information unit set hold means, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

17. An information processing unit as set forth in claim 15, further including change declare means for receiving from a user a declaration of change of the kind of a work, wherein said storage execution judge means executes said judgment in accordance with the occurrence of a declaration event from said change declare means, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

18. An information processing unit as set forth in claim 15, further including user manage means for distinguishing users uniquely, wherein said storage execution judge means executes said judgment in accordance with the occurrence of an event in which the change of users is distinguished, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

19. An information processing unit as set forth in claim 15, further including information unit change detect means for detecting addition or deletion or attribute change of the information unit of said information unit set held by said information unit set hold means, wherein said storage execution judge means executes said judgment in accordance with the occurrence of an event in which said change is detected by said information unit change detect means, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

20. An information processing unit as set forth in claim 15, further including information unit display detect means for detecting the display of the contents of information units to be processed, wherein said storage execution judge means executes said judgment in accordance with the occurrence of an event in which said display is detected by said information unit display detect means, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

21. An information processing unit as set forth in claim 15, further including storage execution cycle hold means for holding a cycle for storing information unit sets into said information unit set hold history storage means, wherein said storage execution judge means executes said judgment in accordance with the occurrence of an event at every cycle, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

22. An information processing unit as set forth in claim 15, further including storage execution rule hold means for holding a rule based on the number of times a command is executed, and command storage means for storing one or more commands executed, wherein said storage execution judge means executes said judgment in accordance with an event in which a preset command is coincident with the sequence of a rule held by storage execution rule hold means, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

23. An information processing unit as set forth in claim 15, further including information unit movement detect means for detecting that information units have moved from said information unit set hold means into said information unit set hold history storage means by said information unit move means, wherein said storage execution judge means executes said judgment in accordance with the occurrence of an event in which said information unit movement detect means detects said movement of said information units, and said information unit edit means, at the time of occurrence of said event, stores said information unit set held by said information unit set hold means into said information unit set hold history storage means.

24. An information processing unit as set forth in claim 1, wherein said information unit set hold means includes current state hold means for holding a plurality of information unit sets to be displayed together with selection information used as the attributes thereof, and current state display means for outputting and displaying information unit sets which are included in said information unit sets held by said information unit set hold means and correspond to selection information input from a user, and also wherein said storage instruct means includes storage judge means, when the number of information units included in information unit sets is changed, for judging according to a preset rule whether the information unit set just before said change is to be stored or not, and storage means for allowing the information unit sets judged to be stored by said storage judge means to be stored into said information unit set hold history storage means.

25. An information processing unit as set forth in claim 24, wherein said current state display means outputs and displays information for identifying all the information unit sets held by said current state hold means.

26. An information processing unit as set forth in claim 24, wherein said information unit set hold history storage means further includes current state obtain means which stores a plurality of places each consisting a further aggregated set of a plurality of information unit sets, and also which allows a place selected by a user from said places to be held by said information unit set hold means.

27. An information processing unit as set forth in claim 24, wherein said information unit set hold history storage means further includes current state obtain means which stores a plurality of places each consisting a further aggregated set of a plurality of information unit sets, and also which, based on a preset condition, allows one of said places to be held by said information unit set hold means.

28. An information processing unit as set forth in claim 24, wherein said storage judge means judges said storage when the number of information units in said information unit sets is changed from increase to decrease.

29. An information processing unit as set forth in claim 24, wherein said select means includes related state extract means for extracting information unit sets corresponding to a preset extraction rule about said selection information from said information unit sets held by said information unit set hold history storage means, related state hold means for holding said extracted information unit sets, list display means for displaying the selection information of said extracted information unit sets to a user, and related information specify means for specifying information unit sets corresponding to the requirements of the user for said displayed selection information from said information unit sets held by said related state hold means, and also wherein said read means includes related state introduce means for reading out information unit sets specified by said related information specify means from said related state hold means and allows the same to be held by said current state hold means.

30. An information processing unit as set forth in claim 29, wherein said current state hold means includes a work name as said selection information, said related state introduce means copies said information unit sets specified from said information unit sets held by said related state hold means and the work names thereof and allows the same to be held by said current state hold means, and said related state extract means extracts one or more related information unit sets respectively including the same work names as the work names of said information unit sets held by said current state hold means.

31. An information processing unit as set forth in claim 30, wherein said related state extract means extracts, for each user, the newest one of the information unit sets created by other users and having the same work name as the selection information or work name of said information unit sets held by said current state hold means.

32. An information processing unit as set forth in claim 30, wherein said related state extract means extracts, for each work name or selection information thereof, the newest one of all the information unit sets created by a user himself or herself from said information unit set hold history storage means.

33. An information processing unit as set forth in claim 24, further including state synthesize means for executing a preset set operation on the elements or information units of two or more information unit sets held by said current state hold means, wherein said state synthesize means adds an information unit set synthesized by execution of said set operation to said current state hold means to be held thereby.

34. An information processing unit as set forth in claim 33, wherein said set operation of said state synthesize means, according to the selection information or work name of said information unit sets held by said current state hold means, extracts, for each user, the newest one of information unit sets created by other users and having the same work name as the work name of said information unit sets held by said current state hold means from said information unit set hold history storage means, and finds a sum set of information units included in said information unit sets having said same work name.

35. An information processing unit as set forth in claim 33, wherein said set operation of said state synthesize means, according to the selection information or one work name of said information unit sets held by said current state hold means, extracts a first information unit set not only newer than information unit sets held by said current state hold means and having the same work name among information unit sets created by other users and having the same name as said one work name but also newest in the information unit sets of the present user, extracts a second information unit set not only belonging to information unit sets having the work name of the present user but also newest in information unit sets created before information unit sets held by said current state hold means, subtracts information units held by said second information unit set from information units held by said first information unit set to find a difference, thereby extracting a third information unit set, subtracts the information units held by said first information unit set from information units held by said third information unit set to find a difference, thereby extracting a fourth information unit set, and adds said fourth information unit set to said current state hold part so that said fourth information unit set can be held by said current state hold part.

36. An information processing unit as set forth in claim 33, wherein said set operation of said state synthesize means, according to the selection information or one work name of said information unit sets held by said current state hold means, extracts a first information unit set not only newer than information unit sets held by said current state hold means and having the same work name among information unit sets created by other users and having the same name as said one work name but also newest in the information unit sets of the present user, extracts a second information unit set not only belonging to information unit sets having the work name of the present user but also newest in information unit sets created before information unit sets held by said current state hold means, subtracts information units held by said second information unit set from information units held by said first information unit set for each of two or more other users to find a difference, thereby extracting a third information unit set for each of two or more other users, finds a sum set of all of said third information unit sets to thereby extract a fifth information unit set, subtracts the information units held by said first information unit set from information units held by said fifth information unit set to find a difference, thereby extracting a fourth information unit set, and adds said fourth information unit set to said current state hold part so that said fourth information unit set can be held by said current state hold part.

37. An information processing unit as set forth in claim 33, wherein said set operation of said state synthesize means extracts, for each of users, the newest one of information unit sets created by other users and having the same work name as the work name specified by the selection information of the information unit sets held by said current state hold means, and finds a comment set of information units held by the information unit sets that have the same work name.


Description

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an information processing unit which supplies a work environment (an information unit set) for holding an object (an information unit) such as a document that can be electronically accessed or the like to thereby support the execution of a work and, in particular, to an information processing unit which supplies a work environment for holding an object in connection with a plurality of works to be executed in parallel to each other.

2. Description of the Prior Art

At present, various office works can be done by means of management of files using information processing equipment such as a personal computer, a work station or the like. Resources to be handled by such information processing equipment, such as documents, electronic mails, application programs, input/out devices and the like are managed by a file system, a data base or the like. In such management, to previously arrange a set of necessary documents and a set of necessary tools in order according to works is effective in doing works smoothly. Conventionally, as a method for previously arranging the resources that can be handled by the information processing equipment in order, there are known a hierarchical directory method and a desktop method.

The hierarchical directory method is employed by a file system in an operating system such as UNIX, MS-DOS (a registered trademark). In this method, a user is able to hold necessary pieces of information in a unit called a directory and, further, a plurality of directories can be structured in a hierarchical structure. In the information processing equipment that employs the hierarchical directory, the user is able to draw up a directory in correspondence to a work and to store work-related resources in the directory.

However, in the above-mentioned conventional file system, the individual resources stored in the directory are shown to the user only by the list of file names. For this reason, it is difficult to understand by intuition what kinds of resources are used in the work.

In order to solve the above problem, an information management method called a desktop method has been developed in the Star (a trade name) by Xerox Co. The desktop method is a method which holds a personal work environment and supplies a two-dimensional plane for expressing a desktop as a metaphor. Work-associated resources are positioned on a two-dimensional plane as figures called icons corresponding to their respective kinds. Data on documents or the like, folders for collecting a plurality of documents, peripheral equipment such as a printer and the like, application programs, references, and the like are arranged as symbols which can be easily understood by the user by intuition. In addition to the above, tools such as a watch, a computer and the like as well as other resources can be arranged on the two-dimensional plane.

These icons can be arranged freely by the user at positions which are suitable for the operation of the user. Further, in the Star, in order to be able to refer to resources which are managed by a distributed file system called a file server, an icon called a reference can be drawn up and arranged on the two-dimensional plate. Depending on the function of the reference, another name can be given to a common resource according the need of the user.

In the beginning, the desktop was provided one to each person as a personal work environment but, after then, there has been developed a device which is arranged to prepare a plurality of two-dimensional planes for resource arrangement.

As a conventional technology of this type, there are known the technologies that are respectively used in Macintosh (a registered trademark) developed by Apple Computer, Inc. and in Rooms (a trade name) developed by Xerox Co.

In Macintosh (a registered trademark), this technology is applied to a file system using a hierarchical directory. That is, there are managed two-dimensional planes called folders which respectively correspond to individual directories and resources held by the directories can be positioned on the two-dimensional planes. And, if the folder is opened, then there can be further obtained the display of the two-dimensional plane.

Here, as a work area in which information to be given to a user according to the switching of one task to another, there is known a concept called a work space. Bannon et al. proposed, in "Evaluation and analysis of user's activity organization" (CHI'83), the first work space concept that, in an office, a plurality of works are executed at the same time and in order and, when returning back to a certain work, it is better that an environment in which this work was previously done is retained.

As a device which has realized the work space concept, for example, there is known Rooms (a trade name) which is developed by Xerox Co. (Japanese Patent Publication No. 7-86820 of Heisei).

In Rooms, it is possible to define a desktop called a room for each work, while the room not only collects together resources therein but also manages the states of execution of applications. Accordingly, while retaining the state of an application under execution in a room as it is, a user is allowed to move another room for execution of another work. Also, the user is able to make connections between works collected in a set, using two metaphors, namely, a door and an overview, and is able to move the rooms.

When a user uses a plurality of environments for execution of a plurality of work operations, or hands his or her works over to another person, the user must remember or understand the structures and natures of the works to be executed by the user in the such environments. In the above-mentioned hierarchical directory or desktop methods, it is possible to modify information inherent to resources such as the names, kinds and the like of the resources, positions of the resources on the two-dimensional plane, and a hierarchical structure with reference to other directories or desktops. That is, such modification can help the user in understanding the structures of the works. For example, the user can give the resources proper names and can position the closely-related resources adjacent to each other.

However, how to handle the resources in a given work or how the resources are connected with each other is not so simple that it can be expressed only by the positions and names of the resources or only by the hierarchical structures of the directories and folders. In the Rooms method, rooms can be made for the respective works, necessary resources can be arranged in the respective rooms, and the respective works can be done in their respective rooms. However, it is difficult to previously sort various pieces of information according to the works, and also it takes much time and labor to re-arrange the sorted information according to the progress of the works. For these reasons, the setting of the rooms is likely to be rough, which is out of keeping with the system of the works.

As a conventional technology to show a user the structure of information in works in a manner easy to understand, for example, there is known the invention that is disclosed in Japanese Patent Publication No. 60-108975 of Showa. According to this invention, if a given area of a rough sketch image is specified by the user, then computer resources such as another rough sketch image, a document and the like associated with the specified area are shown the user.

Also, in the present invention, a work space is expressed by two hierarchies consisting of a guide image and an element image. The element image holds one state of the work space for executing a work, while the guide image holds the meaning information of the element image and serves as a guide to switching the element image. Therefore, by selecting one of tags shown on the guide image, the display of the element image can be switched.

Also, the display of the guide image includes two modes, through which a common image and a personal image can be selected respectively. If the personal image is used, then there can be prepared a frame set which handles the common information from the viewpoint of a person.

However, the guide image must be previously set and it is difficult to build an information sorting system while executing a work. For this reason, the above-mentioned invention is effective when a consistent sorting system is used without departing from a preset work structure, but it is difficult to follow a work system which varies dynamically.

Also, in U.S. Pat. No. 5,159,669, AUTOMATICALLY CREATING A SECOND WORKSPACE OPERATION RECORD INCLUDING HISTORY DATA AND A UNIT ID BASED ON A FIRST WORKSPACE OPERATION", Trigg et al., there is proposed an invention which employs an approach to build a new work space by reusing the activity history of a certain work space.

In this invention, a card capable of holding a link with a plurality of cards is regarded as a work space, and there is generated a history work space for displaying a history list of a series of operations such as what kind of card is formed on a certain work space, what kind of change is made in the card, and the like. The portion of the list that expresses the name of the card serves as an anchor, and a card appearing on the operation history list holding the history workspace can be easily accessed. That is, all the work spaces (cards) associated with a series of operations are collected together and retained in a history work space.

However, according to this invention, although it is possible to retain the operation history, the retained history work space is quite different from a work space where a job can be done but it is an anchor set which is used to retrieve information related to works previously done or to retrieve related work spaces.

As a conventional technology for retaining the progress states of a work, there are known the following technologies. However, in these technologies, a certain scene of a work in the past is retained and a programming is started again at the scene. That is, these technologies do not have a function to retain and reuse the environment of a work.

In particular, Windows 3.1 (a registered trademark) has a function to produce a dump of a desktop, as a sleep function. However, this function aims at retaining the current environment but is not able to hold the states of a plurality of works.

Also, Smalltalk-80 has a function to be able to retain the whole execution environment as a snapshot in accordance with an instruction by a user. However, this function aims at retaining a given state of a work by a snapshot, but it does cover the use of the thus retained state in another work. Therefore, Smalltalk-80 is designed such that a plurality of works are dealt with by another project and, in this respect, Smalltalk-80 is essentially the same as Rooms ("SMALLTALK-80-Interactive Programming Environment-" written by Adele Goldberg, translated into Japanese by Hideo Aiiso, published by Ohm Co.).

A debugger is a function which is able to retain the execution environment of a program in accordance with an instruction or with setting by a user. However, the debugger function aims at retaining the progress states of a plurality of modules and thus it is different in both object and structure from the invention which aims at storing the hold state of an object.

As a conventional technology to reuse the history information, there are known the following technologies. In these technologies, an operation is reused by use of the history, or information is retrieved by use of the history. That is, they treat the history only as a past state. For this reason, in these technologies, it is not possible that a state at a certain time in the past is restored and a new work is started at this state.

In particular, in a cooperative operation support device which is disclosed in Japanese Patent Publication No. 6-266662 of Heisei, the operation contents in the past can be reproduced accurately from the history of a cooperative operation and thus can be used for improvement in the efficiency of a cooperative operation to be carried out in the future. However, since the function of the present support device aims at only reproducing the operation contents, the states of the works in the past cannot be utilized in a work to be executed in the future.

Also, in a history device disclosed in Japanese Patent Publication No. 6-139117 of Heisei, by displaying a history of work operations simultaneously with a screen image for each of the operations, the selection of the history is facilitated. That is, when recording a history of work operations, a bit map image on the screen displayed at the then time was stored and, when displaying the history, the screen image is displayed at the same time. However, this can simply facilitate the remembering of the meaning of the operations carried out in the past, but the work cannot be started again from this state.

Further, in Japanese Patent Publication No. 6-214989 of Heisei, there is disclosed a document display method and a device for enforcing the same method which, in a hyper-text document, can facilitate the understanding of a history of the nodes referred to by a user and the routes of such reference. That is, a history of the movements between the nodes was stored, while symbols for representing the nodes and links are displayed in the order that document changes were made or the nodes are referred to; and, by moving and displaying a history mark in time series order to the history, the history can be shown. However, this can only display the history in time series order, but the work cannot be started again from the displayed state.

In order to be able to systematically hold in common and utilize various kinds of information which are stored in two or more different systems, it is important to understand such information accurately. For the accurate understanding of the information, it is absolutely essential to know the background information of the information that is stored in the systems, that is, the work and condition that the information was formed in. In order to know the background information of the information, it is necessary that the information is arranged in order from the viewpoint of works.

However, since the sorting and organization of the information vary dynamically with the progress of the works, in the above-mentioned conventional information processing units, it is difficult to sort and arrange the information in order and flexibly while advancing the works, in keeping up with the dynamic variations of the sorting and organization of the information.

In particular, in the above-mentioned conventional information processing units, there are found problems which are pointed out in the following articles (1) and (2):

(1) It is difficult to classify and arrange information in correspondence to works:

In order to manage various kinds of information which are related to different works, it is necessary to give meaning to the respective pieces of information from the viewpoint corresponding to the respective works. For this purpose, it is necessary that the respective pieces of information are classified and arranged in order in correspondence to the system of a work and are then managed systematically. Also, in order to support the parallel execution of a plurality of works, there must be prepared a plurality of environments which can supply the information that is arranged in order according to the works, the states of progress of the respective works must be held separately from each other, and it is necessary that the thus held works can be selected freely. Further, when leaving the sorting of a work being executed up to now and starting the work from a new point of view, it takes a great amount of labor to sort the work again.

(2) It is difficult to reuse know-how obtained through works:

In a work, there are available a lot of know-how; for example, this document is used in a certain work, the results of a certain work are to be sent to this person, a certain processing is performed in a certain work, and the like. Such kinds of know-how that can be standardized are provided in a manual so that they can be utilized in common. However, most of various kinds of know-how obtained through works are difficult to standardize and thus they are difficult to share in common. For this reason, conventionally, there is necessary a frame or a system which is able to reuse such know-how that is obtained through the execution process of the work.

SUMMARY OF THE INVENTION

The present invention aims at eliminating the above-mentioned drawbacks found in the conventional information processing units. Accordingly, it is an object of the invention to provide an information processing unit which reflects activities carried out in a work environment and automatically builds a work environment for holding information necessary for activities.

Also, it is another object of the invention to provide an information processing unit which not only builds the above work environment but also arranges information in order according to works.

Further, it is still another object of the invention to provide an information processing unit which not only builds the above work environment but also retains the progress states of works by the works.

Still further, it is yet another object of the invention to provide an information processing unit which, depending on works, restores a past state or takes out necessary information from the past state to thereby build the above work environment.

Yet further, it is a further object of the invention to provide an information processing unit which uses the above built work environment to thereby be able to start a new work.

In attaining the above object, according to the invention, there is provided an information processing unit in which the above-mentioned work environment is defined as an information unit set, a data object, an application object or the like which is used in the work environment is defined as an information unit, a plurality of information unit sets are stored in information unit set hold history storage means, and an information unit set to be operated is held in information unit set hold means.

And, if there is prepared a given condition such as change of a work, change of a user, addition or deletion of an information unit, or the like, then not only the information unit set held by the information unit set hold means is stored in the information unit set hold history storage means by storage instruction means, but also selection information apply means applies the name of a work, the name of a user, the name of an object, the date and time, and the like to the information unit set that is stored into the information unit set hold history storage means. Also, in order to specify a certain information unit set as a target to be operated, for example, when selection information is input from a user, using the selection information that is applied by the selection information apply means, selection means selects the corresponding information unit set out of the information unit sets that are stored in the information unit set hold history storage means, and the thus selected information unit set is read out by read means from the information unit set hold history storage means into the information unit set hold means.

Therefore, in the information processing unit according to the invention, by means of an operation in which the user collects the information necessary at the then time into a work space, even when the information is not classified previously, the information unit sets (work environments) can be stored and managed dynamically according to the progress conditions of works. And, since such information unit sets corresponding to the conditions of works in the past are held together with the selection information thereof, by reading out the corresponding information unit set in accordance with the selection information, the work can be started again after the work environment is returned back to the state of the work in the past, or the state of the work in the past can be restored so that the information necessary for the current work can be selected therefrom.

Also, in the information processing unit according to the invention, when the number of information units contained in the information unit set is changed, the information unit set before the number was changed is retained, which makes it possible to restore the information unit set at any time as it was before changed. For example, a time when the number of information units contained in the information unit set is changed from an increase to a decrease is defined as an end of a work, and the state of the information unit set before the work end can be restored at any time.

Further, the information processing unit according to the invention further has the following functions in order to enrich the above-mentioned functions:

(1) A function which not only holds the state of the scene of the current work but also stores time series the transition of the states of the scenes of the work in the past;

(2) a function which monitors various operations such as an increase or a decrease in the number of the information units in the work, and stores the state of the scene of the work at a timing previously defined in a rule;

(3) a function which shows the state transition using the select information that is given when the information unit set is stored;

(4) a function which, if a user specifies the select information according to the state transition shown to the user, then reads out the newest state of the scene of the work (information unit set) that satisfies this condition and makes it as the current scene state of the work;

(5) a function which specifies a work state and extracts the information that satisfies a given condition, from the information unit that is held in the thus specified work state; and,

(6) a function which specifies a plurality of states of the scenes of the work, and computes a sum set, a common set, a difference and the like of the information units that are held by these work states to thereby create a new scene of the work.

In the information processing unit according to the invention, when a user carries out a plurality of works at the same time, while collecting various pieces of information necessary for the works, that is, while reflecting the natural action results, the necessary pieces of information are gradually sorted and arranged in order as the user advances the works. Therefore, even a user, who is not good at the information arrangement, is able to collect necessary objects sequentially into groups while advancing the works, with the result that the information can be sorted well. Now, let us compare the invention with Rooms. That is, according to Rooms, it is necessary to create the work environment before a work is started, whereas, according to the invention, even after the work is advanced, the work environment can be re-arranged from a different point of view.

Generally, the work system varies as the work is advanced. On the other hand, according to the invention, the state of the scene of the work is stored together with the select information necessary for the unit at a timing to be recognized as "the switching time of the work" while advancing the work. A user executes a work in such a manner that the user inputs the name of a work being currently executed, or, when starting another new work, the user selects the name of the new work. With the progress of the work, the information units that are present in the same work scene are gradually collected into groups so that they can be arranged in order according to the work.

Also, not only the state of the work is stored only at a time which the user recognizes as the switching time of the work, but also, the work state is automatically stored, for example, at a timing when the number of information units is increased or decreased in the work. Thanks to this, after the work is advanced, while branching out from the past transition of the work, a new work can be started. That is, after the works are done, it is possible to extract know-how from these works, such as meanings on the respective pieces of information stored unconsciously in the work (for example, a certain piece of information can be used in any work, a certain piece of information is peculiar to a certain work, which piece(s) of information is necessary for a certain related work, and the like), and to reuse the thus extracted meanings in the work that is executed in the future.

Further, according to the invention, "a certain scene" of a work is stored at any time at a timing which can be recognized as the switching time of the work together with the attribute thereof such as the kind of the work declared at the then time, the name of a user, a inflow resource which can be recognized as a trigger for the switching of the work, and the like. Due to this, if the work scenes are structured by the kinds of works, then there can be provided at least the same function as Rooms.

In addition, according to the invention, since the respective scenes of the works are retained in the form of "sets of information units", the information unit sets can be retrieved or a new information unit set can be created by executing a set operation.

For example, when two manuscripts are being written in separate work environments and the two manuscripts are integrated into one manuscript afterwards, if the sets of them are summed, then the respective pieces of information that are held by the two manuscripts are merged into a new manuscript. Also, when different manuscripts are being written in several work environments, if the common sets of the work environments are obtained, then there can be extracted a basic environment which is necessary to write a manuscript. Further, when information is filled in and overflows from a work environment where a manuscript on a certain theme is being written, if it is assumed that there exists another work environment where a report on the same theme is being written, then, by finding a difference between the two work environments, it is possible to know the information that is peculiar to the work environment for writing the manuscript on this theme.

The above and other objects and features of the present invention will be more apparent-from the following description taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a structure view of a first embodiment of an information processing unit according to the invention;

FIG. 2 is a conceptual view to explain a relationship between information unit sets and selection information;

FIG. 3 is a conceptual view to explain how the information unit sets are stored into and read out from information unit set hold history storage means;

FIG. 4 is a conceptual view to explain how to declare the kind of a work and how to switch the work;

FIG. 5 is a view of an example of a display of a list of information unit sets and selection information;

FIG. 6 is a view of another example of a display of a list of information unit sets and selection information;

FIG. 7 is a view of still another example of a display of a list of information unit sets and selection information;

FIG. 8 is an explanatory view of an example of a data structure relating to a user;

FIG. 9 is an explanatory view of an example of a data structure relating to a work space;

FIG. 10 is an explanatory view of an example of a data structure relating to a job;

FIG. 11 is an explanatory view of an example of a data structure relating to correspondence between work spaces and jobs;

FIG. 12 is an explanatory view of an example of a data structure relating to an information unit set;

FIG. 13 is an explanatory view of an example of a data structure relating to an information unit;

FIG. 14 is an explanatory view of an example of a data structure relating to correspondence between work spaces and information unit sets;

FIG. 15 is an explanatory view of an example of a data structure relating to correspondence between information unit sets and information units;

FIG. 16 is an explanatory view of an example of a data structure relating to selection information;

FIG. 17 is an explanatory view of an example of a data structure relating to a selection information list;

FIG. 18 is an explanatory view of an example of a line of commands stored;

FIG. 19 is an explanatory view of an example of storage execution rules;

FIG. 20 is a flow chart of an example of a procedure for an information unit input processing;

FIG. 21 is a flow chart of an example of a procedure for an information unit set storing and judging processing;

FIG. 22 is a flow chart of an example of a procedure for a new job registering processing;

FIG. 23 is a flow chart of an example of a procedure for a selection information sorting and displaying processing;

FIG. 24 is a flow chart of an example of a procedure for an information unit set inputting processing;

FIG. 25 is a view of an example of a display of a list of information unit sets and selection information;

FIG. 26 is a view of an example of a display of a list of information unit sets and selection information;

FIG. 27 is a view of an example of a display of a list of information unit sets and selection information;

FIG. 28 is a view of an example of a display of a list of information unit sets and selection information;

FIG. 29 is a view of an example of a display of a list of information unit sets and selection information;

FIG. 30 is a block diagram of the structure of a second embodiment of an information processing unit according to the invention;

FIG. 31 is an explanatory view of an instruction to synthesize a plurality of information unit sets;

FIG. 32 is an explanatory view of an instruction to select information unit sets to be synthesized;

FIG. 33 is an explanatory view of a filtering instruction;

FIG. 34 is a conceptual view to explain a processing for synthesizing a plurality of information unit sets;

FIG. 35 is a flow chart of an example of a procedure for a sum set operation processing;

FIG. 36 is a flow chart of an example of a procedure for a common set operation processing;

FIG. 37 is a flow chart of an example of a procedure for a difference operation processing;

FIG. 38 is a flow chart of an example of a procedure for a filtering processing;

FIG. 39 is a schematic view of the structure of a third embodiment of an information processing unit according to the invention;

FIGS. 40A, 40B, 40C, 40D, 40E and 40F are views to explain the schemata of a database;

FIGS. 41A and 41B are views to explain a data structure;

FIG. 42 is a view of an example of a display of a main screen;

FIG. 43 is a view of an example of a screen for displaying a list of Snaps respectively held as related states;

FIG. 44 is a view of an example of a retrieval instruct screen for extraction of related states;

FIG. 45 is an explanatory view of timings for storage of work environments;

FIG. 46 a flow chart of a procedure for a storage timing processing;

FIG. 47 a flow chart of a procedure for a processing for storing Snaps, Places, Jobs, and Mediators into a database;

FIG. 48 is an explanatory view of a retrieve processing in which a user extracts the work environments of the works of other users related to the work of the present user;

FIG. 49 is a flow chart of a procedure for a related environment extract processing;

FIG. 50 is an explanatory view of a retrieve processing in which a user extracts the work environments of the work that the present user executed in the past;

FIG. 51 is a flow chart of a procedure for an environment extract processing in which a user extracts the work environments of the work that the present user executed in the past;

FIG. 52 is an explanatory view of a processing for introducing a related state into a current state;

FIG. 53 is a flow chart of a procedure for a processing for sharing a job by means of introduction;

FIG. 54 is a view of an example of a display of a main screen;

FIG. 55 is a view of an example of a display of a retrieval instruct screen for displaying Snaps already stored;

FIG. 56 is a view of an example of a screen display in which one of the retrieve results is specified and Snaps are displayed in snap view;

FIG. 57 is a view of an example of a screen display when Snaps are introduced into a current state hold part;

FIG. 58 is a schematic view of the structure of a fourth embodiment of an information processing unit according to the invention;

FIG. 59 is a view of an example of a state synthesis instruct screen;

FIG. 60 is an explanatory view of state synthesis for collecting the results of jobs;

FIG. 61 is a flow chart of a procedure for a processing to be performed by a job result collect function;

FIG. 62 is an explanatory view of a state synthesis processing in which a user extracts new information related to a job which the present user is executing;

FIG. 63 is a flow chart of a procedure for a processing to be performed by a What's New function;

FIG. 64 is a view of a display of a screen for inputting an instruction to synthesize two Snaps; and

FIG. 65 is a view of a screen on which the result of the synthetic operation of the two Snaps are displayed.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Now, description will be given below of the preferred embodiments of an information processing unit according to the invention with reference to the accompanying drawings.

Firstly, in FIG. 1, there is shown the structure of an information processing unit according to a first embodiment of the invention.

The present information processing unit is composed of a server 1 and a client 11 which are connected to each other through a network 10. Both of the server 1 and client 11 are composed of a workstation or a personal computer. In the present embodiment, although the information processing unit is structured such that it is composed of a client and a server, this is not limitative but, for example, an information processing unit may be structured in a computer without using a network.

In particular, the server 1 includes an information unit storage part 2, an information unit set hold history storage part 3, an information unit set select part 4, an information unit set read part 5, a selection information apply part 6, and a storage instruct part 7, while the storage instruct part 7 in turn includes an information unit set storage judge part 8 and an operation command storage part 9. Here, the server 1 manages the information that is used in common by a plurality of users (clients).

The information unit storage part 2 stores information units formed in the past in such a manner that they can be freely written in and read out. Here, the information unit is used to give reference objects their respective meanings in a work, while the information unit includes additive attributes such as pointers for the reference objects, comments on the reference objects, and the like.

The information unit set hold history storage part 3 holds a plurality of information unit sets together with selection information in such a manner that they can be freely written in and read out. And, in the present embodiment, the information unit storage part 2 and information unit set hold history storage part 3 are respectively composed of a relational database. Here, the information unit set is a work space which can hold the set of information units for reference to a document, an application and the like and also in which a plurality of information units can be positioned, for example, on a two-dimensional space (desktop metaphor) or in the form of a list.

And, the selection information apply part 6 applies the selection information such as the name of a job, the date and time of the job, the name of an implementor, the name of an information unit, and the like to the information unit set that is stored in the information unit set hold history storage part 3.

Now, the information unit set select part 4, in accordance with the select information, selects one of the information unit sets that are stored in the information unit set hold history storage part 3.

The information unit set read part 5 reads out one of the information unit sets stored in the information unit set hold history storage part 3 into the information unit set hold part 14 of the client 11.

The storage instruct part 7 is composed of the information unit set storage judge part 8 and operation command storage part 9 and is used to give an instruction to the effect that the information unit set is stored in the information unit set hold history storage part 3.

The information unit set storage judge part 8 judges whether the storage of the information unit set is executed or not, while the operation command storage part 9 stores therein the instruction contents of operations performed by a user.

That is, the information unit set storage judge part 8 monitors the operations performed by the user and, each time an instruction such as the creation or deletion of the information unit, the switching of the information unit set, or the like is given, stores the operation command into the operation command storage part 9; and, further, by previously checking the timing of storage of the information unit set against a preset storage execution rule, judges whether the storage of the information unit set is executed or not, and gives a storage execution instruction to the information unit set hold history storage part 3. For example, the storage execution instruction is given at a timing when the number of information units held by the information unit set increases or decreases.

Now, the client 11 includes, an input/output part 12, an information unit set display part 13, an information unit set hold part 14, an information unit edit part 15, a selection information list display part 16, and a select information instruct part 17. By the way, the client 11 is means through which a user does work, and the client 11 is realized by software on a workstation or a personal computer.

The input/output part 12 is composed of an input/output device including a display, a keyboard, a mouse and the like. In the input/output part 12, there are carried out standard input/output control operations such as the display of a window used in common in various applications, keyboard input, icon operations using a cursor, button operations, and the like.

The information unit set display part 13 outputs or displays the information unit set held by the information unit set hold part 14 onto a display screen to thereby show it to a user.

The information unit set hold part 14 holds an information unit set used as an environment in which a user is currently working in such a manner that the information unit set can be written in and read out freely.

And, the information unit edit part 15, in accordance with a user's instruction input from the input/output part 12, changes the arrangement of the information unit held by the information unit set hold part 14, copies an information unit into another information unit set stored by the information unit set hold history storage part 3, stores the information unit set held by the information unit set hold part 14 into the information unit set hold history storage part 3, and adds a comment to an information unit.

The selection information list display part 16 outputs to and displays on a display screen a job name given to the information unit set stored in the information unit set hold history storage part 3, or the selection information such as the date and time, the name of a creator, the name of the information unit, and the like. Here, a user can select the format of the select information to be displayed as a list by inputting an instruction through the input/output part 12.

And, the selection information instruct part 17 instructs a condition for reading out the information unit set held by the information unit hold part 14 from the selection information displayed by the selection information list display part 16. Here, the user is able to instruct the condition for the selection information through the input/output part 12.

That is, in the above-structured information processing unit, if the user instructs the selection information displayed by the selection information list display part 16 of the client 11 through the selection information instruct part 17, then the server 1 correspondingly retrieves the information unit set that satisfies all the selection information specified out of the information unit sets stored in the information unit set hold history storage part 3. And, the read part 5 reads out the information unit set having the latest implementation data and time from the information unit sets that satisfy all the selection information, into the information unit set hold part 14 of the client 11, so that the information unit set hold part 14 of the client 11 can hold the information unit set. Also, the information unit set display part 13 outputs and displays the information unit set that is held by the information unit set hold part 14.

Here, let us define the concepts of the terms "work space", "information unit", "information unit set", and "job" which are necessary for explanation of the operation principles of the invention.

The concept of the work space expresses a space in which a user can work. The work space includes not only a current information unit set for holding the current state of a scene of a work being currently executed by a user but also an information unit set for holding the past state of the scene of the same work. The work in the work space can be executed by updating the current information unit set, while the past work can be carried out continuously by making the current information unit set out of the past information unit set. The user may produce a plurality of work spaces according to the kinds of works, or produce a work space for carrying out all the works.

The information unit is a unit for referring to objects such as information, documents, applications necessary for a work and defining their correspondences to meaning defining information in the work. As the information that gives meanings to the objects of a work in the information unit, there are available pointers to the objects, comments given by the users, the arrangements of the objects on a work space, and the like.

The information unit set expresses the state of a work space at a certain time and is a set of information units. The set of information units held by the information unit set increases or decreases as the work progresses. That is, the information unit set expresses an work environment which is shown to a user at a certain time. The work space stores therein a plurality of information unit sets as a history of a work and manages them in such a manner that they can be restored as a current information unit. Storage of the information unit set is carried out with the change of state of the work as a trigger, for example, when the information units held by the information unit set increases or decreases in number. If a certain piece of selection information is instructed by a user, then one information unit set which satisfies the selection condition of the instructed selection information is retrieved from the information unit sets stored, and this is regarded as a current information unit set. Accordingly, the user can continue the work in an environment which is read out in this manner.

The job is a concept which represents a logical set of a work to be done in a work space. The job is a set of all the information unit sets that belong to the same work. If a user declares the name of a job, then information unit sets to be stored after the declaration are related to the job. On the other hand, if a job is specified as a selection condition, then the latest information unit set belonging to the job can be read out as a current information unit set. That is, the job name functions as an index for switching of a work.

Now, in FIG. 2, there is shown an outline of a management model relating to the transition of the states of the scenes of a work using a work space according to the present embodiment.

The information unit set hold part 14 holds the state of a work space being currently displayed to a user, that is, a current information unit set. For example, the current information unit set is held on the memory of the client. The information unit set hold history storage part 3 stores a necessary information unit set at any time in order to be able to restore an arbitrary state of the work space variable with the progress of the work of the user, that is, a past information unit set. The storage instruct part 7, triggered by an increase or a decrease in the information units of an information unit set held by the information unit set hold part 14, instructs the storage of the information unit set into the information unit set hold history storage part 3.

If the selection instruction such as a job name, an information unit name, a user's name, date and time and the like is instructed, then the information unit set select part 4 selects the information unit set that is stored in the information unit set hold history storage part 3, and the read out part 5 restores the selected information unit set, that is, this information unit set is read out to the information unit set hold part 14 as a current information unit set.

As mentioned above, the present information processing unit has a function to give selection information to the state of a work space at a certain time (information unit set), and a function to call out and restore this state and thereby provide an environment for starting the work again. Thanks to these functions, a user can execute a plurality of works while switching the states of the work space.

Also, according to the invention, by collecting various pieces of information necessary for a certain work to an information unit set having a specific job name, a user can execute the work. That is, even if various pieces of necessary information are not classified prior to the start of the work, by giving job names to the sets of information units necessary for the work, the user can gradually arrange the information units in order from the viewpoint of the work.

Further, the user can declare a job at an arbitrary timing during the operation on the work space. The declaration of the job is executed by the user operating a menu or a button, which urges the input of a job name. If the user inputs the job name, then a new job can be generated. On declaration of the job, the information unit set hold history storage part 3 gives the job name as the selection information of the current information unit set.

And, if the user specifies a job by means of the selection information instruct part 17, then the system calls up the newest information unit set having a desired job name. And, the current information unit set of the work space is rewritten to the called-up information unit set and is then displayed, so that the user can start again a work corresponding to the job. As a result of this, while switching the information unit sets displayed on the work space, the user can execute a plurality of works at the same time under the same work environment. In other words, even if the rooms are not previously defined for the respective works as in the above-mentioned Rooms, by giving job names to the information unit sets and switching them during execution of the respective works, there can be achieved the effect of movement to a work environment corresponding to the works.

Now, in FIG. 3, there is shown an outline of the flow of data and processings when the information unit sets are stored into or read out from the information unit set hold history storage part 3.

In particular, if a user instructs one of various pieces of selection information that are displayed on the selection information list display part 16, then the selection information such as a job name and the like that has been used so far is given to the current information unit set, and the current information unit set is stored into the information unit set hold history storage part 3. After then, the information unit set that is selected by the instructed selection information is taken out onto the work space, and the present information unit set is recognized as the current information unit set and is displayed on the information unit set display part 13, so that the work can be started again at the then time.

Now, in FIG. 4, there are shown time series relationships between operations to be performed on a work space and the information unit sets that are stored by the operations.

At first, if a new work space is created, since no expression has been given yet as to what work is being done there, just after a new information unit is input (that is, a work is started), a user is urged to input the kind of the work (the name of the job). And, if it is assumed that a job name "job1" is input, then the selection information "job1" is given to the information unit sets that are stored next and following times. After then, if a new information unit is input, then the then information unit set is stored. In FIG. 4, the information unit set that is stored in the information unit set hold history storage part 3 is expressed as "set1".

After then, until the next job name is declared or another job is selected, a job name "job1" is given all the information unit sets that are stored as the results of the operations performed after the above information unit set "set1" is stored. In the illustrated example, until a new job is declared, four information unit sets ("set2", "set3", "set4", and "set5") are stored, so that a total of five information unit sets are stored under the job name "job1".

And, at a time when the user interrupts the work "job1" which the user has been doing so far and starts a new job "job2" (that is, a job name "job2" is expressed), the then state of the work is stored and, further, the job name of the information unit sets that are stored after then is changed.

By the way, if the resumption of the work "job1" is instructed again, then the newest one of the information unit sets having the job name "job1" is retrieved, and the thus retrieved information unit set recognized as the current information unit set of the work space and is then displayed on the information unit set display part 13, thereby enabling the user to start the work again. Of course, the information unit sets that are stored after then are respectively given the job name "job1" when they are stored.

Now, in FIG. 5, there is shown an example of a display to be made on a display screen.

In this display example, there are formed an information unit set display area 21 in which information units can be arranged, and a selection information list display area 22 for displaying and selecting a job. In the information unit set display area 21, the information units such as "Printer", "Doc-4", "Patent DB" and he like are arranged on a two-dimensional plane. By instructing the various information units using a pointing device such as a mouse or the like, the user can raise an object to be referred to, edit additive attributes for the information unit, and change the arrangement of the information unit.

The selection information list display area 22 is an area which is used to display selection information such as a job name for selecting necessary information unit sets, the name of a user and the like. As the selection information, a declared job, a user in charge when the information unit sets are stored, the data and time when the information unit sets are stored, an object generated just before the information unit sets are stored, and the like. In the example shown in FIG. 5, the selection information list display area 22 is set such that job names such as "Database Patent", "Information Retrieval Patent" and the like can be displayed as the selection information.

In order to know what work is related to the information unit sets displayed in the current information unit set display area 21, the selection information instructed by the user is displayed invertedly within the selection information list display area 22. By selecting the job name of the selection information list display area 22, the information unit set that is shown in the information unit set display area 21 can be switched. Due to this, while instructing a job to thereby switch the information unit set, the user can execute a plurality of works at the same time.

Also, the selection information that is given to the information unit set includes, in addition to the job name, the name of a user in charge when the information unit set is stored, the name of an information unit input, and the like. For example, in FIG. 6, there is shown a display example in which the information unit set is structured by the job names and the names of users.

A job "Database Patent" tells that two users "Aoki" and "Suzuki" execute the work, while a job "Information Retrieval Patent" shows that another user "Yamada" also participates in executing the work. As in FIG. 6, by specifying "Aoki" of the job "Database Patent" in this list, the job "Database Patent" calls up the newest information unit set of the implementor "Aoki". This is to call up the newest state in which Aoki is executing a work "Database Patent", that is, by specifying his or her name all the time, Aoki is able to execute the work without being influenced by the operation to be executed by Suzuki.

Of course, by specifying "Suzuki", Suzuki also can call up the newest state in which Suzuki is executing the work and can know easily the current progress of the work being executed by Aoki. Also, when it is desired to know the newest state of the work regardless of users, if the job name "Database Patent" is specified, then the newest information unit set of the Database Patent can also be called up regardless of the names of users.

Further, for example, as shown in FIG. 7, by structuring the information unit set by the job name and the name of the information that is input and displaying the same on the screen, the selection information can be instructed in more detail. For instance, by presetting a restriction that a display is limited to the information units that have been input in the latest one week, the recent progresses of the work can be confirmed while referring to the state of an arbitrary scene of the work.

Next, there are shown below concrete data structures according to the present embodiment.

In these data structures, although no description is given of version control of the information units and objects referred to by the information units, by using a version control technology which has been used conventionally, the changes of the information units and objects to be referred to by the information units may also be all recorded. In this case, the states of the information units contained in the information unit set in a history called up and objects to be referred to by the information units can be restored as they were in the past. By realizing such function, there can be provided a help for a joint writing activity.

In FIG. 8, there is shown an example of a data structure for managing the names of users (user names), in which the management of the user names can be achieved according to a conventional management technology using user ids, user names, and passwords.

In FIG. 9, there is shown an example of a data structure in a work space. The work space includes a work space id, a work space name, the id of a current information unit set which is currently displayed in a work space area, and the id of a display format contained in a selection information list. The work space is a subject which holds a plurality of information unit sets, and the work space can be used in various ways. For example, the work space may be used one for one user, or may be allotted one to each of logical tasks.

In FIG. 10, there is shown an example of a data structure in a job. The job includes a job id, a job name, the date and time of implementation, and the name of implementor. The job is the name of the work that is declared by a user in a work space, and job data is generated each time the user declares.

In FIG. 11, there is shown an example of a data structure which represents correspondence between work spaces and jobs, that is, FIG. 11 is a table in which correspondences between work spaces and jobs contained in the respective work spaces are expressed by their respective ids. The correspondence data is added each time the job is generated.

In FIG. 12, there is shown an example of a data structure in an information unit set. The information unit set includes not only an information unit set id, the id of a work space to which the information unit set belong, the date and time of creation, and the name of creator, but also the job name of the present information unit set and the id of the information unit that is input to the present information unit set.

In FIG. 13, there is shown an example of a data structure in an information unit. The information unit includes not only an information unit id, the name of the information unit, the date and time of creation, and the name of creator, but also a reference object, a start application, a given comment, and the arrangement of the information unit on a work space.

In FIG. 14, there is shown an example of a data structure showing the correspondence between a work space and an information unit set, that is, FIG. 14 is a table which represents the correspondence between mutually related work spaces and information unit sets by use of their respective ids. By the way, each time an information unit set is generated, the corresponding data is added.

In FIG. 15, there is shown an example of a data structure showing the correspondence between an information unit set and an information unit, that is, FIG. 14 is a table which represents the correspondence between mutually related information unit sets and information units by use of their respective ids.

Also, for display of a selection information list, there are provided a table for selection information shown in FIG. 16, and a table for a selection information list shown in FIG. 17.

In particular, the selection information table of FIG. 16 shows that, as the selection information, there are available a job, a creator, an input information unit, and the date and time of creation. On the other hand, the selection information list of FIG. 17 holds a display format for the selection information list display part 16. For example, the list table of FIG. 17 shows that selection information id1 (that is, a job, as shown in FIG. 16) is set as a first hierarchy selection information and selection information id3 (that is, an input information unit, as shown in FIG. 16) is set as a second hierarchy selection information.

Next, description will be given below of rules to be observed when the information unit set is stored.

The storage of the information unit set into the information unit set hold history storage part 3 is executed when an operation command chain including a user's instruction forms a given combination. A timing for execution of the storage can be set in various manners by setting a storage execution rule.

In particular, if a user performs an operation on a work space, then a command for this operation is firstly stored into the operation command storage part 9. Next, with reference to the storage execution rule and the thus stored command, the information unit set storage judge part 8 judges whether the storage of an information unit set is executed or not.

In more particular, the storage of the information unit set can be executed by a user's direct instruction "information unit set storage", for example, by pressing down a button. Or, the information unit set storage can be executed in the following manner: that is, by detecting a timing related to the switching of the work, such as when a new job is declared, when information units on the work space are all cleared, when an information unit is input into the information unit set, or the like, an operation command related to the thus detected timing is stored in the operation command storage part 9 as shown in FIG. 18. The operation command storage part 9 stores therein sequentially the contents of operations executed by the user, such as an operation to open the work space (OpenWS), an operation to close the work space (CloseWS), an operation to select a job (SelectJob), an operation to switch the current information unit set (SwitchJob), an operation to delete an information unit (DeleteUnit), an operation to create an information unit (CreateUnit), and the like.

And, a rule to decide whether an information unit set is stored or not can be set, for example, in such a manner as shown in FIG. 19.

That is, at a timing when a new work is started on the work space or when a work is switched, the state of a work just before such start or switching must be always stored. As the timing for the switching of the work, there can be employed a timing when an information unit is input into an information unit set on a work space which is newly created, at a timing when a new information unit is formed after the information units that are held by the current information unit set are all removed, at a timing when a new information is created after the current information unit set is switched by specifying a job, and the like. These timings are regarded as timings at which new works are respectively started. The storage of the information unit set is instructed at such timings that can be regarded as the change of the works.

Next, description will be given below of the processing operations to be carried out in the information processing unit according to the present embodiment with reference to flow charts which are respectively shown in FIGS. 20 to 24.

In FIG. 20, there is shown a processing procedure for an information unit input processing (A) in which an information unit is input into an information unit set.

The input of the information unit can be executed by an a command given from a file control tool provided by OS, by an instruction from a pointing device, or the like. Also, the input of the information unit can be executed by an instruction from another application, or by the file control tool in accordance with a command given from an information processing unit.

If an instruction for input of an information unit is given, the information processing unit, at first, obtains information necessary for execution of this instruction, such as the name of a user who has given the instruction, the date and time of the instruction, the name of a file to be input, and the like (Step S1).

Next, the information processing unit creates a new data into an information data table (Step S2), adds "CreateUnit" to the operation command storage part 9 (Step S3) and, after then, moves to a storage judgment/execution processing (B) shown in FIG. 21 (Step S4).

And, after completion of the storage judgment/execution processing (B), the information processing unit adds a newly created information unit to the current information unit set (Step S5). That is, it adds the correspondence between id of the current information unit set and id of the newly created information unit to an information unit set-information unit correspondence table. After then, the present information unit set is displayed again, thereby ending the information unit input processing (A) (Step S6).

In FIG. 21, there is shown a processing procedure for the storage judge/execute processing (B) of the information unit set.

This processing judges whether the stored operation content (command) conforms to the storage execution rule or not and, if it is found that the command conforms to the storage execution rule, then executes the storage of the information unit set in accordance with the rule. For example, the command is called when the user instructs one of operations such as generation of an information unit, deletion of the information unit, editing of the information unit, storage instruction of an information unit set, read-out of the information unit set, and the like. That is, in the present processing, it is checked whether the state of a line of operation commands stored in such a manner as shown in FIG. 18 satisfies the storage execution rule shown in FIG. 19 or not.

In the present embodiment, it is checked whether any of the operation commands satisfies the rules or not starting at the Rule-1 and, if there is found any operation command which satisfies the rule, then the storage of the information unit set is executed. Here, the Rule-1 shown in FIG. 19 expresses "when a new information unit is created in a newly created work space". In this case, if two commands are arranged successively in the last portion of the command line, that is, if a command "A work space is newly created (CreateWS)" is arranged next to last in the line of commands that are stored in the operation command storage part 9, and a command "An information unit is created (CreateUnit)" is arranged last in these commands, then the condition for the storage execution can be satisfied and thus the storage execution of the information unit set can be carried out.

In other words, it is checked whether the stored operation satisfies the storage execution rule or not (Step 10) and, if it is found that the operation satisfies the rule, then it is checked whether a job name is declared or not (Step S11). If a work space is just created but a job name is not declared yet, then the processing moves to a new job registration processing (C) shown in FIG. 22 (Step S12).

On the other hand, if the job name is found declared, the information unit set held in the information unit set hold part 14 is copied into the information unit set hold history storage part 3, and selection information such as the name of a creator, the date and time of creation, the name of a job, and the name of an object is given to the thus copied information unit set (Step S13). Next, the id of the current information unit set held in the information unit set hold part 14 is changed to a new one (Step S14) and, after then, the id of the newly created information unit set is added to a work space-information unit set correspondence table which is used to manage the information unit sets stored in the work space (Step S15), thereby ending the processing.

In FIG. 22, there is shown a processing procedure for the new job registration processing (C).

This processing is called from the storage jude and execute processing (B), or it is called when a user declares a new job.

The information processing unit, at first, opens a job name input window into a display screen to thereby urge the user to input a job name (Step S20). If the job name is input (Step S21), then it is checked whether the present job name is in use in the same work space or not (Step S22) and, if it is found in use, then the information processing unit displays a message "the job is already in use" on the display screen, and returns back to the step of urging the input of a job name.

And, if a new job name is input, then a new job data is created (Step S23), "CreateJob" is added to the operation command storage part 9, and the storage judge and execute processing (B) is called (Step S25).

Next, the job attribute of the current information unit set held in the information unit set hold part 14 is changed to the id of the new job (Step S26), and the id of the new job is added to a work space-job correspondence table for managing jobs in the work space (Step S27). After then, in order to allow the selection information list display part 16 to display again the selection information, the processing advances to a selection information sort and display processing (D) shown in FIG. 23 (Step S28).

In FIG. 23, there is shown a processing procedure for the selection information sort and display processing (D).

In this processing, at first, the selection information list table shown in FIG. 17 is referred to, thereby obtaining the selection information attributes of the first and second hierarchies (Step S30). And, by referring to the work space-information unit set correspondence table, there are obtained the ids of all the information unit set that is held in the work space (Step S31), and the thus obtained information unit sets are sorted according to the dates and times when they were created (Step S32).

Next, based on the thus sorted information unit sets, there is created a list of the paired attribute values of the first and second hierarchies (Step S33). Then, in order to show the selection information that corresponds to the current information unit set, by referring to the current information unit set in the work space (Step S34), there is specified the selection information attributes of the first and second hierarchies that correspond to the current information unit set (Step S35). After then, there is displayed the list of the paired attribute values of the selection information (Step S36), and there are invertedly displayed the attribute values of the selection information corresponding to the current information unit set (Step S37).

Now, in FIG. 24, there is shown a processing procedure for an information unit set read-out processing (E) which is performed when switching the state of the scene of a work.

This processing is called up when a user instructs the selection information of the selection information list display part 16. In this processing, at first, instructed selection information is obtained (Step S40). And, "Select Job" is added to the operation command storage part 9 (Step S41), and the storage judge and execute processing (B) is called (Step S42).

And, the newest information unit set that satisfies the condition of the selection information is retrieved (Step S43), a command "SwitchSet" is added to the operation command storage part 9 (Step S44), and the storage judge and execute processing (B) is then called (Step S45).

Next, the retrieved information unit set is read out into the information unit set hold part 14 (Step S46), and the id of the retrieved information unit set is regarded as the id of the current information unit set that is held in the work space (Step S47). And, for the sorting and display of the selection information, the processing moves again to the selection information sort and display processing (D) (Step S48).

Next, description will be given below of the concrete application examples of the information processing unit according to the present embodiment with reference to FIGS. 25 to 29.

In FIG. 25, there is shown an example of a display of the present information processing unit at a time when it starts. The present information processing unit displays the information unit sets in a wide display area 21 on the left side of FIG. 25, while the information units that are the elements of the information unit sets are documents, applications, or icons used to refer to an external equipment such as a printer or the like. Also, the right area 22 of FIG. 25 is a selection information list display part and, in this example, the selection information is shown by a hierarchical structure including job names and input object names.

In the current state, the user declares four works in this work space and, in particular, the four works are respectively "Database Patent", "Information Retrieval Patent", "Monthly Report Information", and "Report Writing". For example, in a job "Database Patent", it is shown that there are generated five documents, that is, "Doc-1.1", "patent.1", "Doc-3", "test.1", and "Patent-2". Also, the state of the scene of the work, which is currently shown, is a state which occurs after a document "appendix" is generated under the job name "Monthly Report Information".

For example, let us assume that a work to write a new patent document is started from now. It is also assumed that the patent relates to a knowledge data base and a conventional technique examination relating to a previous job "Database Patent" can be used.

As shown in FIG. 26, by selecting the job name "Database Patent" as the selection information, the state of the scene of the work can be returned to the newest state of the job name "Database Patent". Here, it can be confirmed from the display of a selection information list 22 that the state of the work has been returned to the state occurring after "Patent-2" is generated last in the job "Database Patent".

On the other hand, let us assume that, since two patent documents are being written in the job "Database Patent", not the conventional technique examination of the document "Patent-2" but that of the document "patent.1" is desired for use. In this case, as shown in FIG. 27, the document "patent.1" is selected from the selection information list 22 and the scene of the work can be returned to the intermediate state of the job "Database Patent". Due to this, the information relating to the document "Patent-2" can be excluded from the scene of the work.

In other words, this can be achieved due to the fact that the transition of the states of the work is stored in the present embodiment, not that the scenes of the work are sorted logically. This function makes it possible to re-arrange the branching of the scenes of the work afterwards from a different viewpoint. Also, if a user's name is used as the selection information, then only the operation performed by the user can be sliced out from the scene of the work being jointly done and the sliced operation can be branched to a new operation from the sliced state.

Next, when a new work is started from that state, as shown in FIG. 28, for example, by pressing down a button 23 "New Job", a window 24 for declaration of a job name is popped up to urge the declaration of a job name. In this example, the user has input "Knowledge DB Patent". And, if a button "OK" is depressed, then "Knowledge DB Patent" is applied to the current information unit set as a job name.

After then, as shown in FIG. 29, for example, if a document "Present-1" is created, then "Knowledge DB Patent" as a job name and "Present-1" as an object name are added to the selection information list display part 22.

Here, description will be given below of differences between the characteristics of the invention and the prior art.

In Rooms, the room "Datatbase Patent" is firstly provided and the work is done in this room. And, when trying to do the next work, the room "Information Retrieval Patent" is then provided and a new environment is built in this room. Here, since a printer and an editor necessary for writing a patent manuscript, an application such as a patent DB or the like, and documents to be referred to in common are used in both of the works, they are copied in Rooms.

However, this copying operation is complicated because the necessary information units must be copied between the rooms. For this reason, when executing a plurality of similar jobs such as a job to write a plurality of patent manuscripts as in the present example, the user is apt to use the same room.

On the other hand, according to the invention, differently from provision of a new room, a given name is given to the state of a work at a certain time and, as the need arises, the state is called up by means of the name. This can save the time and labor to build a similar room and the work can be subdivided easily. That is, if a new work is derived from the current work, the previous state of the current work just before such derivation can be left as it is. Just after a new job is declared, the work space is held in the same state as the final state of the previous job. Therefore, information units not necessary for the next job may be cleared (that is, unnecessary information units may be erased), and information units necessary for the next job may be collected, which makes it possible to build a new job environment.

When this is compared to a desk which is used in the real world, Rooms has a large number of desks which can be used for the respective works. On the other hand, according to the invention, the states of a desk on which a work is being done are respectively snapshot whenever necessary, work or job names are respectively given to the states, and, by declaring any one of the names, the state of the desk can be returned to the previous state in which the job was being executed.

Of course, in the desks, there are included some which can be used in common for every work and there are also included some which can be used or cannot depending on the contents of the information units of the works. It is difficult to previously know the characteristics of the information units. However, according to the invention, the information units can be naturally classified while advancing the work.

Also, according to the invention, after clearance of all the unnecessary information units in the job "Information Retrieval Patent", when trying to execute the work "Database Patent" again, simply by specifying the job name of the selection information list, the previous state of the work can be restored.

It should be noted here that the object of the invention is to create a new state by use of the past state of the work, not to simply restore the past state. Of course, if the invention is structured such that it can carry out the version control of the objects themselves, then the editing state of a document can be returned to the state of the work at the storage time of the work space, which is effective when supporting joint authorship.

To the above-mentioned first embodiment, there can be added various modifications as follows.

The storage instruct part 7 may be structured such that it does not include the operation command storage part 9 but the information unit set storage judge part 8 can execute the storage of the information unit sets in accordance with a storage instruction from a user.

Also, the storage instruct part 7 may be structured such that it does not include the operation command storage part 9 but the information unit set storage judge part 8 monitors operations performed by the user and executes the storage of the information unit sets when the creation or deletion of the information unit sets is instructed.

Further, the information unit set display part 13 may display the information unit set two- or three-dimensionally using a rough sketch image, or may sort the information unit sets in the alphabetical order of the names of the information units or by the dates and times of creation of the information units and then display them in a list.

And, as a method for realizing the history storage of the information unit sets, there may be employed a method in which the information unit set held by the information unit set hold part 14 is always made identical with the newest information unit set stored in the information unit set hold history storage part 3, the information unit set within the history storage part 3 is copied at a timing when the storage of the information unit set is executed, new id is given to the thus copied information unit set, and the information unit set having a new id is then read out into the information unit set hold part 14.

Also, in the above-mentioned embodiment, as a method for realizing the history storage of the information unit sets, there is used a method which retains the state of the work always just before the work is switched. However, there may be employed another method which retains the state of the work always just after the work is switched.

The information unit set hold part 14 may also be structured such that it controls the version of the information units. This can be attained easily according to an existing version control technique. In this case, the information unit set hold part 14 controls the set of the respective versions of the information units together with the updated dates and times thereof. Due to this, when the information unit set is restored, the information that is held by the information unit can also be returned to the state thereof at the time when the present information unit set was stored.

Also, there may be provided an object control part which is used to control the version of the object that is referred to by the information unit. This can be achieved easily according to an existing version control technique. In this case, the object control part controls the set of the respective versions of the object together with the updated dates and times thereof. Thanks to this, when the information unit set is restored, the object to be referred to by the information unit can also be returned to the state thereof at the time when the present information unit set was stored.

There may be provided a storage execution rule instruct part which is used to customize the storage execution rules of the information unit set according to the use aspects of the information unit set. As a timing for the storage execution, it is desirable to employ a timing when the work is changed: for example, a timing when the attribute of the information unit is changed; in particular, at a timing when the position of the information unit is changed, or, if it is assumed that information representing the progress statuses of the work (such as an unstarted status, an in-progress status, a completed status, and the like) is given to the information unit, then at a timing when the information is changed.

Also, the storage instruct part 7 may also be structured such that it does not include the operation command storage part 9 but the information unit set storage judge part 8 stores periodically the information unit sets every given time. This makes it possible to leave or retain the outline of the flow of the work.

Further, the information unit set storage judge part 8 may also be structured such that, if a given number of information units are input therein, then it stores the information unit set. This can leave or retain the history of the information unit set each time a given operation progresses. Further, it is possible to retain the properly thinned-out states of the work and thus the outline of the flow of the work regardless of the density of the work.

And, the storage execution rules relating to the storage judgment of the information unit sets may be checked sequentially, or, in confirming Rule-1, may be checked at the same time when checking whether the other rules satisfy the storage execution condition or not. Also, the operation command storage part 9 may be previously referred to and the operations thereof may be checked in the reversed order starting from the last one, thereby being able to focus on the rules that can satisfy the storage execution condition.

Also, the operation command storage part 9 may be structured such that it can store not only the operations performed by the user but also the following events. In this case, the information unit set storage judge part 8 judges in accordance with the events whether the information unit set is to be stored or not. The events include: an event executed by another application on the same computer, in particular, an event started by another application or an event to the effect that another application gained access to an external device such as a network, a printer or the like; an event relating to the reception or transmission of an electronic mail; an event relating to the arrival and start of a work in a work flow tool in operation on the same computer; and, other events. That is, in the present modification, by inputting the events that are generated in all the remaining applications, the timing for switching the work can be grasped in more detail.

Now, FIG. 30 shows the structure of an information processing unit according to a second embodiment of the invention. In this embodiment, the parts thereof used in common with the previously described first embodiment are given the same designations and the duplicated description thereof is omitted here.

In the second embodiment, description will be given below of a structure in which the information units that are held by a plurality of specified information unit sets are synthesized according to a set operation to thereby create a new information unit set.

A server 1 includes, in addition to the structure of the first embodiment, an information unit set synthesize part 31 for performing a set operation on the information units that are held by a plurality of information unit sets, and an information unit extract part 32 for filtering the information units that are held by the information unit sets.

The information unit set synthesize part 31 performs a set operation such as a sum set operation, a common set operation, a difference set operation or the like on the information units held by a plurality of selected information unit sets.

The information unit extract part 32 filters variously the information units held by the selected information unit sets according to the creators' names, the dates and times of creation, comments, start applications, positions and the like which are held by the present information units, thereby creating a new information unit set.

Now, a client 11 includes, in addition to the structure of the first embodiment, an information unit set synthesis instruct part 35 for instructing a set operation, and an information unit extract instruct part 36 for instructing a filtering operation.

The information unit set synthesis instruct part 35, as shown in FIG. 32, specifies a plurality of information unit sets to be synthesized and, in response to this, if a module for instructing a synthesize method, for example, a "synthesize" button 25 shown in FIG. 31 is depressed, then a window 41 shown in FIG. 32 is initiated.

And, the information unit set synthesis instruct part 35 has a function to instruct a sum set operation 42, a common set operation 43, a difference operation 44, and a filtering operation 45 on the selected information unit sets. Thus, the user is able to specify two or more information unit sets and instruct a set operation, that is, a sum set operation or a common set operation on the information units that are held by the specified information unit sets. Also, the user can specify one information unit set serving as a standard and one or more other information unit sets and instruct a "difference" set operation.

On the other hand, the information unit set extraction instruct part 36 calls up a window 51 shown in FIG. 33, for example, by pressing down a "filtering" button 26 shown in FIG. 31 or a "filtering" button 45 shown in FIG. 32. And, if the user inputs a condition into this window 51, then the user can extract the information units that are held by the information unit sets. For example, if a user inputs his or her name into the "name of creator" for filtering, then the information units that have been created by other users than himself or herself are all deleted from the current information unit set.

Also, when the synthesis instruct window 41 shown in FIG. 32 is called up, the information units to be synthesized are previously selected or limited to those which can satisfy a filtering condition, before a set operation is executed. For example, if, as the filtering condition, an editor which the user is using is specified as a start application, then the information unit sets synthesis can be carried out limitatively or by confining the synthesis range only to the documents that can be referred to by the editor.

Further, the filtering of the information units can be instructed under the following conditions: that is, the range of the dates of creation of the information units is specified as the "date and time"; the information units are limited to those which include such comments as specified as the "comments"; the information units are limited to those which are arranged in a range in a two-dimensional space specified as the "arrangement", and the like. Also, the filtering of the information units can also be instructed by other means than the conditions shown in FIG. 33: for example, according to the attribute as to whether the kind of a resource to be referred to by the information unit is the "document" or "application", or according to the attribute of the resource to be referred to, or according to a character line contained in the resource to be referred to, or the like.

Now, in FIG. 34, there are shown the concepts of a synthetic operation as to the sum set, common set, and difference.

The "sum set" operation can be used for integration of a plurality of works, the "common set" operation can be used to extract an environment shared in common with a plurality of works, and "difference" operation can be used for extraction of a resource peculiar to a certain work.

In the sum set operation, a plurality of information unit sets are ORed and, if a set A={a, b, c, d} and a set B={a, c, d, e, f}, then A+B={a, b, c, d, e, f}. Also, in the common set operation, the information unit sets are ANDed to produce A*B={a, c, d}. Further, a difference between A and B can be obtained by deducting the information units contained in B from the information units contained in A, that is, A-B={b}. Here, in this operation, the information units that are not contained in A but are contained in B are ignored.

Next, description will be given below of processings relating to the sum set, common set, difference and filtering operations of the information unit sets with reference to flow charts shown in FIGS. 35 to 38.

In FIG. 35, there is shown a procedure for a processing to be performed on the information unit sets for the sum set thereof.

At first, if some information unit sets are selected and a sum set button 42 is pressed down in a synthesis instruct screen 41 shown in FIG. 32, then ids of the selected information unit sets are obtained (Step S50). For example, in FIG. 32, job names "Database Patent", "Information Retrieval Patent" and "Information Sharing" are selected and the respective newest information unit sets thereof are retrieved.

Next, the ids of the information units held by the respective information unit sets retrieved are obtained from the information unit sets-information units correspondence table (Step S51), and there are created the sets of the information units ids for the respective information unit sets.

And, by performing a processing in which the ids of these information units are merged and the same ones are deleted, there is obtained the sum set of the sets of the respective information units, the respective information units contained in the sum set are copied, and new information ids are given to the respective information units (Step S52).

Next, a new information unit set is created (Step S53), and the information units that are copied and given new ids in Step S52 are all added to the information unit sets-information units correspondence table (Step S54). After then, the id of the new information unit set is added to a work spaces-information unit sets correspondence table (Step S55) and the information unit sets are displayed again (Step S56).

In FIG. 36, there is shown a procedure for a processing to be performed when there is obtained a common set for the information unit sets.

At first, in the synthesis instruct screen 41 shown in FIG. 32, if some information unit sets are selected and a common set button 43 is pressed down, then, similarly to the sum set operation, the ids of the selected information unit sets are obtained (Step S60), and the ids of the information units held by the respective information unit sets are obtained from the information unit sets-information units correspondence table (Step S61), thereby creating their respective sets.

Next, there are obtained the AND set of all the information units, the respective information units of the AND set are copied, and new information unit ids are given to the respective information units (Step S62).

And, a new information unit set is created (Step S63), and the information units copied and given new ids in Step S62 are all added to the information unit sets-information units correspondence table (Step S64). After then, the id of the new information unit set is added to the work spaces-information unit sets correspondence table (Step S65), and the information unit sets are displayed again (Step S66).

Now, in FIG. 37, there is shown a procedure for a processing to be performed when a difference between the information unit sets is obtained.

At first, in the synthesis instruct screen 41 shown in FIG. 32, if some information unit sets are selected and a difference button 44 is pressed down, then, similarly to the sum set operation, the ids of the selected information unit sets are obtained (Step S70), and the ids of the information units held by the respective information unit sets are obtained from the information unit sets-information units correspondence table (Step S71).

Next, an user is urged to input the information unit sets that serve as the standard for the synthetic operation (Step S72). For example, the information unit sets checked are all output to and displayed on the display screen together with a message "which is the information unit set that serves as the standard?". In the case shown in FIG. 32, the three information unit sets "Database Patent", "Information Retrieval Patent" and "Information Common Collection" are selected and a user selects one of them and finds a difference with the user selected information unit set as the standard.

For example, when "Database Patent" is selected as the standard (Step S73), from the list of the information units ids held by the information unit set serving as the standard (that is, the newest information unit set of the "Database Patent"), there are deducted the information units that are included in the list of the information units ids held by the other information unit sets (that is, the respective newest information unit sets of the "Information Retrieval Patent" and "Information Common Collection").

And, the information units left after the above deduction are all copied and are respectively given new information units ids (Step S74). Next, a new information unit set is created (Step S75), and the information units copied and give new ids in Step S74 are all added to the information unit sets-information units correspondence table (Step S76). After then, the id of the new information unit set is added to the work spaces-information unit sets correspondence table (Step S77), and the information unit sets are displayed again (Step S78).

Next, description will be given below of a procedure of a processing to be performed when the information unit sets are filtered.

A filter condition input screen 51 shown in FIG. 33 can be displayed by pressing down a filtering button 26 in the screen shown in FIG. 31 or a filtering button in the screen shown in FIG. 32. This different manner of display of the screen divides the function of the filtering operation is divided into the following two functions:

(1) a function to filter the current information unit set when the filter condition input screen 51 is called up from the information unit set display screen shown in FIG. 31; and,

(2) a function, when the information units are synthesized in the above-mentioned manner, to limit the information units to be synthesized according to the filter condition when the filter condition input screen 51 is called up from the synthesis instruct screen shown in FIG. 32.

Now, in FIG. 38, there is shown a procedure for a filtering processing relating to the former function (1).

In particular, if an OK button is pressed down in the filter condition input screen 51 shown in FIG. 33, then there is obtained an instructed filter condition (Step S80). Next, the id of the current information unit set is obtained from the work space table (Step S81), and the ids of the information units held by the current information unit set are obtained from the information unit set-information unit correspondence table (Step S82).

And, the respective information units are checked from the viewpoint of the filer condition (Step S83). For example, if the filter condition is "Creator=Aoki", then there are selected only the information units in which the creator ids thereof are the user's name Aoki.

Next, the thus selected information units are all copied and are respectively given new ids (Step S84), a new information unit set is created (Step S85), and the information units copied and given the new ids i