Abstract:
An information processing apparatus with which a user can establish a personal information environment in a group work by enabling the user to individually control information from his viewpoint, which is distributedly controlled by respective unique control methods in a variety of systems concerning the group work, and user can arrange information freely and without any distinction between files managed by a group and personal local documents.

Description:
BACKGROUND OF THE INVENTION 
     1. Technical Field of the Invention 
     The present invention relates to an information processing apparatus for establishing a personal information environment in a group work by enabling a user to individually control information from his viewpoint of which is distributedly controlled by respective unique control methods in a variety of systems concerning the group work. 
     2. Description of the Related Art 
     Typical functions of a groupware system which aids a smooth group work are such as a mail, a library and a forum. Among the foregoing functions, information of, for example, the library and the forum are centrally arranged by a manager of the system. Thus, this management style is effective in routine work or the like which require a specific management. 
     However, each user has a peculiar method in information arrangement which usually disagrees with the managed arrangement method. If, for example, each person individually gives or changes names of the documents which a group manages by a file server, the document file is substantially lost though the contents of the original file exist. In a case where a plurality of members in the group individually store files in a folder which the group commonly manages, an icon which is unimportant for a certain member may be placed adjacent to an icon of an important file for the member on a folder view, or, icons of files important and unimportant for a member are displayed disorderly. 
     However, if each user intends to arrange information in an individual manner, a method of arranging information is determined in each system, such as a position and size of icons of a file, folder, mail and the like, a pattern of a figure to be pasted on a view for displaying icons of grouped files by a folder, a mail or the like, an arrangement order of data when being displayed as a list, and a position of insertion of a blank line into data lines. Further, a sharer of a shared document stored in a server or the like cannot be identified. Thus, a user is unable to manage information from his viewpoint. 
     BRIEF SUMMARY OF THE INVENTION 
     In view of the foregoing, an object of the present invention is to provide an information processing apparatus and a recording medium in which a computer program managing information is recorded, with which a user can arrange information freely and without any distinction between files managed by a group and personal local documents so that the user is able to individually manage information which is distributedly managed by respective peculiar manners among a variety of systems concerning a group work from his viewpoint. 
     The information processing apparatus and the recording medium having the computer program managing information according to the present invention provide a user with a computing environment of specifying a position and size of icons of a file, folder, mail and like, of pasting a picture on the icons, of displaying figures, such as circles, squares and the like for grouping the displayed icons, of designating an arrangement order of data when displaying as a list, of instructing the position at which a blank line is inserted into data lines, of displaying a sharer of a shared document and so on. 
     Other objects, features and advantages of the invention will be evident from the following detailed description of the preferred embodiments described in conjunction with the attached drawings. 
    
    
     BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING 
     FIG. 1 is a diagram showing the structure of modules of a PIE (Personal Information Environment) system; 
     FIG. 2 is a diagram showing the layer structure of each module of the PIE system; 
     FIG. 3 is a diagram showing an example of display on a screen of a folder view; 
     FIG. 4 is a diagram showing an example of display on a screen of a dialog box of document information of a file object; 
     FIG. 5 is a diagram showing another example of display on a screen of a dialog box of document information of a file object; 
     FIG. 6 is a diagram showing an example of display on a screen of a folder view; 
     FIG. 7 is a diagram showing an example of display on a screen of time shift; 
     FIG. 8 is a diagram showing an example of display on a screen of a list; 
     FIG. 9 is a diagram showing an example of display on a screen of a lick view; 
     FIGS. 10A to 10C are schematic views showing the mechanism of time shift; 
     FIG. 11 is a schematic view showing the mechanism of object sharing; 
     FIG. 12 is a diagram showing a mail processing view; 
     FIG. 13 is a diagram showing an example of a mail script on a screen; and 
     FIG. 14 is a diagram showing a list of sharing information. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     FIG. 1 is a diagram showing a module structure of a PIE (Personal Information Environment) system according to the present invention. 
     Units of information to be processed in the system according to the present invention are object-oriented, that is, events, such as tasks of making reports, drafts for obtaining the sanction and the like, functions like preliminary assembly and meetings, are made to be the units of information to be treated in the form of objects. The respective objects are connected by a variety of links. 
     The PIE system comprises modules 3 to 11 to be described later and a PIE kernel 2. The PIE kernel 2 forms a message communication layer and is one of the command transmission functions for mediating message communication among modules. Also the PIE kernel 2 has a function for performing message communication between module across a network. As a result, multiple sessions for holding communication with a plurality of PIE systems can be performed. 
     The modules 3 to 11 can be dynamically added to or separated from the PIE kernel 2. Each of the modules 3 to 11 has a common interface (initialization of a module, acquirement of information of a module, execution of a command with respect to a module, asynchronous notification to module and notification of end of module) with respect to the PIE kernel 2. The modules 3 to 11 are distinguished from one another in accordance with respective IDs (peculiar names). 
     An object define 3 and a browser 4 define objects on the PIE system such that &#34;Open file when being double-clicked&#34;. All of the PIE objects are derived from a PIE basic object where necessary characteristics are defined for each of the objects. 
     An object pool 5, which is an object storage means, serves as a data base for managing all of the object instances on the PIE system and their link relationships. The object pool 5 has an interface of commands, such as &#34;generation of a PIE object&#34;, &#34;deletion of a PIE object&#34; and &#34;retrieval of an object&#34; to generate, delete and retrieve objects. 
     An object resolver 6 analyzes the script of a command to internally process the protocol of fetching a file from a server so as to fetch the file from the server. 
     A script engine 7, which is an instruction means, executes a script to cause a super folder 9 to perform a variety of displays, such that an icon of the folder or the like is not always displayed at the position supplied by the system, but at positions instructed by a user so that a plurality of display objects can be displayed being classified with instructed sizes and picture may be pasted on an icon. 
     The script engine 7 reads a display object of the instructed layer of the hierarchy from the object pool 5 when display data of screens being classified into a hierarchical structure according to the parameter which is the time of making of the display data of the screen so as to cause the super folder 9 to display the display object. 
     The script engine 7 causes the super folder 9 to display a list of data, such as object names, to insert a blank line between lines of the list instructed by a user and to display the list of data items in the instructed order. 
     The script engine 7 causes a display command for displaying a share notification, including the ID of the partner of sharing and the pointer to the address at which the shared object is stored, and a mark indication the object being shared together with a display object of the object to be transferred to the partner of sharing. When the display command is transferred from the partner of sharing, the script engine 7 causes the super folder 9 to display a mark indicating an object being shared together with the display object of the shared object. 
     If the shared object is changed by a user, the script engine 7 causes a display command for displaying the ID of the partner of sharing, notification of change including the pointer to the address at which the changed object is stored and a mark indicating the shared object being changed together with the display object of the shared object to be transferred to the partner of sharing. When this display command is transferred from the partner of sharing, the script engine 7 causes the super folder 9 to display a mark indicating the shared object being changed together with the display object of the shared object. 
     A message boy 8, which is transfer a means, offers scripts of share notification and change notification to a notification mail server which only the message boy 8 knows, polls the notification mail server and, if a message exists, requests the object resolver 6 to analyze the message. 
     The super folder 9, which is a display means, pastes a picture to an a instructed position with instructed size, when displaying a shared object in the form of a figure symbolizing each object on the screen, and displays a graphic object composed of a figure and/or a text on the screen on which the display object is displayed. 
     The super folder 9 displays a correlation diagram showing the link relationships among objects, a mark indicating a shared object, and a mark indicating a changed shared object. 
     The super folder 9 reads a display object of the instructed layer of the hierarchy from the object pool 5 when display data of screens being classified into a hierarchical structure according to the parameter which is the time of making of the display data of the screen so as to display the display object. 
     The super folder 9 displays a list of data, such as object names, inserts a blank line between lines of the list instructed by a user and displays the list of data items in the order instructed by the user. 
     A PIE mail 10 creates a view (see FIG. 12) to use an electronic mail as means for sharing the object. 
     A CA.PIE bridge 11 mediates each of the modules and an application, such as a CA (Communication Assist) application like a &#34;telephone directory&#34;, which is applied outside the system. 
     In the PIE system, when the display positions of a plurality of display objects, such as the folders, documents and mails, in the form of figures are instructed so as to be divided into groups, the super folder 9 displays the display objects at the instructed positions. 
     In the PIE system, when another apparatus sharing the object is instructed, the script engine 7 causes the super folder 9 to display a mark indicating the object being shared. Moreover, the script engine 7 causes the message boy 8 to transfer, to another information processing apparatus, the share notification including data for specifying the apparatus and the pointer to the address at which the object is stored and a command to display a mark indicating that the object being shared together with the display object of the object. 
     In the PIE system, when the object shared with another apparatus is changed, the script engine 7 causes the super folder 9 to display a mark indicating the object being changed together with the display object of the shared object. The script engine 7 causes the message boy 8 to transfer, to another apparatus, change notification including the pointer to the address at which the changed object is stored and a command to display a mark indicating the shared object being changed with the display object of the shared object. 
     In the PIE system, the object pool 5 stores the display object displayed on the screen, as data in a hierarchical form employing the time of making display data on the screen as the parameter. When the layer of the hierarchy to be displayed has been instructed, the script engine 7 causes the super folder 9 to display a display object of the instructed layer of the hierarchy. 
     In the PIE system, the script engine 7 causes the super folder 9 to display, on a screen, a list of file names which specify objects. When the position on the screen has been instructed, a blank line is inserted into the instructed position between the lines of the list. 
     As a result, an object grouping environment favorable for a user can be provided such that shifting of the display objects, such as the folder icons, file icons and the like, pasting of a picture to the display object, display of figure objects, such as figures and texts on the screen which is displaying the display object, insertion of a blank line into the displayed list, arrangement of order of data on the list, organization of the view into a hierarchy, and display of the sharer of the object. Thus, objects can be managed from the viewpoint of the user. 
     FIG. 2 is a diagram showing a layer structure of each module in the PIE system shown in FIG 1. Each module has the following layer structure depending upon the function. Note that each module is in a DLL (Dynamic Link Library) format. In this embodiment, Windows 3.1, Windows 95 or Windows NT (trademark of Microsoft Corporation, U.S.) is employed as an OS (Operating System) 1. 
     A message communication layer 21 provides a function of message communication among modules so that modules on the network are permitted to hold message communication among modules. 
     An object definition layer 22 defines a variety of objects. All of objects are derived from a basic object where necessary characteristics are defined for respective objects. The basic object has a field for data, such as names required for this system, and link and has a method for connecting or disconnecting the link and a method for displaying the link. 
     An object management layer 23 manages the instance of the defined object. All of the objects are managed by this layer so that an aggregate of objects is formed in the object management layer 23. 
     Applications for the PIE system are formed on the object management layer 23, the applications being classified into three blocks including a PIE application layer 24 using objects, a script engine layer 25 for controlling the object module from outside and an application link layer for realizing a linking function with general applications independent form the PIE system. 
     The application is created to operate the following PIE basic object. That is an object which the application is not conscious of can be treated similarly to an object which the application can be conscious of. For example, although an application for a folder is produced to mainly treat a document, the folder is able to treat an object, such as a mail and a task, similarly to the document. Moreover, the application is accessible to the aggregate of objects in the object management layer 23. 
     The PIE basic object has fields for names and links and a method of connecting or disconnecting the link. 
     Data of the PIE basic object includes, for example, &#34;name of object&#34;, &#34;ID of object&#34;, &#34;type of object&#34;, &#34;pointer to entity&#34;, &#34;pointer to linked (referred) ID object&#34;, &#34;pointer to linked (referred) memory object&#34;, &#34;meaning of connected (referred) link&#34;, &#34;pointer to ID object linking (referring) to&#34;, &#34;pointer to memory object linking (referring) to&#34;, &#34;meaning of linkage linking (referring) to&#34; &#34;bitmap data for display&#34;, &#34;pallet data for display&#34;, &#34;shared object flag&#34;, &#34;unread/read flag&#34;, &#34;date of making&#34;, &#34;date and time of modification&#34; and the like. 
     The member function of the PIE basic object includes &#34;basic object serialize function&#34;, &#34;character string array serialize function&#34;, &#34;definition of&#34;=&#34;of PIE object&#34; and the like. 
     The member function of the PIE basic object which is rewritten in accordance with the object type to be treated on the PIE system includes, for example, &#34;object open&#34;, &#34;object close&#34;, &#34;default display&#34;, &#34;object display&#34;, &#34;display of text attached to the object&#34;, &#34;object detailed information&#34;, &#34;link setting&#34;, &#34;link suspension&#34;, &#34;status change notification&#34;, &#34;link type change&#34;, &#34;acquisition of order of links&#34;, &#34;acquisition of text of object&#34;, &#34;notification of superimposition of objects&#34; and the like. 
     From the PIE basic object, &#34;document object&#34; and &#34;mail envelope object&#34;, which are information unit objects, and &#34;folder object&#34; and &#34;figure object&#34; which are display system objects are derived. 
     The operation of the PIE system will now be described on referring to examples of display on the screen is explained. 
     1. Folder View 
     FIG. 3 shows a folder view in PIE system. 
     Objects, such as a folder, document, figure, mail and the like defined by the PIE system can be disposed at an arbitrary positions on the PIE folder. The PIE system manages the objects and provides the view. 
     2. File Object 
     A file object has document information shown in FIG. 4. The file object is managed with the file name and a path (including method of file management system, server name, directory name and file name (depending on system)). The name is used by a user to identify the file object on the folder and managed by each user. The path indicates a pointer with which the system identifies the entity of the file and which is composed of the method of the file management system, the server name, the directory name and the file name. 
     Referring to FIG. 3, a file object &#34;PIE proposal (Mr. A)&#34; has, on the network file server, a pointer &#34;96021300.DOC&#34; for the entity of the file with which a plurality of users are accessible. However the user can give an arbitrary name for a file on the folder independently from the entity. &#34;Name of document (doc name)&#34; shown in FIG. 4 indicates name individually set by a user on the PIE folder, while &#34;path name (path)&#34; indicates a path of the file to the entity. 
     Although a latter half of the path name is omitted in FIG. 4, the actual path name is &#34;NT:¥¥matisse¥eo2--2¥PIE¥SHARE¥96021300.DOC&#34; which indicates a fact that an actual file is placed in a directory called &#34;Share&#34; under a directory called &#34;PIE&#34; on a file server having name &#34;Matisse&#34;. &#34;NT&#34; in the leading portion of the path indicates a fact that the file &#34;96021300.DOC&#34; exists on Windows NT server. If the server is NetWare (trademark of Novell Corporation, U.S.), &#34;NW&#34; is employed. If the server is TeamOffice (Trademark of Fujitsu Ltd.), &#34;TO&#34; is employed. The object resolver 6 of the PIE system interprets the leading line to internally process the protocol of fetching the file from the server. 
     Similarly to name, each user is able to assign individual name, memo data and bitmap data to personal file object in the fields &#34;memo&#34; and &#34;bitmap&#34; shown in FIG. 4. In the example shown in FIG. 4, &#34;memo&#34; contains &#34;proposal for operation division&#34;. In the case of a file object &#34;Module diagram.DOC&#34; shown in FIG. 3, the file object has bitmap data as shown in FIG 5. 
     As for a file object having no specified bitmap data, bitmap data of an icon provided by the system is pasted as a default to be displayed on the PIE folder. If the file object has bitmap data as shown in FIG. 5, the pasted bitmap data is displayed on the PIE folder, as shown in FIG. 3. 
     The bitmap size of the folder object on the PIE folder is changeable. When a folder object is selected, a button for changing the size is displayed at, for example, the lower right portion of the folder object. 
     The file object can be used as a file template by marking the section &#34;format&#34; of document information. A file object of a type in which the section &#34;format&#34; of document information is not marked is operated such that a file indicated by the pointer is simply opened when a user double-clicks the file object on the PIE folder. However, in a case where the section &#34;format&#34; is marked, a new file object and a copy of the entity of the file are created, and then the copied file is opened. The pointer of the thus produced file object indicates the copied file. 
     3. Sharing 
     The entity of a file can be shared with a plurality of users. A file object having a path to the entity of the shared file has a sharing mark in the form like a person as displayed in the lower left portion of the file &#34;PIE proposal (Mr. A)&#34; shown in FIG. 3. 
     Though a file being shared, name, memo and bitmap data are under management of each user. Therefore, name, memo and bitmap data can be freely set by each user. 
     The name of the sharer of the file is indicated in document information shown in FIG. 4. Referring to FIG. 4, names of the two persons (A and B) are displayed. 
     If a person among the sharers changes the contents of the file, a check mark of change notification as shown in the upper left portion of the file &#34;PIE proposal (Mr. A)&#34; shown in FIG. 3 is displayed on the file object having the pointer for the changed file until the contents of the file are confirmed by opening the file. 
     If the section &#34;notification at the time of change (inform of change)&#34; shown in FIG. 4 is marked, change by the sharer is directly displayed as a dialog box. As a result, the subject file object is stored in the PIE folder and therefore change of the file can be notified even if it is not displayed on the view of the user. 
     Since the change notification message is informed asynchronously by using the mail as the medium, the PIE system is not required to be operated when the sharer changes the contents. When the system is activated, the system acquires the mail having the contents whether the change notification exists. 
     FIG. 11 is a schematic view of the mechanism of object sharing. 
     The entity of an object to be shared is copied to a PIE server 300 so that a shared object is created in the PIE server 300 (1); the attribute of the object of the PIE system (B) 200 to be shared is copied, and the pointer of the original object is made to be a shared object (a shared pointer object). By using a mail server 400, a sharing control code is transferred to a PIE system (A) 100 (2). The PIE system (A) 100 receives, from the mail server 400, the sharing mail control code (3). The PIE system (A) 100 produces a sharing pointer object and the shared object in the PIE server 300 is pointed (4). 
     Usually, object locally exist as personal objects. If sharing an object with another sharer, the object is made to be a shared object and a shared pointer object. 
     The shared object is always shared and operation, generation of an object and deletion of the same are as well as shared. 
     Sharing is performed by using a script including a pointer of the object. For example, a basic script for sharing a document is as follows: 
     
         PIE-Script: {a=CreateObject(pieobjdoc);SetObjectEntity(a,&#34;nt:¥vision¥home¥aa.doc&#34;);} 
    
     Initially, the object is created by the partner of sharing, and then the object and the entity of the file are combined as a pointer. 
     In the PIE system, file sharing is performed by using a mail as the medium, as shown in FIG. 11. 
     Initially, the mail sending screen is opened to select a file intended to be shared as an attachment (attached document). Referring to FIG. 12, a file &#34;TEMPLATE/TXT&#34; is selected as the attachment. 
     The sharer is selected by &#34;address (to:)&#34;. A plurality of sharers can be selected. File sharing is performed by a script and therefore the entity of the file is not transferred. Accordingly, any mail system may be employed as the medium for sharing if it is able to transfer a text. In this embodiment, file sharing is enabled with either of TeamOffice Mail (trademark of Fujitsu Ltd.) or e-Mail or Nifty Mail (trademark of NIF). 
     When the check box &#34;sharing&#34; shown in FIG. 12 is marked, a mail shown in FIG. 13 is transferred to the mail receiver. 
     When a mail is transferred, a file &#34;96050900.000&#34; for managing sharing information and &#34;96050900.TXT&#34; which is a copy of &#34;TEMPLATE.TXT&#34; are created in a network file server to which all of the file sharers are able to access. 
     On the side of the partner of sharing which has received the script shown in FIG. 13, a file object is initially formed. Then, &#34;96050900.000&#34; for managing sharing information and the file &#34;96050900.TXT&#34; which is being actually shared are set to the foregoing object. Then, a name &#34;TEMPLATE.TXT&#34; is given to the object, and then linked with the message ID of the mail. 
     In reality, the script is not displayed for the partner of sharing, and the script is internally and automatically processed. 
     A file having an extension &#34;.000&#34; for managing sharing information manages information shown in FIG 14. 
     Notification of sharing is performed as follows by similarly using a script. 
     (1) When sharing information unit object is completed &#34;Close ()&#34; method is called. 
     (2) The object acquires a list of sharers in &#34;Close ()&#34; and requests the message boy 8 to offer the sharer the following script as asynchronous notification. 
     (3) PIE-SCRIPT: ##EQU1## (4) The asynchronous notification means transference of a mail to a notification mail server which only the message boy 8 knows. 
     (5) The message boy 8 transfers the change notification mail for each user to the notification mail server which only the message boy 8 knows. 
     (6) The message boy 8 of each system polls the notification mail server, and requests the object resolver 6 to analyze the message if the message exists. 
     (7) The object resolver 6 analyzes the script, retrieves the objects and calls change notification &#34;ChangeStatus&#34; method for the object. 
     (8) The object performs a change process adaptable to the class thereof. 
     4. Figure Object 
     Figure objects can be placed on the PIE folder, as shown in FIG. 6. The figure object includes &#34;line&#34;, &#34;square&#34;, &#34;circle&#34; and &#34;text&#34; which can be disposed on the PIE folder similarly to the file object. 
     The type and color of the &#34;line&#34; of the figure object can be specified. 
     The type and color of a line of the contour, whether to fill the region, and color of the region filling can be specified for the &#34;square&#34; and the &#34;circle&#34; of the figure object. 
     The type and color of a line for forming the contour, whether to fill the region, color of region filling, font and text to display can be specified for the &#34;text&#34; of the figure object. 
     5. Time Shift 
     In the PIE folder, the views can be classified into a hierarchical structure employing the time as the parameter. In the upper portion of FIG. 7, a menu column &#34;time shift&#34; and a time layer display column (in FIG. 7, &#34;1996/04/01, . . . ,) are provided. 
     By selecting time shift &#34;freeze&#34; in the menu, the layer of the folder increases. When &#34;freeze&#34; is selected, a dialog box is displayed to require &#34;time of freezing&#34; and &#34;comment&#34;. The time and comment, which are input here, are displayed in the column for displaying the time layer. The latest layer is displayed as &#34;present&#34;. 
     The shift of the layer can be performed from both of the menu column and the display column. When shifting the layer from the display column, a user must select the display column, and then depress upward cursor key and a downward cursor key so as to shift the layer. 
     When a new layer is created, all objects of the previous layer is displayed with position information. Even if the object is deleted or moved on the new layer, the lower layer is not affected. Similarly, deletion and movement in the lower layer do not affect the upper layer, that is, they can be treated like independent folders. 
     When the system is activated, the super folder 9 retrieves and holds a root object of a folder named &#34;Test2Root&#34; shown in FIG. 10A. Although the &#34;Test2Root&#34; itself is a folder object, the folder application creates a frame window and pastes the folder object folder object in the frame window. 
     Time shift is performed by using the structure of the hierarchical folder as shown in FIG. 10 so as to select an object to be displayed at present referring to the current layer values as shown in FIGS. 10B and 10C. 
     6. List Display 
     In the PIE folder the view can be displayed into a list as shown in FIG. 8. A user can change the order of arrangement by depressing the cursor movement button of up and down. The arrangement order does not depend upon time or name. Moreover, the user can insert a blank line into the list. Insertion and deletion of the blank line are performed by a blank line insertion/deletion button. As a result, list display of the PIE folder enables files to be arranged in groups which are meaningful for the user. 
     Also in the display by the list, information of sharing, change notification and the like are displayed on the icon, similarly to the display of the folder. In a case of a mail object as shown in FIG. 8, with or without an attachment is as well as displayed. 
     Similarly to a usual display by the folder, time shift can be performed with the display by the list. 
     7. Link Display 
     The PIE folder has a link view as shown in FIG. 9. The link view is such that objects being linked from the selected object are displayed centering the selected object on the view. FIG. 9 shows an example of the link view in which one upper layer and one lower layer are displayed. Display of the link view is immediately changed when the selected object in the folder view is changed. Similarly to the folder view, it is able to open an object selected by double-clicking from the link view as well as to display the related objects. 
     The color and type of the linkage line are different depending on the type of the linkage. For example, a gray line for folder/file, red for mail/attachment, and blue for file/file. 
     8. Browsing View 
     Objects on the PIE folder have a relationship with a browsing view for displaying the contents of the objects. When the browsing view is opened and an object is selected on the folder view, text information and bitmap information of the object are immediately displayed on the browsing view. 
     When, for example, &#34;news&#34; shown in FIG. 9 is selected, the contents of &#34;news&#34; are displayed on the browsing view. 
     As this invention may be embodied in several forms without departing from the spirit of essential characteristics thereof, the present embodiment is therefore illustrative and not restrictive, since the scope of the invention is defined by the appended claims rather than by the description preceding them, and all changes that fall within metes and bounds of the claims, or equivalence of such metes and bounds thereof are therefore intended to be embraced by the claims.