WO2010090286A1 - 情報処理システム、情報処理装置および情報処理方法 - Google Patents

情報処理システム、情報処理装置および情報処理方法 Download PDF

Info

Publication number
WO2010090286A1
WO2010090286A1 PCT/JP2010/051712 JP2010051712W WO2010090286A1 WO 2010090286 A1 WO2010090286 A1 WO 2010090286A1 JP 2010051712 W JP2010051712 W JP 2010051712W WO 2010090286 A1 WO2010090286 A1 WO 2010090286A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
information processing
tray
user
shared
Prior art date
Application number
PCT/JP2010/051712
Other languages
English (en)
French (fr)
Inventor
大作 保理江
宏樹 吉田
Original Assignee
コニカミノルタホールディングス株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by コニカミノルタホールディングス株式会社 filed Critical コニカミノルタホールディングス株式会社
Priority to JP2010549522A priority Critical patent/JPWO2010090286A1/ja
Publication of WO2010090286A1 publication Critical patent/WO2010090286A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Definitions

  • the present invention relates to an information processing system, an information processing apparatus, and an information processing method that provide a virtual work space in which a plurality of users can work interactively.
  • work spaces have been proposed to support intellectual creation work by a plurality of users (for example, Japanese Patent Laid-Open Nos. 10-051581 and 10-126758). Issue gazette).
  • This workspace is a virtual whiteboard-like space, and the user can interactively input materials such as handwritten characters, images, and photographs (hereinafter also referred to as “objects”) in this space. Can be operated. Such a workspace facilitates intellectual creation work (thinking and communicating with other members) within an individual or group.
  • the workspace can provide a wider working space than the range actually viewed by the user.
  • the range browsed by the user can be freely expanded or reduced as necessary, so that writing or the like can be performed even in a narrow area. Therefore, even in a vast range of work space, the user can work without stress.
  • the subject matter that the user has conceived is input as objects one after another, and these inputted many objects are classified (categorized) or associated with each other.
  • new ideas typically KJ method.
  • the user brings objects that are considered to belong to the same category close together or adds the same display attribute to each object (typically the same color To trim each object.
  • a group consisting of a plurality of objects belonging to the same category and an object considered to belong to the category are connected with a line.
  • JP 10-051581 A Japanese Patent Laid-Open No. 10-126758
  • workspaces are used by various users to write around a vast space, so it is efficient and appropriate for one person to organize information. It may not be possible. Therefore, there is a need to share information among a plurality of members and utilize the knowledge of each member to organize information.
  • This sort of information is done by actually checking or editing the objects placed on the workspace (typically tagging objects, changing colors, grouping, etc.) By doing work, it can be made more efficient.
  • the present invention has been made to solve such a problem, and its purpose is to organize information while reducing the influence of each user on the work of other users with respect to objects on the workspace.
  • An information processing system provides a virtual work space accessible by a plurality of users.
  • This information processing system includes a plurality of information processing devices connected to each other so as to be capable of data communication.
  • Each of the plurality of information processing apparatuses includes a holding unit, a first display unit, a second display unit, and a synchronization unit.
  • the holding unit holds first information defining the virtual work space and the first object included in the virtual work space.
  • the first information is synchronized with another information processing apparatus.
  • the first display means displays part or all of the contents of the virtual work space to the user based on the first information.
  • the second display means displays a second object that is associated with the first object included in the virtual work space and can be changed independently of the first object in response to a user operation.
  • the synchronization unit synchronizes and holds the second information defining the instructed second object in response to an instruction to share the information processing apparatuses.
  • the first display means includes a first area for the second object that should be shared among the plurality of information processing apparatuses, and a second area for the second object that should not be shared among the plurality of information processing apparatuses.
  • the area is displayed separately from the display of part or all of the contents of the virtual work space.
  • the synchronization means holds the second information corresponding to the second object displayed in the first area in synchronization, and does not synchronize the second information corresponding to the second object displayed in the second area.
  • each of the plurality of information processing devices is either a first mode shared between the plurality of information processing devices or a second mode not shared between the plurality of information processing devices for each second object. It further includes mode setting means for receiving the setting.
  • the synchronization unit synchronously holds the second information corresponding to the second object set in the first mode, and does not synchronize the second information corresponding to the second object set in the second mode.
  • each of the plurality of information processing apparatuses further includes an authentication unit that authenticates a user who uses the information processing apparatus, and a sharing destination setting unit that receives a setting of a user who permits sharing for each second object.
  • the synchronization means holds the second information corresponding to the second object in synchronization with the information processing apparatus used by the user who is set to permit sharing of the second object.
  • the first information includes identification information associated with the first object and a description defining the entity of the first object.
  • the second display means includes means for holding identification information for specifying the first object in association with the second object.
  • the second display means further includes means for changing the display position of the second object independently of the first object in response to a user operation.
  • the second display means further includes means for changing a display mode of the second object independently of the first object in response to a user operation.
  • the second display means can display a plurality of second objects side by side.
  • the second display means further includes means for adding an object that associates the second objects with each other in response to a user operation.
  • At least one of the plurality of information processing apparatuses further includes a reflecting unit that reflects changes made to the second object in the first object in response to a user operation.
  • An information processing apparatus provides a virtual work space.
  • the information processing apparatus includes a holding unit, a first display unit, a second display unit, and a synchronization unit.
  • the holding unit holds first information defining the virtual work space and the first object included in the virtual work space.
  • the first information is synchronized with another information processing apparatus.
  • the first display means displays part or all of the contents of the virtual work space to the user based on the first information.
  • the second display means displays a second object that is associated with the first object included in the virtual work space and can be changed independently of the first object in response to a user operation.
  • the synchronization unit holds second information defining the instructed second object in synchronization with the other information processing apparatuses.
  • An information processing method provides a virtual work space accessible by a plurality of users using a plurality of information processing apparatuses connected to each other so as to be able to perform data communication.
  • each of a plurality of information processing devices holds a first information defining a virtual work space and a first object included in the virtual work space, and each of the plurality of information processing devices holds Synchronizing the first information to be performed, and one information processing device among the plurality of information processing devices displaying a part or all of the contents of the virtual workspace to the user based on the first information;
  • the information processing apparatus displaying a second object associated with the first object included in the virtual work space and changeable independently of the first object in response to a user operation;
  • the second information defining the designated second object is synchronized with other information processing devices. That and a step.
  • each user can perform other operations on the object on the workspace.
  • the work of organizing information can be performed while reducing the influence on the work of the user, and the work result finally obtained by the work of organizing information can be easily shared with other users.
  • FIG. 1 It is a schematic block diagram of the information processing system for providing the work space according to Embodiment 1 of this invention. It is a schematic diagram which shows the schematic hardware constitutions of the personal computer which is a typical example of the information processing apparatus according to Embodiment 1 of this invention. It is a figure which shows typically an example of the work space according to Embodiment 1 of this invention. It is a figure which shows an example of the content of the work space (WS) information corresponding to the work space shown in FIG. It is a figure for demonstrating the initial operation on the client apparatus according to Embodiment 1 of this invention. It is a figure which shows an example of the user interface on the client apparatus according to Embodiment 1 of this invention. It is FIG.
  • WS work space
  • FIG. (1) for demonstrating edit operation on the client apparatus according to Embodiment 1 of this invention.
  • FIG. (2) for demonstrating edit operation on the client apparatus according to Embodiment 1 of this invention.
  • FIG. (1) for demonstrating operation in the tray function on the client apparatus according to Embodiment 1 of this invention.
  • FIG. (2) for demonstrating operation in the tray function on the client apparatus according to Embodiment 1 of this invention.
  • FIG. (3) for demonstrating operation in the tray function on client apparatus CL according to Embodiment 1 of this invention.
  • FIG. (1) for demonstrating operation in the tray function on client apparatus CL according to Embodiment 1 of this invention.
  • FIG. (2) for demonstrating operation in the tray function on client apparatus CL according to Embodiment 1 of this invention.
  • shows the control structure implement
  • Embodiment 1 of this invention It is a schematic diagram which shows the exchange of data in Embodiment 1 of this invention. It is a figure which shows an example of the content of the tray information according to Embodiment 1 of this invention. It is a figure which shows an example of the content of WS information 114a in which the content of the tray information shown in FIG.20 (b) was reflected. It is a figure which shows the example of description of the tray information according to Embodiment 1 of this invention. It is a flowchart (the 1) which shows the process sequence which concerns on provision of the work space according to Embodiment 1 of this invention. It is a flowchart (the 2) which shows the process sequence which concerns on provision of the work space according to Embodiment 1 of this invention.
  • the “work space” means a virtual work space provided on the information processing apparatus to which a visible object can be added or edited.
  • a workspace allows a user to organize information and share information with other users.
  • an information processing apparatus that executes a program (application), an electronic whiteboard in which the function is incorporated in advance, a mobile phone, a tablet PC, and the like are conceivable.
  • object means general data that can be added to a workspace. This object is the unit of operation target of the user. Examples of this object include graphics, text documents, worksheet cells, images, audio, logs, tags, bookmarks, annotations, user information, and the like.
  • object all data added on a “selection tray” to be described later is also referred to as “object”. Therefore, when it is necessary to distinguish between them, an object on the workspace is referred to as an “entity object”, and an object on the selection tray is also referred to as an “alias object”.
  • entity object an object to be operated to achieve the original purpose of using the workspace
  • alias object is an object that refers to the entity object in order to use the tray function.
  • the present invention provides an environment in which intelligent creation work can be efficiently performed by selectively collecting objects that are considered necessary by a user among objects (substance objects) scattered on a workspace. More specifically, in this environment, the user can freely place alias objects associated with the entity objects in a display area that is distinct from the workspace, and these alias objects can be placed on the workspace. Various editing operations can be freely performed independently of the entity object. In this specification, these functions are also referred to as “tray functions”.
  • the present invention provides a tray function that allows a user to arbitrarily select one of the arranged alias objects and share it among a plurality of users (actually, information processing devices used by each user). .
  • a tray function that allows a user to arbitrarily select one of the arranged alias objects and share it among a plurality of users (actually, information processing devices used by each user). .
  • work in the case of performing collaborative work in a group of a plurality of members is made efficient.
  • FIG. 1 is a schematic configuration diagram of an information processing system for providing a work space according to the first embodiment of the present invention.
  • the information processing system includes a plurality of client devices CL1 to CLN (hereinafter referred to as “a plurality of information processing devices” connected to each other via a network NW so that data communication is possible).
  • Client device CL a so-called server client configuration is illustrated.
  • peer-to-peer configuration can also be adopted.
  • Each of the client devices CL1 to CLN commonly holds information for providing a work space (work space (WS) information, which will be described later) via the server device SRV, so that the client devices CL1 to CLN.
  • a workspace is provided to users who use each of the above. That is, when a user adds an object on a workspace on any client device CL, the added object is reflected on the workspace displayed on the other client device CL. In this way, information can be shared between users.
  • the tray function according to the present invention can also be applied to a workspace provided by a single client device CL. That is, the present invention is not necessarily limited to a workspace that can be accessed simultaneously by a plurality of users.
  • the server SRV mainly controls data sharing among the client apparatuses CL1 to CLN.
  • FIG. 2 is a schematic diagram showing a schematic hardware configuration of a personal computer which is a representative example of the information processing apparatus according to the first embodiment of the present invention.
  • client device CL which is an information processing device according to the present embodiment, temporarily stores CPU 2 that executes various programs including an operating system, and data necessary for the execution of the program by CPU 2.
  • a hard disk (HDD) 12 that stores a program executed by the CPU 2 in a nonvolatile manner.
  • Such a program is read from a CD-ROM 16a or a flexible disk 18a by a CD-ROM (Compact Disk-Read Only Memory) drive 16 or a flexible disk (FD: Flexible Disk) drive 18, respectively.
  • CD-ROM Compact Disk-Read Only Memory
  • FD Flexible Disk
  • the CPU 2 receives a user operation request via the input device 10 including a keyboard, a mouse, a tablet, and the like, and outputs a screen output generated by executing the program to the output device 6.
  • the output device 6 is a device for displaying the state of the workspace to the user, and typically includes a monitor or a projector.
  • the CPU 2 performs data communication with other client devices CL and the server device SRV via the communication interface 8 composed of a LAN card or the like. These parts are connected to each other via the internal bus 4.
  • server SRV is also an information processing apparatus, and the hardware configuration thereof is similar to the hardware configuration of client apparatus CL shown in FIG. 2, and therefore detailed description will not be repeated.
  • FIG. 3 is a diagram schematically showing an example of a workspace according to the first embodiment of the present invention.
  • FIG. 4 is a diagram showing an example of the contents of the work space (WS) information corresponding to the work space shown in FIG.
  • FIG. 5 is a diagram for describing an initial operation on client device CL according to the first embodiment of the present invention.
  • FIG. 6 shows an example of a user interface on client device CL according to the first embodiment of the present invention.
  • FIG. 7 is a diagram (part 1) for describing an editing operation on client device CL according to the first embodiment of the present invention.
  • FIG. 8 is a diagram (No. 2) for describing an editing operation on client device CL according to the first embodiment of the present invention.
  • FIG. 3 shows a workspace in which objects OBJ1 to OBJ9 have already been created as an example.
  • an object OBJ1 is an “image object”
  • objects OBJ2 and OBJ4 to OBJ9 are “text objects”
  • object OBJ3 is a “line object”.
  • the type of object is not particularly limited as long as it is data that can be handled electronically, but as an example, in addition to external files such as images and documents, vector data such as figures and lines, and free by handwriting Can accept input.
  • the workspace shown in FIG. 3 is conceptually expressed.
  • the contents included in the range (view range) corresponding to the user operation are displayed on each client device CL ( Rendered). That is, part or all of the contents of the workspace are displayed for the user.
  • WS information for defining a workspace and objects included in the workspace according to the present embodiment is typically described in a markup language such as XML.
  • tags attributes given to characters surrounded by ⁇ > and ⁇ />
  • WS information includes a workspace tag 302 for specifying a workspace, a description 304 for specifying a view range, and descriptions 311 to 315 for defining objects OBJ1 to OBJ5, respectively. .
  • the workspace tag 302 typically stores information such as the workspace identification number (workspace id) and the creator (Author) of the workspace.
  • the workspace tag 302 may include a character encoding attribute.
  • Each object is defined by a description that starts with an ⁇ object> tag and ends with a ⁇ / object> tag.
  • an identification number that uniquely identifies each object is defined in the ⁇ object id> tag.
  • the coordinate position on the workspace for each object or an element constituting each object is defined.
  • a link address of the associated external file is defined.
  • the identification number is “1” in the ⁇ object id> tag and the image object is defined in the ⁇ image> tag.
  • the attribute in the ⁇ image> tag that the x coordinate is “60” and the y coordinate is “180”
  • the ⁇ src> tag specifies an external file “ fuji.jpg ”is defined
  • the ⁇ scale> tag defines that the display magnification of the object OBJ1 is“ 0.25 ”.
  • an external file (reference destination file) is prepared separately from the description in the WS information.
  • the contents of such an image object can be referred to and displayed on the workspace WS.
  • FIG. 4 an example of configuring a workspace using one WS information is illustrated, but equivalent information may be defined using a plurality of files.
  • equivalent information may be defined using a plurality of files.
  • files in which each object is defined is associated with each other using a relational database or the like can be employed.
  • any data structure that can be handled in units of objects is not limited to the data structure shown in FIG. 4, and any data structure can be adopted.
  • drawing of the workspace and external output are performed.
  • the content of the description 304 shown in FIG. 4 is updated at any time as the user changes the view range such as enlargement / reduction or scrolling on any of the client devices CL.
  • display window 150 that provides a workspace according to the present embodiment is initially displayed on output device 6 of client device CL.
  • a “file” button 152 in addition to an area 158 for displaying a workspace, a “file” button 152, an “operation” button 154, and a “display” button 156 are displayed at the top.
  • a dialog for operating the WS information is displayed.
  • “Open new WS” is selected in this dialog, a new workspace is created.
  • “Save WS” is selected, the currently created workspace is saved as WS information.
  • “Open WS” is selected, the saved WS information that has been saved is selectively read to display the workspace. 6 to 8 show examples of operations in a state where the workspace is read and displayed.
  • display window 160 indicating the position of the view range on the workspace is displayed in addition to display window 150.
  • the display window 160 schematically shows the relative relationship between the entire workspace and the view range VIEW.
  • the user moves or deforms (resizes) the view range VIEW on the display window 160 with a mouse or the like, the range of the workspace displayed in the area 158 is changed accordingly.
  • FIG. 6A shows a display example when the range VIEW1 shown in FIG. 3 is set as the view range
  • FIG. 6B shows the case where the range VIEW2 shown in FIG. 3 is set as the view range.
  • a display example is shown.
  • an object to be operated is selected and then the processing content is instructed.
  • a method for selecting this object there are a method for directly selecting a target object and a method for selecting an object existing in the range by designating a desired range. Moreover, you may enable it to select (add) an object over multiple times continuously.
  • FIG. 7 shows an operation example when the target object is directly selected
  • FIG. 8 shows an operation example when the target object is indirectly selected by specifying a range.
  • the operation when the user moves the object OBJ2 arranged on the workspace will be exemplified.
  • the user places a cursor CRS to be displayed on the target object (object OBJ2) and then performs a click operation (typically a left click) on the mouse.
  • the object OBJ2 is directly selected.
  • the user places a cursor CRS to be displayed on the target object (object OBJ2) and then performs a click operation (typically right click) on the mouse.
  • a dialog showing a list of operation commands is displayed, and by designating “select” on this dialog, the object OBJ2 is directly selected.
  • the user can move the object OBJ2 by performing a drag operation or a cursor operation.
  • a desired range is specified by dragging a range including the object OBJ2 while the user continues a click operation (typically a left click) on the mouse. .
  • Objects included in the specified range are selected. In this way, the user can select an object within the specified range without directly selecting the target object.
  • tray function according to the present embodiment will be described with reference to FIGS.
  • personal functions and shared functions are prepared as tray functions according to the present embodiment.
  • the basic contents of the tray function according to the present embodiment will be described first. Then, the functional difference between the tray function (individual) and the tray function (shared) will be described.
  • FIG. 9 is a diagram schematically showing an example of a workspace in a scene which is a target for explanation of the tray function according to the first embodiment of the present invention.
  • FIG. 10 is a diagram for illustrating a tray function activation operation on the client device CL according to the first embodiment of the present invention.
  • FIG. 11 is a diagram (No. 1) for explaining the operation in the tray function on client device CL according to the first embodiment of the invention.
  • FIG. 12 is a diagram (No. 2) for explaining the operation in the tray function on client device CL according to the first embodiment of the invention.
  • FIG. 13 is a diagram for explaining an example of the intelligent creation work using the tray function according to the first embodiment of the present invention.
  • FIG. 14 is a diagram (No. 3) for explaining the operation in the tray function on client device CL according to the first embodiment of the invention.
  • the workspace shown in Fig. 9 as a premise for the following explanation.
  • the workspace shown in FIG. 9 is different from the workspace shown in FIG. 3 only in the position of the view range VIEW.
  • the solutions OBJ4 to OBJ9 describe solutions A to F for a certain problem, for example. Then, determine which of the solutions A to F is optimal, extract a part of the solutions A to F, or create a new solution based on them. Think about the case.
  • a dialog 156a for performing an operation related to display is displayed.
  • a plurality of items including a “personal tray display” for activating a personal tray function and a “shared tray display” for activating a shared tray function can be selected and displayed. Is done.
  • a display window 170 indicating the selected tray (individual) is newly generated.
  • a display window indicating the selected tray (shared) is displayed. 180 is newly generated.
  • the display window 180 when the display window 180 is newly generated in any one of the client devices CL, the display window 180 may be automatically generated in the other client devices CL. Alternatively, it is searched whether or not the display window 180 has been generated in another client device CL, and if there is a client device CL that has generated the display window 180, the display window 180 is also generated in the own device. You may do it.
  • selection tray when the common functions of the selection tray (individual) and the selection tray (shared) are described, both are simply referred to as “selection tray”.
  • a display window 150 that provides a workspace, a display window 170 that indicates a selection tray (individual), and / or a display window 180 that indicates a selection tray (shared) are displayed. Drags and drops any object on the workspace to the display window 170 (or the display window 180), so that the selected alias object ALS1 appears on the selection tray.
  • the object on the workspace is selected, the object is stored by the pull-down menu, and the drop destination is specified with the destination to be dropped. Another method such as specifying a command may be used.
  • any method may be employed as long as an object on the designated workspace can be dropped at a designated position on the selection tray.
  • the method of selecting objects on the workspace as the selection tray (individual) and the selection tray (shared) is a common operation.
  • the alias object associated with the entity object is displayed in a display area that is distinct from the display of part or all of the contents of the workspace.
  • tray information for defining an object on the selected tray is newly generated.
  • this tray information is described in a markup language such as XML, like the WS information described above.
  • the object (alias object) on this selection tray exists independently of the object (substance object) on the workspace. That is, in principle, even if the user performs an operation such as moving, editing, or deleting an alias object on the selection tray, the actual object on the workspace is not affected. That is, as shown in FIG. 12, for the alias object ALS1 displayed in the display window 170, operations such as movement, editing, and deletion can be performed independently of the associated entity object on the workspace. Is possible.
  • operations such as moving, editing, and deleting an alias object on the selected tray can be reflected on an associated entity object on the workspace according to a user operation.
  • the object (alias object) on the selection tray is displayed in a display mode based on the display mode of the associated entity object so that the user can recognize the association with the entity object. For example, when the entity object has a rectangular shape, the alias object is also displayed as a rectangle.
  • the number of alias objects that can be added to the selection tray is not particularly limited, and the user can create an alias object by dragging and dropping an entity object on the workspace. A part of the alias objects added to the selection tray in this way can also be selected. In other words, among the alias objects added to the selection tray, it is possible to extract a more important one or the like that reflects some change to the actual object on the workspace.
  • the display windows 170 and 180 indicating the selected tray are illustrated as being displayed separately from the display window 150 that provides the work space. However, if the display windows 170 and 180 can be distinguished from each other, the work space is displayed. A form may be adopted in which a part of is used as a selection tray.
  • the user can perform intelligent creation work independently of the actual object on the workspace.
  • FIG. 13 an example of the intellectual creation work by the user will be described.
  • the user adds an object considered necessary on the workspace to the selection tray by a drag-and-drop operation, but determines that the object added to the selection tray is unnecessary. Deleted objects can be deleted from the selection tray. At this time, even if the user moves the alias object on the selection tray, the actual object on the workspace is not affected.
  • the user can devise an idea while appropriately changing the position of the alias object on the selection tray by looking at the state where three alias objects are added to the selection tray as shown in FIG.
  • a user thinks that the alias object ALS2 is unnecessary and deletes it from the selection tray, and instead, it is better to add new alias objects ALS4 and ALS5 to the selection tray.
  • the added state is shown in FIG.
  • the alias objects ALS1 and ALS3 associated with the entity objects OBJ4 and OBJ8 on the workspace are arranged close to each other, and the entity objects OBJ7 and OBJ6 on the workspace are arranged.
  • Alias objects ALS4 and ALS5 respectively associated with each other are arranged close to each other. In this way, the user can arrange the entity objects arranged separately on the workspace at positions close to each other on the selection tray. Thereby, it is possible to visually collect objects that the user thinks that the contents are similar and should be classified into the same category.
  • the respective background color is changed in order to visually represent it. can do. More specifically, as shown in FIG. 13C, the user performs a drag operation while continuing a click operation (typically, left click) on the mouse, whereby the alias object ALS1 on the selection tray is displayed. And selection range DA1 is specified to include ALS3. Subsequently, the user selects an “operation” button 172 displayed on the left side of the display window 170 (or 180) with the cursor CRS or the like. Then, a dialog (not shown) for performing various operations is displayed.
  • a click operation typically, left click
  • the background colors of the alias objects ALS4 and ALS5 are changed (for example, white to yellow).
  • the initial background color of the alias objects ALS1 and ALS3 on the selection tray is set to the same background color as the associated entity object on the workspace.
  • the same procedure as in FIG. The background color can also be changed. That is, as shown in FIG. 13D, the user includes the alias objects ALS4 and ALS5 on the selection tray by performing a drag operation while continuing a click operation (typically a left click) on the mouse. Thus, the selection range DA2 is designated. Subsequently, the user selects an “operation” button 172 displayed on the left side of the display window 170 (or 180) with the cursor CRS or the like. Then, a dialog (not shown) for performing various operations is displayed. By selecting a “color edit” button for changing the color attribute of the selected object on this dialog, the background colors of the alias objects ALS1 and ALS3 are changed (for example, from white to red).
  • the shape of the alias objects ALS1 and ALS5 is changed. By changing it, it can be expressed that it is classified into the same category in another sense. More specifically, as shown in FIG. 13E, the user performs a drag operation while continuing a click operation (typically a left click) on the mouse, whereby an alias object ALS1 on the selection tray is displayed. And selection range DA3 is specified to include ALS4. Subsequently, the user selects an “operation” button 172 displayed on the left side of the display window 170 (or 180) with the cursor CRS or the like.
  • a click operation typically a left click
  • a dialog for performing various operations is displayed.
  • a “shape edit” button for changing the shape of the selected object on this dialog, the shapes of the alias objects ALS1 and ALS4 are changed from a square to an ellipse.
  • the changed shape can be arbitrarily selected.
  • the user places a cursor CRS to be displayed on the first alias object (alias object ALS1) on the selection tray, and then performs a click operation on the mouse (typically Right click), and then, after placing the cursor CRS on the second alias object (alias object ALS4) and performing a click operation (typically right click) on the mouse.
  • a linking LNK that visually represents that both alias objects are associated is added.
  • the user places the alias objects in a certain position, selects the alias objects that are to be operated at once by a simple selection range specification operation, and changes the color of the alias objects belonging to the same category.
  • You can easily perform complex and complex operations such as changing the shape of the alias object that has been re-selected at a different point, and connecting the alias objects that you want to emphasize that are related to each other with a line . Note that these operation contents can be reflected in the associated entity objects on the workspace.
  • alias object ALS1 when an alias object ALS1 is selected on the selection tray, it is assumed that some change operation is performed on the alias object ALS1.
  • the alias object ALS1 is assumed to be associated with the entity object OBJ4 on the workspace in the display window 150.
  • FIG. 14B shows a case where an operation for increasing the thickness of the outer peripheral frame of the alias object ALS1 is performed.
  • the user selects a “preview” button 174 displayed on the left portion of the display window 170 (or 180) with the cursor CRS or the like.
  • the display of the associated entity object OBJ4 on the workspace in the display window 150 is changed to a state in which the changed shape of the alias object ALS1 is reflected. That is, a preview display of the state when changes made to the alias object ALS1 are reflected on the associated entity object.
  • this preview display the user can visually determine in advance whether or not the change made to the alias object may be reflected on the associated entity object.
  • FIG. 15 is a diagram (No. 1) for explaining the operation in the tray function on client device CL according to the first embodiment of the invention.
  • FIG. 16 is a diagram (No. 2) for explaining the operation in the tray function on client device CL according to the first embodiment of the invention.
  • FIG. 15A shows a display example in the client device CL1
  • FIG. 15B shows a display example in the other client devices CL2 to CLN.
  • the user of the client device CL1 drags and drops an arbitrary object on the workspace to the display window 180 (selection tray (shared)), thereby selecting the selected tray (shared). It is assumed that a new alias object ALS1 is added above. With the addition of the alias object to the selected tray (shared), the shared tray information 114c held by the client device CL1 is changed, and the changed content of the shared tray information 114c is the shared tray information held by the server device SRV. Reflected in 214c. Furthermore, the contents of the change are reflected from the server SRV to the shared tray information 114c held by each of the other client apparatuses CL2 to CLN.
  • the selected tray (shared) in each of the other client devices CL2 to CLN is synchronized with the alias object added to the selected tray (shared) of the client device CL1, as shown in FIG. Is displayed.
  • FIG. 16A shows a display example on the client device CL1
  • FIG. 16B shows a display example on the other client devices CL2 to CLN.
  • the user of the client device CL1 drags and drops an arbitrary object on the workspace to the display window 170 (selection tray (individual)), thereby selecting the selection tray (individual). It is assumed that a new alias object ALS1 is added above. As the alias object is added to the selected tray (individual), the personal tray information 114b held by the client device CL1 is changed. However, the changed contents of the personal tray information 114b are not synchronized with the other client devices CL and the server device SRV.
  • the alias objects added to the selection tray (individual) of the client device CL1 are displayed on the selection tray (individual) in each of the other client devices CL2 to CLN, as shown in FIG. Not. That is, each selected tray (individual) of the client device CL is handled independently of the other client devices CL.
  • each user who uses the client devices CL1 to CL3 simultaneously shares and adds the entity object considered most appropriate to the display window 180 indicating the selection tray (shared), and then the client device CL1 is added.
  • the client device CL1 After the user who has used the idea moves while moving the alias object on the selection tray (shared), one more object is added.
  • FIG. 13B shows a state after these series of operations are performed.
  • the user using the client device CL3 changes two of the four alias objects added to the selection tray (shared) as shown in FIG. Change the background color of ALS4 and ALS5).
  • the user who uses the client device CL4 visually represents that the two alias objects are associated with the alias object ALS1 and the alias object ALS4 as shown in FIG. 13 (f). Add LNK.
  • FIG. 17 is a schematic diagram showing a control structure realized by client device CL according to the first embodiment of the present invention.
  • FIG. 18 is a schematic diagram showing a control structure realized by server SRV according to the first embodiment of the present invention.
  • FIG. 19 is a schematic diagram showing data exchange according to the first embodiment of the present invention.
  • the client device CL includes an input device 10, an output device 6, a processing unit 100, a WS storage unit 120, and an input / output control unit 130 as control structures.
  • the processing unit 100 and the input / output control unit 130 are provided by the CPU 2 executing a program stored in advance in the hard disk 12 after the CPU 2 develops the program in the memory 14.
  • the WS storage unit 120 is provided as a part of the HDD 12.
  • the input device 10, the output device 6, the processing unit 100, the WS storage unit 120, and the input / output control unit 130 are not necessarily provided in the same client device CL, and may be provided separately in separate devices. Good. Further, the input / output control unit 130 may be provided inside the input device 10 or the output device 6. Further, other information such as between the input device 10 and the output device 6 and the input / output control unit 130, between the input / output control unit 130 and the processing unit 100, and between the processing unit 100 and the WS storage unit 120, etc. You may comprise in the form which mediates a processing apparatus, a control part, etc.
  • the input / output control unit 130 interprets the content of the input signal received by the input device 10 and outputs a corresponding command to the processing unit 100. That is, the input / output control unit 130 determines what kind of operation the user has performed on the input device 10. As a more specific example, the input / output control unit 130 determines which object on the workspace has been selected, which button has been pressed, click operation, and drag operation by clicking or dragging the mouse. Interpret the contents such as.
  • the input / output control unit 130 generates an output signal based on the information from the processing unit 100 and sends it to the output device 6.
  • the input / output control unit 130 performs what kind of display on any part of the displayed screen in accordance with an object operation or a view change operation performed by the user on the workspace. Determine whether it is okay and generate (render) the output signal.
  • the processing unit 100 governs the entire process of providing a workspace according to the present embodiment.
  • the processing unit 100 is synchronized with the operation management unit 102, the view management unit 104, the object management unit 106, the tray management unit 108, the WS space management unit 110, the WS input / output unit 112, and the WS work memory 114. And a management unit 116.
  • the operation management unit 102 determines the requested processing content based on the information sent from the input / output control unit 130, and in accordance with the determination result, the view management unit 104, the object management unit 106, the tray management unit 108, A command is given to corresponding parts of the WS space management unit 110, the WS input / output unit 112, and the synchronization management unit 116. More specifically, when the received operation content is creation of a new workspace, reset of a workspace, deletion of a workspace, etc., the operation management unit 102 issues an instruction to the WS space management unit 110 and sets the WS. Processing is executed in the space management unit 110.
  • the operation management unit 102 issues an instruction to the object management unit 106 and the object management unit Processing is performed at 106. Further, when the received operation content is a view change, the operation management unit 102 issues an instruction to the view management unit 104, and the view management unit executes the process. Further, when the received operation content is reading or writing of a workspace, the operation management unit 102 issues an instruction to the WS input / output unit 112 and the WS input / output unit 112 executes processing.
  • the operation management unit 102 displays the selected operation, such as displaying a selected tray, adding an object to the selected tray, editing an object on the selected tray such as movement, content change, decoration change, and the like.
  • deletion an instruction is issued to the tray management unit 108 and processing is executed by the tray management unit 108.
  • the WS work memory 114 stores WS information 114a for providing a work space, personal tray information 114b for providing a personal tray function, and shared tray information 114c for providing a tray function for sharing. Is done.
  • the WS information 114a, personal tray information 114b, and shared tray information 114c are updated as needed in accordance with user operations and processing in each unit.
  • the WS space management unit 110 manages the creation and deletion of the WS information 114a in the WS work memory 114 in accordance with an instruction from the operation management unit 102.
  • the object management unit 106 updates the content (description) of the WS information 114 a stored in the WS work memory 114 in accordance with an instruction from the operation management unit 102.
  • the synchronization management unit 116 communicates with other client devices CL periodically or whenever some event occurs, and updates (synchronizes) the WS information 114a in the WS work memory 114.
  • the view management unit 104 is based on information included in the view range specified by the user among the information defined in the WS information 114a stored in the WS work memory 114 in accordance with an instruction from the operation management unit 102. Then, drawing processing (rendering processing) is performed. It should be noted that a common view range may be displayed between the client devices CL sharing the same WS information 114a. In this case, it is preferable that the view management units 104 of the client device CL communicate with each other and also hold information indicating the view range in synchronization.
  • the WS input / output unit 112 reads the WS information 120a stored in the WS storage unit 120 in accordance with an instruction from the operation management unit 102, or stores the WS information 114a stored in the WS work memory 114 in the WS storage unit 120.
  • the stored WS information 120a is updated.
  • the WS storage unit 120 stores the WS information 120a in a nonvolatile manner, and continuously holds the WS information 120a even after an application that provides a work space is shut down.
  • the tray management unit 108 creates personal tray information 114b in the WS work memory 114 in accordance with an instruction from the operation management unit 102, and further updates the contents of the personal tray information 114b as appropriate. Further, the tray management unit 108 creates the shared tray information 114c in the WS work memory 114 in accordance with the instruction from the operation management unit 102, and further updates the contents of the shared tray information 114c as appropriate.
  • server SRV includes WS work memory 214 and synchronization management unit 216 as its control structure.
  • the WS work memory 214 stores WS information 214a for providing a work space and shared tray information 214c for providing a tray function.
  • the WS information 214a and the shared tray information 214c are synchronized with the WS information 114a and the shared tray information 114c shown in FIG.
  • the synchronization management unit 216 mediates synchronization processing between the client devices CL. More specifically, the synchronization management unit 216 stores the change in the WS work memory 214 when any of the WS information 114a and the shared tray information 114c is changed in any of the client devices CL. Is reflected in the current WS information 214a and the shared tray information 214c. Further, the synchronization manager 216 distributes the changed WS information 214a and shared tray information 214c to the other client devices CL, respectively. By this series of processing, synchronization processing between the client devices CL is realized.
  • the outline of the synchronization processing described above is that synchronization is established between WS information 114a held by each of client devices CL1 to CLN and WS information 214a held by server device SRV, Synchronization is taken between the shared tray information 114c held by each of the client devices CL1 to CLN and the shared tray information 214c held by the server device SRV.
  • the personal tray information 114b held by each of the client devices CL1 to CLN is not synchronized with any of the other client devices CL and the server device SRV.
  • the personal tray information 114b is used exclusively for the user who uses the client device CL, and the shared tray information 114c is common to all the client devices CL and the server device SRV that constitute the information processing system. Used for.
  • the user can perform intelligent creation work according to the situation. More specifically, by using the tray function provided based on the personal tray information 114b, the user can use his / her own mind and use the tray function provided based on the shared tray information 114c. As a result, users who use a plurality of client devices CL can collaborate on ideas.
  • FIG. 20 shows an example of the contents of the tray information according to the first embodiment of the present invention.
  • FIG. 21 is a diagram showing an example of the contents of the WS information 114a reflecting the contents of the tray information shown in FIG.
  • identification information for specifying the entity object is held in association with the alias object.
  • the tray management unit 108 refers to the WS information 114a when referring to the WS information 114a when displaying the contents on the selected tray in order to notify the user of the state of the reference destination entity object. Get the attributes about. Then, the alias object is displayed according to the acquired attribute. Also, the tray management unit 108 refers to the WS information 114a periodically or every time an event occurs, and if the attribute of the reference object is changed, the display of the alias object is changed. Update the display according to.
  • the user can easily recognize which entity object on the workspace is associated with each alias object selected on the selection tray.
  • an instruction is given to reflect any changes made to the selected alias object on the selection tray, whether or not the reflection processing has been executed correctly and which change contents are on the workspace. It can be easily confirmed whether it is reflected.
  • the display mode including the size of the actual object on the workspace may be applied as it is, or the size may be changed at a predetermined enlargement / reduction ratio or set to a predetermined fixed size.
  • the size may be changed so that Alternatively, if it can be determined that the entity object on the workspace can be identified and the status can be confirmed based on the shape and decoration alone, only the shape and decoration of the alias object can be displayed or displayed on the workspace.
  • the alias object on the selection tray is limited to some attributes so that the decoration and the pattern, image, etc. that are the contents of the entity object do not correspond (for example, the interior of the alias is filled). You may make it express. How to display the alias object may be set in advance by the tray management unit 108 or may be set each time according to the user's designation.
  • the tray management unit 108 updates the personal tray information 114b according to the content of the user performing a change operation on the alias object on the selected tray. For example, in FIG. 13F described above, the background color of the alias object ALS1 is changed to “yellow” and the shape thereof is changed to “ellipse”. The contents of the personal tray information 114b corresponding to the alias object ALS1 are shown in FIG.
  • descriptions 352, 353, and 354 are added to the personal tray information 114b.
  • the description 352 specifies the background color when the corresponding alias object ALS1 is displayed. That is, the background color ("yellow” indicating yellow in the case of FIG. 20B) is specified by the ⁇ bg_color> tag and the ⁇ / bg_color> tag.
  • the description 353 specifies the shape when the corresponding alias object ALS1 is displayed. That is, the shape (“ellipse” indicating an ellipse in the case of FIG. 20B) is specified by the ⁇ shape> tag and the ⁇ / shape> tag.
  • the tray management unit 108 manages the change contents in the personal tray information 114b.
  • the data is output to the object management unit 106 via the unit 102. That is, the tray management unit 108 outputs the contents of the descriptions 352 and 353 shown in FIG. 20B together with the identification number (id) of the reference destination entity object to the object management unit 106.
  • the object management unit 106 updates the description of the entity object having the specified identification number among the contents included in the WS information 114a in accordance with the change contents received from the tray management part 108.
  • FIG. 21 shows an example of the WS information 114a reflecting the change contents shown in FIG.
  • the tray management unit 108 updates the content of the personal tray information 114b to the content shown in FIG. That is, since the change content is reflected in the entity object that is the reference destination of the alias object, it is only necessary to display the alias object with reference to the entity object in which the change content is reflected.
  • FIG. 22 is a diagram showing a description example of tray information according to the first embodiment of the present invention.
  • the contents as shown in FIG. 22 (a) are added. . That is, on the selected tray, the linking LNK itself is newly generated as a new object.
  • the ⁇ object id> tag defines a new object having an identification number “5”.
  • the line type used for the linking LNK in the case of FIG. 22A, “arrow” indicating a unidirectional arrow) is defined by the ⁇ type> tag and the ⁇ / type> tag. It is specified.
  • FIG. 22B shows a description example in which the character “ABC” added on the selection tray is blinked as another decoration form. That is, in the example shown in FIG. 22B, characters to be blinked are designated in the ⁇ blink> tag and the ⁇ / blink> tag.
  • tags that are standardized as HTML format can be used in addition to tags that are arbitrarily defined according to the XML format. .
  • each user can freely select a display method that he / she feels, for example, “warning”.
  • each client device CL can be used for the feeling of the user who uses the client device CL. It will be displayed with a combined decoration, which is preferable.
  • the personal tray information 114b shown in FIG. 20B includes a description 354 for providing a preview function.
  • “NULL” which means that no operation is performed is described as an initial value.
  • FIG. 20C shows a state in which this command line has been input.
  • FIG. 20C includes a description 354A in which a command line corresponding to the descriptions 352 and 353 in FIG. 20B is inserted.
  • a command is described such as “command” + “id of the target entity object” + “attribute value after change”.
  • “change_bg_color” is a command for changing the background color
  • “4” is an identification number (id) that identifies the target entity object
  • “yellow” is The background color after the change.
  • the tray management unit 108 notifies the view management unit 104 that the preview function has been designated. Then, the view management unit 104 refers to the WS information 114a, changes the display attribute in accordance with the command line, and renders it. Note that the view management unit 104 only displays a change according to the command line, and the actual WS information 114a is not changed until the change is instructed by the user.
  • FIG. 23A to FIG. 23C are flowcharts showing a processing procedure related to providing a work space according to the first embodiment of the present invention.
  • Each step shown in FIGS. 23A to 23C is typically performed by the CPU 2 executing a program. That is, it is executed by functions corresponding to the respective units shown in FIG. It is assumed that the workspace has already been created.
  • the synchronization management unit 116 receives the WS information 114a stored in the WS work memory 114 of the own device from the server SRV (or another client device CL). It is determined whether or not the WS information 114a newer than the last update time has been received (step S100). If the WS information 114a newer than the last update time has not been received (NO in step S100), the process proceeds to step S108.
  • the synchronization management unit 116 overwrites the received WS information 114a in the WS work memory 114 of the own device (step S102). ).
  • the view management unit 104 updates the contents of the workspace to be displayed based on the updated WS information 114a (step S104). That is, the display of the display window 150 is updated.
  • the tray management unit 108 updates the contents of the selected tray (individual) and the selected tray (shared) to be displayed (step S106). That is, the display of display window 170 and display window 180 is updated. Then, the process proceeds to step S108.
  • step S108 the synchronization management unit 116 transmits the shared tray information that is newer than the last update time of the shared tray information 114c stored in the WS work memory 114 of the own device from the server SRV (or another client device CL). It is determined whether or not 114c is received. If shared tray information 114c that is newer than the last update time has not been received (NO in step S108), the process proceeds to step S114.
  • the synchronization management unit 116 overwrites the received shared tray information 114c in the WS work memory 114 of the own device (Ste S110). Subsequently, the tray management unit 108 updates the contents of the selected tray (shared) to be displayed (step S112). That is, the display of the display window 180 is updated. Then, the process proceeds to step S114.
  • step S114 the operation management unit 102 determines whether a new creation / change / deletion of the entity object has been operated by the user. If new creation / change / deletion of the entity object has not been operated by the user (NO in step S114), the process proceeds to step S120.
  • step S114 when a new creation / change / deletion of a real object is operated by the user (YES in step S114), the operation management unit 102 gives an instruction corresponding to the user operation to the object management unit 106.
  • the object management unit 106 changes the WS information 114a stored in the WS work memory 114 (step S116).
  • the synchronization management unit 116 transmits the updated WS information 114a of the own device to the server device SRV (or another client device CL) (step S118). Then, the process proceeds to step S120.
  • step S120 the operation management unit 102 determines whether the view change is operated by the user. If the view change has not been operated by the user (NO in step S120), the process proceeds to step S124.
  • the operation management unit 102 gives an instruction corresponding to the user operation to the view management unit 104.
  • the view management unit 104 displays information based on information included in the view range specified by the user among the information defined in the WS information 114a stored in the WS work memory 114.
  • the contents of the workspace to be updated are updated (step S122). That is, the display of the display window 150 is updated. Then, the process proceeds to step S124.
  • step S124 the operation management unit 102 determines whether or not the activation of the tray function has been operated by the user. If validation of the tray function has not been operated by the user (NO in step S124), the process proceeds to step S128.
  • the operation management unit 102 gives an instruction according to the user operation to the tray management unit 108.
  • the tray management unit 108 displays the selected tray (individual) or the selected tray (shared) (step S126). That is, the display window 170 or the display window 180 is newly generated. Then, the process proceeds to step S128.
  • step S1208 the operation management unit 102 determines whether or not an operation of dropping any entity object on the workspace onto the selection tray (person) is performed. If any entity object on the workspace has not been dropped onto the selected tray (individual) (NO in step S128), the process proceeds to step S134.
  • the operation management unit 102 instructs the tray management unit 108 to perform a user operation. Give instructions accordingly.
  • the tray management unit 108 adds the contents associated with the dropped entity object among the contents described in the WS information 114a to the personal tray information 114b (step S130).
  • the tray management unit 108 newly creates the personal tray information 114b.
  • the tray management unit 108 updates the contents of the selected tray (individual) to be displayed (step S132). That is, the display of the display window 170 is updated. Then, the process proceeds to step S130.
  • step S134 the operation management unit 102 determines whether or not an operation of dropping any entity object on the workspace onto the selection tray (shared) is performed. If any entity object on the workspace has not been dropped onto the selected tray (shared) (NO in step S134), the process proceeds to step S142.
  • the operation management unit 102 instructs the tray management unit 108 to perform a user operation. Give instructions accordingly.
  • the tray management unit 108 adds the contents associated with the dropped entity object among the contents described in the WS information 114a to the shared tray information 114c (step S136).
  • the tray management unit 108 newly creates the shared tray information 114c.
  • the tray management unit 108 updates the contents of the selected tray (shared) to be displayed (step S138).
  • step S140 the display of the display window 170 is updated. Further, the synchronization management unit 116 transmits the updated shared tray information 114c of the own device to the server device SRV (or another client device CL) (step S140). Then, the process proceeds to step S142.
  • step S142 the operation management unit 102 determines whether or not the user has changed or deleted the alias object on the selection tray (individual). If the change / deletion of the alias object on the selection tray (individual) has not been operated by the user (NO in step S142), the process proceeds to step S148.
  • the operation management unit 102 causes the tray management unit 108 to respond to the user operation. Give instructions.
  • the tray management unit 108 changes the personal tray information 114b stored in the WS work memory 114 (step S144).
  • the tray management unit 108 updates the contents of the selected tray (individual) to be displayed (step S146). That is, the display of the display window 170 is updated. Then, the process proceeds to step S148.
  • step S148 the operation management unit 102 determines whether or not the user has changed or deleted the alias object on the selected tray (shared). If the alias object on the selected tray (shared tray) has not been changed or deleted by the user (NO in step S148), the process proceeds to step S156.
  • the operation management unit 102 causes the tray management unit 108 to respond to the user operation. Give instructions.
  • the tray management unit 108 changes the shared tray information 114c stored in the WS work memory 114 (step S150).
  • the tray management unit 108 updates the contents of the selected tray (shared) to be displayed (step S152). That is, the display of the display window 180 is updated.
  • the synchronization management unit 116 transmits the updated shared tray information 114c of the own device to the server device SRV (or another client device CL) (step S154). Then, the process proceeds to step S156.
  • step S156 the operation management unit 102 determines whether the preview of the alias object on the selection tray (individual) has been operated by the user. If the preview of the alias object on the selection tray (individual) has not been operated by the user (NO in step S156), the process proceeds to step S162.
  • the operation management unit 102 gives an instruction corresponding to the user operation to the tray management unit 108.
  • the tray management unit 108 changes the content of the ⁇ preview> tag of the personal tray information 114b stored in the WS work memory 114 (step S158). Then, the tray management unit 108 notifies the view management unit 104 of the content change of the ⁇ preview> tag of the personal tray information 114b.
  • the view management unit 104 refers to the WS information 114a, changes the display attribute according to the content of the ⁇ preview> tag of the personal tray information 114b, and then displays the content of the workspace to be displayed. Update (step S160). That is, the display of the display window 150 is updated. Then, the process proceeds to step S162.
  • step S162 the operation management unit 102 determines whether the preview of the alias object on the selected tray (shared) has been operated by the user. If the preview of the alias object on the selection tray (share) is not operated by the user (NO in step S162), the process proceeds to step S170.
  • the operation management unit 102 gives an instruction corresponding to the user operation to the tray management unit 108.
  • the tray management unit 108 changes the contents of the ⁇ preview> tag of the shared tray information 114c stored in the WS work memory 114 (step S164). Then, the tray management unit 108 notifies the view management unit 104 of the content change of the ⁇ preview> tag of the shared tray information 114c.
  • the view management unit 104 refers to the WS information 114a, changes the display attribute according to the content of the ⁇ preview> tag of the shared tray information 114c, and then displays the content of the workspace to be displayed. Update (step S166). That is, the display of the display window 150 is updated. Furthermore, the synchronization management unit 116 transmits the updated shared tray information 114c of the own device to the server device SRV (or another client device CL) (step S168). Then, the process proceeds to step S170.
  • step S170 it is determined whether or not the reflection of the change contents for the alias object on the selected tray (individual) on the entity object is operated by the user. If the change content for the alias object on the selection tray (individual) is not reflected on the entity object by the user (NO in step S170), the process proceeds to step S184.
  • the operation management unit 102 notifies the tray management unit 108 to the user. Give instructions according to the operation.
  • the tray management unit 108 outputs the changed contents in the personal tray information 114b stored in the WS work memory 114 to the object management unit 106 (step S172).
  • the object management unit 106 updates the description of the entity object having the specified identification number among the content included in the WS information 114a (step S174).
  • the view management unit 104 cancels the change of the display attribute accompanying the preview instruction, and updates the contents of the workspace to be displayed based on the updated WS information 114a (step S176). That is, the display of the display window 150 is updated.
  • the tray management unit 108 resets the contents of the ⁇ preview> tag of the personal tray information 114b stored in the WS work memory 114 (step S178) and updates the contents of the selected tray (individual) to be displayed ( Step S180). That is, the display of the display window 170 is updated.
  • the synchronization management unit 116 transmits the updated WS information 114a of the own device to the server device SRV (or another client device CL) (step S182). Then, the process proceeds to step S184.
  • step S184 it is determined whether or not the reflection of the change contents for the alias object on the selection tray (shared) on the entity object has been operated by the user. If the user has not manipulated the change contents of the alias object on the selection tray (shared) to reflect the actual object (NO in step S184), the process returns.
  • the operation management unit 102 notifies the tray management unit 108 to the user. Give instructions according to the operation.
  • the tray management unit 108 outputs the changed contents in the shared tray information 114c stored in the WS work memory 114 to the object management unit 106 (step S186).
  • the object management unit 106 updates the description of the entity object having the specified identification number among the content included in the WS information 114a (step S188).
  • the view management unit 104 cancels the display attribute change accompanying the preview instruction, and then updates the contents of the workspace to be displayed based on the updated WS information 114a (step S190). That is, the display of the display window 150 is updated.
  • the tray management unit 108 resets the contents of the ⁇ preview> tag of the shared tray information 114c stored in the WS work memory 114 (step S192) and updates the contents of the selected tray (shared) to be displayed (step S192). Step S194). That is, the display of the display window 170 is updated.
  • the synchronization management unit 116 transmits the updated WS information 114a and shared tray information 114c of the own device to the server device SRV (or another client device CL) (step S196). Then, the process returns.
  • FIGS. 24A to 24C are sequence diagrams showing a processing procedure related to providing a work space according to the first embodiment of the present invention.
  • a partner to which a device in which some change has occurred should be notified.
  • the server device SRV may periodically check for updates.
  • the contents and display state of the actual object associated with the alias object can be visually recognized even during the selection operation of the alias object or in the selected state.
  • multiple locations are selected simultaneously, batch conversion, an overview of the selected location and the overall positional relationship, and status confirmation after editing for the selected location Can be facilitated.
  • the alias object added to the selection tray (shared) is shared with the other client device CL (user), and the alias object added to the selection tray (individual). Is displayed only on the client device CL used by the user. Therefore, when working in a group of a plurality of members, only necessary alias objects can be arbitrarily shared according to the work process and situation, the type of target entity object, and the like.
  • Embodiment 1 of the present invention it is not necessary for one user to select all objects, so even if the workspace is too large, When a plurality of users share and select an object, it is possible to suppress the occurrence of problems such as omissions in selection targets and the time required for selection.
  • work such as arranging closely related objects close to each other on the selection tray or arranging them with the same display size is arranged in the workspace. This can be done without affecting the upper entity object.
  • a work result on the selection tray can be used as it is, and a target object and edit contents can be subsequently determined and operated.
  • the editing content for such an alias object can be easily reflected in the associated entity object.
  • the operation for further narrowing down the alias objects is performed after checking the selection state and arrangement state of the plurality of alias objects existing on the selection tray, and the necessary aliases are also displayed.
  • An operation for categorizing (classifying) objects can be easily performed. For example, when there are four alias objects A, B, C, and D on the selection tray, the display mode of the alias object A is set to border / bold / enlarged, and the alias object B is set to The display mode can be set to border / enlarge, the display mode can be set to bold / enlarge for the alias object C, and the display mode can be set to bold only for the alias object D.
  • the alias objects A and B are selected to indicate “Bordering”, and then the alias objects A and C are selected to indicate “Bold”.
  • all of the alias objects A to D are selected, and “enlargement” is instructed. Therefore, even when a complex operation is instructed, it can be performed efficiently.
  • FIG. 25 is a schematic configuration diagram of an information processing system for providing a work space according to the second embodiment of the present invention.
  • the information processing system includes a plurality of client devices CL1 to CLN which are a plurality of information processing devices connected to each other via a network NW so as to be able to perform data communication. That is, in the information processing system according to the present embodiment, there is no server device, and each client device CL exchanges data directly with all other client devices CL to perform synchronization processing, etc. To complete. Since other configurations are the same as those in the first embodiment, detailed description will not be repeated.
  • FIG. 26 is a schematic diagram showing data exchange in the second embodiment of the present invention.
  • the outline of the synchronization process according to the present embodiment is as follows: WS information 114a held by each of client devices CL1 to CLN and WS information 114a held by another client device CL.
  • WS information 114a held by each of client devices CL1 to CLN and WS information 114a held by another client device CL.
  • shared tray information 114c held by each of the client devices CL1 to CLN and the shared tray information 114c held by another client device CL. It is done.
  • timing of data transmission between client devices CL, other client devices CL to be transmitted, transmission direction, transmission contents (whether or not all transmissions are transmitted), information processing system configuration and performance It can be arbitrarily set according to the above.
  • Embodiment 2 of the present invention in addition to the operations and effects in Embodiment 1 described above, the following operations and effects can be obtained. That is, according to the second embodiment of the present invention, since a peer-to-peer configuration is adopted, even in a place where a server cannot be connected, such as outside the company, only the terminals of members who need to share work are connected. Can work together.
  • each of the client device CL and the server device SRV has personal tray information for providing a personal tray function, and shared tray information for providing a shared tray function.
  • An example of a configuration in which each of them is held separately is illustrated.
  • the third embodiment exemplifies a configuration that defines whether the object is for personal use or shared for each alias object described in the tray information.
  • FIG. 27 is a schematic diagram showing a control structure realized by the client device CL according to the third embodiment of the present invention.
  • the control structure shown in FIG. 27 is a control structure realized by the client device CL according to the first embodiment shown in FIG. 17 and is replaced with a form in which the personal work tray information 114b and the shared tray information 114c are held in the WS work memory 114.
  • the tray information 114d is retained. Others are the same as in FIG. 17, and thus detailed description will not be repeated.
  • tray function according to the present embodiment is intended to be used by each individual member in alias object units, or to be shared by members belonging to the same group. Can be set.
  • FIG. 28 is a diagram for explaining an operation in the tray function on the client device CL according to the third embodiment of the present invention.
  • FIG. 29 is a diagram showing an example of the contents of the tray information corresponding to FIG.
  • the tray function according to the present embodiment is activated when the user selects the “display” button displayed on the upper part of the display window 150 with the cursor CRS or the like, similarly to the procedure shown in FIG. By such an operation, a display window 170A indicating the selected tray is newly generated.
  • the selection tray that appears as the display window 170A serves both for personal use and for sharing.
  • the object on the workspace is selected, the object is stored by the pull-down menu, and the drop destination is specified with the destination to be dropped.
  • Another method such as specifying a command may be used. In other words, any method may be employed as long as an object on the designated workspace can be dropped at a designated position on the selection tray.
  • the alias object on the selection tray exists independently of the entity object on the workspace. Therefore, in principle, even if the user performs an operation such as moving, editing, or deleting an alias object on the selection tray, the actual object on the workspace is not affected. Since the other points are the same as in the first embodiment, detailed description will not be repeated.
  • the generated alias object has a personal mode (non- Shared mode). Then, the user of the client device CL can selectively set the alias object that should be shared to the sharing mode.
  • the user of the client device CL1 arranges the displayed cursor CRS on the alias object ALS2 on the selection tray, and then performs a click operation (typically)
  • a dialog 190 for switching between the shared mode and the non-shared mode is displayed.
  • the designated alias object ALS2 is switched from “non-shared mode” to “shared mode”.
  • the alias objects ALS1 and ALS3 that are maintained in the “non-shared mode” are not displayed on the selection tray in each of the other client apparatuses CL2 to CLN.
  • each user who uses the client device CL can realize an intellectual creation work by a plurality of users by setting an alias object that he / she thinks should be shared in a group of a plurality of members to “shared mode”. .
  • Alias objects ALS1, ALS2, and ALS3 as shown in FIG. 28A are defined by tray information as shown in FIG. That is, descriptions 321, 322, and 323 correspond to alias objects ALS1, ALS2, and ALS3, respectively.
  • Descriptions 321 and 323 that define the alias objects ALS1 and ALS3 maintained in the “non-shared mode” are basically the same as the contents of the tray information in the first embodiment.
  • a ⁇ share_mode> tag and a ⁇ / share_mode> tag indicating the “shared mode” are embedded. That is, the value of “ON” is defined by being surrounded by these ⁇ share_mode> tags and ⁇ / share_mode> tags, so that the corresponding alias object is interpreted as being in “shared mode”.
  • the tray management unit 108 (FIG. 27) of each client device CL describes “ ⁇ share_mode> ON ⁇ / share_mode>” in the corresponding description.
  • the description “ ⁇ share_mode> ON ⁇ / share_mode>” is deleted from the corresponding description.
  • a ⁇ share_mode> tag and a ⁇ / share_mode> tag are embedded in the description corresponding to each alias object, and the value is set to “ON” in accordance with the designation of “shared mode” or “non-shared mode”. Alternatively, it may be rewritten as “OFF”.
  • FIG. 30 is a sequence diagram showing a processing procedure related to the tray function according to the third embodiment of the present invention.
  • Each process shown in FIG. 30 is typically performed by the CPU 2 executing a program. That is, it is executed by functions corresponding to the respective units shown in FIG.
  • operation management unit 102 causes tray management unit 108 to respond to the user operation. Give instructions.
  • the tray management unit 108 adds the contents associated with the dropped entity object among the contents described in the WS information 114a to the tray information 114d (sequence SQ202).
  • the tray management unit 108 newly creates the tray information 114d.
  • the tray management unit 108 updates the contents of the selected tray to be displayed (sequence SQ204).
  • the operation management unit 102 gives an instruction corresponding to the user operation to the tray management unit 108.
  • the tray management unit 108 updates the tray information 114d corresponding to the designated alias object on the selected tray. That is, the tray management unit 108 adds or deletes the description ⁇ share_mode> ON ⁇ / share_mode> as shown in FIG.
  • the synchronization management unit 116 transmits the tray information changed to the shared mode among the descriptions of the alias object defined in the updated tray information 114d of the own device to the server SRV (sequence SQ210). That is, not all the contents of the tray information 114d but only information defining the alias object set to the sharing mode is transmitted.
  • the synchronization management unit 216 (FIG. 18) of the server device SRV updates the tray information stored in the WS work memory 214 of the own device (sequence). SQ212). Furthermore, synchronization management unit 216 (FIG. 18) of server SRV transmits the tray information stored in WS work memory 214 of its own device to other client devices CL2 to CLN (sequence SQ214).
  • the synchronization management unit 116 of the client devices CL2 to CLN updates the tray information stored in the WS work memory 214 of the own device (sequence SQ216).
  • the tray management unit 108 newly creates the tray information 114d.
  • the tray management unit 108 updates the contents of the selected tray to be displayed (sequence SQ218).
  • the alias object set in the shared mode in any client device CL is shared with the other client devices CL2 to CLN.
  • Embodiment 3 of the present invention in addition to the operations and effects in Embodiment 1 described above, the following operations and effects can be obtained. That is, according to the third embodiment of the present invention, the “shared mode” and the “non-shared mode” can be set on a per-alias object basis, so that it is necessary to change from the “shared mode” to the “non-shared mode”. In some cases, or when it is necessary to change from the “non-shared mode” to the “shared mode”, these changes can be performed with a simpler operation.
  • the processing time and The amount of communication data can be reduced.
  • FIG. 31 is a schematic diagram showing a control structure realized by the client device CL according to the fourth embodiment of the present invention.
  • the control structure shown in FIG. 31 is the same as the control structure realized by the client device CL according to the first embodiment shown in FIG. 17, but the user authentication unit 134 and the user management unit 132 are added, and the WS work memory 114 is personalized.
  • the form for holding the tray information 114b and the shared tray information 114c a form for holding the tray information 114e is adopted.
  • the user authentication unit 134 authenticates a user who uses the workspace according to the present embodiment in the corresponding client device CL. Specifically, the user authentication unit 134 prompts the user who requests use of the workspace to input an ID and a password. When the user inputs an ID and password, user authentication is performed with reference to a predetermined database. If the user authentication is successful, the user is allowed to use the workspace and holds the user name (user ID) currently in use (logged in).
  • the configuration for performing user authentication is a well-known technique and will not be described in further detail. In the present embodiment, it is only necessary that the user who uses each client device CL can be specified, and therefore authentication using a password is not necessarily required.
  • the user management unit 132 manages a user who created each object (alias object) on the selection tray, a user who is allowed to share each alias object, and the like based on the authentication result in the user authentication unit 134.
  • tray function according to the present embodiment is intended to be used by each individual user on an alias object basis, or to be shared with other users. Can be set. Furthermore, with respect to an alias object intended to be shared with other users, it can be specified with which user the alias object is shared.
  • FIG. 32 is a diagram for describing an operation in the tray function on the client devices CL1 to CL3 according to the fourth embodiment of the present invention.
  • FIG. 32A shows an example of a display window 170B that is a selection tray in the client device CL1.
  • the user (ID is “tanaka”) authenticated by the user authentication unit 134 is logged in to the client device CL1.
  • FIG. 32B shows an example of a display window 170B which is a selection tray in the client device CL2.
  • the user authenticated by the user authentication unit 134 ID is “hayashi”) is logged in to the client device CL2.
  • FIG. 32 (c) shows an example of a display window 170B which is a selection tray in the client device CL3.
  • the user (ID is “suzuki”) authenticated by the user authentication unit 134 is logged in to the client device CL3.
  • the tray function according to the present embodiment is activated when the user selects the “display” button displayed at the top of the display window 150 with the cursor CRS or the like, similarly to the procedure shown in FIG. By such an operation, a display window 170B indicating the selected tray is newly generated.
  • the selection tray that appears as the display window 170B serves both for personal use and for sharing.
  • each user who has logged in to the client device CL drags and drops an arbitrary real object on the workspace to the display window 170B, so that it is displayed on the selection tray.
  • Any alias object can be added to.
  • the object on the workspace is selected, the object is stored by the pull-down menu, and the drop destination is specified with the destination to be dropped.
  • Another method such as specifying a command may be used. In other words, any method may be employed as long as an object on the designated workspace can be dropped at a designated position on the selection tray.
  • the essence of the added alias object is the same as that in the first embodiment.
  • the alias object added in this way is set to the personal mode, that is, sharing with other users is disabled as an initial value.
  • FIG. 32A a case where the user “tanaka” desires to share the alias object ALS1 with the other two users (“hayashi” and “suzuki”).
  • the user “tanaka” places a cursor CRS to be displayed on the alias object ALS1 on the selection tray and then performs a click operation (typically right click) on the mouse.
  • a dialog 196A for designating a public permission destination is displayed.
  • This dialog 196A designates another user who should share the target alias object. More specifically, the dialog 196A displays a list of users who are logged in to other client devices CL2 to CLN. The user can arbitrarily select a partner with whom the alias object should be shared among the displayed users.
  • FIG. 32 (a) it is assumed that the other two users ("hayashi” and “suzuki") are both designated. Then, as shown in FIGS. 32 (b) and 32 (c), the target alias object ALS1 is the client device CL2 to which “hayashi” and “suzuki” designated as public permission destinations are respectively logged in. And displayed on the selection tray of CL3.
  • FIG. 32C consider a case where the user “suzuki” desires to share the alias object ALS2 only with the user “tanaka”.
  • the user “suzuki” places a cursor CRS to be displayed on the alias object ALS2 on the selection tray, and then performs a click operation (typically right click) on the mouse.
  • a click operation typically right click
  • a dialog 196B for designating a public permission destination is displayed.
  • only “tanaka” is designated as a public permission destination for the alias object ALS2 targeted for the user “suzuki”.
  • FIG. 32C consider a case where the user “suzuki” desires to share the alias object ALS2 only with the user “tanaka”.
  • the user “suzuki” places a cursor CRS to be displayed on the alias object ALS2 on the selection tray, and then performs a click operation (typically right click) on the mouse.
  • the target alias object ALS2 is displayed in the selection tray of the client device CL1 that is the login destination of “tanaka” designated as the public permission destination.
  • FIG. 32B it is not displayed in the selection tray of the client device CL2 that is the login destination of “hayashi” that is not designated as the public permission destination.
  • FIG. 32C consider a case where the user “suzuki” wants to use the alias object ALS3 for his / her own examination. In such a case, the user “suzuki” does not perform any operation on the alias object ALS3 on the selection tray. Then, as shown in FIGS. 32A and 32B, for this alias object ALS3, the selection of other client devices CL excluding the client device CL3 that is the login destination of the user “suzuki” It is not displayed on the tray.
  • FIG. 33 is a diagram showing an example of the contents of the tray information corresponding to FIG.
  • FIG. 33A shows an example of tray information held in the client device CL1 that is the login destination of the user “tanaka”.
  • FIG. 33B shows an example of tray information held in the client device CL2 that is the login destination of the user “hayashi”.
  • FIG. 33C shows an example of tray information held by the client device CL3 that is the login destination of the user “suzuki”.
  • ”. In the description 331 shown in FIG. 33B, “hayashi” and “suzuki” are defined by being surrounded by an ⁇ access_flag > tag and a ⁇ / access_flag> tag in accordance with a user operation.
  • the alias object ALS2 is defined by a description 332 that exists in common in FIGS. 33 (a) and 33 (c).
  • the contents of the description 332 are the same as the contents of the description 331 corresponding to the alias object ALS1 described above.
  • the alias object ALS3 that is not shared with any other user is defined by the description 333 existing in FIG.
  • the tray management unit 108 (FIG. 31) of each client device CL can specify the public permission destination when the user sets to share any alias object with a specific user.
  • the corresponding descriptions are updated sequentially.
  • Embodiment 4 of the present invention in addition to the operations and effects in Embodiments 1 and 3 described above, the following operations and effects can be obtained. That is, according to the fourth embodiment of the present invention, whether or not to share in alias object units can be set, and for the alias object set to be shared, the sharing destination (partner to be shared) is designated. Can do. As a result, for example, when a plurality of subgroups are provided in the same group consisting of a plurality of members, an alias object is shared only among members belonging to the corresponding subgroup. Can be adopted. Alternatively, the present invention can be applied to a usage pattern in which a final decision is made between leaders of a plurality of subgroups.
  • the program according to the present invention may be a program module that is provided as a part of a computer operating system (OS) and that calls necessary modules in a predetermined arrangement at a predetermined timing to execute processing. .
  • OS computer operating system
  • the program itself does not include the module, and the process is executed in cooperation with the OS.
  • a program that does not include such a module can also be included in the program according to the present invention.
  • the program according to the present invention may be provided by being incorporated in a part of another program. Even in this case, the program itself does not include the module included in the other program, and the process is executed in cooperation with the other program. Such a program incorporated in another program can also be included in the program according to the present invention.
  • the provided program product is installed in a program storage unit such as a hard disk and executed.
  • the program product includes the program itself and a storage medium in which the program is stored.
  • part or all of the functions realized by the program according to the present invention may be configured by dedicated hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

 情報処理システムは、互いにデータ通信可能に接続された複数の情報処理装置(CL)を有しており、複数のユーザによるアクセス可能な仮想作業空間を提供する。各情報処理装置は、保持手段(114)と、第1表示手段(104,106)と、第2表示手段(104,108)と、同期手段(116)とを含む。保持手段は、仮想作業空間と仮想作業空間に含まれる第1オブジェクトとを定義する第1情報を保持する。ここで、第1情報は、他の情報処理装置との間で同期される。第1表示手段は、第1情報に基づいて、仮想作業空間の一部または全部の内容をユーザに向けて表示する。第2表示手段は、ユーザ操作に応答して、仮想作業空間に含まれる第1オブジェクトに関連付けられ、かつ第1オブジェクトとは独立して変更可能な第2オブジェクトを表示する。同期手段は、複数の情報処理装置の間で共有すべき旨の指示に応答して、指示された第2オブジェクトを定義する第2情報を同期して保持する。

