# Patent

## Title
Automatic grouping of electronic mail

## Abstract

Automatic sorting and grouping of electronic mail items in an electronic mail system is provided. An automatic mail grouping property may be selected for electronic mail received, sent or stored in a variety of storage folders. For a given mail location (e.g., received mail, sent mail, or a given mail storage folder), a selected automatic grouping property causes mail to be displayed to a user in one or more categories that make location of specific mail items easier and more efficient. Visible dividers with optional headings may be provided between mail categories to quickly draw a user's attention to a given mail category and to separate large numbers of mail into logical groupings that make location of specific mail items more manageable.

## Background
RELATED APPLICATIONS
This application is a Continuation of U.S. application Ser. No. 10/848,774 entitled “Automatic Grouping of Electronic Mail” filed May 19, 2004, now U.S. Pat. No. 7,707,255, which claims benefit under 35 U.S.C. §119 (e) of U.S. Provisional Patent Application No. 60/484,437, entitled “Combined Outlook Bar and Folder List, Automatic Grouping, Adaptive Multi-Line View, Threaded View with Easier Access to All New Email, Search Folders” filed Jul. 1, 2003, which are incorporated herein by reference.


FIELD OF THE INVENTION
The present invention generally relates to electronic mail systems. More particularly, the present invention relates to automatic grouping of electronic mail in an electronic mail system.
BACKGROUND
With the advent of the computer age, computer software users have grown accustomed to user-friendly software applications that help them write, calculate, organize, prepare presentations, send and receive electronic mail, make music, and the like. For example, modern electronic mail programs allow users to send and receive electronic mail to and from other users. Modern electronic mail programs also allow users to store sent or received mail in a variety of user-established storage folders.
Prior electronic mail systems typically provide a user interface through which a user may see and select received mail, sent mail, or stored mail. Such user interfaces may be used to display a listing of all electronic mail received, sent or stored in one or more user-established mail storage folders. A user may sort listed mail items using a number of sorting properties. For example, mail may be sorted by date received or date sent. Mail may be sorted by the name of the party from which mail is received or by the name of the party to which mail is sent. Mail may be sorted according to other sorting properties such as size of individual mail items or subject matter of mail items.
Electronic mail users often have large numbers of mail items in their received mail, sent mail and/or various mail folders. In order to find a particular mail item in any of the these mail categories, the user may scroll up or down through all mail items in a given category (e.g., received, sent, selected folder), or the user may first sort the mail, as described above, and then scroll up or down as desired. For example, if a user is looking for a particular mail item from her colleague, Bob, she may first sort her received mail based on a “received from” sorting property, followed by scrolling through all mail received from Bob to find the particular mail item. Unfortunately, if she has received numerous mail items from Bob, her task of locating the desired mail item may be time consuming, inefficient and cumbersome.
There is a need for an improved electronic mail user interface and mail viewing model that allows electronic mail to be automatically sorted and grouped into mail categories or arrangements that allow a user to more easily and efficiently locate desired mail items. It is with respect to these and other considerations that the present invention has been made.
SUMMARY
Embodiments of the present invention solve the above and other problems by providing automatic sorting and grouping of electronic mail items in an electronic mail system. According to aspects of the invention, an automatic mail grouping property may be selected for electronic mail received, sent or stored in a variety of storage folders. For a given mail location (e.g., received mail, sent mail, or a given mail storage folder), a selected automatic grouping property causes mail to be displayed to the user in one or more categories that make location of specific mail items easier and more efficient. Visible dividers with optional headings may be provided between mail categories to quickly draw a user's attention to a given mail category and to separate large numbers of mail into logical groupings to make location of specific mail items more manageable.
According to one aspect of the invention, a user may automatically group mail items that are received, sent, or stored according to date. Mail selected for automatic grouping according to date may be divided into logical groupings such as mail received today, mail received yesterday, mail received earlier this week, mail received last week, and so on. Thus, if a user knows that a given mail item was received from her colleague yesterday, she may select automatic grouping by date and quickly go to mail items received yesterday to find the desired item.
According to another aspect of the invention, a user may automatically group mail items that are received, sent or stored according to the party from which the mail items were received or to which the mail items were sent. Mail is divided into logical groupings such as mail received from a first party, mail received from a second party, mail received from a third party, and the like. Likewise, mail grouped according to the party to which mail was sent may be divided into logical groupings such as mail sent to a first party, mail sent to a second party, mail sent to a third party, and the like. Easy to read headings may be provided above each grouping to allow the user to quickly locate a desired mail item according to the identity of the party from which the mail received was received or to which the mail was sent.
Other automatic grouping categories include groupings by folder identification, groupings by mail size, groupings by mail subject, groupings by mail type, groupings by flagged mail, groupings by mail with or without attachments, groupings by importance level, or groupings according to identified mail conversation strings. For example, mail grouped by importance level may be displayed in three groupings divided by headings such as “high importance”, “normal importance”, and “low importance.”
According to another aspect of the invention, automatic grouping categories or arrangements may be customized by a user. For example, the user may customize an automatic grouping such that mail items are first grouped or categorized according to date of receipt, followed by sub-grouping based on importance level. Thus, according to this example customized grouping, mail items are first grouped and divided according to date received or sent, followed by a further grouping within each first grouping according to importance levels associated with mail items grouped in each first grouping.
According to another aspect of the invention, processing of selected automatic mail groupings and persistence of data representing resulting mail groupings may be performed and stored at an electronic mail system server. Alternatively, some automatic grouping processing, for example, processing of automatic grouping by date or size may be performed and associated data may be persisted on a client side electronic mail system, while other automatic grouping processing and associated data may be performed and persisted on a server side electronic mail system.
These and other features and advantages, which characterize the present invention, will be apparent from a reading of the following detailed description and a review of the associated drawings. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates an exemplary computing operating environment for embodiments of the present invention.
FIG. 2 illustrates a computer screen display of an electronic mail system user interface according to embodiments of the present invention.
FIG. 3 illustrates a computer screen display showing an electronic mail system inbox and a drop-down user interface menu for selecting a desired automatic grouping arrangement according to embodiments of the present invention.
FIG. 4 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped by date of receipt.
FIG. 5 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped by identity of party from which mail is received.
FIG. 6 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped by identity of party to which mail is set.
FIG. 7 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to storage folders to which given electronic mail items are saved.
FIG. 8 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to mail item size.
FIG. 9 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to mail subject.
FIG. 10 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to mail type.
FIG. 11 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to electronic mail flag type.
FIG. 12 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to whether or not mail items include attachments.
FIG. 13 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to importance level.
FIG. 14 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to a customized automatic grouping specified by a user.
FIG. 15 is a flow diagram illustrating an illustrative routine for processing and persisting data associated with selected automatic mail groupings according to embodiments of the present invention.



