# Patent

## Title
Method and apparatus for composing multimedia documents

## Abstract

A document sharing system includes producing an updatable collection of multimedia documents. A collection overview sheet provides a facile medium for handling and distributing large collections of documents. The system includes techniques for subsequent access to the collection, including printing all or portions of the collection.

## Background
CROSS-REFERENCES TO RELATED APPLICATIONS
This application is related to the following commonly owned and co-pending U.S. patent applications which are hereby incorporated by reference for all purposes:

    
    
        U.S. patent application Ser. No. 10/404,927 titled “Multimedia Document Sharing Method and Apparatus,” concurrently filed;
        U.S. patent application Ser. No. 09/521,252 titled “Method and System for Information Management to Facilitate the Exchange of Ideas During a Collaborative Effort,” filed Mar. 8, 2000;
        U.S. application Ser. No. 10/001,895 titled “Paper-Based Interface For Multimedia Information,” filed Nov. 19, 2001;
        U.S. patent application Ser. No. 10/081,129 titled “Multimedia Visualization & Integration Environment,” filed Feb. 21, 2002;
        U.S. application Ser. No. 10/085,569 titled “A Document Distribution and Storage System”, filed Feb. 26, 2002;
        U.S. patent application Ser. No. 10/174,522 titled “Television-based Visualization and Navigation Interface,” filed Jun. 17, 2002;
        U.S. application Ser. No. 10/175,540 titled “Device For Generating A Multimedia Paper Document,” filed Jun. 18, 2002; and
        U.S. application Ser. No. 10/307,235 titled “Multimodal Access of Meeting Recordings,” filed Nov. 29, 2002.
    
    


BACKGROUND OF THE INVENTION
The present invention relates generally to document management and more specifically to access and dissemination of collections of multimedia documents.
Despite the ideal of a paperless environment that the popularization of computers had promised, paper continues to dominate the office landscape. Ironically, the computer itself has been a major contributing source of paper proliferation. The computer simplifies the task of document composition, and thus has enabled even greater numbers of publishers. The computer promotes individual expression through the use of graphics tools, image capture devices, image enhancement tools, and so on, in addition to traditional text editing. Oftentimes, documents must be shared among colleagues, thus generating even more paper.
Despite advances in technology, suitable personal output devices as a practical substitute for paper remain to be developed. Personal data assistants (PDAs such as Palm Pilot® by 3Comm, Inc., and similar hand held devices) typically do not have the storage capacity, the processing capacity, the display capacity, or the connectivity to effectively present documents to the user in a convenient and useful manner. Unlike paper, devices such as PDAs are not universal. While many document formats exist for representing information, not all devices have all the software needed to read all documents. Worse yet, PDA documents typically use formats that are not readily available on a desktop or laptop PC. Usually, documents have to be converted between formats. Paper remains the simplest way in many situations for storing information (e.g., record keeping), distributing information, and controlling access to information.
Paper has been an integral component of civilization for thousands of years. Its replacement is not likely to occur soon, if ever, despite the ubiquity of computer-based technology. Electronic information almost invariably is reduced, at least in part, to paper. Perhaps then, the role of the computer is not to achieve a paperless society. Instead, the role of the computer may be as a tool to move effortlessly between paper and electronic representations and maintain connections between the paper and the electronic media with which it was created. Generally, there is a need to use computers to more effectively share information and to provide access to that information. In addition, the information should not be limited to any particular mode of expression, allowing for all forms of communication media.
SUMMARY OF THE INVENTION
Various aspects of the present invention facilitate sharing of multimedia documents amongst users. In accordance with aspects of the invention, documents can be organized into one or more collections. Information can be added to the collection, thus creating different versions of collections. A collection coversheet representative of the collection can be printed on a suitable medium, such as paper for example. This coversheet can provide access to the collection. In this way, documents in the collection can be shared by distributing copies of the coversheet to recipients.
According to other aspects of the invention, a collection coversheet can be used to browse a collection and to direct actions on elements in the collection. Annotative information can be used to facilitate navigation of the collection. Annotative information can be use to specify actions to be performed on elements in the collection.



BRIEF DESCRIPTION OF THE DRAWINGS
An understanding of the present invention is provided by the following figures along with the discussion that follows, where:
FIG. 1A is a pictorial representation showing an overview of an illustrative embodiment of various aspects of the present invention;
FIG. 1B is a pictorial representation of the control panel and display of the multi-function scanner/printer shown in FIG. 1A;
FIG. 1C is a pictorial representation of a coversheet and a stack of papers used in the present invention;
FIG. 2 is a block diagram showing the elements of an illustrative embodiment of various aspects of the present invention;
FIG. 3 shows a block diagram of an embodiment of a multi-function peripheral in accordance with an embodiment of the present invention;
FIG. 4 is a block diagram of an embodiment of the memory of the multi-function peripheral in accordance with an embodiment of the present invention;
FIG. 5A shows an example of an empty collection coversheet in accordance with an embodiment of an aspect of the present invention;
FIG. 5B shows an example of a non-empty collection coversheet in accordance with an embodiment of an aspect of the present invention;
FIG. 6 illustrates schematically the typical steps and flow of information for composing or modifying a collection;
FIG. 7 is a flow diagram, highlighting the steps for finding or creating media for a collection;
FIG. 8 is a flow diagram, showing some of the tasks that might be chosen by the user of the present invention;
FIG. 9 is a flow diagram showing some of the steps for collecting and retrieving media for a new or modified collection of the present invention;
FIG. 10 is a flow diagram highlighting the steps for finding machine-readable codes or information in the present invention;
FIG. 11 is a flow diagram showing how the present invention in one embodiment might request and store user options and preferences;
FIG. 12 is a flow chart showing various steps in the electronic or automatic creation or modification of a collection using the present invention;
FIG. 13 is a flow chart highlighting possible user modification of a collection;
FIG. 14 is a flow chart showing the steps taken during printing of a collection and notification of the existence of a new or modified collection;
FIG. 15A shows an example coversheet with one fax action mark and one annotation;
FIG. 15B shows an example coversheet with an email action mark and a print action mark;
FIG. 15C shows an example coversheet with a grouping action mark;
FIG. 16A show an example coversheets before adding new media to the collection;
FIG. 16B shows an example coversheet after adding new media to the collection;
FIG. 17A shows an example coversheet of a collection which will be explored;
FIG. 17B shows a pictorial representation of the collection overview for the collection whose coversheet is shown in FIG. 17A as it might appear on a display device;
FIG. 17C shows a pictorial representation of a new collection overview that was selected during the course of exploring the containing collection;
FIG. 18 is a flow diagram highlighting the steps required for automatically adding thumbnails of new media to the overview of a new or existing collection;
FIG. 19 is a pictorial representation illustrating the steps shown in FIG. 18 and the successful addition of a thumbnail to an existing collection overview;
FIG. 20A shows an example overview of a collection containing several documents, pictures, and other media;
FIG. 20B shows an example of an overview of a different collection which contains some of the same documents, pictures, and other media but which also contains different media also;
FIG. 20C shows an overview of a collection that is the result of the merging two similar collections into a single collection;
FIG. 21 illustrates how a single collection that branches into separate versions might be merged back into a single version containing the entire collection from both versions of the collection;
FIG. 22A shows an example coversheet representing a collection in which part of the overview is read-only;
FIG. 22B shows an example coversheet showing a collection in which part of the overview is read-only after media has been added to the collection;
FIG. 23A shows an example of a collection coversheet in which the overview is divided into three separate regions where two of the regions have read-only permissions and the remaining region has read-write permission;
FIG. 23B shows the same collection coversheet shown in FIG. 23A after new media has been added to the collection;
FIG. 24A illustrates one of the ways in which the region permissions can be implemented on the collection server;
FIG. 24B illustrates a second way of implementing region permissions for collection coversheets;
FIG. 25A shows a pictorial representation of a user input screen used in the present invention for adding a title and notification information and requesting printouts and modifications when creating or modifying collections; and
FIG. 25B shows a pictorial representation of a user input screen for capturing a text string on a small touchscreen such as those used on some multi-function peripherals.