Description

情報処理システム、情報処理装置および情報処理方法
 この発明は、複数のユーザがインタラクティブに作業をすることが可能な仮想作業空間を提供する情報処理システム、情報処理装置および情報処理方法に関する。
 近年、複数のユーザによる知的創造作業を支援するために仮想作業空間(以下、「ワークスペース」とも称す。)が提案されている(たとえば、特開平10-051581号公報や特開平10-126758号公報など)。
 このワークスペースとは、仮想的なホワイトボード類似の空間であり、ユーザは、この空間上において、手書き文字、画像、写真などの題材(以下、「オブジェクト」とも称す。)をインタラクティブに入力したり操作したりすることができる。このようなワークスペースによって、個人またはグループ内での知的創造作業(考えを練ったり、他メンバーとコミュニケーションをとったりする)が促進される。
 ところで、ワークスペースでは、物理的なホワイトボードやメモ帳などとは異なり、実際にユーザが閲覧する範囲より広い範囲の作業空間を提供することができる。なお、ユーザが閲覧する範囲は、必要に応じて自在に拡大もしくは縮小できるので、狭い領域に対しても書き込みなどを行なうことができる。そのため、広大な範囲の作業空間であっても、ユーザはストレス無く作業を行なうことができる。
 このような知的創造作業の具体的な利用シーンとしては、ユーザが発想した題材を次々にオブジェクトとして入力し、これらの入力された多数のオブジェクトを分類(カテゴライズ)したり、互いに関連付けたりすることで、情報の整理を行ない新たな発想に繋げるという場合などが考えられる(典型的には、KJ法)。より具体的な手順としては、カテゴライズするためには、ユーザは、同一カテゴリーに属すると考えられるオブジェクト同士を近くに寄せたり、同一の表示属性をそれぞれのオブジェクトに付加(典型的には、同一色でそれぞれのオブジェクトを縁取り)したりする。また、オブジェクト同士を関連付けするために、同一カテゴリーに属する複数のオブジェクトからなるグループと、当該カテゴリーに属すると考えられるオブジェクトとの間を線で結び付ける。