DETAILED DESCRIPTION
As briefly described above, embodiments of the present invention are directed to automatic grouping of electronic mail items in an electronic mail system. According to embodiments of the present invention, electronic mail items received, sent or stored in a variety of mail storage folders may be automatically sorted and grouped based on a number of sorting and grouping properties such as date, size, identity of party from which mail is received or to which mail is sent, folder identification, mail subject, mail type, mail flag type, presence or absence of mail attachments, or mail importance level. Customized automatic grouping arrangements may be created and applied to electronic mail items according to user specification.
In the following detailed description, references are made to the accompanying drawings that form a part hereof, and in which are shown by way of illustrations specific embodiments or examples. These embodiments may be combined, other embodiments may be utilized, and structural changes may be made without departing from the spirit or scope of the present invention. The following detailed description is therefore not to be taken in a limiting sense and the scope of the present invention is defined by the appended claims and their equivalents.
Referring now to the drawings, in which like numerals represent like elements through the several figures, aspects of the present invention and the exemplary operating environment will be described. FIG. 1 and the following discussion are intended to provide a brief, general description of a suitable computing environment in which the invention may be implemented. While the invention will be described in the general context of program modules that execute in conjunction with an application program that runs on an operating system on a personal computer, those skilled in the art will recognize that the invention may also be implemented in combination with other program modules.
Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
Turning now to FIG. 1, an illustrative computer architecture for a personal computer 2 for practicing the various embodiments of the invention will be described. The computer architecture shown in FIG. 1 illustrates a conventional personal computer, including a central processing unit 4 (“CPU”), a system memory 6, including a random access memory 8 (“RAM”) and a read-only memory (“ROM”) 10, and a system bus 12 that couples the memory to the CPU 4. A basic input/output system containing the basic routines that help to transfer information between elements within the computer, such as during startup, is stored in the ROM 10. The personal computer 2 further includes a mass storage device 14 for storing an operating system 16, application programs, such as the application program 205, and data.
The mass storage device 14 is connected to the CPU 4 through a mass storage controller (not shown) connected to the bus 12. The mass storage device 14 and its associated computer-readable media, provide non-volatile storage for the personal computer 2. Although the description of computer-readable media contained herein refers to a mass storage device, such as a hard disk or CD-ROM drive, it should be appreciated by those skilled in the art that computer-readable media can be any available media that can be accessed by the personal computer 2.
By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer.
According to various embodiments of the invention, the personal computer 2 may operate in a networked environment using logical connections to remote computers through a TCP/IP network 18, such as the Internet. The personal computer 2 may connect to the TCP/IP network 18 through a network interface unit 20 connected to the bus 12. It should be appreciated that the network interface unit 20 may also be utilized to connect to other types of networks and remote computer systems. The personal computer 2 may also include an input/output controller 22 for receiving and processing input from a number of devices, including a keyboard or mouse (not shown). Similarly, an input/output controller 22 may provide output to a display screen, a printer, or other type of output device.
As mentioned briefly above, a number of program modules and data files may be stored in the mass storage device 14 and RAM 8 of the personal computer 2, including an operating system 16 suitable for controlling the operation of a networked personal computer, such as the WINDOWS operating systems from Microsoft Corporation of Redmond, Wash. The mass storage device 14 and RAM 8 may also store one or more application programs. In particular, the mass storage device 14 and RAM 8 may store an application program 105 for providing a variety of functionalities to a user. For instance, the application program 105 may comprise many types of programs such as a word processing application program, a spreadsheet application, a desktop publishing, and the like. According to an embodiment of the present invention, the application program 105 comprises a multiple functionality software application for providing a user calendaring functionality, electronic mail functionality, contacts information functionality, electronic notes functionality, electronic journal functionality and the like. Some of the individual program modules comprising the multiple functionality program 105 include a calendar module 125, an electronic mail program 130, a contacts module 135, a tasks module 140, a notes module 145 and a journal module (not shown). An example of such a multiple functionality program 105 is OUTLOOK.® manufactured by Microsoft Corporation.
FIG. 2 illustrates a computer screen display of an electronic mail system user interface according to embodiments of the present invention. The user interface 200 is illustrative of an electronic mail program 130 user interface for displaying electronic mail items received, sent or stored in a variety of storage folders. An example electronic mail program user interface illustrated in FIG. 2 is provided by OUTLOOK.® manufactured and marketed by Microsoft Corporation of Redmond, Wash.
The user interface 200 illustrated in FIG. 2 includes a combined content selection and display pane 210 through which a user may select other types of functionality provided by a multiple functionality software application (described above) through which the user's electronic mail program is provided. For example, through the combined contents selection and display pane 210, the user may select calendar functionality, contacts functionality, tasks functionality, notes functionality, and the like.
According to embodiments of the present invention, a user interface or pane 220 is provided with which the user may view a listing of electronic mail items that have been received by the user, that have been sent by the user, or which have been stored in one or more user-established storage folders. The user interface or pane 220 illustrated in FIG. 2 is illustrative of an electronic mail system inbox with which the user may display and review a listing of electronic mail items received by the user. As illustrated in FIG. 2, a number of electronic mail items such as the mail item 260 and mail item 265 are listed in the inbox pane 220. A scroll button 245 is illustrated for allowing the user to scroll up or down through mail items listed in the inbox pane 220. To the right of the inbox pane 220, a preview pane 270 is illustrated for displaying the contents of a selected mail item. As is appreciated by those skilled in the art, if the user has activated the preview pane functionality, the user may receive a preview of the contents of a selected mail item by focusing on the mail item in the inbox pane 220.
According to embodiments of the present invention, an “Arranged by” field 225 is provided along an upper edge of the inbox pane 220. When the user selects a given automatic grouping arrangement type, as described below, the selected arrangement type is identified in the “Arranged by” field. For example, referring to FIG. 2, an arrangement type of “date” has been selected by the user and is thus identified in the “Arranged by” field 225. Adjacent to the “Arranged by” field 225 is a field 230 for identifying an overall sorting property applied to mail items displayed in the pane 220. For example, if mail items displayed in the pane 220, regardless of automatic grouping arrangement type, are displayed in a newest mail item on top orientation, the text in the field 230 reads “Newest on top.” Conversely, if mail items in the pane 220 are displayed according to a newest mail item at the bottom where oldest mail items are pushed to the top of the listing, the text in the field 230 may read “Newest on bottom”, or “Oldest on top.” Whether mail is sorted with newest items on top or oldest items on top may be selectively changed by the user by toggling the field 230 or the associated toggling switch located on the right side of the text contained in the field 230. As should be appreciated, the text utilized in the field 230 to describe the listing ordering is by way of example only and is not restrictive of the numerous text selections that may be used to describe the ordering of the text listed in the pane 220. For example, the text items contained in the pane 220 may similarly be ordered by such properties as “A on top, Z on bottom,” “Unflagged on top,” “Attachments on top” and the like.
As described below with reference to FIG. 4, the inbox pane 225 illustrated in FIG. 2 contains mail items received by the user automatically grouped according to date of receipt. The mail items are further grouped into logical sub-groupings to make review of the listed items for efficient and user-friendly. For example, all mail items received by the user today are listed under a visible heading 235 bearing the heading “Today.” Similarly, mail items received by the user yesterday are listed under a visible heading 240 bearing the heading “Yesterday.” As described below with reference to FIG. 4, additional grouping categories for grouping mail items according to date of receipt may be utilized such as “Mail received earlier this week,” “Mail received last week,” “Mail received last month,” and so on.
Mail items contained under each sub-grouping, such as the “Today” grouping 235 and the “Yesterday” grouping 240 may be collapsed underneath the prescribed heading. For example, selection of the collapse or expand icon displayed to the left of the “Today” heading causes all mail items under the “Today” heading 235 to collapse such that only the “Today” heading 235 is displayed to the user. Similarly, all other displayed categories may likewise be collapsed if desired by the user for management of space utilized by the user interface or pane 220. For example, if the user is momentarily only interested in mail received yesterday, the user may collapse the “Today” mail category 235 in order to allow more user interface space for mail items displayed under the “Yesterday” mail category.
FIG. 3 illustrates a computer screen display showing an electronic mail system inbox and a drop-down menu for selecting a desired automatic grouping arrangement according to embodiments of the present invention. As described above with reference to FIG. 2, according to embodiments of the present invention, an electronic mail system user may select one of a number of automatic mail grouping arrangements for applying to electronic mail received by the user or sent by the user, or the user may apply one or a number of automatic grouping properties to electronic mail stored by the user in a variety of mail storage folders. Referring to FIG. 3, in order to select a given automatic mail grouping arrangement, the user may select the “Arranged by” field 225 to open a drop-down menu 325 of automatic mail grouping arrangement types. As illustrated in FIG. 3, arrangement types that may be selected by the user include a “Date” arrangement, “Conversation” arrangement, “From” arrangement, “To” arrangement, “Folder” arrangement, “Size” arrangement, “Subject” arrangement, “Type” arrangement, “Flag” arrangement, “Attachments” arrangement, “Importance” arrangement, and “Custom” arrangement.
A check box 360 is illustrated adjacent to a presently selected mail grouping arrangement type. For example, because the “Date” arrangement has been selected by the user according to the illustrated user interface in FIG. 3, the check box 360 is checked next to the “Date” arrangement type 330. If the user selects a different arrangement type, such as the “Attachments” arrangement type, the check box 360 will appear adjacent to the “Attachments” arrangement type. An additional check box 370 is disposed adjacent to the “Show in groups” arrangement type. Selection of the “Show in groups” arrangement type causes automatic grouping according to the selected arrangement type to occur. That is, if the “Show in groups” arrangement type is not selected, electronic mail will be sorted according to the selected arrangement type, but automatic grouping will not be performed. For example, if the “Date,” arrangement t e is selected, but the “Show in groups” arrangement type is not selected, the electronic mail to which the “Date” arrangement type is applied will be sorted according to the date upon which electronic mail is received, but the mail will not be grouped into sub-groupings such as “Today,” “Yesterday,” “Earlier this week,” and the like. Selection of the “show in groups” arrangement type causes the electronic mail sorted according to the selected arrangement type to be further grouped into sub-groups under the arrangement type, as described herein.
Referring still to FIG. 3, a number of additional icons such as the envelope icon 310, the paperclip icon, and the thumbtack icon may be utilized to indicate properties of listed electronic mail. For example, a closed envelope icon 310 may indicate that the associated electronic mail item has not been read. An open envelope icon may indicate that an associated electronic mail item has been read. A paperclip icon may be utilized to indicate that an attachment is associated with the selected electronic mail item, and so on. As should be appreciated by those skilled in the art, the arrangement types and property icons illustrated in FIGS. 2 through 14 are for purposes of illustration only and are not limiting of the invention as claimed herein. That is, additional electronic mail groupings and arrangement types may be utilized in accordance with embodiments of the present invention without departing from the scope or spirit of the invention claimed herein. Likewise, any number of computer-generated icons such as the envelope icon 310 may be defined for signifying one or more properties applied to or associated with a given electronic mail item.
Each mail grouping arrangement type illustrated in FIG. 3 is described below with reference to FIGS. 4 through 14. As should be appreciated, the user interface drawings illustrated in FIGS. 4 through 14 are for purposes of example only, and actual implementations of the example user interfaces may differ greatly in terms of layout, coloring and inclusion of a variety of useful user interface icons. Also, as should be understood, text selections illustrated and described herein for mail sub-grouping headings, for example “Today” or “Mail from Bob” are for purposes of example only and may be varied greatly depending on the nature of the mail items listed under a given heading. Additionally, electronic mail items grouped under a given sub-grouping heading may be sorted according to different sorting properties. As will be described with reference to FIG. 14 below, customized grouping properties may be created and used. According to an embodiment of the present invention, a default property is utilized unless otherwise changed wherein electronic mail items grouped under a given electronic mail sub-grouping heading are sorted according to date received, or date sent (for a date sent user interface).
FIG. 4 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped by date of receipt. According to the example inbox pane 220 illustrated in FIG. 4, a “Date” arrangement type has been selected for automatically grouping electronic mail received by the user. Likewise, the user has selected that electronic mail be shown in groups. Selection of the date arrangement type causes electronic mail received by the user to be displayed in “Date” order. As appreciated by those skilled in the art, the date ordered electronic mail may be displayed with the newest mail is displayed from the top and the oldest mail displayed at the bottom. Conversely, oldest mail may be displayed at the top with newest mail displayed at the bottom.
Referring to FIG. 4, the “Arranged by” field 225 shows the selected “Date” arrangement type. As described above, because the user has selected that electronic mail be shown in groups, a number of mail sub-group headings are displayed to further logically organize the electronic mail received by the user. For example, a “Today” heading 235 is shown over mail items 415 received by the user today. A “Yesterday” heading 240 is displayed over mail items 420 received by the user yesterday. An “Earlier this week” heading 400 is displayed over mail items received by the user earlier in the week prior to yesterday. And, a “Last week” heading 410 is displayed over electronic mail items received by the user last week. As should be appreciated, a number of other headings may be utilized such as “Last month” for mail items received last month, “Last year” for mail items received last year, and so on. Additionally, as described above with reference to FIG. 2, according to embodiments of the present invention, each sub-grouping may be collapsed such that only the group heading is displayed such that individual mail items under the collapsed heading are not visible until the collapsed group is expanded by the user.
FIG. 5 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped by identity of party from which mail is received. According to the user interface or pane 220 illustrated in FIG. 5, a user has selected a “From” arrangement type for grouping the user's received electronic mail according to the party from which the mail has been received. Because the user has also selected that arranged mail should be shown in groups, the electronic mail illustrated in FIG. 5 is displayed in a number of logical sub-groupings. For example, a “Mail from Bob” heading 510 is displayed above mail items 535 received from Bob. A “Mail from Jim” heading 520 is displayed above mail items 540 received from Jim. A “Mail from Kate” heading 530 is displayed above mail items 550 received from Kate. Thus, the user of the arrangement type illustrated in FIG. 5 may quickly locate mail from a given mail sender without the need for perusing or scrolling through large numbers of mail items, and the use of the mail grouping headings 510, 520, 530 allows the user to readily locate a section of the displayed mail items of interest to the user.
FIG. 6 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped by identity of party to which mail is sent. According to the example sent items pane 220 illustrated in FIG. 6, a user has selected that her “Sent items” mail items be arranged according to the party to which given mail items have been sent. Without the selection of the “Show in groups” arrangement type illustrated in FIG. 3, individual sent mail items would be arranged in alphabetical order in the order in which individual mail items are sent. Because the user has selected that the sent items are to be shown in groups in addition to being arranged according to the party to which the items have been sent, the user's sent items mail is arranged according to a number of sub-group headings 610, 620, 630. For example, a first heading “Mail to Bob” is displayed above mail items 635 sent to Bob. A second heading “Mail to Jim” is displayed above mail items 640 sent to Jim. A third heading “Mail to Kate” 630 is displayed above mail items sent to Kate. Thus, the user may readily locate a particular mail item sent to a particular party by locating a heading with the particular party followed by a review of mail items contained under the selected heading. The individual mail items displayed under the group headings 610, 620, 630 are listed in date order with the newest items on top. As should be appreciated, by toggling the “Newest on top” field 230, the user may reverse the ordering so that mail items listed under individual group headings are displayed with the oldest mail items on top and the newest mail items on bottom.
FIG. 7 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to storage folders to which given electronic mail items are saved. According to the user interface or pane 220 illustrated in FIG. 7, the user has selected that electronic mail items be arranged by the “Folder” arrangement type. Accordingly, the “Arranged by” field 225 shows that the “Folder” arrangement type has been selected. According to this arrangement type, electronic mail received by the user or sent by the user that is stored in a number of different user-established electronic mail folders may be displayed in the pane 220 and may be grouped according to folder identification. For example, a first folder heading 710 may be displayed over electronic mail items 735 belonging to a first user folder. A second folder heading 720 may be displayed over electronic mail items 740 belonging to a second user folder. A third folder heading 730 may be displayed over electronic mail items 745 belonging to a third folder 730, and so on. By selecting the “Folder” arrangement type, the user may review in a single user interface or pane 220 all mail items across a number of user-specified mail folders, and the user may quickly review mail contained in different folders through use of the automatic grouping headings such as the headings 710, 720, 730. For a detailed description of methods of systems for viewing electronic mail items in a single user interface 220 across a number of electronic mail folders, see U.S. patent application Ser. No. 10/741,407, entitled “Methods, Systems, and Computer-Readable Mediums For Persisting and Continuously Updating Search Folders, Applicant Reference No. 301749.01, which is incorporated herein by reference as if fully set out herein.
FIG. 8 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to mail item size. According to the user interface or pane 220 illustrated in FIG. 8, a user has selected a “Size” arrangement type and the “Show in groups” arrangement type for sorting and grouping the user's electronic mail items according to the size of the electronic mail. As illustrated in FIG. 8, the “Arranged by” field 225 shows that the size arrangement type has been selected. Electronic mail items displayed in the user interface 220 are displayed in the order of size of the displayed electronic mail items. By default, the largest electronic mail items may be shown on top and the smallest electronic mail items may be shown on the bottom of the list of electronic mail items. By toggling the “Newest on top” field 230, the order of display may be reversed. Because the user has also selected that electronic mail items are to be shown in groups, the electronic mail items displayed to the user are arranged under a number of mail groupings. As should be appreciated, each mail grouping may be arranged according to a selected or default mail size. For example, a first mail grouping 810 may be displayed for mail items 835 that are five (5) megabytes or larger. A second mail grouping 820 may be displayed for mail items having a size between one (1) and five (5) megabytes. A third mail grouping 830 may be displayed for mail items having a size of less than one (1) megabyte. As should be appreciated, the size groupings illustrated in FIG. 8 are for purposes of example only, and a number of size variations for various size groupings may be utilized according to embodiments of the present invention.
FIG. 9 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to mail subject. According to the user interface illustrated in FIG. 9, the user has selected that her electronic mail be sorted and grouped according to the subject of the electronic mail items. As illustrated in FIG. 9, the “Arranged by” field identifies “Subject” as the arrangement type. In addition to selecting that the electronic mail be sorted by subject, the user has selected that the electronic mail be shown in groups. A first subject heading 910 is displayed above electronic mail items 935 having subjects identified by the subject heading 910. A second subject heading 920 is displayed above electronic mail items 940 having electronic mail subjects identified by the subject heading 920. A third subject heading 930 is displayed above the electronic mail items 945 having subjects identified by the heading 930. For example, the subject heading 910 includes an example subject heading of “Application Testing.” Each electronic mail message received by the user having a subject of “Application Testing” is sorted and is grouped underneath the subject heading 910. Thus, the user may quickly identify and retrieve a given email message under the desired subject heading without the need for scrolling through many email messages pertaining to different subject matters.
FIG. 10 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to “Mail” arrangement type. As illustrated in FIG. 10, the “Arranged by” field identifies “Type” as the arrangement type selected by the user. If the user does not specify that electronic mail items are to be shown in groups, her electronic mail may be sorted by message type and may be displayed in alphabetical order of electronic mail type. According to the example user interface illustrated in FIG. 10, the user has selected to show the sorted electronic mail in groups. Accordingly, a first electronic mail type heading 1010 is displayed above electronic mail items 1025 of the type specified by the heading type 1010. For example, the example heading 1010 identifies an electronic mail type of “Meeting Requests.” Accordingly, the electronic mail messages 1025 displayed underneath the heading 1010 include electronic mail messages involving meeting requests to the user. A second heading 1020 is illustrated for grouping messages having associated attachments. Thus, electronic mail items 1030 displayed underneath the heading 1020 include electronic mail messages having attachments. For purposes of illustration, an attachment icon 1035 is illustrated next to the mail items 1030 to show an associated attachment.
FIG. 11 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to electronic mail flag type. According to the user interface 220 illustrated in FIG. 11, the user has selected the “Flag” arrangement type for sorting and grouping the user's electronic mail items. As should be appreciated by those skilled in the art, flags 1115, 1125, 1135 may be inserted for electronic mail messages for providing additional information to a recipient of a given electronic mail message. For example, a flag attached to or associated with an electronic message may indicate that the recipient should call the sender. A flag may indicate that the recipient should not forward a given electronic message. A flag may indicate that the recipient should follow up on a given electronic mail message. Flags associated with electronic mail messages may indicate other information including that a given electronic mail message is for the recipient's information, that the message should be forwarded, that no response to the electronic mail message is necessary, that the message should be read, that the message should be reviewed, that the message is a reply to all message, and the like.
Referring to FIG. 11, electronic mail messages sorted and grouped according to “Flag” type are illustrated. For purposes of example, a first heading 1110 is labeled “Red Flag.” According to an embodiment of the present invention, colored flags may be utilized to indicate certain information. For example, a red flag 1115 associated with an electronic mail message may indicate that messages of this type should not be forwarded. As should be appreciated, the heading 1110 could also read “Do Not Forward,” or the like, as a heading for electronic mail items 1140 having associated flags 1115 of this type. As should be appreciated, the particular language used for the heading 1110 may be varied according to the preferences of a developer of the electronic mail system. A second heading 1120 illustrated as “Blue Flag” may be displayed over electronic mail items 1150 bearing flag 1125 of the type associated with the blue flag heading 1120. As described above, blue flags attached to electronic mail messages may indicate certain information, for example “For Your Information,” associated with an electronic mail item to which the flag 1125 is attached or associated. Thus, a user of the functionality of embodiments of the present invention may sort and group electronic mail items based on flags associated with electronic mail items. The user may then quickly and efficiently locate particular electronic mail items of a given flag type without the need for scrolling through every electronic mail item received by the user having an associated information flag.
FIG. 12 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to whether or not mail items include attachments. According to the example user interface or pane 220 illustrated in FIG. 12, a user has selected an “Attachments” arrangement for sorting and grouping her electronic mail items. As illustrated in FIG. 12, the “Arranged by” field 225 identifies the “Attachments” arrangement type for sorting and grouping the user's electronic mail. Because the user has also selected that her electronic mail should be shown in groups, her electronic mail items are sorted and grouped according to whether each mail item is associated with an attachment or whether mail items are not associated with attachments. For example, a first heading 1210 bearing an example heading of “Mail With Attachments” is displayed above electronic mail items 1230 that include attached documents or files. As illustrated in FIG. 12, an attachment icon 1035 is shown for indicating that an attached file or document is associated with the mail items 1230. A second heading 1220 is displayed above mail items 1235 that do not include attached documents or files. The heading 1220 includes example language “Mail Without Attachments.” Thus, if a user desires to locate a document the user recalls as having an attachment needed by the user, the user can utilize the “Attachments” arrangement type for quickly grouping together electronic mail items with attachments so that the user may quickly peruse only those electronic mail items having attachments without the need for scrolling through all electronic mail items received by the user.
FIG. 13 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to importance level. According to the example user interface 220 illustrated in FIG. 13, a user has selected an “Importance” arrangement type whereby electronic mail items will be sorted and grouped according to an importance level associated with individual electronic mail items. As illustrated in FIG. 13, the “Arranged by” field identifies “Importance” as the selected arrangement type. As should be appreciated by those skilled in the art, electronic mail senders may attach an importance level to electronic mail messages to alert an electronic mail recipient of the importance level associated with a given electronic mail message. For example, an electronic mail sender may specify that a message is of “High” importance. Similarly, an electronic mail sender may specify that a given electronic mail message is of “Normal” importance or “Low” importance. According to some electronic mail systems, an electronic mail sender need not specify that a given electronic mail message is of “Normal” importance. Electronic mail messages may be considered of “Normal” importance by default unless specified as “High” or “Low” importance.
As illustrated in FIG. 13, electronic mail messages received by the user are illustrated as sorted and grouped according to importance level. A first grouping heading 1310 is illustrated for high importance messages and is displayed above electronic mail items 1340 that have been specified as “High” importance by their respective mail senders. A second heading 1320 for messages of “Normal” importance is displayed above electronic mail items 1350 whose importance level has been specified as “Normal” by their respective senders, or where no importance level has been specified. A third heading 1330 is displayed for messages specified as “Low” importance and is displayed over electronic mail items 1360 specified by their respective mail senders as being of “Low” importance. Thus, a user may quickly segregate messages by importance level for purposes of locating and reviewing a desired message where the user recalls that the message had a particular associated importance level.
FIG. 14 illustrates a computer screen display showing an electronic mail user interface for displaying mail items grouped according to a customized automatic grouping specified by a user. As described above, according to embodiments of the present invention, a user may customize the automatic mail groupings applied to electronic mail messages received by, sent by, or stored by the user. The user may create custom automatic grouping arrangements in the form of combinations of other types of automatic grouping arrangements. For example, the user may create a customized automatic grouping arrangement whereby electronic mail is sorted and grouped based on the parties to which electronic mail items are sent combined with a sorting and grouping arrangement of electronic mail messages based on the date the messages are sent. Similarly, a user may create a customized automatic grouping arrangement whereby electronic mail items are sorted or grouped based on the date of receipt followed by a sorting and grouping of messages based on the importance level associated with particular mail items.
Referring to FIG. 14, the example user interface 220 illustrates a custom automatic grouping arrangement whereby the user has selected that electronic mail items should be sorted and grouped based on the parties from which electronic mail items have been received followed by a sorting and grouping of those electronic mail items based on the date of receipt. For example, a first group heading 1410 illustrates a heading “Mail from Bob” for grouping electronic mail items received from a particular mail sender. Underneath the heading 1410, a sub-heading 1430 of “Today” is displayed over electronic mail items received today from the particular mail sender “Bob.” A second sub-heading 1440 is displayed under the primary heading 1410 bearing the heading title “Yesterday” and is displayed over a mail item 1460 received yesterday from the same electronic mail sender “Bob.” Thus, by customizing the arrangement type applied to the user's electronic mail items, the user may group electronic mail messages received from particular senders in date groupings, so that the user may quickly locate particular mail items from particular mail senders received during particular timing periods. As should be appreciated by those skilled in the art, the customized arrangement type illustrated in FIG. 14 is for purposes of example only and is not limiting of the numerous combinations of arrangement types that may be applied to electronic mail items through creation of customized arrangement types.
Selection of the “Conversation” arrangement type, illustrated in FIG. 3, causes a grouping of electronic mail items associated with an electronic conversation string between two or more electronic users. An example user interface for illustration of the “Conversation” arrangement type is not described herein. For a detailed description regarding the “Conversation” automatic grouping arrangement type, see United States patent application, Applicant Reference No. 301753.01, which is incorporated herein by reference as if fully set out herein.
As briefly described above, processing of the automatic mail grouping functionality described herein and persistence of data associated with resulting automatic grouping of electronic mail messages or items may typically be performed at an electronic mail server and may be accessible by one or more client side electronic mail software applications. According to embodiments of the present invention, some or all of the automatic mail grouping functionality may be performed at a client side electronic mail software application, or alternatively, some aspects of the automatic electronic mail grouping functionality may be performed by a client side electronic mail software application, while other aspects of the functionality may be processed at a server side electronic mail software system. FIG. 15 is a flow diagram illustrating an illustrative routine for processing and persisting data associated with selected automatic mail groupings according to embodiments of the present invention.
The routine 1500 begins at start block 1505 and proceeds to block 1510 where a user selects an “Inbox” view. For example, the user may select that an inbox user interface 220 be presented by the user's electronic mail system for reviewing received electronic mail. Alternatively, the user may select a “Sent Items” view, or one or more folder contents views. At block 1520, the view definition selected by the user is persisted to memory at a server side electronic mail system. For example, if the user has selected an “Inbox” view for reviewing the user's received electronic mail items, a view definition utilized by the electronic mail system for preparing the selected view is persisted into memory and is loaded by the server side electronic mail system.
At decision block 1525, a determination is made as to whether an automatic grouping arrangement type has been specified by the user, as described above with reference to FIGS. 3 through 14. If an arrangement type has not been specified by the user, the routine proceeds to decision block 1530, and a determination is made as to whether any grouping or category fields have been set for the user's electronic mail items. For example, the user's electronic mail system may be set to default to group electronic mail messages according to date. If no grouping or category fields are set for the electronic mail items, the routine proceeds to block 1535, and a determination is made as to whether any sorting fields are set for the electronic mail items. That is, a determination is made as to whether any default sorting settings are specified for the user's electronic mail. For example, a default sorting setting specifying that the electronic mail should be sorted based on date received may be set for the user's electronic mail messages. If no sorting properties are set for the user's electronic mail messages, the routine proceeds to block 1575, and the client side electronic mail software application is caused to display the user's electronic mail messages according to the persisted view definition without regard to any particular mail grouping categories or sorting properties.
Returning back to decision blocks 1530 and 1535, if mail groupings or categories have been set, or if sorting properties have been set for the user's electronic mail items, the routine proceeds to block 1540, and an automatic mail grouping arrangement type (as described above with reference to FIGS. 3 through 14) is set to match the mail grouping categories or sorting properties set for the user's electronic mail items. The routine then proceeds to block 1545. At block 1545, any previously set mail grouping arrangement types or mail sorting properties are reset to the values determined at block 1540, or specified by the user at block 1525. At block 1550, a determination is made as to whether automatic grouping functionality is activated for the user's electronic mail messages. If not, the routine proceeds to block 1570, and the arrangement type set for the user's electronic mail messages at block 1545 is utilized for sorting and grouping the user's electronic mail messages. The routine then proceeds to block 1575, as described above.
Referring back to block 1550, if the automatic grouping functionality of the present invention is selected, the routine proceeds to decision block 1560, and a determination is made as to whether client side processing is required. According to embodiments of the present invention, categorization and grouping of electronic mail messages according to date and/or size is processed and associated data is persisted by the client side electronic mail software application. For example, if the user has selected that electronic mail messages are to be sorted and grouped according to “Date” or “Size” arrangement types, as described above, the routine proceeds to block 1565, and a client side grouping array is built by the client side electronic mail software application for placing electronic mail messages into appropriate “Date” or “Size” mail groupings, as described above with reference to FIGS. 2, 4 and 8.
If no client side processing is required at decision block 1560, or after a client side mail grouping array is built at block 1565, the routine proceeds to block 1570. At block 1570, the arrangement type setting specified for the user's electronic mail messages is utilized by the server side electronic mail system for preparing an electronic mail view for display by the client side electronic mail software application. That is, the selected view definition is passed from the server side electronic mail system along with persisted data required by the client side software application for displaying the specified view (e.g., “Inbox” view) along with electronic mail messages sorted and grouped according to the automatic grouping properties applied to the electronic mail messages. When the client side software application receives the view definition and persisted data from the server side electronic mail system, any client side electronic mail grouping definition and/or data constructed by the client side electronic mail system, as described above with reference to blocks 1560 and 1565, is utilized by the client side application for preparing any portion of the displayed view associated with the client side mail grouping data. At block 1575, the constructed electronic mail view is displayed by the client side electronic mail application. The routine ends at block 1595.
As described herein, methods and systems are provided for automatically sorting and grouping electronic mail messages in an electronic mail system. It will be apparent to those skilled in the art that various modifications or variations may be made in the present invention without departing from the scope or spirit of the invention. Other embodiments of the present invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein.