DESCRIPTION OF THE SPECIFIC EMBODIMENTS
Collections of paper documents are used for many purposes. Many people keep folders of documents on their desks or in their file system which are related to a particular task or to a particular person. A law firm keeps a “docket” of papers for a specific case or client. A medical office keeps at least one file of papers for each patient who uses that office. It is important to keep those papers together to facilitate work tasks related to those papers. For instance, in a medical office, if a doctor wishes to review a patient's medical history, she can flip through that patient's folder and look at what tests have been performed or what illnesses the patient has suffered in the past.
The terms “paper”, “paper medium”, or “sheet” as used in this application are intended to refer to any tangible medium on which information can be formed whether by a printing process, written, drawn, imprinted, embossed, etc. For purposes of this invention, the term “printing” is intended to encompass all manner of forming images on an image-bearing medium whether by optical, mechanical, thermal, or electrical methods, or combinations thereof.
Information is increasingly being captured and kept in electronic form as well. For instance, even though a picture taken with a digital camera can be printed, it originated electronically and could be stored electronically as well. Digital files are easier to copy and move around than paper in many cases. Both paper and electronic media have distinct advantages.
Until now, paper has had to forgo the advantages of electronic media. With the advent of programmable MFPs or multi-function peripherals, it is much easier to convert paper into electronic form. It is now possible to set up an MFP to acquire pages of a document and convert them into electronic form and store those documents in collections.
Collections in this specification have a specific meaning. A “collection” can include one or more groups of electronic documents or media which might include digital images, audio recordings, scanned images from pages of a document, files like a Microsoft Word documents or Microsoft Excel spreadsheets. Collections can also contain pointers to other collections. Collections can include user-provided markings, annotations, and such. Collections can also include metadata representing related information such as date of creation, modification date, access permissions, and so on.
A collection is stored on a collection server and has a specific address or identifier, similar to a URL or uniform resource locater, which identifier is unique and provides a pointer to the collection. A collection has a coversheet which displays a representation of the contents of the collection with an overview image showing thumbnails which represent all of the documents in the collection. More details about collections will be described in another part of this specification.
The system exemplar shown in FIG. 1 is a pictorial representation of an illustrative embodiment showing the various components that are part of the present invention. A corresponding block diagram is given in FIG. 2, showing various functional components. Multiple data capture device examples are shown to illustrate the data capture functionality of the present invention. In a particular embodiment, a multifunction peripheral (MFP) 100 is provided for scanning documents 102 and 104 and to serve as a source of electronic information. Additional capture devices are provided, including but not limited to microphones 110, digital cameras 112, video cameras 114, memory cards and other removable media 116 as well as additional devices connected to the network that may not be near or in the same room with the MFP 100. The MFP 100 is connected through a network 200 to a collection server 108 which allows the MFP to create, store, and modify collections of media that will be described in more detail later in this specification.
Each MFP 100 has a control panel 106 which provides methods of controlling the MFP 100 through various means including but not limited to keypads 118, buttons and touchscreen displays 120. The control panel 106 also provides feedback to the user through the display 120 and indicator lights 122. The feedback might indicate the current state of the MFP or might indicate the task being completed by the MFP.
Also shown in FIG. 1 are documents 104 and a special document 102 called a collection coversheet. A collection coversheet 102 can be used with the MFP to carry out the methods of the present invention.
The MFP 100 includes the capability of scanning single or multiple pages in sequence and storing those internally or performing imaging operations on those pages. The MFP 100 also has the ability to print images either from its internal storage 316 or from memory 318 or from other capture devices. Other captures devices, including but not limited to a microphone 110, a digital camera 112, a video camera 114 or other devices can be provided to record media such as audio or activity such as a meeting, surveillance activity, and so on.
FIG. 3 is an illustrative example of a device embodying various aspects of the present invention. A typical multifunction peripheral (MFP) 100 is made up of various components that are shown in FIG. 3, some of which are not required in the operation of this invention. The MFP 100 has a scanner 302 which can image pages of a document and in conjunction with the automatic document feeder 308 can image multiple pages rapidly. Images of pages can be stored in a non-volatile storage area 316 which might be a disk drive or in any other memory storage area like the memory 318. The MFP 100 also contains a printer mechanism 304 which can retrieve paper from the paper supply 306 and print images which are stored in the memory 318, storage 316, obtained directly from the scanner 302, obtained from the processor 322 or from the network interface card 320 which can receive image print requests and images from the external network 200. Images to be printed can also come from the memory card reader 314, media capture devices 326 and 328 through a media capture port 310 or a USB or other port 312. Images can also be received or sent out through the fax interface 324.
The MFP can access other forms of media through electronic data input peripherals which may include magnetic media readers for magnetic media such as floppy disks, magnetic tape, fixed hard disks, removable hard disks, memory cards, and so on. Peripherals may also include optical media readers for optical storage media such as CDs, DVDs, magneto-optical disks, and the like. Information obtained from these peripherals can be incorporated or otherwise associated with scanned-in documents to enhance the document content.
The processor 322 controls the operation of the MFP components shown in FIG. 3. The control panel 106 can be used to instruct the processor 322 to use the components of the MFP 100 to make copies, scan documents or print faxes. MFPs are available from many companies, including Ricoh Company Ltd in Tokyo, Japan which makes a programmable MFP called the Aficio 1045 which contains many of the components shown in FIG. 3. Any suitably equipped MFP could be used in practicing this invention.
The memory 318 of the MFP contains modules which allow the operation of the MFP as well as the practice of the present invention.
FIG. 4 is a high level representation of various program modules resident in memory 318 for operating the MFP in accordance with the different aspects of the present invention. The scanning module 400 contains the instructions that the processor 322 in combination with the scanner 302 can use to scan pages of documents 104. The printing module 404 contains control instructions for receiving an image or a description of an image and driving the printer 304 causing the image to be printed on a piece of paper. MFPs are known in the art and made by many different companies so a complete description of the operation of the MFP is not necessary. The fax 408, network 402, storage 406, image conversion 424, memory card reader 422, media capture 426, USB and other port 430 modules will not be described because their purpose and function is well understood.
In addition to the typical MFP functions, the following modules are necessary for the operation of this invention. A collection management module 410 must be available which tells the processor how to communicate with the collection server and how to create and modify collections.
A thumbnail creation module 420 can create thumbnail representations of media, including a smaller version of an image, a single-frame from a video or even a waveform from a stored audio signal. These thumbnails are used at least by the overview generation module 410 which is used to create an overview of a collection. The overview is described in detail later and the overview generation module puts together the thumbnails representing the documents and media into a single image that can be displayed or printed and used for accessing the documents and media.
The machine readable code generation module 428 provides the MFP with the ability to create machine-readable codes like barcodes which represent specific collections. The machine-readable code locator/reader module can be used to find and decode machine-readable codes on collection coversheets in order to determine which coversheet was scanned by the scanning mechanism 302. Preferably, machine-readable codes are barcodes, though there are many ways of creating machine-readable indicia. Barcodes are robust and take up little space and are easily decoded using standard hardware and software. On company that sells software for locating and decoding a variety of barcodes is Axtel Applied Technology of Vista California USA. Decoding machine-readable codes is well known in the industry.
The control panel is controlled by the processor 322 using information from the user interface module 414 and the display generation module 416 which are part of the control panel module 412.
The use and operation of each of the hardware components and modules will be clarified during the description of the operation of the invention.
FIG. 5A shows an example collection coversheet 500 from an empty collection. An empty collection contains no media or documents. It is really just a placeholder for storing documents in the future. FIG. 5B shows a collection coversheet 102 with eight documents. Three of those documents are images from a digital camera, four documents are scanned pages from the MFP, and the bottom left document is a pointer to another collection which contains two documents. The collection overview is used as the thumbnail representation of the collection.
A collection coversheet 102 is a paper which represents a collection and is made up of a header 502, a string of text printed in a machine-readable format 504, a collection overview image 506, optionally, an area in which notes may be written 508, and optionally a human-readable version 510 of the text encoded in the machine-readable code 504.
The header 502 contains printed information about the collection, including the author of the collection, a list of zero, one or more people who will be notified if the collection is modified, time and date information about when the collection was last modified or when this coversheet was printed out, and an optional collection topic or subject.
The machine-readable code 504 contains an encoded version of a unique pointer to the collection on the collection server. This same pointer when presented in human-readable form 510 might be similar to a uniform resource locator or URL used in the world wide web and is called a collection identifier, distributed resource identifier, or DRI. The preferred implementation of the collection server uses these “distributed resource identifiers” or DRIs as unique collection pointers. DRIs are globally unique, difficult to guess, and can provide access to collections from anywhere on the internet. The pointer data stored in the barcode or written in human-readable form is the DRI. The barcode is just a machine-readable version of that DRI.
Within this specification the terms “collection identifier”, “distributed resource identifier”, and “DRI” will be used interchangeably and should be understood to mean the same thing—a unique identifier that points to a collection of media and documents stored on a collection server. In some cases, multiple identifiers point to the exact same collection in order to provide different ways of accessing that collection, but never will one identifier point to multiple collections. Also, the identifier might be written in human-readable form or machine-readable form. Both printed forms represent the same identifier and point to the same collection even though they look unlike each other.
The bar code representation 504 of a DRI allows for automated access to the collection without requiring the user to manually enter the location. It can be appreciated of course that any machine-readable indicium can be used instead of a bar code system, including optical character recognition (OCR) of the human-readable 510 DRI.
A bar code 504 and a corresponding human-readable DRI (distributed resource identifier) 510 are elements of the coversheet which indicate the location of the collection. In a particular embodiment of the invention, a 2-D bar code format is used. The DRI used for a collection points to a directory which contains the collection of documents as well as information used to build the collection overview and some additional metadata. DRIs can also point directly to an individual file the same way that a URL can point to either a directory or a file.
Since a collection typically comprises a multitude of documents, the DRI is often a directory reference rather than a reference to a particular file. For example, in an OS (operating system) such as Unix, the DRI can be a directory reference such as /usr/collection. Alternatively, the DRI can refer to a file which in turn leads to an identification of the constituent elements of a collection. In still another alternative, the DRI can be a reference to a database that stores the collection. It can be appreciated that still other alternatives for storing collections of information may be suitable.
In accordance with an aspect of the invention, the text of the DRI 510 may be made up of a string of characters which includes a random text component. This randomly (and thus, unguessable) generated text serves to prevent access to a collection because it is virtually impossible to guess. Identifying a collection with an identifier that has no correlation to the content of the collection may present a strong impediment to hacking attempts; the hacker simply has no idea where the collection may be located, or that the collection even exists.
The example DRI “/root/usr/collection” assumes a single-machine architecture. In a more generalized configuration of two or more machines, the DRI can include a machine name component. For example, a more accessible format such as the URL (universal resource locator) format for identifying world wide web (WWW) pages might be suitable. In accordance with this particular embodiment of the invention, the DRI constitutes the path portion of the URL. Purely by convention, the path portion uses the following naming format according to a particular embodiment of this aspect of the present invention:

. . . /-DDS-/ORIGIN/ . . . ,

where

    
    
        DDS is the name of a particular repository of collections, and
        ORIGIN is the fully-qualified hostname of the origin server for the collection identified by the DRI.
    
    


Thus, for example, suppose a collection is identified by the following URL:

    
    
        http://machine1.com/-msg-/machine2.com/2002/1022/398hy9y8h8#$30er#/1/

The IP address of the machine is identified by “machine1.com.” The path portion refers to a collection stored in a repository named “-msg-.” The original copy of the collection (i.e., its place of creation) is located on a machine named “machine2.com.” Thus, in this case, “machine1” contains a copy of the collection. In this particular embodiment of the invention, collections are contained in directories, though other data storage conventions can be used; e.g., collections can be stored and managed in a database. The collection shown in the example above is stored in a directory called:

“/2002/1022/398hy9y8h8#$30er#/1/.”

The pathname portion “/2002/1022” represents a date; e.g., date of creation of the collection. The string “398hy9y8h8#$30er#” represents randomly generated text. Finally, as will be discussed below, the directory represented by the terminal pathname “/1/” refers to the first (initial, original, base, etc.) version of the collection.

    
    


In this particular embodiment, both the host machine (“machine1”) and the origin machine (“machine2”) use the following directory structure and URL naming structure. The host machine has a directory called “-msg-” contained in its respective “root” directory for storing collections. The “-msg-” directory has a sub-directory called “machine2.com” which contains all the collections originating on “machine2.com.” Generally, a sub-directory is provided for each machine that can be an originator of a collection.
A DRI represents a collection by providing a unique, secure pointer to a directory or to a file within that directory on a collection server. A person or machine given the DRI will have enough information to access the collection in order to add to or modify the collection.
It is possible to modify a collection by adding new documents, creating annotations in the collection overview, changing the position of thumbnails in the overview or removing existing documents. Every time a collection is modified, the terminal pathname in the collection can be incremented so that the original collection with the original DRI is unchanged and the new collection is in a new directory. This allows a DRI to always point at the same unmodified collection and at the same time, newer versions of the collection are easy to find. In fact, most modern file systems and operating systems allow symbolic links or “aliases” to exist between files so that a single data file can appear to be located in two separate directories. Using such links, different versions of a collection can be built without duplicating any data files because a file that appears in the /1/ and the /2/ version can be linked rather than duplicated.
When a collection server modifies a collection, it is possible to create a new directory like /2/ and then create symbolic links in /2/ that point at files in /1/ without duplicating any files. New files added to this new version of the collection would reside directly in /2/ and files which were in /1/ and are not in /2/ remain without links. The annotations, overview and metadata in /2/ would be modified appropriately. This is well understood in the art.
In the preferred embodiment of the invention, scalable vector graphics files or SVG files are used to represent the collection overview and annotations 506. SVG files are a standard way of creating a visual representation on the World Wide Web and there are many viewers and tools for creating SVG. A collection preferably includes a specially named SVG file which can be used to construct an overview image 506 for the coversheet 102 or any display.
The SVG file includes information for displaying the thumbnails of individual documents and media stored in the collection. It also keeps track of annotations or sketch marks that are not part of any individual document. For instance, in a collection overview, the creator of the collection might want to indicate an association between two media files or documents by drawing a circle enclosing both files or drawing a line between them. The circle or line is only stored in the collection overview in the SVG file and is not part of either document. Annotations can include circles, sketch marks, transparent highlighting, text labels, or anything supported by the SVG graphics format.
Metadata about the individual files in the collection and their relationship to other files in the collection is stored preferably in an XML (extensible markup language) file. This information typically includes image width and height, links between images and their thumbnails and links between a document and an image representing that document. The exact format is unimportant as long as the collection server understands how to read and write the format.
Additional information related to the collection as a whole can also be stored in the metadata file. This information might include the time at which the message was created, the subject of the message, the name of the author of the collection, and contact information such as email addresses, fax numbers, etc. belonging to those who should be notified when a collection is altered.
FIG. 6 is a flow chart which shows the steps and information flow of the subject invention. Using the MFP and methods and apparatus described in this invention, it is possible to create and modify collections on a collection server. A new, empty collection can be created. A new non-empty collection can be created using available documents and media. Electronic media and paper documents can be added to existing collections. A collection can be printed. The media in a collection can be explored or perused on the display 120 of the MFP 100. Special coversheets can be created which allow only certain operations on collections, including read-only coversheets where the media can be printed or viewed, but the collection cannot be modified in any way.
Collections can be merged. Collections can be forwarded to additional email addresses. Also, actions can be taken on individual media in a collection using notes or actions written on the coversheet. Each of FIGS. 7 through 14 show more detail for the method and process of this invention.
A new empty collection can be created in the following manner. No existing DRI or collection will be needed for the new empty collection, so in FIG. 7 at block 700, the “No” branch is taken. At 712, no additional documents are needed and then at the following block 716, no digital objects are created and the process moves to block 800 in FIG. 8.
At block 800, the user chooses the “Create Empty Collection” selector to initiate the creation of a new empty collection. The system then moves to block 900 in FIG. 9 and determines whether or not media is required for this process. Since an empty collection requires no media, the rest of block 604 is skipped entirely.
The decision in block 900 could be driven by the absence of media rather than a decision based on the chosen task. Notice that the difference between creating a new empty collection and creating a new non-empty collection is simply that in the first case, no documents are put in the automatic document feeder of the MFP 100 and no electronic media is made available to the MFP 100 in block 600. In other words, the system could use a single button labeled “Create New Collection” to initiate both tasks and complete the task in different ways based on whether or not any documents or media were available to the MFP 100. Decision 900 would then be relabeled “Media available?”
Block 1000 in FIG. 10 shows the next decision point. When creating an empty collection, no media is available so blocks 1002, 1004, 1006, 1008, 1010 and 1012 are skipped.
Turning now to FIG. 11, blocks 1100, 1104, 1108, 1112, 1116, 1124, and 1120 are all decisions made by either the user or made by the MFP 100. The user can select options preferably through the control panel 106 of the MFP 100. For example, the dialog box 2500 shown in FIG. 25A and the virtual keyboard 2502 input shown in FIG. 25B could be used for entering collection subjects 2506 or email addresses 2508 while performing the steps indicated inside the preferences and options block 608. FIG. 25A shows an example of a dialog box 2500 that could be used for requesting some information from the user of the MFP 100. FIG. 25B shows a screen shot of a virtual keyboard 2502 displayed on the touchscreen of a Ricoh Aficio 1045 MFP 100 which is available for capturing information from the user of the MFP 100. This type of interaction is well understood and known in the art.
While creating a new collection, either a printout must be generated or the information about the new collection, including at least the DRI must be emailed or faxed to someone. Otherwise, the DRI will be lost to all but the collection server and will not be available for adding documents because no one will have or be able to guess the DRI.
At step 1100, if the user indicates that a printout of the coversheet should occur, then the MFP 100 at step 1102 stores an indicator that a printout of the coversheet should be performed. The indicator can be stored in memory or another appropriate place using means well understood in the art. If the user does not request a coversheet printout, the user and MFP move to the next step, block 1104.
It should be understood that although the options presented in blocks 1100, 1104, 1108, 1112, 1116, 1124, and 1120 are shown in the figure in a particular order, they need not be presented only in that order. It may make sense to present them in a different order or to present some or all of the options at once to the user of the MFP 100. The user could then decide in what order to address the options or which ones to leave as they are. Typically a set of options like those shown in block 608 are presented all at once in the form of a dialog box similar to the dialog 2500 shown in FIG. 25A. At any time, the user can choose to type in a subject in the subject box 2506, type in an email address in the email box 2508, or select annotate, modify, or print by checking the appropriate checkbox 2504. When the user has finished selecting options, she can press a button 2512, either the “OK” button to record the options or the “Cancel” button to cancel the selected options.
For creating a new, empty collection, the options shown in blocks 1100, 1104, 1108, and 1112 should be presented in some form to the user. If any of those options are selected, then the corresponding steps 1102, 1106, 1110, 1114 should be taken. In the case of a new collection, one of printing out the coversheet or faxing or emailing the collection identifier/DRI should be done. If the user indicates not to print at 1100 and provides no contact information at 1108, the MFP 100 should either print the coversheet anyway or let the user know that an email address is required. Without one of these options being activated, it is not necessary to complete the rest of the task because the collection will not be available to anyone.
When a user is adding to an existing collection, it is not necessary to have an email address or print, because that user already has a collection coversheet with the collection ID on it and the collection may also be associated with a set of one or more email addresses.
Step 1116 is ignored and skipped when creating a new collection because there is no layout to modify. However, it is possible to annotate a new empty collection by adding sketch marks or annotations which are stored in the SVG file as noted previously. If the user chooses to annotate a new empty collection at 1112, then the MFP stores an indicator so that at the appropriate time later in the process the user is given the option of adding annotations.
Step 1124 is not skipped because it is possible to establish all of or a portion of a new empty collection as “add-only”. A new “add-only” collection would be analogous to an anonymous ftp site which allows uploads but not directory listings. Such an ftp site is frequently used to allow many people to add documents to a directory where only a few people have permission to view the documents in that directory.
Step 1120 is skipped when creating a new empty collection because it is impossible to browse an empty collection.
There are many other options that will be clear to those skilled in the art which the user can select in block 608 that are not explicitly shown. It will be understood that it is impossible to enumerate all of the options available to the user and so a representative subset was chosen. It is understood that an option not shown might still be presented by the MFP 100 and selected by the user and this interaction will be considered within the scope of this invention.
In FIG. 12, at step 1200, since this is a new collection, the “Yes” branch is taken. The MFP 100 contacts the collection server 108 through the network 200 to request a new collection identifier or DRI. It should be understood that it is possible for the MFP to request identifiers in advance so that if the collection server is busy or temporarily offline, the MFP 100 can still create new collections. Preferably, the collection server is available during the operation of this invention.
After block 1202, when creating a new empty collection, no other tasks from FIG. 12 will be performed. None of blocks 1204, 1210, 1212, 1214, 1216, 1218, 1220, or 1222 apply to empty collections and those blocks are skipped.
Now, in FIG. 13, the user is given the option of modifying the collection. Only block 1306, 1310, and 1314 apply in this case. If the user has requested an opportunity to add annotations to this new empty collection, the MFP 100 can present a canvas and drawing tools like those found in any drawing program. In the preferred embodiment, a pen tool and a text tool would be provided to the user to allow her to sketch or draw on the empty canvas or add text notes or labels. Interfaces for drawing or adding text to a blank canvas are well known. When the user indicates that the annotation step is complete, the MFP 100 can convert the sketch marks and text into valid SVG elements and store those in the SVG file representing the new empty collection.
In the present invention, it is possible to create “add-only” or “read-only” collections. An “add-only” collection allows the user to add documents or media to the collection but does not allow the user to access any of the documents in the collection. For each “add-only” collection, there must be a corresponding “read-write” or full permission collection which points to the exact same collection of documents but is not restrictive in its access. The primary difference between the two collections with different access restrictions is the pointer with which the collection is accessed.
Suppose a regional sales manager wanted all of her salespeople to submit sales figures electronically using the present invention. She could create a collection which has a text note containing instructions for adding sales data to the collection. She could then create a “add-only” version of that collection. Using the “add-only” version of the collection, all the sales people could use the same collection coversheet to add pages of sales information to a collection without being able to access the sales information from other salespeople. The regional sales manager would retain the full permission collection coversheet so that she could access all of the information from the reporting salespeople.
By creating a “read-only” or locked collection, it is possible to give many people access to a collection of documents or media while preventing them from modifying it in any way. A “read-only” collection might have an underlying full-permission collection.
At block 1310 the user would probably not want to create a read-only collection because there is nothing to read when creating an empty collection. However, it is possible to create an empty “add-only” collection and if the user has selected that option in step 608 while indicating options and preferences, an add-only collection is created.
It is also possible to create a collection which has one or more read-only or add-only regions which are a subset of the complete overview. At block 1312, the overview of the collection is displayed preferably on the MFPs control panel display 120 and the user is provided with a set of tools which can be used to draw the boundaries of restricted permission regions. These tools could be like the selection tools found in Adobe Corporations Photoshop. Such selection tools and techniques are well known.
For each selected area, a permission could be established including “full-permission” or “read-write” which is the default, “read-only”, or “add-only”. Additional different permissions could be assigned as well and are considered to fall within the scope of this invention. Such permission regions could be noted in some metadata file within the collection, including either the main metadata file or a special metadata file which is specific to the permissions.
At block 1316, the “No” path is taken because the collection is only browsed during the “Print Collection” or “Browse Collection Contents” task.
At block 1314, all annotations are sent to the collection server. In other words, the SVG file is created and stored in the collection server at the directory pointed to by the collection identifier or DRI. Also, metadata files are uploaded if necessary.
In FIG. 14, if the coversheet 102 is to be printed 1400 then at block 1402 the MFP 100 composes a coversheet 102. A header block 502 is created including at least the date and time of the creation of the new collection. The DRI or identifier obtained from the collection server is added to the coversheet at the bottom in human-readable form 510 and then encoded in a industry standard two dimensional PDF417 type barcode 504 in the preferred embodiment and added to the upper right-hand corner of the coversheet. The SVG representing the overview 506 is converted to image form and added to the appropriate place in the coversheet. Additional information might also be added as deemed appropriate. The composition of the coversheet described here is one preferred possibility but anyone skilled in the art will recognize that there are many ways to lay out or compose a coversheet which are within the scope of this invention.
Once the coversheet 102 is composed it is printed using the printer 304 of the MFP 100. The “No” branch of the decision at block 1404 is taken since this collection is empty and there is nothing to print out other than the coversheet. If an email address was supplied in block 1110, the “Yes” branch of decision 1408 is taken and a notification is now sent at block 1410 to the email recipients specified and the task is complete 616. The user can pick up the printed coversheet from the printer if a coversheet was requested and the recipients of the email notification can check their email for the notification.
In the preferred embodiment, the collection server 108 is responsible for sending the email notification once the collection has been uploaded and put in place. The specific contents of the email is not important as long as a DRI is provided to the recipient so that the recipient can access the collection. Note that the collection server must be running some type of server like a web server that provides access to the collection once it is uploaded. This is well known and understood in the computing field so no additional explanation is required.
Block 602 shown in FIG. 6 and in detail in FIG. 8 shows more than 10 tasks that can be performed using the present invention. One task, that of creating a new empty collection has been described. The other additional tasks follow essentially the same path through the flow diagram of FIG. 6 but take different actions in each of the detailed flow diagrams depending on the task. Where necessary, some of the additional tasks will be explained in detail, but many of the operations are easily understood by those skilled in the art and will not be explained exhaustively.
The task of adding to an existing collection requires a collection to exist. To add to that collection at the MFP 100, the user must have a coversheet 102 from the existing collection. As mentioned, each collection identifier represents a single collection but collections can change over time. Each time a collection changes, the last path element in the DRI is modified. Those who have access to a single collection are thereby easily given access to all versions of that collection. For this invention, the version name or final pathname of /0/has a special significance and means the “latest” or “most recently created” version.
Preferably, pathname /1/ indicates the first version of the collection, /2/ represents the second version, etc. When a new collection is uploaded to the collection server, a new directory using the next integer is created. The next collection after /2/ would preferably be called /3/. In order to maintain unique version numbers, it is essential that only one device, i.e., the collection server, create the version number of final pathname. The version number cannot be created by the MFP because multiple MFPs might generate a number at the same time and choose the same name. Instead, the MFPs create a collection and upload it to a temporary directory on the collection server and when everything is uploaded, the collection server moves it into place and assigns the final pathname. FIG. 21 shows collection 2102 which is a new version of collection 2100 and 2002 which is a new version of 2100 also. It is easy to imagine two separate MFPs creating new versions of the /1/ collection 2100 simultaneously. If they could each choose a version number, they might both choose /2/. Instead, the MFPs preferably indicate to the collection server the collection on which the new version of the collections are based and the collection server assigns the new version numbers and prevents naming collisions.
When a document is added to a collection, it might be convenient to add it to the latest version of the collection regardless of which version of the DRI is on the coversheet. In the preferred embodiment, the /0/ pathname is chosen to signify the latest or most recent version of a collection. /0/ always indicates that any operation take place on the most recent version or latest version available. For instance, if someone creates a new collection it will be labeled /1/. After five modifications, the DRI of the latest version ends in /6/ in the preferred embodiment. The original creator of the collection might not have a collection coversheet with the DRI of the latest version on it.
Using a coversheet which is labeled /0/ for any of the operations enumerated in block 800 indicates to the MFP that the latest version should be used for the operation. For instance, when a printout of a collection is requested, the MFP would normally print out the version specified in the DRI. If the DRI has a /0/ at the end, this would tell the MFP to print the most recent version of the collection that it can access on the collection server. Of course, it's possible to ask the MFP 100 to print out the most recent version even with a coversheet with a DRI that doesn't end in /0/. If the MFP 100 gives the option to the user to print either the version on the coversheet or the latest version, the user can indicate her preference using the control panel 106 on the MFP 100. In each instance of an operation made possible by this invention, it is clear that the MFP could ask the user whether to use the given or latest version of the collection for the operation.
When creating a new collection, many of the steps taken by the user and the MFP are the same as when creating a new empty collection. The first difference is highlighted in the flow chart of FIG. 7. An existing DRI is not needed for this task and so no media or coversheets are required and from block 700 the “No” path is followed to block 712.
If the user has additional paper documents 104 at decision point 712, they can be placed on the automatic document feeder 308 at step 714. If the user has images or other documents in a memory card or some other media 116, the media 116 can be placed in the appropriate reader 310 312 or 314 during step 714. If there are no existing documents or media to add to the new collection, block 714 can be bypassed.
At block 716, if the user wishes to create some electronic media at the time of the creation of the new collection, step 718 is where the user records audio, video, still images, or other electronic media using any of the microphone 110 digital camera 112, video camera 114, or other media capturing device. If no new media is required, block 718 can be bypassed.
At block 800 in FIG. 8, the user indicates that a new collection should be created. Block 900 in FIG. 9 directs the flow along the “Yes” path since media is required for a new non-empty collection. Steps 902, 904, 906, and 908 are taken to retrieve any media paced on or in the MFP 100 by the user or recorded by the user. Those skilled in the art will understand that it is possible to find media by checking sensors, activating scanners, or searching file systems on connected memory cards. If the MFP 100 recorded audio or images using any of the recording devices 110, 112, or 114, it would have kept a pointer to that new media, perhaps in memory 318 or on an internal storage device 316 and the MFP 100 would select the newly created media as well.
If in block 604 no media was found because the user had not placed any media in a scanner or reader and had not recorded any new media, the MFP 100, through the control panel 106, could ask the user if she would like to create a new empty collection. If the response was affirmative, the remainder of the path through the flow charts in FIGS. 6-14 would be the same as creating a new empty collection which has already be described. In fact, it will be clear that it is not necessary for the user to differentiate between creating an empty collection and creating a new non-empty collection because the decisions on which path to take through the task flow charts are the same for both tasks except for a few key places. In those places, when there is media available, one path is taken and when there is not media available another path is taken. The user could just press a button labeled “New Collection” and if no media was available a new empty collection could be created and if there was media, a new collection with media could be created instead.
At block 1000, the “Yes” path is chosen because there is media available when creating a non-empty collection. In block 1002, the MFP 100 searches through images—the scanned documents 104 and captured images from a digital cameras 112, 114 or memory card 116 to find machine readable indicia containing DRIs 504. Techniques for locating barcodes in images is known in the art and available from a variety of sources.
In addition to searching for barcodes, the MFP 100 can search for “action requests” or written instructions to perform some action on a particular document in the collection. In the case of creating a new collection, no action requests are handled and so it is not necessary to look for them in block 1002. Action requests will be described in detail when discussing the “Perform noted actions” task from block 800.
In block 1004, each DRI is associated with the page of the document or image in which it was found. Since a new collection is being created, a DRI is not needed. However, the MFP 100 can recognize that a page containing a DRI represents a collection. Putting a page with a DRI into any collection, new or existing, could be understood as a request to add that collection to the new collection. In other words, the page containing the DRI represents a request to add the collection pointed to by that DRI to the new collection. The overview image of that collection will be retrieved and added as a thumbnail to the new collection and the subject of that collection will be used as the title for the thumbnail.
At block 1006, the “No” branch is taken because no action requests will be fulfilled in the creation of a new collection.
As in the creation of a new empty collection, it is desirable to query the user for preferences and options. If the user would like to email the DRI of the new collection to someone, she can indicate which email address or addresses should be notified in block 608. Only block 1116 and 1118 are different in this task than the new empty collection task described earlier. With an empty collection, there is no layout to modify. However, with a new non-empty collection the user might want to move around the thumbnails that represent the documents that are being added to the collection. Block 1116 represents the inquiry of the user about her preference and block 1118 indicates that the MFP 100 will store the preference for later recall at the appropriate time. While it is possible to browse a new collection after it has been created, block 1120 and 1122 are primarily related to the “Browse Collection” task and will be explained in more detail when that task is described. Blocks 1124 and 1126 are applicable to new non-empty collections.
Moving now to block 1200 in block 610, FIG. 12, the “Yes” path is taken to block 1202 because this is a new collection. One or more new identification numbers are requested and received from the collection server 108. Typically, only a single collection identifier is needed for a new collection. However, if the user desires to add some restrictions to the collection, more than a single collection ID might be needed. When creating an “add-only” collection where documents can be added but not retrieved, two collection identifiers are needed. Both collection identifiers will point to the same collection. One identifier will allow the user only to add documents or media to the collection and not allow the user to access the documents in the collection. The other identifier will allow full read-write access to the collection. If only a single collection ID had been acquired, there would be no way to access the contents of the collection, only add to it. Permission-based collection ID's will be discussed in detail later in the specification.
In block 1204, each document or page which was found to contain a DRI in machine-readable form is replaced with an image representing the collection pointed to by that DRI.
Blocks 1210 and 1212 are concerned with action requests and are not applicable to the current task of creating a new non-empty collection. Block 1214 applies only to tasks concerning restricted collections and is also skipped. At 1216, a thumbnail is created for each page or document or other media. The thumbnail is preferably a smaller version of the page that is similar in appearance but smaller in storage size and in number of pixels. With recorded audio, a thumbnail is just a representation of the audio and could be a waveform or even an standard computer icon representing the audio. In the preferred embodiment, the audio could be displayed as a rectangle containing a waveform whose shape is based on the audio content and whose length corresponds to the duration of the audio recording. A video thumbnail could be a single frame or a small number of representative frames from the video composited into a single small image. Those who are skilled in the art will understand that there are many various ways of creating thumbnails to represent media. In block 1204, each collection coversheet was replaced with a collection overview image which is now reduced to form a thumbnail.
All of the media and documents for the new collection are now added to the collection at block 1218 which means that they are uploaded to the collection server 108 and placed in the directory pointed to by the DRI of the new collection. There are many well known protocols for uploading files to a server, including ftp, scp, http PUT. Preferably, the HTTP PUT protocol is used which allows the MFP 100 to specify the location and contents of each media file as it is being uploaded.
At block 1220, the thumbnails representing the new media items are arranged in the collection overview. The thumbnails are placed in an appropriate manner within the overview, expanding the overview size if necessary. The SVG file representing the overview is written and uploaded to the collection server 108 and all of the thumbnails are uploaded also at block 1222.
The arrangement and placement of the thumbnails in the overview is shown in a flow chart in FIG. 18 and shown in a pictorial representation in FIG. 19. One preferred method for placing thumbnails is to find a place in the overview image where the thumbnail can be positioned where it will not overlap any other thumbnail. An exhaustive search—moving the thumbnail to different positions within the overview and looking for overlaps with other thumbnails—is too slow. Another approach and the preferred method is to reduce the problem to that of placing a single point. This can be done by reducing the size of the overview by the width and height of the thumbnail to be placed and enlarging the existing thumbnails by the same dimensions. The origin of the new thumbnail can be placed anywhere within the remaining space in the overview without overlapping existing thumbnails. This is known as a “configuration space” approach because instead of finding a new thumbnail location in the original two dimensional space of the overview, a new “available-space” region is calculated in which the origin of the thumbnail is placed instead of the entire thumbnail. Configuration space techniques for interference checking are well known in the field of robotics and path planning.
At block 1800, the size of the thumbnail to be added to the overview is determined. Thumbnail sizes are usually measured in pixels. Often thumbnails are chosen to be some standard size—chosen so that they neither the width nor height is larger than a certain maximum size—perhaps 150 pixels for standard display resolutions or two inches for printed thumbnails. Since some images might have a very large or very small aspect ratio, it might be more appropriate to limit the thumbnail to a maximum area—square pixels or square inches—rather than a maximum width and height.
For instance, an image that is 1000×20 pixels (width×height) would be 150×3 if made into a thumbnail based on a 150×150 pixel maximum size. A thumbnail that is only 3 pixels in height is not very useful.
A thumbnail that is 150 pixels by 150 pixels would have an area of 22,500 total square pixels. If, alternatively, each image was scaled so that it contained at most 22,500 pixels, then the same 1000×20 image, already having only 20,000 pixels, would not be reduced in size and the original image would be used as the thumbnail. An image having 500×80 pixels would have 40,000 pixels and would be reduced to 325×60 pixels totaling 22,500 pixels and maintaining the original aspect ratio.
Scaling an image so that it contains no more than some total number of pixels instead of restricting the width and height to be less than some maximum improves the overall appearance of the thumbnails and is the preferred method of selecting a thumbnail size. However, any method for choosing thumbnail sizes can be used for the present invention.
In block 1802, a “bounding box” is determined for all the thumbnails and annotations in the current overview of the collection. Picture 1902 shows the calculated bounding box 1904 completely covering all of the thumbnails in the overview. The calculation of a bounding box is well known in the art.
At block 1804, the available area of the overview for thumbnail placement is reduced by the width and height of the thumbnail to be added. Picture 1906 shows this reduction by the area 1908. At block 1806, the bounding box of the existing thumbnails is enlarged by the width and height of the chosen thumbnail. In this example, shown also in picture 1910, the new bounding box extends above and to the right of the overview and the extension beyond the boundaries of the overview are ignored. The new bounding box 1912 is shown in picture 1910.
At 1808, the available open space is calculated and then at 1810 a point is chosen which will be the origin or upper-left corner position of the thumbnail. The preferred point is shown in picture 1914 at point 1916. Picture 1918 shows the final overview with the thumbnail placed at 1920.
In block 1802, a single bounding box for all the thumbnails previously placed on the overview was calculated and the origin of the new thumbnail was placed outside of that bounding box. It is also possible and understood by extension that instead of calculating just a single bounding box, an individual bounding box for each thumbnail may be calculated and extended so that the new thumbnail can be placed in any available position in the overview. This is well understood by those experienced with path planning algorithms and would be analogous to allowing a machine to travel between obstacles instead of requiring the robot to go around all the obstacles.
Adding a second new thumbnail now to the overview shown in 1918 could be accomplished using the steps shown in FIG. 18. However, instead of adding one bounding box to cover all the thumbnails, simply adding a single box representative of the newly added thumbnail is the preferred approach. This box is calculated to be the size of the newly added thumbnail and then is extended up and to the left by the width and height of the thumbnail to be added, just like the first bounding box. The advantage of adding a new additional bounding box instead of redoing all the steps shown in FIG. 18 is that the next thumbnails can be added alongside the one that was just added. If a new overall bounding box was created instead, there would be a tendency for all new thumbnails to be placed below the one just added leaving a large amount of open space in the message.
Note that if there is no available space in the overview after calculating the bounding box and reducing the size of the overview, it is possible to extend the overview downwards to accommodate new thumbnails.
Back to block 1222 shown in FIG. 12, all new thumbnails are uploaded to the collection server as well as the new overview description file and metadata file.
Now, in FIG. 13, since this is not a read-only collection, the “No” path from block 1300 is taken to block 1302. If the user has requested that she be able to modify the overview, at 1304 the overview could be displayed on the MFPs control panel display 120 and the user could move or resize thumbnails of the newly added documents. The user could also remove objects from the collection if so desired.
If requested, the “Yes” path would be followed from block 1306 and the user could add annotations at step 1308 on the same overview display 120. Modifying the overview and adding annotations could be accomplished using an object-based drawing tool like those available in Microsoft's PowerPoint software or Adobe Illustrator or similar tools. These tools and techniques are well understood by those skilled in the art. The new annotations would be converted to the appropriate SVG elements and stored in the collection overview file.
At block 1310, if the user has indicated a preference at block 1124 to add permission regions, the overview could be displayed and selection tools could be presented to the user which allows the selection of regions of a variety of shapes on the overview. “Read-write”, “read-only”, or “add-only” permissions could be applied to each drawn or selected shape on the overview. Documents beneath a “read-only” selection region would be fixed and unchangeable in future interactions with the collection. Documents covered by an “add-only” region would not be seen in the “restricted” coversheet printed at block 1406 and could not be accessed using restricted collection identifiers or DRIs.
At block 1314, all modified information is sent to the collection server,including the metadata files, SVG overview file, and any changes in the collection. 1141 At 1400, if requested, the “Yes” path is taken and a coversheet is printed. This coversheet 102 preferably includes the elements shown in FIG. 5B as described for new empty collections with the exception that the overview area 506 is not empty but shows the thumbnails of the media and documents including any annotations and modifications made by the user. If the user has requested a collection with at least one add-only region, then two coversheets should be printed. One printed coversheet is a normal collection coversheet with no permission restrictions. In other words, the DRI encoded in the barcode on the coversheet is associated with the full-permission collection containing all of the media and documents. Using the full-permission coversheet, it is possible to access all of the documents stored in the collection including documents added in the future. It is important to have available a coversheet without restrictions. If only the restricted coversheet was available for an “add-only” collection, then documents could be added but never retrieved.
The other printed coversheet will be the one for the restricted collection. The collection identifier or DRI printed on the restricted coversheet will point to a restricted collection and can be used only in the manner allowed in the restrictions. For instance, the add-only coversheet of a collection would only allow the user to add documents and not to see documents that have been added.
The “No” path from block 1404 is taken since the user has not selected the “Print collection” task. If email addresses have been specified in block 608, then the collection identifiers and optionally an overview image are emailed to the people who are supposed to be notified. In the case of restricted collections, there might be two sets of email addresses—those who are to receive the restricted collection identifier and those who are to receive the full-permission identifier. All email recipients are notified appropriately at block 1410.
Although it is not shown in FIG. 14, it is possible to notify by fax as well as email. Many other methods of notifying recipients of an available collection will be known to those skilled in the art and recognized as falling within the scope of this invention. For instance, if a fax number were supplied by the user of the invention and a faxed notification were requested, the MFP 100 could fax the appropriate coversheet to the number specified.
Suppose that the user of the present invention would like to add one or more documents or media to an existing collection. This task corresponds to the “Add to Existing Collection” task shown in block 800.
As in the “Create New Collection” task, the user brings media to the MFP 100 or creates it using media recording devices 110, 1 12, 114, and 116 or the like connected to the MFP 100 or to the network 200. Creating or collecting documents and media was explained in conjunction with the “Create New Collection Task”. The main difference between creating a collection and adding to a collection is that the MFP needs to know to which collection to add new media.
The advantage of having a machine-readable collection identifier on a coversheet is that the MFP or any device which can locate and decode machine-readable codes can determine which collection is represented by the coversheet. The “Yes” path is followed from block 700 for the “Add to Collection” task. The user can indicate which collection the new media will be added to by typing in a collection identifier or DRI but this can be a difficult task because DRIs tend to be long random strings of characters. DRI's can be located and decoded from a scanned image or read using handheld barcode scanners if they are encoded in barcode format. Handheld scanners which read many different types of one and two dimensional barcodes are available from many companies like Hewlett-Packard Company of Palo Alto, Calif., USA. They can be also be read in text form using optical character recognition technology or decoded from a magnetic strip if properly encoded. If a coversheet of the collection is available, the coversheet should be placed on the MFP where it can be scanned, either in the automatic document feeder 308 or directly on the glass platen 309. Alternatively, the barcode can be scanned using a handheld scanner 710. If the barcode has been captured in a digital image, perhaps using the digital camera 112, the camera 112 can be directly connected to the MFP 100 or the memory card 116 from the camera can be plugged into the card reader 314. There are many other methods for presenting the MFP 100 with a machine-readable DRI and those methods and techniques are not enumerated here because they are understood by those skilled in the art.
The present invention conveniently prints out a machine-readable DRI as part of the coversheet of the collection. In the preferred embodiment the DRI is contained in a PDF417 format two-dimensional barcode on the coversheet and the coversheet is placed on the automatic document feeder 308 of the MFP 100. Additional documents or pages to be added to the collection are placed behind the coversheet. The additional pages can be any document pages or they can be coversheets of other messages.
Of course additional media can be captured or provided in some other way to the MFP 100 when the coversheet is placed in the automatic document feeder. 1231 At block 608 or specifically block 800, the user can indicate a desire to “Add to Existing Collection”. Since at block 900, media is required for the process, any documents placed in the automatic document feeder (ADF) 308 are processed and scanned and the images from those documents are stored in the storage 316 of the MFP 100 for more processing. Any documents on the platen 309 are also scanned and media from the memory cards 116 and other devices is retrieved at block 906 and 908. These media and documents will be added to the designated collection.
The “Yes” path from block 1000 is followed because there is media available. Each of the documents and media is searched for a machine-readable DRI. When a barcoded DRI is scanned using a handheld scanner, the DRI can be stored in the memory 318 of the MFP 100 so that it can be accessed when it is time to determine which collection to add the new media to. If the ADF 318 or platen 309 has been used to scan in a coversheet or if the DRI is contained in an image from the digital camera, the DRI will have to be read from the scanned or captured image in this step 1002. Either source of a DRI is acceptable and typically, if there is no DRI held in memory 318 due to hand scanning of a coversheet, the first scanned sheet or first image will contain the DRI. Those skilled in the art will recognize that there are many ways of providing the DRI to the MFP 100 an exhaustive list need not be provided.
At block 1002, while adding to an existing collection, no action requests are expected and therefore none will be located or decoded for this task. Since none were decoded, the “No” path is taken from 1006.
In block 608, all of the typical options and preferences are available to the user and this block is handled as explained previously.
In block 610 at block 1200, this is not a new collection and so the “No” path is followed to block 1206. As mentioned previously, if the DRI was not scanned in by hand, the “existing collection” DRI is taken from either the first scanned image or the first digital image. If a DRI is not found, the user can be asked if she wants to create a new collection. If a DRI is found in more than one place, either the user can be asked which to use as the existing collection, or one location can be given a higher priority and used first.
If the DRI found in step 1206 turns out to be a read-only collection, no documents can be added. In that case, some indication or error message should be displayed on the control panel 106 of the MFP 100 to indicate that a collection cannot be modified and the task is complete.
If it is not read-only, then step 1204 is taken. All of the image media including images which are scans of document pages is searched for machine-readable codes in step
Typically, when adding a page or document to a collection, the image of that page is added to the collection storage area and a thumbnail is added to the overview. If that page happens to contain a machine-readable DRI then based on the users preference, instead of adding the page to the collection, the collection that the DRI represents can be added to the collection. In step 1204, for each page or image containing a DRI, the “page add” request is converted into a “collection add” request with the appropriate DRI representing the collection.
Block 1210 represents the results of an action request and will not be discussed here because the block is passed over for the “Add to Existing Collection” task.
Block 1212 indicates that annotations found on the coversheet should be added to the existing collection. In other words, if it is discovered by the MFP 100 that the collection overview has been modified, the marks made on the collection overview should be added to the collection overview when the new media is added.
Locating marks on a collection overview can be done in many different ways. One way will be described in detail. Suppose that a collection coversheet is printed out on a black and white or grayscale printer. Marks can be made on the overview part of that coversheet using a red pen. Those marks can easily be separated from the original image using colored filters. For instance, most digital cameras use arrays of red green and blue filters over their image sensing elements. If all of the pixels which contain some red are separated into a separate image, that image can be used as an overlay where non-red pixels are transparent and red pixels are painted on top of the original overview.
Since the overview is defined programmatically in the SVG file, it is also possible to construct an expected overview image for a collection and the expected image can be compared to the scanned or photographed image to look for differences. First, all the pixels of the actual image should be adjusted equally to match the overall contrast and brightness of the captured image. Then, all significantly different pixels could be extracted—for instance, pixels that originally appeared white but are now black could be separated and considered a new annotation.
Regardless of how the annotations are found, they can be converted into a semi-transparent overlay on top of the original overview or converted into lines and other shapes and inserted as annotations into the SVG file.
Block 1214 does not apply to the present task and so block 1216 is entered.
At block 1216, thumbnails are created for all of the new images, documents, pages, and media. For those pages which represent other collections, thumbnails are made for the collections instead of the page. At 1218, all collected media is uploaded to the collection server.
Step 1202 was skipped because a new collection identifier was not needed. However, it is important that the existing collection be changed in a way that makes the current state or version of the collection available at a later time. The new media should not be placed in the same storage area as the existing collection. Someone else might modify the same collection and try to access information or media that is no longer there.
As described in the section about DRI's, collections can have multiple versions. In other words, the first version of a collection might end with the /1/ pathname. The second version might end with the /2/ pathname, etc. When a collection is modified, the collection retains most of the same DRI, but has a different final pathname to indicate that it is a different version of the collection. This allows older versions of the collection to be available even as the collection is modified.
Typically, new media and thumbnails in a collection are uploaded to a staging area on the collection server. The staging area is associated with the collection identifier but doesn't have a permanent final pathname. As soon as all of the information has been uploaded and is complete, the collection server moves the collection into a final directory or storage area with a permanent final pathname. The permanent final pathname is usually the next integer after the most recently uploaded collection.
At block 1220 and as shown in FIGS. 18 and 19, all of the thumbnails representing the new media are added to the collection overview. FIGS. 16A and 16B show an example of a coversheet before and after a new document is added. FIG. 16A, the before picture 1600, contains seven thumbnails representing a combination of scanned pages and digital images. FIG. 16B, the after picture 1602, includes a thumbnail 1604 representing a collection that has been added to the collection. The thumbnail 1604 is a small version of the overview of the added collection.
At block 1222, all of the thumbnails, metadata, the overview SVG file, and new annotations (which are described in the overview SVG file) are uploaded to the staging area in the collection server.
Since this is not a read-only collection, the “No” path is taken from block 1300 and modifications are allowed to the collection. All of the automatic modifications were made in block 610 and now the user is allowed to make modifications. Depending on the user preferences, at block 1304 the user may be allowed to move or resize thumbnails or remove documents or media from the collection. Block 1304 represents changes to both the overview and the collection itself. Documents can be removed from the collection in 1304. At 1308, annotations may be added or erased from the collection overview. This block 1308 only represents changes made to annotations or things that appear in the overview SVG file.
If the user has indicated a desire to modify permissions of this collection, block 1314 is where those modifications are made and possible modifications have been described when detailing other tasks so they will not be repeated here.
At 1314, all changes and modifications are finally uploaded to the collection server 108 and at this point, the server has everything required to move the collection out of the staging area and into the final directory upon assigning a version number.
Note that if the user created a restrictive permission region in the modified collection, it will be necessary to get from the collection server a second identifier that represents the restricted collection.
Permissions are preferably handled and differentiated using collection identifiers. In other words, the collection server 108 should know that a single collection can be accessed using different pointers or identifiers and the identifiers indicate which permissions are allowed. This is analogous to Unix file system permissions and symbolic links. Each data file in a Unix file system has at least one pointer to the file stored in a directory. Links can be created which exist in other directories or perhaps in the same directory but with a different name. These links point to the exact same data on the disk as the original file, but have different metadata. That metadata includes the filename and full pathname, as well as file permissions. Unix files can be given restricted access which limits or allows certain individuals to read or write the file. A file can be set up so that it can be read, written, or deleted by anyone. The same file, through a link, can be given a more restrictive set of permissions, perhaps only letting one or a few people read the file and letting no one delete it. Even though the same data is pointed to by the two different pointers, what can be done with that data depends on the restrictions specified on the pointers, not on the data.
A collection server 108 can keep a mapping of collection identifiers to collection directories and keep track of which identifiers have read and write permission. When an MFP 100 makes modification requests to a collection server, if the identifier used to make the request is restricted in a way that doesn't permit that type of modification, the collection server can respond negatively.
Two possible options for maintaining permission information are shown in FIGS. 24A and 24B. As shown in FIG. 24A, the permissions metadata can be kept in the directory containing the documents in the collection. This requires no duplication of data and only a single directory for each version of a collection. FIG. 24B shows an equally useful alternative where the directories are distinct but one uses links between the data files to avoid duplication of data. In the case of FIG. 24B, the permissions information is kept only in the directory where there are permission restrictions.
Since collections can be stored in hierarchies, there are times when a “read-only” collection contains another collection which might not be “read-only”. The preferred way of handling hierarchy inside of a “read-only” collection is to provide a link to a “read-only” version of the contained collection. In other words, any collection A marked as read-only can only provide links to other read-only collections. If the collection B is added to the read-only collection A but does not have a read-only version, a new read-only collection C could be created for the collection B and the identifier for new collection C could be shared or stored in the original read-only collection A.
At 1400, if a coversheet is to be printed, it is printed at block 1402 as before described. In some cases, multiple coversheets might be printed so that a full permission coversheet is available as well as a restricted permission coversheet.
The “No” path is taken from block 1404 because this is not a printing task. At 1408, if the existing collection had contact information already associated with it and those were not removed by the user or if a list of recipients was given by the user at 1110, those recipients are notified by the appropriate method, including but not limited to email or fax.
Turning to the task entitled “Modify Existing Collection”. “Modify Existing Collection” is essentially the same as “Add to Existing Collection” where what is added is nothing. The differences between the two tasks are described here briefly. The “No” paths are followed from blocks 712 and 716 since no additional media is needed or expected. “Modify Existing Collection” is selected at block 800. However, if “Add to Existing Collection” was selected but the only media made available to the MFP 100 was the coversheet of the collection to be modified, it would fall back to “Modify Existing Collection” allowing a new version without new media to be modified and annotated and then forward optionally to a different group of recipients. Also, if “Modify Existing Collection” were selected and some actions were requested on the collection coversheet, those actions could be performed as if “Perform Noted Actions” were selected instead. In block 610, a new version of the collection will be created, but no thumbnails are created, and no new media or documents will be uploaded to the collection server 108. All other blocks are essentially the same as with “Add to Existing Collection”.
The “Perform Noted Actions” task is driven by annotations on a coversheet. Multiple coversheets can be marked up and all actions performed in sequence if all the coversheets are put into the ADF 308 at once.
“Perform Noted Actions” is based on marks made on the collection overview on a coversheet. FIGS. 15A, 15B, and 15C show various marks that might be made on the overview part of a collection coversheet. FIG. 15A shows a coversheet 102 with an F! mark and a number drawn at 1500 near a circled document. At 1508, a note “Keep me informed” has been written on the overview. Neither of these marks are part of the original coversheet.
Marks on a coversheet can be extracted in a variety of ways at block 1008. If a special pen color such as red is used, that color could be detected in a color scan or image of the coversheet and all instances of that color in an image would be considered part of the marks made by the user. An alternative would be to compare the overview with an image based on the overview SVG file as previously described. Differences would be considered marks.
The types of marks that are interesting for the present invention are action marks which include, for instance, “F!”, “E!”, “P!”, or “G!”. These marks stand for “fax”, “email”, “print”, and “group” and represent actions that can be taken on one or more documents or media in a collection. It will be recognized that this is not an exhaustive list of possibilities but a representative list of things that might be done with documents or media.
Once the marks are extracted from the overview, they could be analyzed to find action requests and circled documents at 1010. Optical Character Recognition software or OCR software could be used to locate and decode characters written in the marks. OmniPage Office from ScanSoft, Inc, of Peabody, Mass., USA sells software for finding characters in images.
Circled regions could be identified using a variety of known techniques. Many companies, such as Arbor Image Corporation in Ann Arbor, Mich., USA and Arc En Ciel Ltd based in London, England have raster to vector conversion tools. These tools can recognize circles in raster images. Such tools could be used to find circled documents.
Circled documents will need to have an action command near them. Some commands require additional information like a fax number or email address. If action commands are ambiguous, feedback can be provided to the user and the user can disambiguate the action request either using the MFP control panel 106.
Marks that are neither characters or circles could be recognized as annotations at 1012 to add to the overview at 1212.
FIGS. 15A, 15B, and 15C give some examples of action requests. The user in FIG. 15A put an “F!” ark and a number drawn at 1500 near a circled document on coversheet 102. The number by the “F!” is the requested fax number and “F!” indicates that the document indicated by the circle should be faxed. Multiple documents can be enclosed within a single circle indicating that the action should be performed on all the documents. At 1508, a note “Keep me informed” has been written on the overview. Since there is no action request, the marks are added to the overview as an annotation.
FIG. 15B shows two circles and two action commands. One document is circled and an “E!” and an email address is written near the circle at 1502. At 1504, another document is circled and a “P!” action command indicates the users request for a printout.
FIG. 15C shows a grouping request at 1506 where multiple documents are circled and a “G!” is written. The grouping operation consists of creating a new collection, moving the two documents or media into the new collection by adding them to the new collection and deleting them from the old collection. The new collection is then added to the old collection in approximately the same location as the original files.
Many such action requests could be imagined and driven by standard OCR and raster-to-vector conversion software.
The “Print Collection” task is different than most of the other tasks because no new collection or version is made. Multiple collections can be printed at once by providing the MFP 100 with multiple coversheets either in digital images or in the ADF 308. For each DRI found in an image or scan, the MFP 100 contacts the collection server 108 and retrieves documents and media.
Starting in block 600, the user provides the MFP with one or more DRIs of collections to be printed using the methods previously described for other tasks. At 800, “Print Collection” is chosen. At 604, if a DRI has not been provided through the handheld scanner, some media must be provided through the ADF 308, on the platen 309 or through some other device 112, 114, or 116. As in other tasks, the machine-readable code must be located and decoded in 1002. Some print actions might be driven by action requests as discussed in the “Perform Noted Actions” section. Those action requests are discovered in block 1002 and associated with the appropriate document in 1004. At 1006, if the current chosen task might have action requests that need to be discovered, for instance “Modify Existing Collection”, the “Yes” path is taken and the marks are extracted 1008, analyzed 1010, and retained 1012 for later operation on the collection.
During the “Print Collection” task, a more limited set of user options and preferences might be displayed on the MFP control panel display 120 than those displayed for other tasks. After the execution of step 608, moving through step 1200 along the “No” path to 1206, the DRI associated with the coversheet is used to access the collection to be printed on the collection server 108. At 1208, the “Yes” path is taken since this is a print request.
In block 612, some modification of the message might be allowed as in other tasks, but if this is strictly a printing task, block 612 can be bypassed with no modifications and no upload of a new collection version.
At block 1400, no coversheet is need for a print request and the “No” path is taken to block 1404. Since printing has been requested specifically the “Yes” path is taken to block 1406 and each of the individual documents is printed as requested.
If in the user preferences block 608 at step 1120 the user has requested an opportunity to browse the collection, then at block 1316, the “Yes” path is taken to block 1318 and the user can browse the collection using the control panel 106 on the MFP 100. Browsing a collection of documents is similar to browsing on the World Wide Web. If a media document is shown in a collection and can be printed, then the user could be permitted to select the document and choose print. There are many examples of browsing styles using either direct manipulation with a mouse or using the cursor and tab keys to move between selectable objects like documents. Those skilled in the art will have seen many different approaches to browsing and selecting and the user interface is not described here but has the following properties: providing access to all documents and media objects in the collection, providing the opportunity to replace the current collection overview shown in the display with the selected object, including but not limited to a collection contained in the current collection, providing a way of executing commands like ‘print’, ‘view’, ‘delete’, or other commands as appropriate, and providing a way of moving back up the collection hierarchy after descending into other collections.
FIGS. 17A, 17B, and 17C show a collection being browsed as it might appear on display 120 of the MFP control panel 106. FIG. 17A shows a collection coversheet 1700. At FIG. 17B, the overview 1702 from the coversheet 1700 is displayed on the MFP 100 display 120. The collection shown contains one text box and seven collections. One collection 1704 is selected and expanded and the overview 1706 from that collection is displayed on the MFP 100 display 120. The newly displayed overview 1706 shows that the collection contains two collections, a text note, and one page of a document.
If some of the collection has been printed at 1318,there is no need to print at 1404 and the “No” path is taken as well as the “No” path for 1406 since there is no need for notification when printing.
Another task to consider is the task titled “Merge Collections” in block 800. A user might have multiple coversheets representing documents and media in more than one collection. If the user desires to combine the documents and media contained in all of the collections into a single collection, she might choose the “Merge Collections” task. FIGS. 20A, 20B, 20C, and 21 show a special case of merging of different versions of a collection but the technique is applicable to merging any group of collections.
The most trivial way to “merge” collections of course is to create a new collection which contains all of the other collections in a hierarchical message where each of the “merged” collections is represented as a thumbnail in the new collection overview and is accessible from the new collection. However, sometimes the user would want the documents and media merged into a single collection with no hierarchy.
The task when merging is to place all of the documents and media into a single collection on the collection server. At the same time, an overview should be created which contains all of the thumbnails of the media.
Particularly in the special case of merging versions of a collection, some media might be redundant in that it is contained in both versions of the collection and only some media is only contained in one. For instance, in FIG. 21, the overviews of five different versions of a collection are shown 2100, 2002, 2102, 2000, and 2004. Versions 2 2102 and 3 2002 were both based on version 1 2100 and therefore have some common documents. Version 4 2000 is based on version 3 2002. Version 5 2004 will represents the new merged version is based on version 4 2000 because version 4 of the collection contains more unique documents or perhaps was created most recently of all the versions.
The user could take the coversheet for any existing version of the collection and place it in the ADF 308 and select “Merge Collections”. Since there is only one coversheet, the MFP 100 could try to merge the terminal versions of the collection indicated and could begin by verifying that the user wanted to merge the various versions of the collection into a single collection. If the user indicated in the affirmative, then the MFP 100 could gather information about all the versions of this collection 2100, 2002, 2102, and 2000 represented by the DRI on the coversheet and begin to merge the versions. In all cases, only the terminal versions of the collection need to be merged. Another way to say it is that if the version hierarchy forms a graph where version 1 2100 is the root of the tree, the only leaves of the graph are version 4 2000 and version 3 2002. By looking at the hierarchy of the collection, only version 4 2000 and version 3 2002 have not been used to create on of the other versions of the message.
FIGS. 20A, 20B, and 20C show a more detailed view of the merging operation. The first task when merging is to compare the collections and find all of the documents and media that are in both collections or both versions. In FIGS. 20A and 20B, only the image in the upper left of the overview 2016 and the audio directly below the image 2018 are in both collections. The remaining documents and media 2008, 2010, 2012, 2020, and 2022 are only in one version of the collection.
First the common documents and media are placed as close to their original position as possible. Second, the unique documents and media from one of the collections is placed in the new collection or new version. In the case of creating a new merged version, it ios preferable to do the first two steps by creating a new version of the message from one of the leaves and in this example, version 4 2000 is chosen because it contains more documents than version 3 2002. Then, taking the unique documents from version 3 2002, each document is copied to the collection server 108 and the thumbnails are added to the collection overview as shown in FIGS. 18 and 19. Alternatively, the remaining documents could be added to the new version in their current configuration below the bounding box of the common documents. FIG. 20C shows the end result of the version merge where all media and documents are now contained in a single version of the collection, version 5, whose overview 2004 is shown in FIG. 20C and FIG. 21. At the users discretion or request, the annotations from both collections or both versions of the collection are also transferred. Annotations which have endpoints on documents or cross documents will be kept with the documents and other annotations will be placed where appropriate. At the user's request in block 608, the new collection could be presented for modification in block 612 and annotations could be redrawn or deleted and the document and media thumbnails could be moved or resized, even deleted if so desired. Finally, in block 1400, the newly merged collection coversheet could be printed. If there were email addresses or contact information associated with the collection, the contact information could be merged in a similar manner so that everyone listed as a recipient of notification in both collections would be added to the new collection.
As noted above, new versions of collections can be created from any existing version of a collection. Version 3 2002 and version 4 2000 are from the same collection but contain different media and were created from different versions of the collection. Sometimes, in order to reduce branching of collection versions, the user might want to always add information to the most recent version of a collection instead of adding it to the version. The version which ends in /0/ is a special version which means “the latest” version. Whenever the user uses the /0/ DRI in an operation at the MFP 100, the MFP tries to base the operation on the latest version of the collection in the collection server.
One task available to users of the present invention is to print out the /0/ version of the coversheet given any other version. For this task, the user presents any version of a coversheet to the MFP 100 in any of the aforementioned ways, indicates to the MFP at block 800 on the control panel 106 that the /0/ coversheet should be printed. The MFP 100 talks to the collection server 108 to retrieve the latest version of the collection. When the coversheet 102 is printed, the machine-readable 504 and human-readable 510 DRIs both end in /0/ and whenever that coversheet is used to modify a collection, the modifications are made to the most recently uploaded collection.
It should be noted that although this specification specifically refers to a single collection server, there are many ways to distribute information so that collections are kept in multiple places and made accessible from multiple places. It is well understood in the art how to distribute files so that they are available locally even if they were created somewhere distant. Also, there is nothing that prevents the existence of multiple collection servers, particularly when using the DRIs described as part of the present invention which have as part of their name the machine on which the collection was originally created.
There are times when part of all of a collection should be restricted to be either read-only or add-only. The two remaining tasks shown in block 800 are “Make Read-only Coversheet” and “Make Add-only Coversheet”. Elements of both of those tasks have already been described in conjunction with the descriptions of blocks 1124, 1310, and 1312 during the “Add to Existing Collection” and “Modify Existing Collection” task descriptions. One possible modification to an existing collection is just to restrict the operations that can be done on the collection.
If the user would like to create a collection that cannot be modified, she could take the coversheet of an existing collection and select the “Make Read-only Collection” task in block 800. The MFP 100 would present the collection overview in block 1312 after following the flow of the invention appropriately through FIGS. 7-13 as has been described for other related tasks. At 1312, the user would be permitted to draw or sketch regions and assign permissions to those regions in order to restrict the operations on each of the documents and media in the collection.
Suppose the user wanted to create some instructions which she did not want modified but then still wanted other users to be able to add documents and annotations to the collection. As shown in FIG. 22A, the user can sketch a region 2202 which protects the part of the overview she would like to remain static, leaving the remaining overview region available for adding notes, annotations and other media.
If a second user brings the coversheet with the read-only region to the MFP 100 to add some documents, those documents will be added only to the region which is not protected as shown in FIG. 22B. Documents 2208 and 2206 have been added in FIG. 22B and were placed outside the read-only region defined by the first user.
A second example is shown in FIGS. 23A and 23B where there are 3 regions defined. Regions 2302 and 2304 on coversheet 2300 are both read-only. Only region 2306 has both read and write permissions. After using the coversheet 2300 to add some documents to the collection, the coversheet looks like it does in FIG. 23B where documents 2308 and 2310 have been added. Another person might have a coversheet where 2304 has full pennission but 2302 and 2306 are restricted as read-only. That person can only add and modify things in region 2304. This provides a shared space where each coversheet represents an area which can be modified and at the same time providing access to information added to other regions.
An “Add-only” coversheet can be made using the same technique as the read-only coversheet only the restriction is that people can add documents to the add-only region but not see what has been added.
The present invention has been described in connection with a specific implementation of a typical embodiment thereof. It will be understood by those skilled in the relevant art that many changes can be made without departing from the true spirit and scope of the present invention. Therefore, it is intended by the appended claims to cover all such changes and modifications which come within the true spirit and scope of this invention.