特開平10-051581号公報 特開平10-126758号公報
 ところで、実際のワークスペースの使用形態を考えると、ワークスペースは、広大な空間のあちこちで様々なユーザが書き込みをするためのものなので、情報の整理をしようと思っても一人では効率的かつ適切にできない場合がある。そのため、複数のメンバーの間で分担して、それぞれのメンバーのもつ知識を活用して、情報の整理を行ないたいニーズがある。
 このような情報の整理は、ワークスペース上に配置されたオブジェクトを実際に確認したり、編集しながら(典型的には、オブジェクトにタグをつけたり、色を変更したり、グルーピングしたりするなど)、作業を行なうことで、より効率化できる。
 ワークスペース上に配置されているオブジェクトに対して、情報整理の作業のはじめから、編集などの操作を直接的に行なってしまうと、他のメンバーの作業に支障を生じるおそれがある。
 一方で、最終的には、他のメンバーとの間で、情報整理の結果を共有したいというニーズもある。
 このようなニーズを満たすワークスペースは、先行の技術では提案されていなかった。
 そこで、この発明は、かかる問題を解決するためになされたものであり、その目的は、ワークスペース上のオブジェクトに対して、各ユーザが他のユーザの作業に与える影響を少なくしつつ、情報整理の作業を行なうことができるとともに、情報整理の作業によって最終的に得られる作業結果を他のユーザとの間で容易に共有できる情報処理システム、情報処理装置、および情報処理方法を提供することである。
 この発明のある局面に従う情報処理システムは、複数のユーザによるアクセス可能な仮想作業空間を提供する。この情報処理システムは、互いにデータ通信可能に接続された複数の情報処理装置を含む。複数の情報処理装置の各々は、保持手段と、第1表示手段と、第2表示手段と、同期手段とを含む。保持手段は、仮想作業空間と仮想作業空間に含まれる第1オブジェクトとを定義する第1情報を保持する。ここで、第1情報は、他の情報処理装置との間で同期される。第1表示手段は、第1情報に基づいて、仮想作業空間の一部または全部の内容をユーザに向けて表示する。第2表示手段は、ユーザ操作に応答して、仮想作業空間に含まれる第1オブジェクトに関連付けられ、かつ第1オブジェクトとは独立して変更可能な第2オブジェクトを表示する。同期手段は、複数の情報処理装置の間で共有すべき旨の指示に応答して、指示された第2オブジェクトを定義する第2情報を同期して保持する。
 好ましくは、第1表示手段は、複数の情報処理装置の間で共有すべき第2オブジェクト用の第1領域と、複数の情報処理装置の間で共有すべきではない第2オブジェクト用の第2領域とを、仮想作業空間の一部または全部の内容の表示とは区別して表示する。同期手段は、第1領域に表示されている第2オブジェクトに対応する第2情報を同期して保持するとともに、第2領域に表示されている第2オブジェクトに対応する第2情報を同期しない。
 あるいは好ましくは、複数の情報処理装置の各々は、第2オブジェクト毎に、複数の情報処理装置の間で共有する第1モードと複数の情報処理装置の間で共有しない第2モードとのいずれかの設定を受付けるモード設定手段をさらに含む。同期手段は、第1モードに設定されている第2オブジェクトに対応する第2情報を同期して保持するとともに、第2モードに設定されている第2オブジェクトに対応する第2情報を同期しない。
 あるいは好ましくは、複数の情報処理装置の各々は、当該情報処理装置を使用するユーザを認証する認証手段と、第2オブジェクト毎に、共有を許可するユーザの設定を受付ける共有先設定手段とをさらに含む。同期手段は、第2オブジェクトについての共有を許可することが設定されたユーザが使用する情報処理装置との間で、第2オブジェクトに対応する第2情報を同期して保持する。
 好ましくは、第1情報は、第1オブジェクトに対応付けられた識別情報および第1オブジェクトの実体を定義する記述を含む。第2表示手段は、第1オブジェクトを特定するための識別情報を第2オブジェクトと対応付けて保持する手段を含む。
 好ましくは、第2表示手段は、ユーザ操作に応答して、第1オブジェクトとは独立して、第2オブジェクトの表示位置を変更する手段をさらに含む。
 好ましくは、第2表示手段は、ユーザ操作に応答して、第1オブジェクトとは独立して、第2オブジェクトの表示態様を変更する手段をさらに含む。
 好ましくは、第2表示手段は、複数の第2オブジェクトを並べて表示可能である。第2表示手段は、ユーザ操作に応答して、第2オブジェクト同士を関連付けるオブジェクトを追加する手段をさらに含む。
 好ましくは、複数の情報処理装置の少なくとも1つは、ユーザ操作に応答して、第2オブジェクトに対してなされた変更を第1オブジェクトに反映する反映手段をさらに含む。
 この発明の別の局面に従う情報処理装置は、仮想作業空間を提供する。この情報処理装置は、保持手段と、第1表示手段と、第2表示手段と、同期手段とを含む。保持手段は、仮想作業空間と仮想作業空間に含まれる第1オブジェクトとを定義する第1情報を保持する。ここで、第1情報は、他の情報処理装置との間で同期される。第1表示手段は、第1情報に基づいて、仮想作業空間の一部または全部の内容をユーザに向けて表示する。第2表示手段は、ユーザ操作に応答して、仮想作業空間に含まれる第1オブジェクトに関連付けられ、かつ第1オブジェクトとは独立して変更可能な第2オブジェクトを表示する。同期手段は、他の情報処理装置の間で共有すべき旨の指示に応答して、指示された第2オブジェクトを定義する第2情報を他の情報処理装置と同期して保持する。
 この発明のさらに別の局面に従う情報処理方法は、互いにデータ通信可能に接続された複数の情報処理装置を用いて、複数のユーザによるアクセス可能な仮想作業空間を提供する。この情報処理方法は、複数の情報処理装置の各々が、仮想作業空間と仮想作業空間に含まれる第1オブジェクトとを定義する第1情報を保持するステップと、複数の情報処理装置の各々が保持する第1情報を同期するステップと、複数の情報処理装置のうち1つの情報処理装置が、第1情報に基づいて、仮想作業空間の一部または全部の内容をユーザに向けて表示するステップと、当該情報処理装置が、ユーザ操作に応答して、仮想作業空間に含まれる第1オブジェクトに関連付けられ、かつ第1オブジェクトとは独立して変更可能な第2オブジェクトを表示するステップと、当該情報処理装置が、複数の情報処理装置の間で共有すべき旨の指示に応答して、指示された第2オブジェクトを定義する第2情報を他の情報処理装置との間で同期するステップとを含む。
 この発明によれば、第2オブジェクトを表示するための第2表示手段(典型的な実施の形態によれば、共有トレイ)を用いることで、ワークスペース上のオブジェクトに対して、各ユーザが他のユーザの作業に与える影響を少なくしつつ、情報整理の作業を行なうことができるとともに、情報整理の作業によって最終的に得られる作業結果を他のユーザとの間で容易に共有できる。