## Claims

1. A method of grouping electronic mail items, the method comprising:
receiving a first selection of an electronic mail arrangement type;
arranging, in response to the first selection, a plurality of electronic mail items in accordance with the selected electronic mail arrangement type, wherein arranging the plurality of electronic mail items comprises sorting the plurality of electronic mail items;
receiving a second selection of an electronic mail grouping type; and applying, in response to the second selection, the selected electronic mail grouping type to the arranged plurality of electronic mail items, wherein applying, in response to the second selection, the electronic mail grouping type to the plurality of electronic mail items comprises:
preparing at least one electronic mail grouping in accordance with the selected electronic mail grouping type within the arranged plurality of electronic mail item, and
populating the at least one electronic mail grouping with at least one corresponding electronic mail item from the arranged plurality of electronic mail items while maintaining the selected arrangement type.

2. The method of claim 1, wherein populating the at least one electronic mail grouping with the at least one corresponding electronic mail item from the plurality of electronic mail items comprises populating the at least one electronic mail grouping with the at least one corresponding electronic mail item from the plurality of electronic mail items while maintaining the selected electronic mail arrangement type.

3. The method of claim 1, further comprising:
arranging, prior to receiving the first selection of the electronic mail arrangement type, the plurality of electronic mail items according to a default arrangement type.