## Claims

1. A method for composing a collection of documents comprising:
scanning in a collection coversheet representative of a first collection of first documents, the collection coversheet comprising a first indicium indicative of a storage location of the first collection and a first overview area within which are arranged first graphics representative of the first documents; and
creating a second collection comprising steps of:
determining user-provided modifications to the first overview area, wherein the user-provided modifications comprise annotative information added by a user to the first overview area prior to scanning in the collection coversheet;
instantiating the second collection while preserving the first collection, the instantiating including identifying a plurality of second documents comprising one or more of the first documents based on the user-provided modifications;
producing a second overview area based on the user-provided modifications to the first overview area;
associating with the second collection a second indicium indicative of a storage location of the second collection;
generating a collection image comprising an image of the second indicium, an image of the second overview area, and a plurality of images representative of the second documents; and
forming the collection image on a printable medium to produce a new collection coversheet,

wherein the first collection is accessible via the first indicium and the second collection is accessible via the second indicium, the first indicium being distinct from the second indicium, and
wherein the first overview area comprises one or more access regions within which the first graphics are arranged, each access region having an associated access permission.

2. The method of claim 1 wherein the user-provided modifications comprises adding one or more new documents and adding images representative of the new documents to the first collection.

3. The method of claim 1 further comprising communicating an email or a facsimile transmission to one or more users to indicate that the second collection has been generated.