この発明の実施の形態1に従うワークスペースを提供するための情報処理システムの概略構成図である。 この発明の実施の形態1に従う情報処理装置の代表例であるパーソナルコンピュータの概略のハードウェア構成を示す模式図である。 この発明の実施の形態1に従うワークスペースの一例を模式的に示す図である。 図3に示すワークスペースに対応するワークスペース(WS)情報の内容の一例を示す図である。 この発明の実施の形態1に従うクライエント装置上における初期操作を説明するための図である。 この発明の実施の形態1に従うクライエント装置上のユーザインターフェイスの一例を示す図である。 この発明の実施の形態1に従うクライエント装置上における編集操作を説明するための図(その1)である。 この発明の実施の形態1に従うクライエント装置上における編集操作を説明するための図(その2)である。 この発明の実施の形態1に従うトレイ機能の説明の対象となるシーンにおけるワークスペースの一例を模式的に示す図である。 この発明の実施の形態1に従うクライエント装置上におけるトレイ機能の起動操作を説明するための図である。 この発明の実施の形態1に従うクライエント装置上におけるトレイ機能における操作を説明するための図(その1)である。 この発明の実施の形態1に従うクライエント装置上におけるトレイ機能における操作を説明するための図(その2)である。 この発明の実施の形態1に従うトレイ機能を用いた知的創造作業の一例を説明するための図である。 この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その3)である。 この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その1)である。 この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その2)である。 この発明の実施の形態1に従うクライエント装置CLで実現される制御構造を示す概略図である。 この発明の実施の形態1に従うサーバ装置SRVで実現される制御構造を示す概略図である。 この発明の実施の形態1におけるデータの遣り取りを示す模式図である。 この発明の実施の形態1に従うトレイ情報の内容の一例を示す図である。 図20(b)に示すトレイ情報の内容が反映されたWS情報114aの内容の一例を示す図である この発明の実施の形態1に従うトレイ情報の記述例を示す図である。 この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すフローチャート(その1)である。 この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すフローチャート(その2)である。 この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すフローチャート(その3)である。 この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すシーケンス図(その1)である。 この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すシーケンス図(その2)である。 この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すシーケンス図(その3)である。 この発明の実施の形態2に従うワークスペースを提供するための情報処理システムの概略構成図である。 この発明の実施の形態2におけるデータの遣り取りを示す模式図である。 この発明の実施の形態3に従うクライエント装置CLで実現される制御構造を示す概略図である。 この発明の実施の形態3に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図である。 図28に対応するトレイ情報の内容の一例を示す図である。 この発明の実施の形態3に従うトレイ機能に係る処理手順を示すシーケンス図である。 この発明の実施の形態4に従うクライエント装置CLで実現される制御構造を示す概略図である。 この発明の実施の形態4に従うクライエント装置CL1~CL3上におけるトレイ機能における操作を説明するための図である。 図32に対応するトレイ情報の内容の一例を示す図である。
 この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
 [用語]
 本明細書において「ワークスペース」とは、視認可能なオブジェクトを追加したり、編集したりすることができる、情報処理装置上で提供される仮想作業空間を意味する。このようなワークスペースにより、ユーザが情報を整理したり、他ユーザとの間で情報を共有したりすることができる。このワークスペースを提供する形態(デバイス)としては、プログラム(アブリケーション)を実行する情報処理装置、予めその機能が組み込まれた電子ホワイトボード、および携帯電話やタブレットPC等が考えられる。
 本明細書において「オブジェクト」とは、ワークスペース上に追加され得るデータ全般を意味する。このオブジェクトがユーザの操作対象単位となる。このオブジェクトの一例としては、図形、テキストドキュメント、ワークシートのセル、画像、音声、ログ、タグ、しおり、注釈、ユーザ情報などが挙げられる。また、後述する「選択トレイ」上に追加されるデータ全般についても「オブジェクト」とも称す。そのため、これらを区別する必要がある場合には、ワークスペース上のオブジェクトについては「実体オブジェクト」と称し、選択トレイ上のオブジェクトについては「エイリアスオブジェクト」とも称す。この「実体オブジェクト」は、ワークスペースを利用する本来の目的を達するために操作する対象となるオブジェクトであり、「エイリアスオブジェクト」は、トレイ機能を利用するために実体オブジェクトを参照するオブジェクトである。
 [概要]
 本発明は、ワークスペース上に散在するオブジェクト(実体オブジェクト)のうち、ユーザが必要と考えるものを選択的に集めて知的創造作業を効率的に行なえるような環境を提供するものである。より具体的には、この環境下では、ユーザは、ワークスペースとは区別される表示領域に実体オブジェクトに関連付けられたエイリアスオブジェクトを自在に配置でき、かつこれらのエイリアスオブジェクトについては、ワークスペース上の実体オブジェクトとは独立して、種々の編集操作を自在に行なうことができる。なお、本明細書においては、これらの機能を「トレイ機能」とも称す。
 さらに、本発明は、配置されたエイリアスオブジェクトのうち、ユーザが任意に選択したものを複数のユーザ(実際には、各ユーザが使用する情報処理装置)の間で共有可能なトレイ機能を提供する。このような機能を用いることで、複数のメンバーからなるグループで共同作業を行なう場合の作業が効率化される。
 [実施の形態1]
 <全体構成>
 図1は、この発明の実施の形態1に従うワークスペースを提供するための情報処理システムの概略構成図である。
 図1を参照して、本実施の形態に従う情報処理システムは、ネットワークNWを介して互いにデータ通信可能に接続された複数の情報処理装置である、複数のクライエント装置CL1~CLN(以下、「クライエント装置CL」とも総称する。)とサーバ装置SRVとを含む。すなわち、本実施の形態においては、いわゆるサーバ・クライエント構成について例示する。なお、後述するように、いわゆるピア・トゥ・ピア構成を採用することもできる。
 クライエント装置CL1~CLNの各々は、サーバ装置SRVを介して、ワークスペースを提供するための情報(後述する、ワークスペース(WS)情報)を共通に保持することで、クライエント装置CL1~CLNの各々を利用するユーザにワークスペースを提供する。すなわち、いずれかのクライエント装置CL上でユーザがワークスペース上に何らかのオブジェクトを追加すると、当該追加されたオブジェクトが他のクライエント装置CL上に表示されるワークスペースにも反映される。このようにして、ユーザ間で情報の共有化が図られる。なお、本発明に係るトレイ機能は、1台のクライエント装置CL単独で提供されるワークスペースにも適用可能である。すなわち、必ずしも複数のユーザによる同時アクセスがなされるワークスペースに限定されることはない。
 サーバ装置SRVは、主として、クライエント装置CL1~CLNの間でのデータ共有を制御する。
 <ハードウェア構成>
 図2は、この発明の実施の形態1に従う情報処理装置の代表例であるパーソナルコンピュータの概略のハードウェア構成を示す模式図である。
 図2を参照して、本実施の形態に従う情報処理装置であるクライエント装置CLは、オペレーティングシステムを含む各種プログラムを実行するCPU2と、CPU2でのプログラムの実行に必要なデータを一時的に記憶する記憶部としてのメモリ14と、CPU2で実行されるプログラムを不揮発的に記憶するハードディスク(HDD)12とを含む。このようなプログラムは、CD-ROM(Compact Disk-Read Only Memory)ドライブ16またはフレキシブルディスク(FD:Flexible Disk)ドライブ18によって、それぞれCD-ROM16aまたはフレキシブルディスク18aなどから読み取られる。
 CPU2は、キーボード、マウス、タブレットなどからなる入力装置10を介してユーザによる操作要求を受取るとともに、プログラムの実行によって生成される画面出力を出力装置6へ出力する。
 出力装置6は、ワークスペースの状態をユーザに表示するためのデバイスであり、典型的には、モニターやプロジェクターなどからなる。
 また、CPU2は、LANカードなどからなる通信インターフェイス8を介して、他のクライエント装置CLやサーバ装置SRVとの間でデータ通信を行なう。なお、これらの部位は、内部バス4を介して互いに接続される。
 また、本実施の形態に従うサーバ装置SRVについても情報処理装置であり、そのハードウェア構成についても、図2に示すクライエント装置CLのハードウェア構成と同様であるので、詳細な説明は繰返さない。
 <ワークスペース>
 次に、図3~図8を参照して、本実施の形態に従うワークスペースの操作例について説明する。図3は、この発明の実施の形態1に従うワークスペースの一例を模式的に示す図である。図4は、図3に示すワークスペースに対応するワークスペース(WS)情報の内容の一例を示す図である。図5は、この発明の実施の形態1に従うクライエント装置CL上における初期操作を説明するための図である。図6は、この発明の実施の形態1に従うクライエント装置CL上のユーザインターフェイスの一例を示す図である。図7は、この発明の実施の形態1に従うクライエント装置CL上における編集操作を説明するための図(その1)である。図8は、この発明の実施の形態1に従うクライエント装置CL上における編集操作を説明するための図(その2)である。
 本実施の形態に従うワークスペース上には、各種のオブジェクトを追加したり、追加したオブジェクトに対して編集や削除したりすることができる。図3には、一例として、オブジェクトOBJ1~OBJ9が既に作成されているワークスペースが示されている。図3において、オブジェクトOBJ1は「画像オブジェクト」であり、オブジェクトOBJ2,OBJ4~OBJ9は「テキストオブジェクト」であり、オブジェクトOBJ3は「線オブジェクト」であるとする。このように、オブジェクトの種類としては、電子的に取扱えるデータであれば特に限定されることはないが、一例として、画像や文書といった外部ファイル以外に、図形や線といったベクトルデータ、手書きによる自由入力などを受付可能である。
 なお、図3に示すワークスペースは、概念的に表現されたものであり、実際には、ユーザ操作に応じた範囲の領域(ビュー範囲)に含まれる内容が各クライエント装置CL上に表示(レンダリング)される。すなわち、ワークスペースの一部または全部の内容がユーザに向けて表示される。
 これらのオブジェクトOBJ1~OBJ9およびビュー範囲は、図4に示すようなWS情報として定義される。本実施の形態に従うワークスペースおよびワークスペースに含まれるオブジェクトを定義するためのWS情報は、代表的に、XMLなどのマークアップ言語で記述される。このようなマークアップ言語を採用することで、タグ(<>と</>とで囲まれる文字に与える属性)を自在に設定することができるため、システムの拡張性を高めることができる。
 図4を参照して、WS情報は、ワークスペースを特定するためのワークスペースタグ302と、ビュー範囲を特定するための記述304と、オブジェクトOBJ1~OBJ5をそれぞれ定義する記述311~315とを含む。
 ワークスペースタグ302には、典型的に、ワークスペースの識別番号(workspace id)、および当該ワークスペースの作成者(Author)などの情報が格納される。なお、ワークスペースタグ302には、文字エンコーディング属性などを含めてもよい。
 記述304には、ビュー範囲を特定するための情報が格納される。より具体的には、<object>タグおよび</object>タグ、ならびに<point x= y= />タグによって、ビュー範囲の中心座標が指定される。また、<zoom_scale>タグおよび</zoom_scale>タグによって、表示倍率(デフォルトの表示範囲に対する表示範囲の比)が指定される。
 各オブジェクトは、<object>タグで始まり、</object>タグで終了する記述によって定義される。これらの記述311~315の各々には、各オブジェクトの識別番号(objectid)、各オブジェクトの種類に応じた属性(image:画像オブジェクト、text:テキストオブジェクト、line:線オブジェクトなど)、各オブジェクトまたは各オブジェクトを構成する要素についてのワークスペース上の座標位置(x= ,y= )、外部ファイルのリンクアドレス(src)、拡大縮小率(scale)などが含まれる。すなわち、記述311~315の各々には、オブジェクトに対応付けられた識別情報、およびオブジェクトの実体が定義される。
 より具体的には、<object id>タグには、各オブジェクトを一意に特定する識別番号が定義される。また、<point>タグには、各オブジェクトまたは各オブジェクトを構成する要素についてのワークスペース上の座標位置が定義される。<src>タグには、関連付けされた外部ファイルのリンクアドレスが定義される。
 たとえば、オブジェクトOBJ1に対応する記述311には、<object id>タグにおいて、識別番号が「1」であることが定義され、<image>タグにおいて、イメージオブジェクトであることが定義される。さらに、<image>タグ内の属性において、x座標が「60」であり、y座標が「180」である位置に配置されることが定義され、<src>タグにおいて、外部ファイルを特定する「fuji.jpg」が定義され、<scale>タグにおいて、オブジェクトOBJ1の表示倍率が「0.25」倍であることが定義される。
 なお、画像オブジェクトなどについては、WS情報内の記述とは別に外部ファイル(参照先のファイル)が用意されている。このような画像オブジェクトについては、ワークスペースWS上で、その内容を参照したり表示したりすることが可能である。
 なお、図4では、1つのWS情報を用いて、ワークスペースを構成する例について例示したが、複数のファイルを用いて同等の情報を定義してもよい。たとえば、各オブジェクトが定義されたファイルを、リレーショナルデータベースなどを用いて互いに関連付けた構成などを採用することができる。すなわち、オブジェクト単位で取扱えるデータ構造であれば、図4に示すデータ構造に限られず、任意のデータ構造を採用することができる。このWS情報の内容に基づいて、ワークスペースの描画や外部出力が行われる。
 また、図4に示す記述304の内容は、いずれかのクライエント装置CL上でユーザが拡大縮小やスクロール等のビュー範囲に対する変更をすることで、随時更新される。
 さらに、クライエント装置CL上でユーザが操作を行なうことで、ワークスペースの新規作成、作成したワークスペースの書き出し、既作成のワークスペースの読み込みなどが可能である。
 図5を参照して、典型的な操作例として、クライエント装置CLの出力装置6には、初期的に、本実施の形態に従うワークスペースを提供する表示ウィンドウ150が表示される。この表示ウィンドウ150には、ワークスペースを表示するための領域158に加えて、その上部には、「ファイル」ボタン152、「操作」ボタン154、「表示」ボタン156が表示される。ユーザが、この「ファイル」ボタン152をマウスなどによって選択すると、WS情報に対する操作を行なうためのダイアログが表示される。このダイアログのうち、「新規WSを開く」が選択されると、新たなワークスペースが作成される。また、「WSを保存する」が選択されると、現在作成中のワークスペースがWS情報として保存される。さらに、「WSを開く」が選択されると、保存されている既作成のWS情報を選択的に読み込んで、ワークスペースを表示する。図6~図8には、ワークスペースが読み込まれて表示された状態の操作例を示す。
 図6を参照して、クライエント装置CLの出力装置6にワークスペースが表示されると、表示ウィンドウ150に加えて、ワークスペース上におけるビュー範囲の位置を示す表示ウィンドウ160が表示される。この表示ウィンドウ160には、ワークスペース全体とビュー範囲VIEWとの相対関係が模式的に示される。ユーザが表示ウィンドウ160上のビュー範囲VIEWをマウスなどによって移動もしくは変形(リサイズ)すると、それに応じて、領域158に表示されるワークスペースの範囲が変更される。
 図6(a)は、図3に示す範囲VIEW1がビュー範囲として設定されている場合の表示例を示し、図6(b)は、図3に示す範囲VIEW2がビュー範囲として設定されている場合の表示例を示す。
 図6(a)と図6(b)とを比較すると、クライエント装置CLの出力装置6上の領域158は同一であるので、ワークスペース上に設定されるビュー範囲を小さく(狭く)するほど、ワークスペースの内容が拡大表示されることになる。したがって、たとえば、ワークスペースの全体を概観したい場合などには、より広い範囲をビュー範囲として設定し、特定のオブジェクトに着目したい場合などには、より狭い範囲をビュー範囲として設定することになる。
 ユーザがワークスペース上に配置されたオブジェクトに対して編集や削除の操作を行なう際には、典型的に、操作対象となるオブジェクトを選択した上で、処理内容を指示する。このオブジェクトの選択の方法としては、対象のオブジェクトを直接選択する方法、および所望の範囲を指定することで、当該範囲内に存在するオブジェクトを選択とする方法などがある。また、連続的に複数回に亘ってオブジェクトを選択(追加)できるようにしてもよい。図7は、対象のオブジェクトを直接選択する場合の操作例を示し、図8は、範囲指定をすることで対象のオブジェクトを間接的に選択する場合の操作例を示す。
 一例として、ユーザがワークスペース上に配置されたオブジェクトOBJ2を移動する場合の操作について例示する。図7(a)に示すように、ユーザは、表示されるカーソルCRSを対象オブジェクト(オブジェクトOBJ2)上に配置した上で、マウスに対するクリック操作(典型的には、左クリック)を行なうことで、オブジェクトOBJ2を直接選択する。あるいは、図7(b)に示すように、ユーザは、表示されるカーソルCRSを対象オブジェクト(オブジェクトOBJ2)上に配置した上で、マウスに対するクリック操作(典型的には、右クリック)を行なうことで操作コマンド一覧を示すダイアログを表示させ、このダイアログ上で「選択」を指定することで、オブジェクトOBJ2を直接選択する。
 このようにオブジェクトOBJ2が選択された状態で、図7(c)に示すように、ユーザがドラッグ操作やカーソル操作などを行なうことによって、オブジェクトOBJ2を移動させることができる。
 一方、図8に示すように、ユーザがマウスに対するクリック操作(典型的には、左クリック)を継続した状態で、オブジェクトOBJ2を含むような範囲をドラッグ操作することで所望の範囲が指定される。この指定された範囲に含まれるオブジェクトが選択される。このように、ユーザは対象のオブジェクトを直接的に選択しなくとも、指定した範囲内にあるオブジェクトを選択するようにすることもできる。
 当然のことながら、図7および図8に示したオブジェクトの移動操作の他にも、各種の操作が可能である。たとえば、オブジェクトの色、形状、内容の変更などが可能である。他にも、オブジェクト同士の連結やリンクやタグなどの属性設定などを採用してもよい。
 <トレイ機能>
 次に、図9~図14を参照して、本実施の形態に従うトレイ機能について説明する。上述したように、本実施の形態に従うトレイ機能としては、個人用と共有用とが用意されているが、以下の説明では、まず本実施の形態に従うトレイ機能の基本的な内容について説明する。その後、トレイ機能(個人)およびトレイ機能(共有)の機能差について説明する。
 図9は、この発明の実施の形態1に従うトレイ機能の説明の対象となるシーンにおけるワークスペースの一例を模式的に示す図である。図10は、この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能の起動操作を説明するための図である。図11は、この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その1)である。図12は、この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その2)である。図13は、この発明の実施の形態1に従うトレイ機能を用いた知的創造作業の一例を説明するための図である。図14は、この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その3)である。
 以下の説明の前提として、図9に示すようなワークスペースを考える。この図9に示すワークスペースは、図3に示すワークスペースにおいて、ビュー範囲VIEWの位置だけが異なったものとなっている。なお、オブジェクトOBJ4~OBJ9には、たとえば、ある課題に対する解決案A~Fがそれぞれ記載されているものとする。そして、これらの解決案A~Fのうちいずれが最適であるかを決定したり、解決案A~Fの一部を抽出したり、それらに基づいて新たな解決案を創作したりするような場合を考える。
 図10を参照して、まず、本実施の形態に従うトレイ機能を起動する場合には、ユーザは、表示ウィンドウ150の上部に表示される「表示」ボタン156をカーソルCRSなどによって選択する。すると、表示に関する操作を行なうためのダイアログ156aが表示される。このダイアログ156aには、個人用のトレイ機能を起動するための「個人トレイ表示」と、共有用のトレイ機能を起動するための「共有トレイ表示」とを含む、複数の項目が選択可能に表示される。ここで、ユーザが「個人トレイ表示」を選択すると、選択トレイ(個人)を示す表示ウィンドウ170が新たに生成され、ユーザが「共有トレイ表示」を選択すると、選択トレイ(共有)を示す表示ウィンドウ180が新たに生成される。なお、いずれかのクライエント装置CLにおいて表示ウィンドウ180が新たに生成されると、他のクライエント装置CLにおいても表示ウィンドウ180が自動的に生成されるようにしてもよい。あるいは、他のクライエント装置CLにおいて表示ウィンドウ180が生成済であるか否かを探索し、表示ウィンドウ180が生成済のクライエント装置CLが存在すれば、自装置においても表示ウィンドウ180を生成するようにしてもよい。
 以下の説明では、選択トレイ(個人)および選択トレイ(共有)の共通的な機能について説明する場合には、両者を単に「選択トレイ」とも総称する。
 図11に示すように、ワークスペースを提供する表示ウィンドウ150、ならびに選択トレイ(個人)を示す表示ウィンドウ170および/または選択トレイ(共有)を示す表示ウィンドウ180が表示された状態で、たとえば、ユーザがワークスペース上の任意のオブジェクトを表示ウィンドウ170(または、表示ウィンドウ180)までドラッグ・アンド・ドロップすることで、選択トレイ上に選択されたエイリアスオブジェクトALS1が現われる。なお、選択トレイに追加する方法としては、上述のドラッグ・アンド・ドロップに加えて、ワークスペース上のオブジェクトを選択した上でプルダウンメニューによって当該オブジェクトを記憶し、ドロップしたい先を指定した状態でドロップコマンドを指定する、といった別の方法でもよい。すなわち、指定したワークスペース上のオブジェクトを選択トレイ上の指定した位置にドロップできる方法であれば、いずれの方法を採用してもよい。また、ワークスペース上のオブジェクトをそれぞれ選択トレイ(個人)および選択トレイ(共有)に選択する方法は、共通の操作とすることが好ましい。
 このように、ワークスペースの一部または全部の内容の表示とは区別された表示領域に、実体オブジェクトに関連付けられたエイリアスオブジェクトが表示される。
 この選択トレイへのエイリアスオブジェクトALS1の追加に伴って、選択トレイ上のオブジェクトを定義するためのトレイ情報が新たに生成される。後述するように、このトレイ情報は、上述のWS情報と同様に、XMLなどのマークアップ言語で記述される。
 この選択トレイ上のオブジェクト(エイリアスオブジェクト)は、ワークスペース上のオブジェクト(実体オブジェクト)とは独立して存在する。すなわち、原則として、ユーザが選択トレイ上のエイリアスオブジェクトに対して移動、編集、削除などの操作を行なっても、ワークスペース上の実体オブジェクトは影響を受けない。すなわち、図12に示すように、表示ウィンドウ170内に表示されるエイリアスオブジェクトALS1に対しては、ワークスペース上の関連付けられた実体オブジェクトとは独立して、移動、編集、削除などの操作が自在に可能である。
 なお、ユーザ操作に応じて、選択トレイ上のエイリアスオブジェクトに対する移動、編集、削除などの操作を、ワークスペース上の関連付けられた実体オブジェクトに反映することもできる。
 同時に、この選択トレイ上のオブジェクト(エイリアスオブジェクト)は、ユーザが実体オブジェクトとの関連付けを認識できるように、関連付けられた実体オブジェクトの表示態様に基づく表示態様で表示される。たとえば、実体オブジェクトが四角形の形状を有している場合には、エイリアスオブジェクトも四角形として表示される。
 上述の選択トレイに追加できるエイリアスオブジェクトの数については特に制限されるものではなく、ユーザは、ワークスペース上の実体オブジェクトをドラッグ・アンド・ドロップすることで、エイリアスオブジェクトを作成することができる。このように選択トレイに追加された複数のエイリアスオブジェクトのうち、一部のエイリアスオブジェクトを選択することもできる。すなわち、選択トレイに追加したエイリアスオブジェクトのうち、より重要なものなどを目立たせたり、ワークスペース上の実体オブジェクトに対して、何らかの変更を反映したりするものを抽出することができる。
 また、図11では、選択トレイを示す表示ウィンドウ170および180を、ワークスペースを提供する表示ウィンドウ150とは別のものとして表示する形態について例示したが、両者を区別できる態様であれば、ワークスペースの一部を選択トレイとして利用するような形態を採用してもよい。
 このようなユーザインターフェイスの提供により、ユーザは、ワークスペース上の実体オブジェクトとは独立して知的創造作業を行なうことができる。図13を参照して、ユーザによる知的創造作業の一例について説明する。
 まず、図13(a)に示すように、ユーザは、ドラッグ・アンド・ドロップ操作によって、ワークスペース上の必要と考えるオブジェクトを選択トレイに追加する一方で、選択トレイに追加したものの不必要と判断したオブジェクトを選択トレイから削除することもできる。なお、このとき、ユーザが選択トレイ上のエイリアスオブジェクトを移動させても、ワークスペース上の実体オブジェクトには影響を与えない。
 たとえば、ユーザは、図13(a)に示すように3つのエイリアスオブジェクトを選択トレイに追加した状態を見て、選択トレイ上でエイリアスオブジェクトの位置を適当に変えながら考えを練ることができる。このような思考過程において、あるユーザが、エイリアスオブジェクトALS2は不要であると考えて選択トレイから削除し、それに代えて、新たなエイリアスオブジェクトALS4およびALS5を追加する方がよいと考えて選択トレイに追加した状態が図13(b)である。
 図13(b)に示す状態では、ワークスペース上の実体オブジェクトOBJ4およびOBJ8にそれぞれ関連付けられたエイリアスオブジェクトALS1およびALS3が互いに近接して配置されており、また、ワークスペース上の実体オブジェクトOBJ7およびOBJ6にそれぞれ関連付けられたエイリアスオブジェクトALS4およびALS5が互いに近接して配置されている。このように、ユーザは、ワークスペース上ではそれぞれ別々に配置されている実体オブジェクトを、選択トレイ上では互いに近接した位置に配置することができる。これにより、ユーザがその内容が類似していると考えて、同一カテゴリーに分類すべきであると考えたオブジェクト同士を視覚的にまとめておくことができる。
 ユーザがさらに思考を続けていき、エイリアスオブジェクトALS1およびALS3がエイリアスオブジェクトALS4およびALS5に比較して優れていると考えた場合には、それを視覚的に表現するために、それぞれの背景色を変更することができる。より具体的には、図13(c)に示すように、ユーザは、マウスに対するクリック操作(典型的には、左クリック)を継続した状態でドラッグ操作することで、選択トレイ上のエイリアスオブジェクトALS1およびALS3を含むように選択範囲DA1が指定される。続いて、ユーザが表示ウィンドウ170(または、180)の左部に表示される「操作」ボタン172をカーソルCRSなどによって選択する。すると、各種操作を行なうためのダイアログ(図示しない)が表示される。このダイアログ上で、選択したオブジェクトの色属性を変更するための「色編集」ボタンを選択することで、エイリアスオブジェクトALS4およびALS5の背景色が変更される(たとえば、白色から黄色)。なお、選択トレイ上のエイリアスオブジェクトALS1およびALS3の初期の背景色は、ワークスペース上の関連付けられた実体オブジェクトと同じ背景色が設定されている。
 また、エイリアスオブジェクトALS4およびALS5がエイリアスオブジェクトALS1およびALS3に比較して優れていると考えた場合には、それを視覚的に表現するために、図13(c)と同様の手順によって、それぞれの背景色を変更することもできる。すなわち、図13(d)に示すように、ユーザは、マウスに対するクリック操作(典型的には、左クリック)を継続した状態でドラッグ操作することで、選択トレイ上のエイリアスオブジェクトALS4およびALS5を含むように選択範囲DA2が指定される。続いて、ユーザが表示ウィンドウ170(または、180)の左部に表示される「操作」ボタン172をカーソルCRSなどによって選択する。すると、各種操作を行なうためのダイアログ(図示しない)が表示される。このダイアログ上で、選択したオブジェクトの色属性を変更するための「色編集」ボタンを選択することで、エイリアスオブジェクトALS1およびALS3の背景色が変更される(たとえば、白色から赤色)。
 別の観点から見て、ユーザが、エイリアスオブジェクトALS1とエイリアスオブジェクトALS5とは、異なるカテゴリーに分類されているが、互いに関連していると考えた場合には、エイリアスオブジェクトALS1およびALS5についての形状を変更しておくことで、別の意味において、同一カテゴリーに分類されることを表現することもできる。より具体的には、図13(e)に示すように、ユーザは、マウスに対するクリック操作(典型的には、左クリック)を継続した状態でドラッグ操作することで、選択トレイ上のエイリアスオブジェクトALS1およびALS4を含むように選択範囲DA3が指定される。続いて、ユーザが表示ウィンドウ170(または、180)の左部に表示される「操作」ボタン172をカーソルCRSなどによって選択する。すると、各種操作を行なうためのダイアログ(図示しない)が表示される。このダイアログ上で、選択したオブジェクトの形状を変更するための「形状編集」ボタンを選択することで、エイリアスオブジェクトALS1およびALS4の形状が四角形から楕円に変更される。なお、変更後の形状は、任意に選択できる。
 あるいは、図13(f)を参照して、ユーザが、表示されるカーソルCRSを選択トレイ上の第1のエイリアスオブジェクト(エイリアスオブジェクトALS1)上に配置した上で、マウスに対するクリック操作(典型的には、右クリック)を行ない、これに続いて、カーソルCRSを第2のエイリアスオブジェクト(エイリアスオブジェクトALS4)上に配置した上で、マウスに対するクリック操作(典型的には、右クリック)を行なうことで、両エイリアスオブジェクトが関連付けられていることを視覚的に表現する紐付けLNKが追加される。
 このように、ユーザは、エイリアスオブジェクトをある程度まとまった位置に配置し、簡単な選択範囲の指定操作によって操作対象としたいエイリアスオブジェクトを一括して選択し、同一カテゴリーに属するエイリアスオブジェクトの色を変更し、別の切り口で選択し直したエイリアスオブジェクトの形状を変更し、関連があることを強調しておきたいエイリアスオブジェクト同士を線でつないでおくといった複雑かつ複合的な操作を容易に行なうことができる。なお、これらの操作内容は、ワークスペース上の関連付けられた実体オブジェクトに反映させることができる。
 次に、図14を参照して、選択トレイ上のエイリアスオブジェクトに対する操作をワークスペース上の実体オブジェクトに反映させる場合に有効なプレビュー機能について説明する。
 図14(a)に示すように、選択トレイ上にエイリアスオブジェクトALS1が選択されている場合に、エイリアスオブジェクトALS1に対して、何らかの変更操作を行なったとする。なお、エイリアスオブジェクトALS1は、表示ウィンドウ150内のワークスペース上の実体オブジェクトOBJ4に関連付けられているものとする。
 図14(b)には、エイリアスオブジェクトALS1に対して、その外周枠の太さを太くする操作を行なった場合を示す。このような操作を行なった後、ユーザが表示ウィンドウ170(または、180)の左部に表示される「プレビュー」ボタン174をカーソルCRSなどによって選択する。すると、表示ウィンドウ150内のワークスペース上の関連付けられた実体オブジェクトOBJ4の表示が、エイリアスオブジェクトALS1の変更後の形状が反映された状態に変更される。すなわち、エイリアスオブジェクトALS1に対してなされた変更が関連付けられた実体オブジェクトに反映された場合の状態がプレビュー表示される。このプレビュー表示によって、ユーザは、エイリアスオブジェクトに対して実施した変更を関連付けられた実体オブジェクトに反映してもよいか否かを予め視覚的に判断することができる。
 なお、上述の説明では、選択トレイ(個人)を示す表示ウィンドウ170にエイリアスオブジェクトを追加した場合の操作を一例として説明したが、選択トレイ(共有)を示す表示ウィンドウ180にエイリアスオブジェクトを追加した場合にも同様の操作が可能である。
 <選択トレイ(個人)および選択トレイ(共有)>
 次に、図15および図16を参照して、トレイ機能(個人)およびトレイ機能(共有)の機能差について説明する。図15は、この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その1)である。図16は、この発明の実施の形態1に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図(その2)である。
 先に、図15を参照して、選択トレイ(共有)について説明する。図15(a)は、クライエント装置CL1における表示例を示し、図15(b)は、他のクライエント装置CL2~CLNにおける表示例を示す。
 図15(a)に示すように、クライエント装置CL1のユーザがワークスペース上の任意のオブジェクトを表示ウィンドウ180(選択トレイ(共有))までドラッグ・アンド・ドロップすることで、選択トレイ(共有)上に新たなエイリアスオブジェクトALS1が追加されたものとする。この選択トレイ(共有)へのエイリアスオブジェクトの追加に伴って、クライエント装置CL1の保持する共有トレイ情報114cが変更され、この共有トレイ情報114cの変更内容が、サーバ装置SRVの保持する共有トレイ情報214cへ反映される。さらに、サーバ装置SRVから他のクライエント装置CL2~CLNの各々が保持する共有トレイ情報114cへその変更内容がそれぞれ反映される。
 その結果、他のクライエント装置CL2~CLNの各々における選択トレイ(共有)には、図15(b)に示すように、クライエント装置CL1の選択トレイ(共有)に追加されたエイリアスオブジェクトが同期して表示される。
 次に、図16を参照して、選択トレイ(個人)について説明する。図16(a)は、クライエント装置CL1における表示例を示し、図16(b)は、他のクライエント装置CL2~CLNにおける表示例を示す。
 図16(a)に示すように、クライエント装置CL1のユーザがワークスペース上の任意のオブジェクトを表示ウィンドウ170(選択トレイ(個人))までドラッグ・アンド・ドロップすることで、選択トレイ(個人)上に新たなエイリアスオブジェクトALS1が追加されたものとする。この選択トレイ(個人)へのエイリアスオブジェクトの追加に伴って、クライエント装置CL1の保持する個人トレイ情報114bが変更される。しかしながら、この個人トレイ情報114bの変更内容は、他のクライエント装置CLおよびサーバ装置SRVとの間で同期されない。
 その結果、他のクライエント装置CL2~CLNの各々における選択トレイ(個人)には、図16(b)に示すように、クライエント装置CL1の選択トレイ(個人)に追加されたエイリアスオブジェクトは表示されない。すなわち、クライエント装置CLの各々の選択トレイ(個人)は、他のクライエント装置CLとは独立して取扱われる。
 なお、クライエント装置CLとサーバ装置SRVとの間のデータ送信のタイミング、送信対象となるクライエント装置CL、送信方向、送信内容(全て送信するのか部分的に送信するのか)などは、情報処理システム構成および性能などに応じて任意に設定することができる。
 上述の共有用のトレイ機能を用いることによって、複数のメンバーからなるグループにおいて、共同して知的創造作業を進めることができる。再度図13を参照して、複数のメンバーからなるグループによる知的創造作業の一例について説明する。
 たとえば、クライエント装置CL1~CL3を使用するそれぞれのユーザが、同時に分担して、最も適切と考えた実体オブジェクトを選択トレイ(共有)を示す表示ウィンドウ180に追加し、その後、クライエント装置CL1を使用するユーザが選択トレイ(共有)上のエイリアスオブジェクトを移動させながら考えを練った後に、さらに1つのオブジェクトを追加する。これらの一連の操作がなされた後の状態が図13(b)である。さらに、クライエント装置CL2を使用するユーザが、図13(c)に示すような、選択トレイ(共有)に追加された4つのエイリアスオブジェクトのうち、2つ(エイリアスオブジェクトALS1およびALS3)の背景色を変更し、同時並行的に、クライエント装置CL3を使用するユーザが、図13(d)に示すような、選択トレイ(共有)に追加された4つのエイリアスオブジェクトのうち、2つ(エイリアスオブジェクトALS4およびALS5)の背景色を変更する。さらに、クライエント装置CL4を使用するユーザが、図13(f)に示すような、エイリアスオブジェクトALS1およびエイリアスオブジェクトALS4に対して、両エイリアスオブジェクトが関連付けられていることを視覚的に表現する紐付けLNKを追加する。
 <機能構成>
 次に、図17~図19を参照して、本実施の形態に従うワークスペースを提供するための制御構造について説明する。図17は、この発明の実施の形態1に従うクライエント装置CLで実現される制御構造を示す概略図である。図18は、この発明の実施の形態1に従うサーバ装置SRVで実現される制御構造を示す概略図である。図19は、この発明の実施の形態1におけるデータの遣り取りを示す模式図である。
 図17を参照して、クライエント装置CLは、制御構造として、入力装置10と、出力装置6と、処理部100と、WS格納部120と、入出力制御部130とを含む。典型的に、処理部100および入出力制御部130は、ハードディスク12に予め格納されているプログラムをCPU2がメモリ14に展開した上で実行することで提供される。また、WS格納部120は、HDD12の一部として提供される。
 なお、入力装置10、出力装置6、処理部100、WS格納部120、および入出力制御部130を必ずしも同一のクライエント装置CLに設ける必要はなく、別体の装置に分散して設けてもよい。また、入出力制御部130を、入力装置10や出力装置6の内部に設けてもよい。さらに、入力装置10および出力装置6と入出力制御部130との間、入出力制御部130と処理部100との間、および処理部100とWS格納部120との間などに、別の情報処理装置や制御部などを仲介させる形で構成してもよい。
 入出力制御部130は、入力装置10で受付けた入力信号の内容を解釈して、対応する指令を処理部100へ出力する。すなわち、入出力制御部130は、ユーザが入力装置10に対してどのような内容の操作を行なったのかを判断する。より具体的な一例として、入出力制御部130は、マウスのクリックやドラッグなどによって、ワークスペース上のいずれのオブジェクトが選択されたのか、いずれのボタンが押下されたのか、クリック操作およびドラッグ操作のいずれであるのか、といった内容を解釈する。
 また、入出力制御部130は、処理部100からの情報に基づいて、出力用の信号を生成して、出力装置6へ送る。より具体的な一例として、入出力制御部130は、ワークスペース上でユーザが行なったオブジェクト操作やビューの変更操作に応じて、表示される画面上のいずれの部分にどのような表示を行なえばいいよいのかを決定して出力信号を生成(レンダリング)する。
 処理部100は、本実施の形態に従うワークスペースを提供する処理の全体を司る。処理部100は、操作管理部102と、ビュー管理部104と、オブジェクト管理部106と、トレイ管理部108と、WS空間管理部110と、WS入出力部112と、WS作業メモリ114と、同期管理部116とを含む。
 操作管理部102は、入出力制御部130から送られる情報に基づいて、要求される処理内容を判断し、その判断結果に応じて、ビュー管理部104、オブジェクト管理部106、トレイ管理部108、WS空間管理部110、WS入出力部112、および同期管理部116のうち、対応する部位へ指令を与える。より具体的には、操作管理部102は、受けた操作内容が、ワークスペースの新規作成、ワークスペースのリセット、ワークスペースの削除などである場合、WS空間管理部110に指示が出され、WS空間管理部110で処理が実行される。また、操作管理部102は、受けた操作内容が、オブジェクトに対する移動・内容変更・装飾変更などの編集、新規オブジェクトの作成、削除である場合、オブジェクト管理部106に指示が出され、オブジェクト管理部106で処理が実行される。また、操作管理部102は、受けた操作内容が、ビューの変更である場合、ビュー管理部104に指示が出され、ビュー管理部で処理が実行される。また、操作管理部102は、受けた操作内容が、ワークスペースの読み込みや書き出しである場合、WS入出力部112に指示が出され、WS入出力部112で処理が実行される。また、操作管理部102は、受けた操作内容が、選択トレイの表示、選択トレイへのオブジェクトの追加、選択トレイ上のオブジェクトに対する移動・内容変更・装飾変更などの編集、選択トレイ上のオブジェクトの削除である場合、トレイ管理部108に指示が出され、トレイ管理部108で処理が実行される。
 WS作業メモリ114には、ワークスペースを提供するためのWS情報114a、個人用のトレイ機能を提供するための個人トレイ情報114b、および共有用のトレイ機能を提供するための共有トレイ情報114cが格納される。これらのWS情報114a、個人トレイ情報114bおよび共有トレイ情報114cは、ユーザ操作および各部における処理に伴って、随時更新される。
 WS空間管理部110は、操作管理部102からの指示に従って、WS作業メモリ114におけるWS情報114aの新規作成および削除などを管理する。
 オブジェクト管理部106は、操作管理部102からの指示に従って、WS作業メモリ114に格納されているWS情報114aの内容(記述)を更新する。ここで、同期管理部116が定期的もしくは何らかのイベント発生毎に他のクライエント装置CLとの間で通信を行なって、WS作業メモリ114内のWS情報114aを更新(同期)する。
 ビュー管理部104は、操作管理部102からの指示に従って、WS作業メモリ114に格納されているWS情報114aに定義されている情報のうち、ユーザにより指定されるビュー範囲に含まれる情報に基づいて、描画処理(レンダリング処理)を行なう。なお、同一のWS情報114aを共有するクライエント装置CLの間で、共通のビュー範囲を表示するようにしてもよい。この場合には、クライエント装置CLのビュー管理部104同士が互いに通信を行なって、ビュー範囲を示す情報についても同期して保持することが好ましい。
 WS入出力部112は、操作管理部102からの指示に従って、WS格納部120に格納されているWS情報120aを読み出し、あるいはWS作業メモリ114に格納されているWS情報114aでWS格納部120に格納されているWS情報120aを更新する。WS格納部120は、WS情報120aを不揮発的に記憶しており、ワークスペースを提供するアプリケーションがシャットダウンされた後であっても、WS情報120aを継続的に保持する。
 トレイ管理部108は、操作管理部102からの指示に従って、WS作業メモリ114に個人トレイ情報114bを作成し、さらに個人トレイ情報114bの内容を適宜更新する。また、トレイ管理部108は、操作管理部102からの指示に従って、WS作業メモリ114に共有トレイ情報114cを作成し、さらに共有トレイ情報114cの内容を適宜更新する。
 図18を参照して、本実施の形態に従うサーバ装置SRVは、その制御構造として、WS作業メモリ214と、同期管理部216とを含む。WS作業メモリ214には、ワークスペースを提供するためのWS情報214a、およびトレイ機能を提供するための共有トレイ情報214cが格納される。このWS情報214aおよび共有トレイ情報214cは、図17に示すWS情報114aおよび共有トレイ情報114cとそれぞれ同期される。
 同期管理部216は、クライエント装置CL同士の同期処理を仲介する。より具体的には、同期管理部216は、いずれかのクライエント装置CLにおいて、WS情報114aおよび共有トレイ情報114cのいずれかに変更が生じた場合に、当該変更をWS作業メモリ214に格納されているWS情報214aおよび共有トレイ情報214cに反映する。さらに、同期管理部216は、この変更後のWS情報214aおよび共有トレイ情報214cを、他のクライエント装置CLにそれぞれ分配する。この一連の処理によって、クライエント装置CL同士での同期処理が実現される。
 図19を参照して、上述した同期処理の概要としては、クライエント装置CL1~CLNの各々が保持するWS情報114aとサーバ装置SRVが保持するWS情報214aとの間で同期が取られるとともに、クライエント装置CL1~CLNの各々が保持する共有トレイ情報114cとサーバ装置SRVが保持する共有トレイ情報214cとの間で同期が取られる。これに対して、クライエント装置CL1~CLNの各々が保持する個人トレイ情報114bについては、他のクライエント装置CLおよびサーバ装置SRVのいずれとも同期が取られない。
 すなわち、個人トレイ情報114bについては、当該クライエント装置CLを使用するユーザ専用に使用され、共有トレイ情報114cについては、情報処理システムを構成するすべてのクライエント装置CLおよびサーバ装置SRVの間で共通に使用される。
 このように、性質の異なる2種類のトレイ機能を提供することによって、ユーザは状況に応じた知的創造作業を行なうことができる。より具体的には、ユーザは、個人トレイ情報114bに基づいて提供されるトレイ機能を用いることで、自身だけで考えを巡らすことができ、共有トレイ情報114cに基づいて提供されるトレイ機能を用いることで、複数のクライエント装置CLを利用するユーザ間で共同して考えを巡らすことができる。
 <トレイ管理部における詳細動作>
 次に、図20および図21を参照して、クライエント装置CLのトレイ管理部108における処理の詳細について説明する。
 図20は、この発明の実施の形態1に従うトレイ情報の内容の一例を示す図である。図21は、図20(b)に示すトレイ情報の内容が反映されたWS情報114aの内容の一例を示す図である。
 図11に示すように、ユーザがワークスペース上の任意のオブジェクトを表示ウィンドウ170までドラッグ・アンド・ドロップすると、図20(a)に示すような個人トレイ情報114bが生成される。
 図20(a)を参照して、個人トレイ情報114bは、選択トレイ上の表示位置と、エイリアスオブジェクトの参照先である実体オブジェクトを一意に特定する情報とを対応付けた状態で記録される。より具体的には、<select_object id= >タグおよび</select_object>タグ(符号350)によって、選択トレイ上のエイリアスオブジェクトを一意に特定するための情報が記述される。また、<text id= x= y= >タグおよび</text>(符号351)によって、関連付けられたエイリアスオブジェクトに参照するワークスペース上の実体オブジェクトが特定されるとともに、選択エリア上のエイリアスオブジェクトの位置が指定される。
 すなわち、図20(a)に示す例では、「text id=4」と定義されているので、図4に示すWS情報114aに定義される実体オブジェクトのうち、オブジェクトOBJ4が参照先であると解釈される。すなわち、図4に示すWS情報114aの記述314には、<object id>タグにおいて、識別番号が「4」であることが定義されており、個人トレイ情報114bに定義された「text id=4」と関連付けられる。
 このように個人トレイ情報114bには、実体オブジェクトを特定するための識別情報がエイリアスオブジェクトと対応付けて保持される。
 図20(a)に示すように、選択トレイに追加されたエイリアスオブジェクトについては、基本的に参照先の実体オブジェクトが特定されるだけである。そのため、トレイ管理部108は、参照先の実体オブジェクトがどのような状態であるのかをユーザに知らせるために、選択トレイに内容を表示する際に、WS情報114aを参照して参照先の実体オブジェクトについての属性を取得する。そして、その取得した属性に従って、エイリアスオブジェクトを表示する。また、トレイ管理部108は、定期的もしくは何らかのイベント発生毎にWS情報114aを参照して、参照先の実体オブジェクトについての属性が変更されていた場合には、エイリアスオブジェクトの表示を変更後の属性に応じた表示に更新する。このような表示方法を採用することで、ユーザは、選択トレイ上に選択されている各エイリアスオブジェクトがワークスペース上のいずれの実体オブジェクトに関連付けられているのかを容易に認識することができる。さらに、選択トレイ上に選択されているエイリアスオブジェクトに対して行なった何らかの変更内容を反映するように指示した場合に、反映処理が正しく実行されたかの否か、および当該変更内容がワークスペース上でどのように反映されたのかを容易に確認することができる。
 エイリアスオブジェクトの表示方法としては、ワークスペース上の実体オブジェクトの大きさを含めた表示態様をそのまま適用してもよいし、予め定められた拡大縮小率でサイズ変更、もしくは予め定められた固定サイズになるようにサイズ変更を行なってもよい。あるいは、形状および装飾だけに基づいて、ワークスペース上の実体オブジェクトの特定や状況確認が可能である状況と判断できる場合には、エイリアスオブジェクトの形状や装飾のみをワークスペース上の実体オブジェクトの表示や装飾を一致させつつ、当該実体オブジェクトの内容である模様や画像などは対応させない(例えば、エイリアスの内部を塗り潰すなど)といったように、一部の属性に限定して選択トレイ上のエイリアスオブジェクトを表現するようにしてもよい。どのようにエイリアスオブジェクトを表示するかについては、トレイ管理部108で予め設定しておくか、あるいはユーザの指定に応じてその都度設定するようにしてもよい。
 トレイ管理部108は、ユーザが、選択トレイ上のエイリアスオブジェクトに対して変更操作を行なった内容に応じて、個人トレイ情報114bを更新する。たとえば、上述の図13(f)においては、エイリアスオブジェクトALS1の背景色が「黄色」に変更されており、かつその形状が「楕円」に変更されている。このエイリアスオブジェクトALS1に対応する個人トレイ情報114bの内容が図20(b)に示される。
 図20(a)と図20(b)とを比較すると、個人トレイ情報114bに記述352,353,354が追加されていることがわかる。記述352は、対応するエイリアスオブジェクトALS1が表示される際の背景色を指定する。すなわち、<bg_color>タグおよび</bg_color>タグによって、背景色(図20(b)に示す場合には、黄色を示す「yellow」)が指定される。また、記述353は、対応するエイリアスオブジェクトALS1が表示される際の形状を指定する。すなわち、<shape>タグおよび</shape>タグによって、形状(図20(b)に示す場合には、楕円を示す「ellipse」)が指定される。
 次に、ユーザが選択トレイ上のエイリアスオブジェクトに対する変更内容を、ワークスペース上の関連付けられた実体オブジェクトに反映させる操作を行なうと、トレイ管理部108は、個人トレイ情報114bにおける変更内容を、操作管理部102を介してオブジェクト管理部106へ出力する。すなわち、トレイ管理部108は、参照先の実体オブジェクトの識別番号(id)とともに、図20(b)に示す記述352および353の内容をオブジェクト管理部106へ出力する。オブジェクト管理部106は、このトレイ管理部108から受けた変更内容に応じて、WS情報114aに含まれる内容のうち、指定された識別番号を有する実体オブジェクトの記述を更新する。図20(b)に示す変更内容を反映したWS情報114aの一例が図21に示される。
 図4と図21とを比較すると、実体オブジェクトOBJ4を定義する記述314の内容が記述314Aに更新されていることがわかる。この記述314Aには、図20(b)に定義されていた記述352および353の内容と実質的に同一の定義が追加されている。このWS情報114aの更新により、選択トレイ上のエイリアスオブジェクトに対してなされた変更内容が関連付けられた実体オブジェクトに反映される。なお、実体オブジェクトに対して、変更内容が反映された後には、トレイ管理部108は、個人トレイ情報114bの内容を図20(a)に示すような内容に更新する。すなわち、エイリアスオブジェクトの参照先である実体オブジェクトに変更内容が反映されているので、エイリアスオブジェクトをこの変更内容が反映された実体オブジェクトを参照して表示するだけで済むからである。
 さらに、図20(b)に示す個人トレイ情報114bの記述例の他、以下に示すような種々の表示や装飾をエイリアスオブジェクトに付与することができる。
 図22は、この発明の実施の形態1に従うトレイ情報の記述例を示す図である。
 上述した図13(f)に示すように、エイリアスオブジェクト同士が関連付けられていることを視覚的に表現する紐付けLNKを表示する場合には、図22(a)のような内容が追加される。すなわち、選択トレイ上において、紐付けLNK自体が新たなオブジェクトとして新たに生成される。図22(a)に示す例では、<object id>タグにおいて、識別番号が「5」である新たなオブジェクトであることが定義されている。このオブジェクトの定義内容としては、<type>タグおよび</type>タグによって、紐付けLNKに用いられる線種(図22(a)に示す場合には、単方向矢印を示す「arrow」)が指定される。また、<connect_obj1_id= />タグによって、紐付けLNKを開始するエイリアスオブジェクト(図22(a)に示す場合には、id=2をもつエイリアスオブジェクトALS2)が指定される。同時に、<connect_obj2_id= />タグによって、紐付けLNKを終了するエイリアスオブジェクト(図22(a)に示す場合には、id=4をもつエイリアスオブジェクトALS4)が指定される。このように、エイリアスオブジェクト同士を関連付けるオブジェクトが追加される。
 別の装飾の形態として、選択トレイ上に追加されている文字「ABC」を点滅表示させる場合の記述例を図22(b)に示す。すなわち、図22(b)に示す例では、<blink>タグおよび</blink>タグにおいて、点滅表示させる文字が指定される。
 本実施の形態に従うWS情報114a、個人トレイ情報114bおよび共有トレイ情報114cにおいては、XML形式に従って任意に定義されたタグに加えて、HTML形式として標準化されているようなタグを使用することもできる。
 なお、上述の説明では、表示や装飾(点滅、縁取り、色変換、太線化など)の表示の見た目をそのままタグとして定義する場合を例示したが、例えば、<warning>タグといった、「ユーザの意図」や「効果」をタグとして定義してもよい。このようなタグを用いることで、例えば、あるユーザは「点滅」を「警告」とイメージするかもしれないが、別のユーザは点滅させるよりも「太線化」した方が警告感を抱く一方、「点滅」は「お勧め」をイメージする場合があることを考慮したものである。この場合、各ユーザが使用するクライエント装置CL毎に、同一のタグに割当てられる表示内容を変更するようにしてもよい。この場合には、各ユーザが、例えば「警告」と感じる表示方法を自由に選択する。これにより、ワークスペースを共有しているクライエント装置CL間では、同一のタグを用いて定義されていても、各クライエント装置CLにおいては、当該クライエント装置CLを使用するユーザのフィーリングに合わせた装飾で表示されることになり、好適である。
 次に、図20(b)および図20(c)を参照して、プレビュー機能について説明する。図20(b)に示す個人トレイ情報114bは、プレビュー機能を提供するための記述354を含む。この記述354内の<preview>タグおよび</preview>タグには、初期値として何らの動作も行なわないことを意味する「NULL」が記述されている。
 次に、上述した図14(b)に示すように、ユーザが選択トレイ上のエイリアスオブジェクトに対して何らかの変更操作を行なった上で、表示ウィンドウ170の左部に表示される「プレビュー」ボタン174を選択すると、トレイ管理部108は、図20(b)に示す<preview>タグおよび</preview>タグにプレビューすべき内容を記述したコマンドラインを入力する。このコマンドラインが入力された状態を図20(c)に示す。図20(c)には、図20(b)の記述352および353に相当するコマンドラインが挿入された記述354Aが含まれているのがわかる。この記述354Aには、「コマンド」+「対象の実体オブジェクトのid」+「変更後の属性値」といった具合にコマンドが記述されている。すなわち、図20(c)に示す例では、「change_bg_color」が背景色を変更するためのコマンドであり、「4」が対象の実体オブジェクトを特定する識別番号(id)であり、「yellow」が変更後の背景色である。
 続いて、トレイ管理部108は、プレビュー機能が指定されたことをビュー管理部104に通知する。すると、ビュー管理部104は、WS情報114aを参照した上で、その表示属性をこのコマンドラインに従って変更した上でレンダリングする。なお、ビュー管理部104は、このコマンドラインに従って変更表示するのみであり、変更の確定がユーザによって指示されるまで実体のWS情報114aは変更されない。
 上述の説明では、主として、個人トレイ情報114bの内容について説明したが、共有トレイ情報114cについても、基本的なデータ構造などは同じであるので、詳細な説明は繰返さない。
 <処理手順>
 次に、図23A~図23Cを参照して、本実施の形態に従うワークスペースの提供に係る処理手順について説明する。
 図23A~図23Cは、この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すフローチャートである。図23A~図23Cに示す各ステップは、典型的に、CPU2がプログラムを実行することで進められる。すなわち、図17に示す各部に相当する機能により実行される。なお、ワークスペースは既に作成されているものとする。
 図17および図23A~図23Cを参照して、同期管理部116は、サーバ装置SRV(もしくは、他のクライエント装置CL)から、自装置のWS作業メモリ114に格納されているWS情報114aの最終更新時間より新しいWS情報114aを受信したか否かを判断する(ステップS100)。最終更新時間より新しいWS情報114aを受信していない場合(ステップS100においてNOの場合)には、処理はステップS108へ進む。
 一方、最終更新時間より新しいWS情報114aを受信した場合(ステップS100においてYESの場合)には、同期管理部116は、自装置のWS作業メモリ114に受信したWS情報114aを上書きする(ステップS102)。続いて、ビュー管理部104は、更新後のWS情報114aに基づいて、表示するワークスペースの内容を更新する(ステップS104)。すなわち、表示ウィンドウ150の表示が更新される。同時に、トレイ管理部108は、表示する選択トレイ(個人)および選択トレイ(共有)の内容を更新する(ステップS106)。すなわち、表示ウィンドウ170および表示ウィンドウ180の表示が更新される。そして、処理はステップS108へ進む。
 ステップS108において、同期管理部116は、サーバ装置SRV(もしくは、他のクライエント装置CL)から、自装置のWS作業メモリ114に格納されている共有トレイ情報114cの最終更新時間より新しい共有トレイ情報114cを受信したか否かを判断する。最終更新時間より新しい共有トレイ情報114cを受信していない場合(ステップS108においてNOの場合)には、処理はステップS114へ進む。
 一方、最終更新時間より新しい共有トレイ情報114cを受信した場合(ステップS108においてYESの場合)には、同期管理部116は、自装置のWS作業メモリ114に受信した共有トレイ情報114cを上書きする(ステップS110)。続いて、トレイ管理部108は、表示する選択トレイ(共有)の内容を更新する(ステップS112)。すなわち、表示ウィンドウ180の表示が更新される。そして、処理はステップS114へ進む。
 ステップS114において、操作管理部102は、実体オブジェクトの新規作成・変更・削除などがユーザによって操作されたか否かを判断する。実体オブジェクトの新規作成・変更・削除などがユーザによって操作されていない場合(ステップS114においてNOの場合)には、処理はステップS120へ進む。
 一方、実体オブジェクトの新規作成・変更・削除などがユーザによって操作された場合(ステップS114においてYESの場合)には、操作管理部102は、オブジェクト管理部106にユーザ操作に応じた指示を与える。この指示に応答して、オブジェクト管理部106は、WS作業メモリ114に格納されているWS情報114aを変更する(ステップS116)。続いて、同期管理部116は、自装置の更新後のWS情報114aをサーバ装置SRV(もしくは、他のクライエント装置CL)へ送信する(ステップS118)。そして、処理はステップS120へ進む。
 ステップS120において、操作管理部102は、ビューの変更がユーザによって操作されたか否かを判断する。ビューの変更がユーザによって操作されていない場合(ステップS120においてNOの場合)には、処理はステップS124へ進む。
 一方、ビューの変更がユーザによって操作された場合(ステップS120においてYESの場合)には、操作管理部102は、ビュー管理部104にユーザ操作に応じた指示を与える。この指示に応答して、ビュー管理部104は、WS作業メモリ114に格納されているWS情報114aに定義されている情報のうち、ユーザにより指定されたビュー範囲に含まれる情報に基づいて、表示するワークスペースの内容を更新する(ステップS122)。すなわち、表示ウィンドウ150の表示が更新される。そして、処理はステップS124へ進む。
 ステップS124において、操作管理部102は、トレイ機能の有効化がユーザによって操作されたか否かを判断する。トレイ機能の有効化がユーザによって操作されていない場合(ステップS124においてNOの場合)には、処理はステップS128へ進む。
 一方、トレイ機能の有効化がユーザによって操作された場合(ステップS124においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、選択トレイ(個人)または選択トレイ(共有)を表示する(ステップS126)。すなわち、表示ウィンドウ170または表示ウィンドウ180が新たに生成される。そして、処理はステップS128へ進む。
 ステップS128において、操作管理部102は、ワークスペース上のいずれかの実体オブジェクトが選択トレイ(個人)にドロップする操作がなされたか否かを判断する。ワークスペース上のいずれかの実体オブジェクトが選択トレイ(個人)にドロップする操作がなされていない場合(ステップS128においてNOの場合)には、処理はステップS134へ進む。
 一方、ワークスペース上のいずれかの実体オブジェクトが選択トレイ(個人)にドロップする操作がなされた場合(ステップS124においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS情報114aに記述された内容のうち、ドロップされた実体オブジェクトに関連付けられた内容を個人トレイ情報114bに追加する(ステップS130)。このとき、WS作業メモリ114に未だ個人トレイ情報114bが格納されていない場合には、トレイ管理部108は、個人トレイ情報114bを新規作成する。続いて、トレイ管理部108は、表示する選択トレイ(個人)の内容を更新する(ステップS132)。すなわち、表示ウィンドウ170の表示が更新される。そして、処理はステップS130へ進む。
 ステップS134において、操作管理部102は、ワークスペース上のいずれかの実体オブジェクトが選択トレイ(共有)にドロップする操作がなされたか否かを判断する。ワークスペース上のいずれかの実体オブジェクトが選択トレイ(共有)にドロップする操作がなされていない場合(ステップS134においてNOの場合)には、処理はステップS142へ進む。
 一方、ワークスペース上のいずれかの実体オブジェクトが選択トレイ(共有)にドロップする操作がなされた場合(ステップS134においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS情報114aに記述された内容のうち、ドロップされた実体オブジェクトに関連付けられた内容を共有トレイ情報114cに追加する(ステップS136)。このとき、WS作業メモリ114に未だ共有トレイ情報114cが格納されていない場合には、トレイ管理部108は、共有トレイ情報114cを新規作成する。続いて、トレイ管理部108は、表示する選択トレイ(共有)の内容を更新する(ステップS138)。すなわち、表示ウィンドウ170の表示が更新される。さらに、同期管理部116は、自装置の更新後の共有トレイ情報114cをサーバ装置SRV(もしくは、他のクライエント装置CL)へ送信する(ステップS140)。そして、処理はステップS142へ進む。
 ステップS142において、操作管理部102は、選択トレイ(個人)上のエイリアスオブジェクトの変更・削除などがユーザによって操作されたか否かを判断する。選択トレイ(個人)上のエイリアスオブジェクトの変更・削除などがユーザによって操作されていない場合(ステップS142においてNOの場合)には、処理はステップS148へ進む。
 一方、選択トレイ(個人)上のエイリアスオブジェクトの変更・削除などがユーザによって操作された場合(ステップS142においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS作業メモリ114に格納されている個人トレイ情報114bを変更する(ステップS144)。続いて、トレイ管理部108は、表示する選択トレイ(個人)の内容を更新する(ステップS146)。すなわち、表示ウィンドウ170の表示が更新される。そして、処理はステップS148へ進む。
 ステップS148において、操作管理部102は、選択トレイ(共有)上のエイリアスオブジェクトの変更・削除などがユーザによって操作されたか否かを判断する。選択トレイ(共有トレイ)上のエイリアスオブジェクトの変更・削除などがユーザによって操作されていない場合(ステップS148においてNOの場合)には、処理はステップS156へ進む。
 一方、選択トレイ(共有)上のエイリアスオブジェクトの変更・削除などがユーザによって操作された場合(ステップS148においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS作業メモリ114に格納されている共有トレイ情報114cを変更する(ステップS150)。続いて、トレイ管理部108は、表示する選択トレイ(共有)の内容を更新する(ステップS152)。すなわち、表示ウィンドウ180の表示が更新される。さらに、同期管理部116は、自装置の更新後の共有トレイ情報114cをサーバ装置SRV(もしくは、他のクライエント装置CL)へ送信する(ステップS154)。そして、処理はステップS156へ進む。
 ステップS156において、操作管理部102は、選択トレイ(個人)上のエイリアスオブジェクトのプレビューがユーザによって操作されたか否かを判断する。選択トレイ(個人)上のエイリアスオブジェクトのプレビューがユーザによって操作されていない場合(ステップS156においてNOの場合)には、処理はステップS162へ進む。
 一方、選択トレイ(個人)上のエイリアスオブジェクトのプレビューがユーザによって操作された場合(ステップS156においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS作業メモリ114に格納されている個人トレイ情報114bの<preview>タグの内容を変更する(ステップS158)。そして、トレイ管理部108は、この個人トレイ情報114bの<preview>タグの内容変更をビュー管理部104へ通知する。この通知に応答して、ビュー管理部104は、WS情報114aを参照した上で、個人トレイ情報114bの<preview>タグの内容に従ってその表示属性を変更した上で、表示するワークスペースの内容を更新する(ステップS160)。すなわち、表示ウィンドウ150の表示が更新される。そして、処理はステップS162へ進む。
 ステップS162において、操作管理部102は、選択トレイ(共有)上のエイリアスオブジェクトのプレビューがユーザによって操作されたか否かを判断する。選択トレイ(共有)上のエイリアスオブジェクトのプレビューがユーザによって操作されていない場合(ステップS162においてNOの場合)には、処理はステップS170へ進む。
 一方、選択トレイ(共有)上のエイリアスオブジェクトのプレビューがユーザによって操作された場合(ステップS162においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS作業メモリ114に格納されている共有トレイ情報114cの<preview>タグの内容を変更する(ステップS164)。そして、トレイ管理部108は、この共有トレイ情報114cの<preview>タグの内容変更をビュー管理部104へ通知する。この通知に応答して、ビュー管理部104は、WS情報114aを参照した上で、共有トレイ情報114cの<preview>タグの内容に従ってその表示属性を変更した上で、表示するワークスペースの内容を更新する(ステップS166)。すなわち、表示ウィンドウ150の表示が更新される。さらに、同期管理部116は、自装置の更新後の共有トレイ情報114cをサーバ装置SRV(もしくは、他のクライエント装置CL)へ送信する(ステップS168)。そして、処理はステップS170へ進む。
 ステップS170において、選択トレイ(個人)上のエイリアスオブジェクトに対する変更内容の実体オブジェクトへの反映がユーザによって操作されたか否かを判断する。選択トレイ(個人)上のエイリアスオブジェクトに対する変更内容の実体オブジェクトへの反映がユーザによって操作されていない場合(ステップS170においてNOの場合)には、処理はステップS184へ進む。
 一方、選択トレイ(個人)上のエイリアスオブジェクトに対する変更内容の実体オブジェクトへの反映がユーザによって操作された場合(ステップS170においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS作業メモリ114に格納されている個人トレイ情報114bにおける変更内容をオブジェクト管理部106へ出力する(ステップS172)。この変更内容の出力に応答して、オブジェクト管理部106は、WS情報114aに含まれる内容のうち、指定された識別番号を有する実体オブジェクトの記述を更新する(ステップS174)。続いて、ビュー管理部104は、プレビュー指示に伴う表示属性の変更を解除した上で、更新後のWS情報114aに基づいて、表示するワークスペースの内容を更新する(ステップS176)。すなわち、表示ウィンドウ150の表示が更新される。同時に、トレイ管理部108は、WS作業メモリ114に格納されている個人トレイ情報114bの<preview>タグの内容をリセットする(ステップS178)とともに、表示する選択トレイ(個人)の内容を更新する(ステップS180)。すなわち、表示ウィンドウ170の表示が更新される。さらに、同期管理部116は、自装置の更新後のWS情報114aをサーバ装置SRV(もしくは、他のクライエント装置CL)へ送信する(ステップS182)。そして、処理はステップS184へ進む。
 ステップS184において、選択トレイ(共有)上のエイリアスオブジェクトに対する変更内容の実体オブジェクトへの反映がユーザによって操作されたか否かを判断する。選択トレイ(共有)上のエイリアスオブジェクトに対する変更内容の実体オブジェクトへの反映がユーザによって操作されていない場合(ステップS184においてNOの場合)には、処理はリターンする。
 一方、選択トレイ(共有)上のエイリアスオブジェクトに対する変更内容の実体オブジェクトへの反映がユーザによって操作された場合(ステップS184においてYESの場合)には、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS作業メモリ114に格納されている共有トレイ情報114cにおける変更内容をオブジェクト管理部106へ出力する(ステップS186)。この変更内容の出力に応答して、オブジェクト管理部106は、WS情報114aに含まれる内容のうち、指定された識別番号を有する実体オブジェクトの記述を更新する(ステップS188)。続いて、ビュー管理部104は、プレビュー指示に伴う表示属性の変更を解除した上で、更新後のWS情報114aに基づいて、表示するワークスペースの内容を更新する(ステップS190)。すなわち、表示ウィンドウ150の表示が更新される。同時に、トレイ管理部108は、WS作業メモリ114に格納されている共有トレイ情報114cの<preview>タグの内容をリセットする(ステップS192)とともに、表示する選択トレイ(共有)の内容を更新する(ステップS194)。すなわち、表示ウィンドウ170の表示が更新される。さらに、同期管理部116は、自装置の更新後のWS情報114aおよび共有トレイ情報114cをサーバ装置SRV(もしくは、他のクライエント装置CL)へ送信する(ステップS196)。そして、処理はリターンする。
 <シーケンス>
 上述の図23A~図23Cに示す各ステップに対応するシーケンス図は、図24A~図24Cに示すようになる。
 図24A~図24Cは、この発明の実施に形態1に従うワークスペースの提供に係る処理手順を示すシーケンス図である。なお、図24A~図24Cに示すシーケンス図においては、クライエント装置CLとサーバ装置SRVとの間でデータ(情報)の整合性を確保する方法として、何らかの変化が生じた装置が通知すべき相手先に能動的に通知する構成を採用しているが、サーバ装置SRVが定期的に更新の有無を確認するようにしてもよい。
 また、図24A~図24Cに示すシーケンス図においては、いずれかのクライエント装置CLにおいてワークスペースおよび/または選択トレイにおける表示が更新された場合に、これらの表示を行なうためのWS情報114a、ならびに個人トレイ情報114bおよび共有トレイ情報114cを共有する構成について例示するが、何らかのイベントが発生したことを示すコマンド(いずれの属性値が変更されたのかといった情報)のみを遣り取りし、現在の状態からの差分に基づいて、表示を更新するようにしてもよい。
 <実施の形態1による作用・効果>
 この発明の実施の形態1によれば、既に作成されているワークスペース上のオブジェクトに対して影響を与えることなく、必要なオブジェクトだけを選択的に取扱うことができる。
 また、この発明の実施の形態1によれば、エイリアスオブジェクトの選択操作中や選択された状態においても、エイリアスオブジェクトに関連付けられた実態オブジェクトの内容や表示状態を視認することができる。典型的には、文書や画像などの編集を行なうシーンにおいて、複数箇所を同時選択して、一括変換、選択箇所と全体の位置関係との俯瞰、および選択箇所に対する編集作業後の状態確認といった作業が容易化できる。
 これにより、対象のオブジェクトの意味を常に理解でき、この結果、対象のオブジェクトの意味を確認するといった余計な操作が不要となるので、思考を途切れさせることなく作業を継続できる。
 また、この発明の実施の形態1によれば、選択トレイ(共有)に追加されたエイリアスオブジェクトのみが他のクライエント装置CL(ユーザ)と共有され、選択トレイ(個人)に追加されたエイリアスオブジェクトは当該ユーザが使用するクライエント装置CLでのみ表示される。そのため、複数のメンバーからなるグループで作業する場合などにおいて、作業の過程や状況および対象の実体オブジェクトの種類などに応じて、必要なエイリアスオブジェクトだけを任意に共有することができる。
 上述した文書や画像などの編集作業において、同じワークスペース上に各メンバーが作成・編集して持ちよったオブジェクトが散在している場合もある。これらのオブジェクトを集約するようなシーンを考えると、この発明の実施の形態1によれば、一人のユーザがすべてのオブジェクトを選択する必要はないので、ワークスペースが広すぎる場合であっても、複数のユーザが分担してオブジェクトを選択することで、選択対象に漏れが生じたり、選択に多くの時間を要したりといった不具合の発生を抑制できる。
 また、他のメンバーが作成したオブジェクトを一見しただけではその内容を理解できない場合も多いが、複数のユーザが分担してオブジェクトを選択することで、対象のオブジェクトを漏れなく適切に選択することができる。
 さらに、特定のメンバーが有している専門スキルや専門知識に基づいてオブジェクトを選択し、選択されたオブジェクトに対する処理を議長等などの代表メンバーがその裁量で自由に判断するといった業務を行なうこともできる。
 また、この発明の実施の形態1によれば、選択トレイ上において、関連性の強いオブジェクト同士を近くにかためて配置したり、表示サイズ等を揃えて並べて配置したりといった作業を、ワークスペース上の実体オブジェクトに影響を与えることなくできる。同時に、選択トレイ上でのこのような作業結果をそのまま利用して、続けて対象のオブジェクトや編集内容を決定して操作を行なうことができる。さらに、このようなエイリアスオブジェクトに対する編集内容を関連付けられた実体オブジェクトへも容易に反映させることができる。
 また、この発明の実施の形態1によれば、選択トレイ上に存在する複数のエイリアスオブジェクトの選択状態や配置状態を見たうえで、さらにエイリアスオブジェクトを絞り込むための操作をしたり、必要なエイリアスオブジェクトをカテゴライズ(分類)したりするための操作を容易に行なうことができる。たとえば、選択トレイ上に4つのエイリアスオブジェクトA,B,C,Dが存在していた場合に、エイリアスオブジェクトAについては、その表示態様を縁取り・太字・拡大に設定し、エイリアスオブジェクトBについては、その表示態様を縁取り・拡大に設定し、エイリアスオブジェクトCについては、その表示態様を太字・拡大に設定し、エイリアスオブジェクトDについては、その表示態様を太字のみに設定するといった操作が可能である。さらに、このような複合的な操作を指示する場合には、エイリアスオブジェクトAおよびBを選択して「縁取り」を指示し、続いて、エイリアスオブジェクトAおよびCを選択して「太字」を指示し、さらにエイリアスオブジェクトA~Dのすべてを選択して「拡大」を指示する、といったように、合計3回の操作で済む。そのため、複合的な操作を指示する場合であっても、効率的に行なうことができる。
 [実施の形態2]
 上述の実施の形態1においては、いわゆるサーバ・クライエント構成のシステムについて例示した。これに対して、実施の形態2においては、いわゆるピア・トゥ・ピア構成のシステムについて説明する。
 <全体構成>
 図25は、この発明の実施の形態2に従うワークスペースを提供するための情報処理システムの概略構成図である。
 図25を参照して、本実施の形態に従う情報処理システムは、ネットワークNWを介して互いにデータ通信可能に接続された複数の情報処理装置である、複数のクライエント装置CL1~CLNからなる。すなわち、本実施の形態に従う情報処理システムでは、サーバ装置が存在せず、クライエント装置CLの各々が他のすべてのクライエント装置CLに対して直接的にデータの遣り取りを行なって、同期処理などを完了する。その他の構成については、上述の実施の形態1と同様であるので、詳細な説明は繰返さない。
 図26は、この発明の実施の形態2におけるデータの遣り取りを示す模式図である。図26を参照して、本実施の形態の形態に従う同期処理の概要としては、クライエント装置CL1~CLNの各々が保持するWS情報114aと他のクライエント装置CLが保持するWS情報114aとの間で直接的に同期が取られるとともに、クライエント装置CL1~CLNの各々が保持する共有トレイ情報114cと他のクライエント装置CLが保持する共有トレイ情報114cとの間でも直接的に同期が取られる。
 なお、クライエント装置CL同士のデータ送信のタイミング、送信対象となる他のクライエント装置CL、送信方向、送信内容(全て送信するのか部分的に送信するのか)などは、情報処理システム構成および性能などに応じて任意に設定することができる。
 その他の構成については、上述の実施の形態1と同様であるので、詳細な説明は繰返さない。
 <実施の形態2による作用・効果>
 この発明の実施の形態2によれば、上述の実施の形態1における作用・効果に加えて、以下の作用・効果を得ることができる。すなわち、この発明の実施の形態2によれば、ピア・トゥ・ピア構成を採用しているので、社外などのサーバ接続不能な場所においても、共有作業が必要なメンバー同士の端末を接続するだけで共同作業を行なうことができる。
 [実施の形態3]
 上述の実施の形態1においては、クライエント装置CLおよびサーバ装置SRVの各々が、個人用のトレイ機能を提供するための個人トレイ情報と、共有用のトレイ機能を提供するための共有トレイ情報とをそれぞれ別個に保持する構成について例示した。これに対して、実施の形態3においては、トレイ情報に記述されるエイリアスオブジェクトの単位で、個人用であるか、あるいは共有用であるかを定義する構成について例示する。
 図27は、この発明の実施の形態3に従うクライエント装置CLで実現される制御構造を示す概略図である。図27に示す制御構造は、図17に示す実施の形態1に従うクライエント装置CLで実現される制御構造において、WS作業メモリ114に、個人トレイ情報114bおよび共有トレイ情報114cを保持する形態に代えて、トレイ情報114dを保持する形態を採用したものである。その他については、図17と同様であるので、詳細な説明は繰返さない。
 <トレイ機能>
 次に、図28および図29を参照して、本実施の形態に従うトレイ機能について説明する。上述したように、本実施の形態に従うトレイ機能としては、エイリアスオブジェクト単位で、各メンバー個人が使用することを目的としたものであるか、あるいは同一グループ内に属するメンバーで共有することを目的としたものであるかを設定できる。
 図28は、この発明の実施の形態3に従うクライエント装置CL上におけるトレイ機能における操作を説明するための図である。図29は、図28に対応するトレイ情報の内容の一例を示す図である。
 本実施の形態に従うトレイ機能は、上述の図10に示す手順と同様に、表示ウィンドウ150の上部に表示される「表示」ボタンをユーザがカーソルCRSなどによって選択することで起動する。このような操作によって、選択トレイを示す表示ウィンドウ170Aが新たに生成される。この表示ウィンドウ170Aとして現われる選択トレイは、個人用および共有用を兼ねている。
 図28(a)に示すように、ワークスペースを提供する表示ウィンドウ150および選択トレイを示す表示ウィンドウ170Aが表示された状態で、たとえば、クライエント装置CL1のユーザがワークスペース上の任意のオブジェクトを選択トレイに追加する場合を考える。すなわち、クライエント装置CL1のユーザが、表示ウィンドウ150上のオブジェクトOBJ4,OBJ5,OBJ8をそれぞれ表示ウィンドウ170までドラッグ・アンド・ドロップすることで、選択トレイ上に対応するエイリアスオブジェクトALS1,ALS2,ALS3がそれぞれ現われる。なお、選択トレイに追加する方法としては、上述のドラッグ・アンド・ドロップに加えて、ワークスペース上のオブジェクトを選択した上でプルダウンメニューによって当該オブジェクトを記憶し、ドロップしたい先を指定した状態でドロップコマンドを指定する、といった別の方法でもよい。すなわち、指定したワークスペース上のオブジェクトを選択トレイ上の指定した位置にドロップできる方法であれば、いずれの方法を採用してもよい。
 なお、これらのエイリアスオブジェクトの本質は、上述の実施の形態1と同様である。すなわち、選択トレイ上のエイリアスオブジェクトは、ワークスペース上の実体オブジェクトとは独立して存在する。そのため、原則として、ユーザが選択トレイ上のエイリアスオブジェクトに対して移動、編集、削除などの操作を行なっても、ワークスペース上の実体オブジェクトは影響を受けない。その他の点については、実施の形態1と同様であるので、詳細な説明は繰返さない
 本実施の形態に従う選択トレイにおいては、一例として、生成されたエイリアスオブジェクトは、初期値として個人用モード(非共有モード)に設定される。そして、クライエント装置CLのユーザは、共有すべきであると考えるエイリアスオブジェクトを選択的に共有モードに設定できる。
 具体的な一例として、図28(a)に示すように、クライエント装置CL1のユーザが、表示されるカーソルCRSを選択トレイ上のエイリアスオブジェクトALS2上に配置した上で、マウスに対するクリック操作(典型的には、右クリック)を行なうと、共有モード/非共有モードを切替えるためのダイアログ190が表示される。このダイアログ190において、ユーザが「選択は共有」を指定することで、指定されたエイリアスオブジェクトALS2は、「非共有モード」から「共有モード」へ切替えられる。
 この操作によって、後述するように、エイリアスオブジェクトALS2が選択トレイ上に配置されている情報が他のクライエント装置CL2~CLNに送信される。その結果、図28(b)に示すように、他のクライエント装置CL2~CLNの各々における選択トレイには、「共有モード」に設定されたエイリアスオブジェクトALS2が表示される。
 これに対して、「非共有モード」に維持されたままのエイリアスオブジェクトALS1およびALS3は、他のクライエント装置CL2~CLNの各々における選択トレイ上には表示されない。
 このような機能は、いずれのクライエント装置CLの選択トレイにおける操作においても同様に提供される。したがって、クライエント装置CLを使用する各ユーザは、複数のメンバーからなるグループにおいて共有すべきものと各自が考えるエイリアスオブジェクトを「共有モード」に設定することで複数のユーザによる知的創造作業が実現できる。
 次に、図28に示すような動作を実現するためのデータ処理について、図29を参照して説明する。図28(a)に示すようなエイリアスオブジェクトALS1,ALS2,ALS3は、図29(a)に示すようなトレイ情報によって定義される。すなわち、記述321,322,323は、それぞれエイリアスオブジェクトALS1,ALS2,ALS3に対応する。「非共有モード」に維持されているエイリアスオブジェクトALS1およびALS3をそれぞれ定義する記述321および323については、基本的に実施の形態1におけるトレイ情報の内容と同様である。しかしながら、「共有モード」に設定されたエイリアスオブジェクトALS2を定義する記述322については、「共有モード」であることを示す<share_mode>タグおよび</share_mode>タグが埋込まれている。すなわち、これらの<share_mode>タグおよび</share_mode>タグに囲まれて、「ON」の値が定義されることで、対応するエイリアスオブジェクトが「共有モード」であると解釈される。
 そのため、各クライエント装置CLのトレイ管理部108(図27)は、ユーザがいずれかのエイリアスオブジェクトを「共有モード」に設定すると、対応する記述に「<share_mode>ON</share_mode>」という記述を追加し、一方、ユーザがいずれかのエイリアスオブジェクトを「非共有モード」に設定すると、対応する記述から「<share_mode>ON</share_mode>」という記述を削除する。なお、各エイリアスオブジェクトに対応する記述に、<share_mode>タグおよび</share_mode>タグを埋込んでおき、「共有モード」または「非共有モード」の指定に応じて、その値をそれぞれ「ON」または「OFF」と書き換えるようにしてもよい。
 また、クライエント装置CLの間では、共有モードに設定されたエイリアスオブジェクトの記述のみが共有される。すなわち、図29(a)に示す記述のうち、共有モードに設定されたエイリアスオブジェクトALS2に対応する記述322のみが、他のクライエント装置CL2~CLNへ送信される。このように、共有モードに設定された記述のみを送受信することで、処理時間および通信データ量を低減できる。
 <シーケンス>
 上述したようなエイリアスオブジェクト単位での共有モードおよび非共有モードの切替えに伴う同期処理について図30を参照して説明する。
 図30は、この発明の実施の形態3に従うトレイ機能に係る処理手順を示すシーケンス図である。図30に示す各処理は、典型的に、CPU2がプログラムを実行することで進められる。すなわち、図27に示す各部に相当する機能により実行される。
 図30を参照して、まず、ワークスペース上のいずれかの実体オブジェクトが選択トレイにドロップする操作がなされると(シーケンスSQ200)、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、WS情報114aに記述された内容のうち、ドロップされた実体オブジェクトに関連付けられた内容をトレイ情報114dに追加する(シーケンスSQ202)。このとき、WS作業メモリ114に未だトレイ情報114dが格納されていない場合には、トレイ管理部108は、トレイ情報114dを新規作成する。続いて、トレイ管理部108は、表示する選択トレイの内容を更新する(シーケンスSQ204)。
 次に、選択トレイのエイリアスオブジェクトを共有モードへ変更する操作がなされると(シーケンスSQ206)、操作管理部102は、トレイ管理部108にユーザ操作に応じた指示を与える。この指示に応答して、トレイ管理部108は、ユーザが、選択トレイ上の指定されたエイリアスオブジェクトに対応するトレイ情報114dを更新する。すなわち、トレイ管理部108は、図29(a)に示すような、<share_mode>ON</share_mode>という記述を追加もしくは削除する。
 続いて、同期管理部116は、自装置の更新後のトレイ情報114dに定義されたエイリアスオブジェクトの記述のうち、共有モードへ変更されたトレイ情報をサーバ装置SRVへ送信する(シーケンスSQ210)。すなわち、トレイ情報114dのすべての内容ではなく、共有モードに設定されたエイリアスオブジェクトを定義する情報のみが送信される。
 これに対して、サーバ装置SRVの同期管理部216(図18)は、クライエント装置CLからのトレイ情報を受信すると、自装置のWS作業メモリ214に記憶されているトレイ情報を更新する(シーケンスSQ212)。さらに、サーバ装置SRVの同期管理部216(図18)は、自装置のWS作業メモリ214に記憶されているトレイ情報を他のクライエント装置CL2~CLNへ送信する(シーケンスSQ214)。
 続いて、クライエント装置CL2~CLNの同期管理部116は、サーバ装置SRVからのトレイ情報を受信すると、自装置のWS作業メモリ214に記憶されているトレイ情報を更新する(シーケンスSQ216)。このとき、WS作業メモリ114に未だトレイ情報114dが格納されていない場合には、トレイ管理部108は、トレイ情報114dを新規作成する。続いて、トレイ管理部108は、表示する選択トレイの内容を更新する(シーケンスSQ218)。
 このような一連のシーケンスによって、いずれかのクライエント装置CLにおいて共有モードに設定されたエイリアスオブジェクトが他のクライエント装置CL2~CLNとの間で共有される。
 その他の構成および処理などについては、上述の実施の形態1または2と同様であるので、詳細な説明は繰返さない
 <実施の形態3による作用・効果>
 この発明の実施の形態3によれば、上述の実施の形態1における作用・効果に加えて、以下の作用・効果を得ることができる。すなわち、この発明の実施の形態3によれば、エイリアスオブジェクト単位で「共有モード」および「非共有モード」を設定できるので、「共有モード」から「非共有モード」への変更の必要が生じた場合や、「非共有モード」から「共有モード」への変更の必要が生じた場合には、より簡便な操作でこれらの変更を行なうことができる。
 また、この発明の実施の形態3によれば、このように、共有モードに設定されたエイリアスオブジェクトに対応するデータだけがクライエント装置CLおよびサーバ装置SRVの間で送受信されるので、処理時間および通信データ量を低減できる。
 [実施の形態4]
 上述の実施の形態3においては、選択トレイ上のオブジェクト(エイリアスオブジェクト)毎に共有するか否かを設定できる構成について例示した。これに対して、実施の形態4においては、エイリアスオブジェクト毎に、共有するか否かに加えて、共有する場合には、いずれのユーザとの間で共有するかを指定できる構成について例示する。
 図31は、この発明の実施の形態4に従うクライエント装置CLで実現される制御構造を示す概略図である。図31に示す制御構造は、図17に示す実施の形態1に従うクライエント装置CLで実現される制御構造において、ユーザ認証部134およびユーザ管理部132を追加するとともに、WS作業メモリ114に、個人トレイ情報114bおよび共有トレイ情報114cを保持する形態に代えて、トレイ情報114eを保持する形態を採用したものである。
 ユーザ認証部134は、対応するクライエント装置CLにおいて本実施の形態に従うワークスペースを使用するユーザを認証する。具体的には、ユーザ認証部134は、ワークスペースの使用を要求するユーザに対して、IDおよびパスワードの入力を促す。そして、ユーザからIDおよびパスワードの入力があると、所定のデータベースなどを参照してユーザ認証を行なう。ユーザ認証が成功すると、ユーザによる当該ワークスペースの使用を許可するとともに、現在使用中(ログイン中)のユーザ名(ユーザID)を保持する。ユーザ認証を行なう構成については、周知技術であるので、これ以上の詳細な説明は行なわない。なお、本実施の形態では、各クライエント装置CLを使用するユーザが特定できればよいので、必ずしもパスワードによる認証は必須ではない。
 ユーザ管理部132は、ユーザ認証部134における認証結果に基づいて、選択トレイ上のオブジェクト(エイリアスオブジェクト)の各々を作成したユーザ、および各エイリアスオブジェクトの共有が許可されたユーザなどを管理する。
 その他については、図17と同様であるので、詳細な説明は繰返さない。
 <トレイ機能>
 次に、図32を参照して、本実施の形態に従うトレイ機能について説明する。上述したように、本実施の形態に従うトレイ機能としては、エイリアスオブジェクト単位で、各ユーザ個人が使用することを目的としたものであるか、あるいは他のユーザとの間で共有することを目的としたものであるかを設定できる。さらに、他のユーザとの間で共有することを目的とするエイリアスオブジェクトについては、いずれのユーザとの間で共有するかについても指定することができる。
 図32は、この発明の実施の形態4に従うクライエント装置CL1~CL3上におけるトレイ機能における操作を説明するための図である。図32(a)には、クライエント装置CL1における選択トレイである表示ウィンドウ170Bの一例を示す。ここで、クライエント装置CL1には、ユーザ認証部134によって認証されたユーザ(IDが「tanaka」)がログインしているものとする。また、図32(b)には、クライエント装置CL2における選択トレイである表示ウィンドウ170Bの一例を示す。ここで、クライエント装置CL2には、ユーザ認証部134によって認証されたユーザ(IDが「hayashi」)がログインしているものとする。また、図32(c)には、クライエント装置CL3における選択トレイである表示ウィンドウ170Bの一例を示す。ここで、クライエント装置CL3には、ユーザ認証部134によって認証されたユーザ(IDが「suzuki」)がログインしているものとする。
 なお、本実施の形態に従うトレイ機能は、上述の図10に示す手順と同様に、表示ウィンドウ150の上部に表示される「表示」ボタンをユーザがカーソルCRSなどによって選択することで起動する。このような操作によって、選択トレイを示す表示ウィンドウ170Bが新たに生成される。この表示ウィンドウ170Bとして現われる選択トレイは、個人用および共有用を兼ねている。
 上述した他の実施の形態と同様に、クライエント装置CLにログインしているユーザの各々は、ワークスペース上の任意の実体オブジェクトを表示ウィンドウ170Bまでドラッグ・アンド・ドロップすることで、選択トレイ上に任意のエイリアスオブジェクトを追加することができるものとする。なお、選択トレイに追加する方法としては、上述のドラッグ・アンド・ドロップに加えて、ワークスペース上のオブジェクトを選択した上でプルダウンメニューによって当該オブジェクトを記憶し、ドロップしたい先を指定した状態でドロップコマンドを指定する、といった別の方法でもよい。すなわち、指定したワークスペース上のオブジェクトを選択トレイ上の指定した位置にドロップできる方法であれば、いずれの方法を採用してもよい。また、追加されるエイリアスオブジェクトの本質は、上述の実施の形態1と同様である。
 また、このように追加されたエイリアスオブジェクトは、初期値として個人用モード、すなわち他のユーザとの間での共有が無効に設定されているものとする。
 まず、図32(a)に示すように、クライエント装置CL1にログインしているユーザである「tanaka」が、クライエント装置CL1の選択トレイにエイリアスオブジェクトALS1を追加したとする。また、図32(c)に示すように、クライエント装置CL3にログインしているユーザである「suzuki」が、クライエント装置CL3の選択トレイにエイリアスオブジェクトALS2およびALS3を追加したとする。
 引き続いて、図32(a)に示すように、ユーザ「tanaka」が他の2人のユーザ(「hayashi」および「suzuki」)との間で、エイリアスオブジェクトALS1を共有することを望んだ場合を考える。このような場合には、ユーザ「tanaka」は、表示されるカーソルCRSを選択トレイ上のエイリアスオブジェクトALS1上に配置した上で、マウスに対するクリック操作(典型的には、右クリック)を行なう。すると、公開許可先を指定するためのダイアログ196Aが表示される。このダイアログ196Aによって、対象のエイリアスオブジェクトを共有すべき他のユーザが指定される。より具体的には、このダイアログ196Aには、他のクライエント装置CL2~CLNにログインしているユーザの一覧が表示される。ユーザは、この一覧表示されたユーザのうち、エイリアスオブジェクトを共有すべき相手を任意に選択できる。
 図32(a)においては、他の2人のユーザ(「hayashi」および「suzuki」)をいずれも指定したものとする。すると、図32(b)および図32(c)に示すように、対象であるエイリアスオブジェクトALS1は、公開許可先として指定された「hayashi」および「suzuki」がそれぞれログインしているクライエント装置CL2およびCL3の選択トレイに表示されることになる。
 また、図32(c)に示すように、ユーザ「suzuki」がユーザ「tanaka」との間でのみ、エイリアスオブジェクトALS2を共有することを望んだ場合を考える。このような場合には、ユーザ「suzuki」は、表示されるカーソルCRSを選択トレイ上のエイリアスオブジェクトALS2上に配置した上で、マウスに対するクリック操作(典型的には、右クリック)を行なう。すると、上述したのと同様に、公開許可先を指定するためのダイアログ196Bが表示される。そして、ユーザ「suzuki」が対象であるエイリアスオブジェクトALS2について、「tanaka」のみを公開許可先として指定する。すると、図32(a)に示されるように、対象であるエイリアスオブジェクトALS2は、公開許可先として指定された「tanaka」のログイン先であるクライエント装置CL1の選択トレイに表示されるようになる。しかしながら、図32(b)に示されるように、公開許可先として指定されていない「hayashi」のログイン先であるクライエント装置CL2の選択トレイには表示されない。
 また、図32(c)に示すように、ユーザ「suzuki」がエイリアスオブジェクトALS3を自身だけでの検討に使用したいような場合を考える。このような場合には、ユーザ「suzuki」は、選択トレイ上のエイリアスオブジェクトALS3について、何らの操作も行なわない。すると、図32(a)および図32(b)に示されるように、このエイリアスオブジェクトALS3については、ユーザ「suzuki」のログイン先であるクライエント装置CL3を除いた他のクライエント装置CLの選択トレイには表示されない。
 次に、図32に示すような動作を実現するためのデータ処理について、図33を参照して説明する。図33は、図32に対応するトレイ情報の内容の一例を示す図である。図33(a)は、ユーザ「tanaka」のログイン先であるクライエント装置CL1で保持されるトレイ情報の一例を示す。図33(b)は、ユーザ「hayashi」のログイン先であるクライエント装置CL2で保持されるトレイ情報の一例を示す。図33(c)は、ユーザ「suzuki」のログイン先であるクライエント装置CL3で保持されるトレイ情報の一例を示す。
 図32に示すエイリアスオブジェクトALS1,ALS2,ALS3は、図33に示すようなトレイ情報によって定義される。より具体的には、エイリアスオブジェクトALS1は、図33(a)~図33(c)に共通して存在する記述331によって定義される。この記述331については、基本的に実施の形態1におけるトレイ情報の内容と同様であるが、特に本実施の形態に従うエイリアスオブジェクトには、当該エイリアスオブジェクトを追加(作成)したユーザを特定するための情報(ID)が付加される。すなわち、記述331には、対応するエイリアスオブジェクトを追加(作成)したユーザを特定する<user id= >タグおよび</user>タグを含む。なお、この対応するエイリアスオブジェクトを追加(作成)したユーザを特定する<user id= >タグおよび</user>タグは、いずれのエイリアスオブジェクトについても付加される(図33(c)参照)。
 さらに、エイリアスオブジェクトALS1については、ユーザ「hayashi」およびユーザ「suzuki」が公開許可先として指定されているので、記述331には、これらの指定の定義も含まれる。すなわち、記述331には、対応するエイリアスオブジェクトの公開許可先(ユーザ)を特定する<access_flag= >タグおよび</access_flag>タグを含む。なお、図33(b)に示すように、複数のユーザを指定する場合には、論理記号「|」を用いて記述される。図33(b)に示す記述331には、ユーザ操作に応じて、<access_flag= >タグおよび</access_flag>タグに囲まれて、「hayashi」および「suzuki」が定義されている。
 また、エイリアスオブジェクトALS2については、図33(a)および図33(c)に共通して存在する記述332によって定義される。この記述332の内容については、上述したエイリアスオブジェクトALS1に対応する記述331の内容と同様である。なお、記述332には、<access_flag= >タグおよび</access_flag>タグに囲まれて、唯一の公開許可先として指定された「tanaka」が定義されている。
 これに対して、他のいずれのユーザとの間においても共有されない、エイリアスオブジェクトALS3については、図33(c)に存在する記述333によって定義される。この記述333においては、<access_flag= >タグおよび</access_flag>タグに囲まれて、公開許可先が存在しなことを意味する「NULL」が定義されている。
 このように、各クライエント装置CLのトレイ管理部108(図31)は、ユーザがいずれかのエイリアスオブジェクトを特定のユーザとの間で共有することを設定すると、その公開許可先を特定できるように、対応する記述を順次更新する。
 <シーケンス>
 上述したような本実施の形態に従うエイリアスオブジェクト単位での共有モードおよび非共有モードに係る同期処理については、上述した図30に示すシーケンス図と同様であるので、詳細な説明は繰返さない。
 その他の構成および処理などについては、上述の実施の形態1~3と同様であるので、詳細な説明は繰返さない
 <実施の形態4による作用・効果>
 この発明の実施の形態4によれば、上述の実施の形態1および3における作用・効果に加えて、以下の作用・効果を得ることができる。すなわち、この発明の実施の形態4によれば、エイリアスオブジェクト単位で共有すべきか否かを設定できるとともに、共有すべきものと設定したエイリアスオブジェクトについては、その共有先(共有する相手)を指定することができる。これにより、たとえば、複数のメンバーからなる同一グループ内に、複数のサブグループが設けられているような場合などには、対応するサブグループに属するメンバー間でのみエイリアスオブジェクトを共有するといった使用形態を採用することができる。あるいは、複数のサブグループのリーダ同士で、最終的な意思決定を行なうといった使用形態にも適用できる。
 [その他の実施の形態]
 本発明に係るプログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明に係るプログラムに含まれ得る。
 さらに、本発明に係るプログラムは、他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明に係るプログラムに含まれ得る。
 提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記憶された記憶媒体とを含む。
 さらに、本発明に係るプログラムによって実現される機能の一部または全部を専用のハードウェアによって構成してもよい。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 2 CPU、4 内部バス、6 出力装置、8 通信インターフェイス、10 入力装置、12 ハードディスク(HDD)、14 メモリ、16 CD-ROMドライブ、16a CD-ROM、18 フレキシブルディスク(FD)ドライブ、18a フレキシブルディスク、100 処理部、102 操作管理部、104 ビュー管理部、106 オブジェクト管理部、108 トレイ管理部、110 WS空間管理部、112 入出力部、114,214 作業メモリ、114a,214a WS情報、114b 個人トレイ情報、114c,214c 共有トレイ情報、114d,114e トレイ情報、116,216 同期管理部、120 WS格納部、130 入出力制御部、132 ユーザ管理部、134 ユーザ認証部、CL,CL1~CLN クライエント装置、NW ネットワーク、SRV サーバ装置。

Claims (11)

  1.  複数のユーザによるアクセス可能な仮想作業空間を提供する情報処理システムであって、
     互いにデータ通信可能に接続された複数の情報処理装置(CL)を備え、
     前記複数の情報処理装置の各々は、
      前記仮想作業空間と前記仮想作業空間に含まれる第1オブジェクトとを定義する第1情報を保持するための保持手段(114)と含み、前記第1情報は、他の情報処理装置との間で同期されており、
      前記第1情報に基づいて、前記仮想作業空間の一部または全部の内容をユーザに向けて表示するための第1表示手段(104,106)と、
      ユーザ操作に応答して、前記仮想作業空間に含まれる第1オブジェクトに関連付けられ、かつ前記第1オブジェクトとは独立して変更可能な第2オブジェクトを表示するための第2表示手段(104,108)と、
      前記複数の情報処理装置の間で共有すべき旨の指示に応答して、指示された第2オブジェクトを定義する第2情報を同期して保持するための同期手段(116)とを含む、情報処理システム。
  2.  前記第1表示手段は、前記複数の情報処理装置の間で共有すべき第2オブジェクト用の第1領域と、前記複数の情報処理装置の間で共有すべきではない第2オブジェクト用の第2領域とを、前記仮想作業空間の一部または全部の内容の表示とは区別して表示し、
     前記同期手段は、前記第1領域に表示されている第2オブジェクトに対応する第2情報を同期して保持するとともに、前記第2領域に表示されている第2オブジェクトに対応する第2情報を同期しない、請求の範囲第1項に記載の情報処理システム。
  3.  前記複数の情報処理装置の各々は、前記第2オブジェクト毎に、前記複数の情報処理装置の間で共有する第1モードと前記複数の情報処理装置の間で共有しない第2モードとのいずれかの設定を受付けるモード設定手段をさらに含み、
     前記同期手段は、前記第1モードに設定されている第2オブジェクトに対応する第2情報を同期して保持するとともに、前記第2モードに設定されている第2オブジェクトに対応する第2情報を同期しない、請求の範囲第1項に記載の情報処理システム。
  4.  前記複数の情報処理装置の各々は、
     当該情報処理装置を使用するユーザを認証する認証手段と、
     前記第2オブジェクト毎に、共有を許可するユーザの設定を受付ける共有先設定手段とをさらに含み、
     前記同期手段は、前記第2オブジェクトについての前記共有を許可することが設定されたユーザが使用する情報処理装置との間で、前記第2オブジェクトに対応する第2情報を同期して保持する、請求の範囲第1項に記載の情報処理システム。
  5.  前記第1情報は、
      前記第1オブジェクトに対応付けられた識別情報および前記第1オブジェクトの実体を定義する記述を含み、
     前記第2表示手段は、
      前記第1オブジェクトを特定するための前記識別情報を前記第2オブジェクトと対応付けて保持する手段を含む、請求の範囲第1項に記載の情報処理システム。
  6.  前記第2表示手段は、
      ユーザ操作に応答して、前記第1オブジェクトとは独立して、前記第2オブジェクトの表示位置を変更する手段をさらに含む、請求の範囲第1項に記載の情報処理システム。
  7.  前記第2表示手段は、
      ユーザ操作に応答して、前記第1オブジェクトとは独立して、前記第2オブジェクトの表示態様を変更する手段をさらに含む、請求の範囲第1項に記載の情報処理システム。
  8.  前記第2表示手段は、複数の前記第2オブジェクトを並べて表示可能であり、
     前記第2表示手段は、
      ユーザ操作に応答して、前記第2オブジェクト同士を関連付けるオブジェクトを追加する手段をさらに含む、請求の範囲第1項に記載の情報処理システム。
  9.  前記複数の情報処理装置の少なくとも1つは、
      ユーザ操作に応答して、前記第2オブジェクトに対してなされた変更を前記第1オブジェクトに反映する反映手段をさらに含む、請求の範囲第1項に記載の情報処理システム。
  10.  仮想作業空間を提供する情報処理装置(CL)であって、
     前記仮想作業空間と前記仮想作業空間に含まれる第1オブジェクトとを定義する第1情報を保持するための保持手段(114)と含み、前記第1情報は、他の情報処理装置との間で同期されており、
     前記第1情報に基づいて、前記仮想作業空間の一部または全部の内容をユーザに向けて表示するための第1表示手段(104,106)と、
     ユーザ操作に応答して、前記仮想作業空間に含まれる第1オブジェクトに関連付けられ、かつ前記第1オブジェクトとは独立して変更可能な第2オブジェクトを表示するための第2表示手段(104,108)と、
     他の情報処理装置の間で共有すべき旨の指示に応答して、指示された第2オブジェクトを定義する第2情報を他の情報処理装置と同期して保持するための同期手段(116)とを備える、情報処理装置。
  11.  互いにデータ通信可能に接続された複数の情報処理装置を用いて、複数のユーザによるアクセス可能な仮想作業空間を提供する情報処理方法であって、
     前記複数の情報処理装置の各々が、前記仮想作業空間と前記仮想作業空間に含まれる第1オブジェクトとを定義する第1情報を保持するステップ(S102)と、
     前記複数の情報処理装置の各々が保持する前記第1情報を同期するステップ(S116,S118)と、
     前記複数の情報処理装置のうち1つの情報処理装置が、前記第1情報に基づいて、前記仮想作業空間の一部または全部の内容をユーザに向けて表示するステップ(S104)と、
     当該情報処理装置が、ユーザ操作に応答して、前記仮想作業空間に含まれる第1オブジェクトに関連付けられ、かつ前記第1オブジェクトとは独立して変更可能な第2オブジェクトを表示するステップ(S110,S112;S136,S138;S150,S152)と、
     当該情報処理装置が、前記複数の情報処理装置の間で共有すべき旨の指示に応答して、指示された第2オブジェクトを定義する第2情報を他の情報処理装置との間で同期するステップ(S140;S154)とを備える、情報処理方法。
PCT/JP2010/051712 2009-02-09 2010-02-05 情報処理システム、情報処理装置および情報処理方法 WO2010090286A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010549522A JPWO2010090286A1 (ja) 2009-02-09 2010-02-05 情報処理システム、情報処理装置および情報処理方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-027252 2009-02-09
JP2009027252 2009-02-09

Publications (1)

Publication Number Publication Date
WO2010090286A1 true WO2010090286A1 (ja) 2010-08-12

Family

ID=42542177

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/051712 WO2010090286A1 (ja) 2009-02-09 2010-02-05 情報処理システム、情報処理装置および情報処理方法

Country Status (2)

Country Link
JP (1) JPWO2010090286A1 (ja)
WO (1) WO2010090286A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130972A (zh) * 2011-04-27 2011-07-20 苏州阔地网络科技有限公司 一种不同分辨率下图片居中后白板同步的方法及系统
US20130264474A1 (en) * 2010-12-17 2013-10-10 Alexander Kholomeev Ion Detection System and Method
WO2016000638A1 (en) * 2014-07-03 2016-01-07 U3D Limited Networking cooperation method and machine using such method
EP3435633A1 (en) * 2017-07-28 2019-01-30 Ricoh Company, Limited Communication system, communication method, and electronic apparatus
WO2021081745A1 (zh) * 2019-10-29 2021-05-06 北京嗨动视觉科技有限公司 硬件资源分配方法及装置、视频处理器和显示系统
EP4181114A1 (en) * 2021-11-15 2023-05-17 Fujitsu Limited Virtual workspace shared by multiple terminals

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07271690A (ja) * 1994-04-01 1995-10-20 Matsushita Electric Ind Co Ltd 共有画面表示装置
JP2000099233A (ja) * 1998-09-24 2000-04-07 Fujitsu Ltd 共有画面制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07271690A (ja) * 1994-04-01 1995-10-20 Matsushita Electric Ind Co Ltd 共有画面表示装置
JP2000099233A (ja) * 1998-09-24 2000-04-07 Fujitsu Ltd 共有画面制御装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130264474A1 (en) * 2010-12-17 2013-10-10 Alexander Kholomeev Ion Detection System and Method
US9214322B2 (en) * 2010-12-17 2015-12-15 Thermo Fisher Scientific (Bremen) Gmbh Ion detection system and method
US9530632B2 (en) 2010-12-17 2016-12-27 Thermo Fisher Scientific (Bremen) Gmbh Ion detection system and method
CN102130972A (zh) * 2011-04-27 2011-07-20 苏州阔地网络科技有限公司 一种不同分辨率下图片居中后白板同步的方法及系统
WO2016000638A1 (en) * 2014-07-03 2016-01-07 U3D Limited Networking cooperation method and machine using such method
KR20170040225A (ko) * 2014-07-03 2017-04-12 에이블 월드 인터내셔널 리미티드 네트워킹 협력 작업의 방법 및 상기 방법을 응용하는 기계
KR102428231B1 (ko) 2014-07-03 2022-08-01 에이블 월드 인터내셔널 리미티드 네트워킹 협력 작업의 방법 및 상기 방법을 응용하는 기계
EP3435633A1 (en) * 2017-07-28 2019-01-30 Ricoh Company, Limited Communication system, communication method, and electronic apparatus
US10528317B2 (en) 2017-07-28 2020-01-07 Ricoh Company, Ltd. Communication system, communication method, and electronic apparatus
WO2021081745A1 (zh) * 2019-10-29 2021-05-06 北京嗨动视觉科技有限公司 硬件资源分配方法及装置、视频处理器和显示系统
EP4181114A1 (en) * 2021-11-15 2023-05-17 Fujitsu Limited Virtual workspace shared by multiple terminals

Also Published As

Publication number Publication date
JPWO2010090286A1 (ja) 2012-08-09

Similar Documents

Publication Publication Date Title
US10819768B2 (en) User interaction with desktop environment
US10657716B2 (en) Collaborative augmented reality system
US11928315B2 (en) Digital processing systems and methods for tagging extraction engine for generating new documents in collaborative work systems
US11275481B2 (en) Collaborative augmented reality system
CN104885048B (zh) 用于管理数字内容项的系统和方法
JP5211430B2 (ja) 電子会議システム、電子会議支援プログラム、電子会議支援方法、電子会議制御装置、会議サーバコンピュータ
JP6417408B2 (ja) 空間的イベントマップを備えた共同システム
RU2374681C2 (ru) Система и способ, предназначенные для совместного использования файлов в групповых совместно используемых областях одноранговой сети
EP3314826A1 (en) Object group processing and selection gestures for grouping objects in a collaboration system
JP6018045B2 (ja) 選択したデータの一時的な書式設定とグラフ化
WO2010090286A1 (ja) 情報処理システム、情報処理装置および情報処理方法
JP2010092455A (ja) ファイル管理システム及びプログラム
JP6322140B2 (ja) 協働遠隔アプリケーションの共用および注釈のための双方向デジタル表層を含む非連結アプリケーション拡張
US20150293641A1 (en) Device and method for visual sharing of data
AU2007200089A1 (en) Electronic conference support device, electronic conference support method, and information terminal device of electronic conference system
US20230143275A1 (en) Software clipboard
JP2016170675A (ja) 電子ホワイトボードシステム、電子ホワイトボードアクセス権付与方法およびそのプログラム
JP2010165178A (ja) 情報処理方法および情報処理装置
Wang et al. SurfaceSlide: a multitouch digital pathology platform
CN105659221A (zh) 具有用于连接组件的增强工具的图形用户界面
CN110476187A (zh) 缝纫机式多边形绘制方法
Zurita et al. A collaborative face-to-face design support system based on sketching and gesturing
CN111061381A (zh) 屏幕全局输入控制系统及方法
CN107665087A (zh) 图像显示装置、图像显示方法以及图像显示系统
JP2010267214A (ja) 情報処理装置、方法およびプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10738617

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010549522

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10738617

Country of ref document: EP

Kind code of ref document: A1