4. The method of claim 3, wherein arranging, prior to receiving the first selection of the electronic mail arrangement type, the plurality of electronic mail items according to the default arrangement type comprises a server-side arrangement of the plurality of electronic mail items.

5. The method of claim 3, wherein arranging, prior to receiving the first selection of the electronic mail arrangement type, the plurality of electronic mail items according to the default arrangement type comprises a client-side arrangement of the plurality of electronic mail items.

6. The method of claim 1, further comprising:
grouping, prior to receiving the second selection of the electronic mail grouping type, the plurality of electronic mail items according to a default grouping type.

7. The method of claim 6, wherein grouping, prior to receiving the second selection of the electronic mail grouping type, the plurality of electronic mail items according to the default grouping type comprises a server-side grouping of the electronic mail items.

8. The method of claim 6, wherein grouping, prior to receiving the second selection of the electronic mail grouping type, the plurality of electronic mail items according to the default grouping type comprises a client-side grouping of the electronic mail items.

9. The method of claim 1, wherein applying the selected electronic mail grouping type to the plurality of electronic mail items comprises applying a custom electronic mail grouping type comprised of a combination of at least two electronic mail grouping types to the plurality of electronic mail items.

10. The method of claim 9, wherein preparing the at least one electronic mail grouping according to the selected electronic mail grouping arrangement comprises preparing at least one sub-grouping for the at least one electronic mail grouping, wherein the at least one electronic mail grouping is associated with a first electronic mail grouping type of the at least two electronic mail grouping types and wherein the at least one sub-grouping for each of the at least one electronic mail grouping is associated with a second electronic mail grouping type of the at least two electronic mail grouping types.