4. The method of claim 1 further comprising communicating a notification of the second collection to one or more users.

5. The method of claim 1 wherein the second documents are associated with second graphics, the method further comprising arranging the second graphics in the second overview area in a manner absent user-provided directions for arranging the second graphics.

6. The method of claim 1 further comprising receiving one or more new documents from one of a scanner, a digital camera, a digital video camera, a non- volatile memory card, a personal computer, a PDA (personal data assistant), or a fax machine, the second documents further comprising the one or more new documents.

7. Apparatus for updating a collection of documents comprising:
a computer processing component;
one or more input devices operatively coupled to the computer processing component; and
a data storage component accessible to the computer processing component,
the computer processing equipment operable to perform the method steps of claim 1.

8. The apparatus of claim 7 further comprising a printing device operatively coupled to the computer processing component, wherein the computer processing equipment is further operable to communicate the collection image to the printing device whereby a new collection coversheet is formed on a printed medium.

9. The apparatus of claim 7 further comprising a visual device operatively coupled to the computer processing component, wherein the computer processing equipment is further operable to communicate the collection image to the visual display device whereby a new collection coversheet is visually presented.

10. The apparatus of claim 7 wherein the computer processing component is further operable to notify one or more recipients of the second collection.

11. The apparatus of claim 7 wherein the computer processing equipment is further operable to store the additional information in an area in the data storage component and to identify the area in the data storage component with a data store identifier, the data store identifier including a randomly generated text string.

12. The apparatus of claim 7 wherein the input devices comprise one or more of a scanner, a digital camera, a digital video camera, a non-volatile memory card, a personal computer, a PDA (personal data assistant), or a fax machine.

13. The method of claim 1 wherein the image is stored in non-volatile storage.

14. The method of claim 1 wherein the user-provided modifications further comprise changing the associated access permissions of one or more of the access regions.

15. The method of claim 1 wherein the associated access permissions are based on the first indicium.

16. The method of claim 1 wherein the user-provided modifications are directed to a first access region, and wherein the step of instantiating is conditioned on an access permission associated with the first access region.