11. A system for grouping electronic mail messages, the system comprising:
a memory storage;
a processing unit coupled to the memory storage, wherein the processing unit is operative to:
receive a plurality of electronic mail items;
arrange the plurality of electronic mail items according to a default arrangement; receive a first selection of an electronic mail arrangement type;
arrange, in response to the first selection, the plurality of electronic mail items in accordance with the selected electronic mail arrangement type;
receive a second selection of an electronic mail grouping type; and
in response to the second selection:
prepare at least one electronic mail grouping in accordance with the selected electronic mail grouping type within the arranged plurality of electronic mail items, and
populate the at least one electronic mail grouping with at least one corresponding electronic mail item from the arranged plurality of electronic mail items the arrangement type being preserved within the at least one electronic mail grouping.

12. The system of claim 11, wherein the processing unit being operative to arrange the plurality of electronic mail items according to the default arrangement comprises the processing unit being operative to arrange the plurality of electronic mail items according to a server-side arrangement of the plurality of electronic mail items.

13. The system of claim 11, wherein the processing unit is further operative to group, prior to receiving the second selection of the electronic mail grouping type, the plurality of electronic mail items according to a default grouping type.

14. The system of claim 13, wherein the processing unit being operative to group, prior to receiving the second selection of the electronic mail grouping type, the plurality of electronic mail items according to the default grouping type comprises the processing unit being operative to group the plurality of electronic mail items according a server-side grouping of the electronic mail items.

15. The system of claim 11, wherein the processing unit being operative to prepare the at least one electronic mail grouping according to the selected electronic mail grouping arrangement comprises the processing unit being operative to prepare at least one sub-grouping for the at least one electronic mail grouping, wherein the at least one electronic mail grouping is associated with a first electronic mail grouping type and wherein the at least one sub-grouping for each of the at least one electronic mail grouping is associated with a second electronic mail grouping type.

16. A computer-readable storage unit having a set of instructions which when executed performs a method of grouping electronic mail items, the method executed by the set of instructions comprising:
receiving a plurality of electronic mail items;
arranging, in response to the first selection, the plurality of electronic mail items in accordance with the selected electronic mail arrangement type, wherein arranging the plurality of electronic mail items comprises sorting the plurality of mail items in accordance with the selected electronic mail arrangement type;
receiving a second selection of an electronic mail grouping type; and applying, in response to the second selection, the selected electronic mail grouping type to the arranged plurality of electronic mail items, wherein applying, in response to the second selection, the electronic mail grouping type to the plurality of electronic mail items comprises:
preparing at least one electronic mail grouping in accordance with the selected electronic mail grouping type within the arranged plurality of electronic items, and
populating the at least one electronic mail grouping with at least one corresponding electronic mail item from the arranged plurality of electronic mail items,
wherein populating the at least one electronic mail grouping with the at least one corresponding electronic mail item from the plurality of electronic mail items comprises populating the at least one electronic mail grouping with the at least one corresponding electronic mail item from the plurality of electronic mail items while maintaining the selected electronic mail arrangement type.

17. The computer-readable storage unit of claim 16, wherein arranging the plurality of electronic mail items according to the default arrangement type comprises a server-side arrangement of the plurality of electronic mail items.

18. The computer-readable storage unit of claim 16, wherein grouping the plurality of electronic mail items according to the default grouping type comprises a server-side grouping of the electronic mail items.

19. The computer-readable storage unit of claim 16, wherein applying the selected electronic mail grouping type to the plurality of electronic mail items comprises applying a custom electronic mail grouping type comprised of a combination of at least two electronic mail grouping types to the plurality of electronic mail items.

20. The computer-readable storage unit of claim 19, wherein preparing the at least one electronic mail grouping according to the selected electronic mail grouping arrangement comprises preparing at least one sub-grouping for the at least one electronic mail grouping, wherein the at least one electronic mail grouping is associated with a first electronic mail grouping type of the at least two electronic mail grouping types and wherein the at least one sub-grouping for each of the at least one electronic mail grouping is associated with a second electronic mail grouping type of the at least two electronic mail grouping types.