Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20100211600 A2
Publication typeApplication
Application numberUS 11/745,186
Publication dateAug 19, 2010
Filing dateMay 7, 2007
Priority dateSep 3, 1998
Also published asUS7272604, US8306993, US9201950, US20070244907, US20110072029, US20110092193, US20110093553, US20130189960, US20130191406, US20130191459, US20140330864, US20150006560, WO2001018687A1
Publication number11745186, 745186, US 2010/0211600 A2, US 2010/211600 A2, US 20100211600 A2, US 20100211600A2, US 2010211600 A2, US 2010211600A2, US-A2-20100211600, US-A2-2010211600, US2010/0211600A2, US2010/211600A2, US20100211600 A2, US20100211600A2, US2010211600 A2, US2010211600A2
InventorsAtle Hedloy
Original AssigneeArendi Holding Limited
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Method, System and Computer Readable Medium for Addressing Handling from an Operating System
US 20100211600 A2
Abstract
A method, system and computer readable medium for information handling within an operating system, including providing a record retrieval program; providing an input device within a window or screen of the operating system and configured to enter an execute command which initiates a record retrieval from local and remote information sources using the record retrieval program; using the record retrieval program to enter first information into search fields provided in the record retrieval program; entering the execute command using the input device after the step of entering the first information; searching, using the record retrieval program, the local and remote information sources for second information associated with the first information; and displaying the second information in the record retrieval program, when one of the local and remote information sources includes second information associated with the first information.
Images(18)
Previous page
Next page
Claims(33)
1-106. (canceled)
107. A computer implemented method for information handling, comprising:
displaying information electronically, using a computer program;
electronically analyzing the information to identify a portion of that information as contact information and to determine what type of contact information the portion is, without user designation of a specific part of the electronically displayed information to be subject to the analyzing;
electronically searching in an information source for the contact information in order to find whether the contact information is included in the information source; and
when the information source includes the contact information, if second information in the information source is associated with the contact information, causing electronic display of at least a portion of the second information.
108. A method according to claim 107, further comprising:
during the displaying, receiving an execute command from an input device that initiates at least one process of this method.
109. A method according to claim 107, further comprising:
in a computer process, performing an action depending on the type of contact information the portion is.
110. A method according to claim 110, wherein the portion is a name and the action includes insertion of an address into the displayed information.
111. At least one non-transitory computer readable medium encoded with instructions which when loaded on at least one computer, establish processes for information handling, comprising:
displaying information electronically, using a computer program;
electronically analyzing the information to identify a portion of that information as contact information and to determine what type of contact information the portion is, without user designation of a specific part of the electronically displayed information to be subject to the analyzing;
electronically searching in an information source for the contact information in order to find whether the contact information is included in the information source; and
when the information source includes the contact information, if second information in the information source is associated with the contact information, causing electronic display of at least a portion of the second information.
112. At least one non-transitory computer readable medium according to claim 111, wherein the instructions establish processes further comprising:
during the displaying, receiving an execute command from an input device that initiates at least one process for which instructions are stored in the computer readable medium.
113. At least one non-transitory computer readable medium according to claim 111, wherein the instructions establish processes further comprising:
in a computer process, performing an action depending on the type of contact information the portion is.
114. At least one non-transitory computer readable medium according to claim 113, wherein the portion is a name and the action includes insertion of an address into the displayed information.
115. An apparatus for information handling, comprising:
a processor; and
a memory storing instructions executable by the processor to perform processes that include:
displaying information electronically, using a computer program;
electronically analyzing the information to identify a portion of that information as contact information and to determine what type of contact information the portion is, without user designation of a specific part of the electronically displayed information to be subject to the analyzing;
electronically searching in an information source for the contact information in order to find whether the contact information is included in the information source; and
when the information source includes the contact information, if second information in the information source is associated with the contact information, causing electronic display of at least a portion of the second information.
116. An apparatus according to claim 115, wherein the memory further stores instructions executable by the processor to perform processes that include:
during the displaying, receiving an execute command from an input device that initiates at least one process for which instructions are stored in the memory.
117. An apparatus according to claim 115, wherein the memory further stores instructions executable by the processor to perform processes that include:
in a computer process, performing an action depending on the type of contact information the portion is.
118. An apparatus according to claim 117, wherein the portion is a name and the action includes insertion of an address into the displayed information.
119. A computer implemented method for information handling, comprising:
analyzing in a computer process information electronically displayed to identify a portion of that information as contact information, without user designation of a specific part of the electronically displayed information to be subject to the analyzing, wherein the contact information is at least one of a name, a title, an address, a telephone number, and an email address;
electronically searching in an information source for the contact information in order to find whether the contact information is included in that information source; and
when the information source includes the contact information, if second information in the information source is associated with that contact information, electronically displaying at least a portion of the second information, wherein the second information is at least one of a name, a title, an address, a telephone number, and an email address.
120. A method according to claim 119, further comprising:
receiving an execute command from an input device that initiates at least one process of this method.
121. A method according to claim 119, wherein the method is implemented in a client running a program, the client selected from a group consisting of a computer, a cell phone, a palm top device, and a personal organizer.
122. A method according to claim 121, wherein the contact information is a name, the second information is an address, and the client is a computer.
123. A method according to claim 121, wherein the contact information is a telephone number.
124. A method according to claim 121, wherein the contact information is a telephone number, the second information is a name, and the client is a cell phone.
125. At least one non-transitory computer readable medium encoded with instructions which when loaded on at least one computer, establish processes for information handling, comprising:
analyzing in a computer process information electronically displayed to identify a portion of that information as contact information, without user designation of a specific part of the electronically displayed information to be subject to the analyzing, wherein the contact information is at least one of a name, a title, an address, a telephone number, and an email address;
electronically searching in an information source for the contact information in order to find whether the contact information is included in that information source; and
when the information source includes the contact information, if second information in the information source is associated with that contact information, electronically displaying at least a portion of the second information, wherein the second information is at least one of a name, a title, an address, a telephone number, and an email address.
126. At least one non-transitory computer readable medium according to claim 125, wherein the instructions establish processes further comprising:
receiving an execute command from an input device that initiates at least one process for which instructions are stored in the computer readable medium.
127. At least one non-transitory computer readable medium according to claim 125, wherein the at least one non-transitory computer readable medium is embodied in a client running a program, the client selected from a group consisting of a computer, a cell phone, a palm top device, and a personal organizer.
128. At least one non-transitory computer readable medium according to claim 127, wherein the contact information is a name, the second information is an address, and the client is a computer.
129. At least one non-transitory computer readable medium according to claim 127, wherein the contact information is a telephone number.
130. At least one non-transitory computer readable medium according to claim 127, wherein the contact information is a telephone number, the second information is a name, and the client is a cell phone.
131. An apparatus for information handling, comprising:
a processor; and
a memory storing instructions executable by the processor to perform processes that include:
analyzing in a computer process information electronically displayed to identify a portion of that information as contact information, without user designation of a specific part of the electronically displayed information to be subject to the analyzing, wherein the contact information is at least one of a name, a title, an address, a telephone number, and an email address;
electronically searching in an information source for the contact information in order to find whether the contact information is included in that information source; and
when the information source includes the contact information, if second information in the information source is associated with that contact information, electronically displaying at least a portion of the second information, wherein the second information is at least one of a name, a title, an address, a telephone number, and an email address.
132. An apparatus according to claim 131, wherein the memory further stores instructions executable by the processor to perform processes that include:
receiving an execute command from an input device that initiates at least one process for which instructions are stored in the computer readable medium.
133. An apparatus according to claim 131, wherein the apparatus is selected from a group consisting of a computer, a cell phone, a palm top device, and a personal organizer.
134. An apparatus according to claim 133, wherein the contact information is a name, the second information is an address, and the apparatus is a computer.
135. An apparatus according to claim 133, wherein the contact information is a telephone number.
136. An apparatus according to claim 133, wherein the contact information is a telephone number, the second information is a name, and the apparatus is a cell phone.
137. A computerized method for information handling, the method comprising:
displaying information in a document electronically using a computer program;
electronically analyzing the information to identify a portion of that information as contact information including at least one of a name without an address and a name with an address;
providing an input device configured to allow the user to use the input device to command the system to perform at least one of:
i) inserting address information from an information source and associated with the name into the document, and
ii) storing at least part of the contact information in the information source;
during the displaying, receiving an execute command from the input device, wherein accessing and manipulating the input device are the only user actions required to cause initiation and completion of the analyzing; and
if the contact information is identified as including a name without an address, electronically searching for the name in the information source, in order to find whether the name is included in the information source; and
when the information source includes the name, if address information in the information source is associated with the name, causing insertion of the address information into the document;
if the contact information is identified as including a name with an address, i) electronically prompting the user with an option to save electronically in the information source at least some of the contract information, and ii) electronically searching for the name in the information source, in order to find whether the name is included in the information source; and
when the information source includes at least one contact with the name, prompting the user to make a decision whether to store the name and address as a new contact or to update one of the at least one contact.
138. At least one non-transitory computer readable medium encoded with instructions which when loaded on at least one computer, establish processes for information handling, comprising:
displaying information in a document electronically using a computer program;
electronically analyzing the information to identify a portion of that information as contact information including at least one of a name without an address and a name with an address;
providing an input device configured to allow the user to use the input device to command the system to perform at least one of:
i) inserting address information from an information source and associated with the name into the document, and
ii) storing at least part of the contact information in the information source;
during the displaying, receiving an execute command from the input device, wherein accessing and manipulating the input device are the only user actions required to cause initiation and completion of the analyzing; and
if the contact information is identified as including a name without an address, electronically searching for the name in the information source, in order to find whether the name is included in the information source; and
when the information source includes the name, if address information in the information source is associated with the name, causing insertion of the address information into the document;
if the contact information is identified as including a name with an address, i) electronically prompting the user with an option to save electronically in the information source at least some of the contract information, and ii) electronically searching for the name in the information source, in order to find whether the name is included in the information source; and
when the information source includes at least one contact with the name, prompting the user to make a decision whether to store the name and address as a new contact or to update one of the at least one contact.
Description
    CROSS REFERENCES TO RELATED APPLICATIONS
  • [0001]
    The present invention is a continuation of U.S. patent application Ser. No. 09/390,303, which was filed on Sep. 3, 1999, by Atle Hedloy, which is presently incorporated herein by reference.
  • BACKGROUND OF THE INVENTION
  • [0002]
    1. Field of the Invention
  • [0003]
    This invention relates to a method, system and computer readable medium for name and address handling (hereinafter called “address handling”), and more particularly to a touch screen, keyboard button, icon, menu, voice command device, etc. (hereinafter called “button”) provided in a computer program, such as a word processing program, spreadsheet program, etc., or operating system, such as WINDOWS™ operating system, MACINTOSH™ operating system, etc., and coupled to an information management source for providing address handling within a document created by the computer program or within the operating system.
  • [0004]
    2. Discussion of the Background
  • [0005]
    In recent years, with the advent of programs, such as word processors, spreadsheets, etc. (hereinafter called “word processors”) and operating systems, such as WINDOWS™ operating system, MACINTOSH™ operating system, etc., users may require retrieval of information, such as name and address information, etc., for insertion into a document, such a letter, fax, etc., created with the word processor or for contact management at the operating system level. Typically, the information is retrieved by the user from an information management source external to the word processor, such as a database program, contact management program, etc., or from the word processor itself, for insertion into the document. Examples of such word processors are WORD™, NOTEPAD™, EXCEL™, WORDPAD™, WORDPERFECT™, QUATROPRO™, AMIPRO™, etc., and examples of such information management sources are ACCESS™, OUTLOOK™, ORACLE™, DBASE™, RBASE™, CARDFILE™, etc.
  • [0006]
    However, the information in the database must constantly be updated by the user. This requires the user to learn how to use and have access to the database. In this case, a change in the information, such as change in an address or a name, etc., requires the user of the word processor to implement this change in the database, or alternatively, the change is made to the database centrally by a database administrator.
  • SUMMARY OF THE INVENTION
  • [0007]
    Accordingly, an object of the present invention is to provide a method, system and computer readable medium for address handling within a computer program or operating system.
  • [0008]
    Another object of the present invention is to provide a method, system and computer readable medium for address handling within a computer program, such as a word processing program, spreadsheet program, etc, or operating system, such as such as WINDOWS™ operating system, MACINTOSH™ operating system, etc.
  • [0009]
    Another object of the present invention is to provide a method, system and computer readable medium for address handling within a computer program or operating system, using an input device provided in the computer program.
  • [0010]
    Another object of the present invention is to provide a method, system and computer readable medium for address handling within a computer program or operating system, using an input device, such as a touch screen, keyboard button, icon, menu, voice command device, etc., provided in the computer program and coupled to an information management source.
  • [0011]
    Another object of the present invention is to provide a method, system and computer readable medium for address handling within a computer program or operating system using an input device provided in the computer program or operating system and coupled to local and/or remote information management source, such as a database program, contact management program, computer network, Internet site, etc.
  • [0012]
    Another object of the present invention is to provide a method, system and computer readable medium for address handling within a computer program or operating system using an input device provided in the computer program or operating system and coupled to local and remote information management source, such as a database program, contact management program, computer network, Internet site, etc., wherein data found in the local database is related to data found in the remote database.
  • [0013]
    The above and other objects are achieved according to the present invention by providing a novel method, system and computer readable medium for information handling within an operating system, including providing a record retrieval program; providing an input device within a window or screen of the operating system and configured to enter an execute command which initiates a record retrieval from local and remote information sources using the record retrieval program; using the record retrieval program to enter first information into search fields provided in the record retrieval program; entering the execute command using the input device after the step of entering the first information; searching, using the record retrieval program, the local and remote information sources for second information associated with the first information; and displaying the second information in the record retrieval program, when one of the local and remote information sources includes second information associated with the first information.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • [0014]
    A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings wherein:
  • [0015]
    FIG. 1 is a flow chart illustrating a method for address handling within a computer program, according to an exemplary embodiment of the present invention;
  • [0016]
    FIG. 2 is a flow chart illustrating a method for address handling within a computer program, according to another exemplary embodiment of the present invention;
  • [0017]
    FIG. 3 is a screen shot illustrating the inputting of a name to be searched and an address handling button within a word processor, according to an exemplary embodiment of the present invention;
  • [0018]
    FIG. 4 is a screen shot illustrating a retrieved address in a word processor, according to an exemplary embodiment of the present invention;
  • [0019]
    FIG. 5 is a screen shot illustrating the inputting of a name and address to be searched and an address handling button within a word processor, according to an exemplary embodiment of the present invention;
  • [0020]
    FIG. 6 is a screen shot illustrating an add new contact message window, according to an exemplary embodiment of the present invention;
  • [0021]
    FIG. 7 is a screen shot illustrating a contact register message window, according to an exemplary embodiment of the present invention;
  • [0022]
    FIG. 8 is a screen shot illustrating an address missing message window, according to an exemplary embodiment of the present invention;
  • [0023]
    FIG. 9 is a screen shot illustrating a modify contact's address message window, according to an exemplary embodiment of the present invention;
  • [0024]
    FIG. 10 is a screen shot illustrating a select a contact address register message window, according to an exemplary embodiment of the present invention;
  • [0025]
    FIG. 11 is a screen shot illustrating a more detailed mode of registering an additional address for the contact register of FIG. 9, according to an exemplary embodiment of the present invention;
  • [0026]
    FIG. 12 is a screen shot illustrating a contact management program window in a full detailed mode, according to an exemplary embodiment of the present invention;
  • [0027]
    FIG. 13 is a screen shot illustrating an address already in use message window, according to an exemplary embodiment of the present invention;
  • [0028]
    FIG. 14 is a screen shot illustrating the inputting of a name to be searched and an address handling button within a spreadsheet, according to an exemplary embodiment of the present invention;
  • [0029]
    FIG. 15 is a screen shot illustrating a retrieved address in a spreadsheet, according to an exemplary embodiment of the present invention;
  • [0030]
    FIG. 16 is a flow chart illustrating a method for address handling within an operating system, according to another exemplary embodiment of the present invention;
  • [0031]
    FIG. 17 is a screen shot illustrating an operating system window including means for address handling therein, according to an exemplary embodiment of the present invention;
  • [0032]
    FIG. 18 is a screen shot illustrating an address handling program, according to an exemplary embodiment of the present invention; and
  • [0033]
    FIG. 19 is a schematic illustration of a general purpose computer for performing the processes of the present invention, according to an exemplary embodiment of the present invention.
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • [0034]
    In an embodiment of the present invention, single button addressing is achieved by providing an input device, such as a touch screen, keyboard, icon, menu, voice command device, etc. (hereinafter called “button”), in a computer program, such as a word processing program, spreadsheet program, etc. (hereinafter called “word processor”), or an operating system, such as WINDOWS™ operating system, MACINTOSH™ operating system, etc., for executing address handling therein.
  • [0035]
    Accordingly, in a word processor or operating system, the button is added and a user types information, such as an addressee's name, or a part of the name, etc. in a document created with the word processor, such as a letter, fax, etc., and then clicks, selects, commands, etc. the button via the appropriate input device, such as a touch screen button, keyboard button, icon, menu choice, voice command device, etc. A program then executes and retrieves the typed information from the document, and searches a local (i.e., the user's personal computer or an Intranet coupled to the user's personal computer) or remote (i.e., the Internet) information management source, such as a database, file, database program, contact management program, etc. (hereinafter called “database”) to determine if the information, such as the name or part of the name typed and searched by the program exists in the database. If the program does not find stored information, such as a name, corresponding to the name or part of the name typed, the user is asked by the program whether the information, such as the name that was not found, should be added to the local database. In addition, the user may enter any other information besides the name, such as addresses, businesses, telephone numbers, fax numbers, e-mail address, etc., so that this other information can be stored in the local database for later use.
  • [0036]
    If the program finds name(s) and address(es) corresponding to the part of the addressee's name typed, this additional information is automatically entered into the user's word processor, optionally with a confirmation from the user that this is the correct data and stored in the local and/or remote database. If the typed address information does not correspond to data already stored in the local or remote database, after clicking on the button, the program, for example, lets the user decide: (1) if this is new data (e.g., a new address) for an existing contact; (2) if the stored data should be changed to what the user just typed; (3) if this is a new contact with the same name as one already entered into the database; or (4) if the typed address is only to be used once, and therefore not to be stored in the database at all. If, later, for example, a name with several address stored in the local or remote database is recalled, all addresses for this contact will be displayed, so that the correct address can be selected by the user.
  • [0037]
    The program may be extended to also store and retrieve other information, such as telephone numbers, fax numbers, e-mail addresses, etc. Once the program recalls the telephone numbers, fax numbers, e-mail addresses, etc., the user can command the program to send e-mails, faxes, etc. Similarly, if the user types in the name of a mailing list, the program create merge letters, group e-mails, etc.
  • [0038]
    Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views, and more particularly to FIGS. 1 and 2 thereof, there is illustrated flow charts of single button addressing, according to exemplary embodiments of the present invention.
  • [0039]
    In FIG. 1, after the user has inserted the address in the word processor, the user commands the button at step 2 and the program analyzes what the user has typed in the document at step 4. At step 6, the program decides what was found in the document and if the program found nothing in the document or what it found was un-interpretable the program goes to step 8 and outputs an appropriate message to the user and then quits at step 16. The program analyzes what the user has typed in the document at step 4, for example, by analyzing (i) paragraph/line separations/formatting, etc.; (ii) street, avenue, drive, lane, boulevard, city, state, zip code, county designators and abbreviations, etc.; (iii) Mr., Mrs., Sir, Madam, Jr., Sr. designators and abbreviations, etc.; (iv) Inc., Ltd., P.C., L.L.C, designators and abbreviations, etc.; and (v) a database of common male/female names, etc.
  • [0040]
    If the program finds an e-mail address mailing list/category name telephone number or other information, at step 10 an appropriate action is performed by the program and then the program execution quits at step 16. If the program only finds a name or initials, or the like, the program looks up the name in the database at step 12 and at step 18 the program determines what was found. If the program finds more than one possible contact/address match, at step 20 the program displays menu choices to the user to let him choose an appropriate answer. Then at step 22 the program inserts a correct address and name in the document and then at step 16 the program quits execution. If the program finds one match exactly, i.e., one contact with one address, the program inserts the correct address and name in the document at step 22 and then quits execution at step 16. If the program does not find a name in the database, at step 24 the program prompts the user to specify an address and then quits execution at step 16. If the program at step 6 finds a name and an address, at step 14 the name is looked up in the database. Then, at step 26, if no match is found, at step 28 the program inserts an address and a name which are possibly corrected by the user into the database and then quits execution at step 16. If at step 26, the name and address is found, at step 32 the program either takes no action or displays the data for the user to edit. If at step 26, the name is found but not the address, the program prompts the user for a decision at step 30. If the user decides that this another contact with a same name, the program goes to step 28. If the user decides that this is a one time occurrence, no action is taken and the program quits at step 16. If the user decides that the contact has, for example, moved and that this is a new address, at step 34 one of the old addresses for the contact is replaced with the new one and the program quits at step 16. If the user decides that this is an additional address for the contact, at step 36 the additional address is inserted into the database for that contact and execution quits at step 16.
  • [0041]
    The flowchart shown in FIG. 2 is similar to the flowchart in FIG. 1, except for some additional steps which will now be discussed. At step 6, if the program only finds a name or a similar name then the name is looked up in the database at step 12, then at step 18 if the program found more than one possible contact/address match, the program displays choices to the user to let him choose an address at step 20. Then at step 21 the user decides whether to insert the selected address into the document. If the user does not decide to select the address into the document the program quits execution at step 16. If the user decides to insert the selected address into the document, the program inserts the address and name into the document at step 22 and then quits at step 16.
  • [0042]
    If the program finds a name and address in the database at step 6, then at step 14 the program looks up the name in the database and at step 26 the program determines what it has found. If the program does not find the name at step 26, at step 27 the program prompts the user for a decision and review and whether to insert the contact and address. If the user does not decide to insert the contact address, the program quits at step 16. If the user decides to insert the contact address, at step 28 the program inserts the address and name which may be possibly corrected by the user or program in the database and then execution quits at step 16.
  • [0043]
    If at step 26 the program finds a name and not an address, then at step 29 the name is looked up in the database. Then at step 31 the program decides whether this contact has another address. If the contact does not have another address, at step 33 the program prompts the user for a decision and review and whether to add the address. If the user does not want to add the address at step 33, the program quits at step 16. If the user wants to add the address at step 33 because this is an additional address for the contact, at step 36 the address is inserted in the database for the contact and execution quits at step 16.
  • [0044]
    At step 30, if the user decides that this is another contact with a same name, then the program goes to step 28. If at step 30 the user decides that this is a one time occurrence, then the program quits at step 16. If at step 30, the user decides that the contact has, for example, moved, the program goes to step 34. If at step 30, the user decides that this is an additional address for the contact, at step 36 the program inserts the address in the database for the contact and then quits at step 16.
  • [0045]
    Various exemplary screen shots which are generated during execution of the program, according to the present invention, will now be described with reference to FIGS. 3-15 and examples 1-7 as follows.
  • Example 1 Retrieving an Existing Address from the Database
  • [0046]
    FIG. 3 illustrates a starting point in word processor document, such as a WORD™ document, wherein the user has typed a name 40. The user hits the button 42, for example, marked “OneButton” and the program according to the present invention retrieves the name 40 from the document, searches a database for the name 40, and inserts the retrieved address 44 associated with the name 40 into the document as shown in, for example, FIG. 4.
  • [0047]
    The above example corresponds to steps 2, 4, 6, 12, 18, 22 and 16 in the flow charts of FIGS. 1 and 2.
  • Example 2 Adding a New Contact to the Database
  • [0048]
    FIG. 5 illustrates a starting point in word processor document, such as a WORD™ document, wherein the user has typed a name and address of a new contact 46. The user commands the button 42, for example, marked “OneButton,” and the program according to the invention retrieves the new contact 46 from the document, searches a database for the name of the new contact 46 and generates a screen as shown in, for example, FIG. 6. This screen includes a message 50 informing the user that the new contact does not exist in the database, a message 52 including the address retrieved from the document, an address type selection 54, such as home, business, etc., and “OK,” “Details,” and “Cancel” buttons 56, 58, and 60, respectively.
  • [0049]
    At this point, the user can cancel the operation by commanding the Cancel button 60, ask the program to store data in the database and return to the document by commanding the OK button 56, or check details before storing data into the database by commanding the Details button 58. If the user commands the Details button 58, as shown in, for example, FIG. 7, a message screen is provided so that the user can review and edit data 62 and the selection 54, store the data 62 and 54 in the database by commanding a “Add and Choose” button 64, see more options by commanding an “Options” button 66, or cancel the operation by commanding the Cancel button 60.
  • [0050]
    The above example corresponds to steps 2, 4, 6, 14, 26, 28 and 16 in the flow chart of FIG. 1 and steps 2, 4, 6, 14, 26, 27, 28 and 16 in the flow chart of FIG. 2.
  • Example 3 Try to Retrieve Existing Address but Contact is not in Database
  • [0051]
    FIG. 3 illustrates a starting point in word processor document, such as a WORD™ document, wherein the user has typed a name of a contact 40. The user commands the button 42, for example, marked “OneButton,” and the program according to the present invention retrieves the name 40 from the document, searches a database for the name of the contact 40 and generates a screen as shown in, for example, FIG. 8. This screen includes a message 68 informing the user that the contact does not exist in the database and to specify an address, and “OK” buttons 56. At this point when the user commands the OK button 56, the user returns to the document so that the contact's address can be included as in Example 2 above.
  • [0052]
    The above example corresponds to steps 2, 4, 6, 12, 18, 24 and 16 in the flow charts of FIGS. 1 and 2.
  • Example 4 Adding a New Address for an Existing Contact (Short Version)
  • [0053]
    FIG. 4 illustrates a starting point in word processor document, such as a WORD™ document, wherein the user has typed a name and new address of an existing contact 44. The user commands the button 42, for example, marked “OneButton,” and the program according to the present invention retrieves the existing contact 44 from the document, searches a database for the name of the existing contact 44 and generates a screen as shown in, for example, FIG. 9. This screen includes a message 70 informing the user that the contact already exits in the database with an existing address, a message 72 including the existing address, add new contact with same name selection 74, change existing address selection 76, use existing address in document selection 78, add the new address to contact selection 80, the address type selection 54, such as home, business, etc., and the “OK,” “Details,” and “Cancel” buttons 56, 58, and 60 respectively. At this point, the user may select one of the four options 74-80, and command the OK button 56 to execute the selected options. The user can also cancel the operation by commanding the Cancel button 60, or check details before storing data into the database by commanding the Details button 58.
  • [0054]
    The above example corresponds to steps 2, 4, 6, 14, 26, 28, 30, 34, 36, and 16 in the flow chart of FIG. 1 and steps 2, 4, 6, 14, 26, 29, 31, 30, 28, 34, 36, and 16 in the flow chart of FIG. 2.
  • Example 5 Selecting Between Several Possible Matching Addresses
  • [0055]
    FIG. 3 illustrates a starting point in word processor document, such as a WORD™ document, wherein the user has typed a name and possibly address of at least one existing contact 40. The user commands the button 42, for example, marked “OneButton,” and the program according to the present invention retrieves the existing contact 40 from the document, searches a database for the name of the existing contact 40 and generates a screen as shown in, for example, FIG. 10. This screen includes a message informing the user that the name corresponds to several addresses and possible contacts which already exist in the database, with existing contacts and addresses for selection 82, a message 84 including the full name and address for the contact that the user selects in 82, the Options button 66, a “Choose” button 86, a “Full details” button 88, a “More>>>” button 90, and the Cancel button 60. The above screen indicates to the user that at least one contact with the same name exists, and that there are more than one addresses and/or contacts that match.
  • [0056]
    At this point, the user may command the Choose button 86 to use the selected address and return to the document, or the user may command the More>>>button 90 to view how the program interpreted what the user typed in the word processor, and possibly change this data, wherein the program generates an updated screen as shown in, for example, FIG. 11. The updated screen includes the data 62 which displays the name typed in the word processor as interpreted by the program, address fields, and the fields for the address type selection 54, such as home, business, etc., which may be changed by the user before the program stores it in the database, the Add and Choose button 64, a “<<<Less” button 90 corresponding to the More>>>button 90 for returning to the screen of FIG. 10, and an “Add this address to the selected contact above” button 92. The user might then command the Add this address to the selected contact above button 92 and the result in the word processor is illustrated in FIG. 4. The user can also cancel the operation by commanding the Cancel button 60, or command the add choose button 64 to add this name and address as a new contact and address, or open the database before storing data into the database by commanding a “Full details” button 88 as will be later described.
  • [0057]
    The above example corresponds to steps 2, 4, 6, 12, 18, 20, 22, and 16 in the flow chart of FIG. 1 and steps 2, 4, 6, 12, 18, 20, 21, 22, and 16 in the flow chart of FIG. 2.
  • Example 6 Adding a New Address for an Existing Contact (Long Version)
  • [0058]
    FIG. 4 illustrates a starting point in word processor document, such as a WORD™ document, wherein the user has typed a name and new address of an existing contact 44. The user commands the button 42, for example, marked “OneButton,” and the program according to the present invention retrieves the existing contact 44 from the document, searches a database for the name of the existing contact 44 and generates a screen as shown in, for example, FIG. 9. As previously described, the screen includes a message 70 informing the user that the contact already exits in the database with an existing address, and the user may command the Details button 58 to see the details of the new address for potentially modify the details before they are stored in the database and the program generates a screen as shown in, for example, FIG. 10. From this screen, the user may choose to use another address than the one he typed, and return to the document, or the user may command the “Full details” button 88 to enter a database program, such as OUTLOOK™, directly as shown in, for example, FIG. 12. In FIG. 12, the database program, such as OUTLOOK™, may include portions 94-104 for allowing the user to modify various pieces of data before they are stored in the database.
  • [0059]
    Alternatively, in the screen shown in FIG. 10, the user may command the More>>>button 90 at which time the program generates the screen as shown in, for example, FIG. 11 and as previously described. In this screen, the user might then command the Add this address to the selected contact above button 92. If the address typed is already in use, the program generates a screen including a message 106, and “Yes” and “No” buttons, 108 and 110, respectively, as shown in, for example, FIG. 13. If the user hits the Yes button 108 the program overwrites the contact address with the address specified by the user (e.g., if the contact has moved) and the result in the word processor is shown in, for example, FIG. 4.
  • [0060]
    The above example corresponds to steps 2, 4, 6, 12, 14, 26, 28, 30, 34, 36, and 16 in chart of FIG. 1 and steps 2, 4, 6, 12, 14, 26, 29, 31, 30, 28, 34, 36 and 16 in the flow chart of FIG. 2.
  • Example 7 Spreadsheet Application
  • [0061]
    FIG. 14 illustrates a starting point in word processor document, such as an EXCEL™ spreadsheet, wherein the user has typed a name 112. The user hits the button 42, for example, marked “OneButton,” and the program according to the present invention retrieves the name 112 from the spreadsheet, searches a database for the name 112, and inserts the retrieved address 114 into the spreadsheet as shown in, for example, FIG. 15. Accordingly, the examples 1-6 apply not only to word processor documents, such as WORD™ documents, etc., but to other word processor documents, and spread sheets, such as EXCEL™ spreadsheets, etc.
  • [0062]
    The above example corresponds to steps 2, 4, 6, 12, 18, 22 and 16 in the flow charts of FIGS. 1 and 2.
  • [0063]
    Up to this point, the single button addressing program has been described in terms of providing a device for address handling within a computer program, such as a word processor or spread sheet. The following embodiment of the single button addressing program runs on a client (e.g., a computer, cell phone, or palm top device) operating system and integrates local address and phone number data with network data, such as data obtained from an Intranet or the Internet, resolving differences and presenting them in a unified format.
  • [0064]
    The single button addressing program works within word processing, personal information management, etc., software (e.g., as previously described). The single button addressing program allows the data found on a network Intranet or Internet site to be saved in the local database and checked against network data as it changes, without the network database being aware of the local database. The network can be a public network, such as the Internet, or a private data network, such as an Intranet. The local database can be a database management system, such as Microsoft ACCESS™, Microsoft SQL server, etc., running on the local computer or any accessible server. The local database can also be an application, such as a personal information manager like Microsoft OUTLOOK™ or Symantec Act!™, etc., that maintains a database therein. Similarly, the remote database may be a public or private data service, a Web-based data source, or a CD-ROM of information used in the user's computer or computer network.
  • [0065]
    The invention according to the present embodiment performs data integration in the following way: (1) the address handling function is typically implemented as a subprogram within a larger program, such as the single button address program provided in a word processor as previously described or as single button address program provided in an operating system as will be later described; (2) the subprogram is started with a complete or partial name and address; (3) the subprogram queries the local and remote databases and compares the results; (4) the subprogram provides user interface for the user to select the appropriate result wherein the choices are marked based on whether the data is remote or local. If data was originally remote and the user saved it locally, the user is alerted if the data has changed on the remote database; (5) if the data chosen by the user is different or not present in the local database, the user is given the opportunity to save the data locally; and (6) the chosen address is returned to the calling program, which may, for example, include it in a document.
  • [0066]
    FIG. 16 illustrates a method for address handling from an operating system, such as WINDOWS™ operating system, MACINTOSH™ operating system, etc., according to the present embodiment of the invention. In FIG. 16, at step 116, an address is received from an application or is entered directly into the single button addressing subprogram. At step 118, the subprogram retrieves all matches from a local database. At step 120, the subprogram retrieves all matches from a network or remote database.
  • [0067]
    At step 122, the subprogram determines whether or not there are any matching address results. If there are no matching results, the user is given the opportunity to store or not to store the address at step 124. If the user chooses to store the address, at step 128 the address is stored in the local database. If the user chooses not to store the address, at step 132 the address is returned to the calling program as delivered to the user and without being stored in the local database.
  • [0068]
    If at step 122 the subprogram determines that there are matching results, the local and remote matching database results are compared at step 126 as follows. At step 126 a, for each match in the local database, step 126 b determines whether or not there is a corresponding match in the remote or network database results. At step 126 c, if a match is found between the local and remote databases, the matching result is marked as local data which is consistent with the network data. At step 126 c, if no match is found between the local and remote databases, step 126 e determines whether or no the local data was marked as consistent with the network data. If the local data was not marked as consistent with the network data, at step 126 f the local data is marked as inconsistent with the network data. If the local data was marked as consistent with the network data, control transfers back to step 126 a to process the next match in the local database.
  • [0069]
    FIG. 17, illustrates an exemplary operating system screen 142, such as a WINDOWS 95™ operating system screen, including the single button addressing subprogram implemented as tool bar subprogram 144 a or as a desktop icon subprogram 144 b. The single button addressing subprogram can also be launched from a word processing application 146, as previously discussed, or via the WINDOWS 95™ Start menu 148.
  • [0070]
    FIG. 18 illustrates an exemplary search screen 150 generated by the single button addressing subprogram after it has been launched. In this example, a user ran a search (i.e., from the standalone single button addressing subprogram) against local data stored in, for example, Microsoft OUTLOOK™ and remote data stored in, for example, a remote web service.
  • [0071]
    In FIG. 18, the search screen 150 includes, for example, a Find Now button 152 for executing a search, a Stop button for stopping a search in progress and a Save button 156 for saving found data. The search screen 150 includes, for example, File, Option and Help menu selections 158, search criteria 164, including, for example, fields for inputting a Name, a City and/or Country, and Public/Private indicators 168, for indicating Private, Corporation and/or Public database searching options. The search results are displayed in a search window including Name, Address, City and Phone sort buttons 170, which sort the search results according to the button selected.
  • [0072]
    The search results are further marked with status indicators 172-178. Status indicator 172, for example, includes a computer icon with no color which indicates that the same data was found both locally and on the remote database (e.g., the Internet). Status indicator 174, for example, includes a globe icon which indicates that the same data was found on the remote database, but not on the local database. Status indicator 176, for example, includes a computer icon of a first color (e.g., yellow) which indicates that the same data was found on the local database, but not on the remote database. Status indicator 178, for example, includes a computer icon of a second color (e.g., red) which indicates that the data was originally added to the local database from the remote database, but now is no longer found on the remote database.
  • [0073]
    FIG. 19 is a schematic illustration of a computer system for implementing the single button addressing according to the present invention. A computer 200 implements the method of the present invention, wherein the computer includes, for example, a display device 202, such as a conventional display device or a touch screen monitor with a touch-screen interface, etc., a keyboard 204, a pointing device 206, a mouse pad or digitizing pad 208, a hard disk 210, or other fixed, high density media drives, connected using an appropriate device bus (e.g., a SCSI bus, an Enhanced IDE bus, an Ultra DMA bus, a PCI bus, etc.), a floppy drive 212, a tape or CD ROM drive 214 with tape or CD media 216, or other removable media devices, such as magneto-optical media, etc., and a mother board 218. The mother board 218 includes, for example, a processor 220, a RAM 222, and a ROM 224 (e.g., DRAM, ROM, EPROM, EEPROM, SRAM, SDRAM, and Flash RAM, etc.), I/O ports 226 which may be used to couple to external devices, networks, etc., (not shown), and optional special purpose logic devices (e.g., ASICs) or configurable logic devices (e.g., GAL and re-programmable FPGA) 228 for performing specialized hardware/software functions, such as sound processing, image processing, signal processing, neural network processing, object character recognition (OCR) processing, etc., a microphone 230, and a speaker or speakers 232.
  • [0074]
    As stated above, the system includes at least one computer readable medium, or alternatively, the computer readable medium may be accessed through various paths, such as networks, internet, drives, etc. Examples of computer readable media are compact discs, hard disks, floppy disks, tape, magneto-optical disks, PROMs (EPROM, EEPROM, Flash EPROM), DRAM, SRAM, SDRAM, etc. Stored on any one or on a combination of computer readable media, the present invention includes software for controlling both the hardware of the computer 200 and for enabling the computer 200 to interact with a human user. Such software may include, but is not limited to, device drivers, operating systems and user applications, such as development tools. Such computer readable media further includes the computer program product of the present invention for performing any of the processes according to the present invention, described above (see, e.g., FIGS. 1-18). The computer code devices of the present invention can be any interpreted or executable code mechanism, including but not limited to scripts, interpreters, dynamic link libraries, Java classes, and complete executable programs, etc.
  • [0075]
    The invention may also be implemented by the preparation of application specific integrated circuits or by interconnecting an appropriate network of conventional component circuits, as will be readily apparent to those skilled in the art
  • [0076]
    Address handling, according to this invention, is a significant simplification relative to existing methods, and requires little or no training on the part of a user, as correct addresses are retrieved with a minimal number of user commands, “clicks”, keystrokes, etc. In addition, a program according to the present invention, can be programmed and created in most existing programming languages and be connected to most modern word processors. Therefore, according to the present invention, the process of creating and updating records in an address database is significantly simplified, since this may now be performed directly from the word processor.
  • [0077]
    Although the present invention is defined in terms of word processing documents, such as WORD™ documents and Excel™ spreadsheets, the present invention is applicable to all types of word processing documents, such as NOTEPAD™, WORDPAD™, WORDPERFECT™, QUATROPRO™, AMIPRO™, etc., as will be readily apparent to those skilled in the art.
  • [0078]
    Although the present invention is defined in terms of information management or database programs, such as OUTLOOK™, etc., the present invention is applicable to all types of information management or database programs, such as ACCESS™, ORACLE™, DBASE™, RBASE™, CARDFILE™, including “flat files,” etc., as will be readily apparent to those skilled in the art.
  • [0079]
    Although the present invention is defined in terms of operating systems, such as WINDOWS™, MACINTOSH™, etc., the present invention is applicable to all types of operating systems, such as UNIX™, LINUX™, etc., as will be readily apparent to those skilled in the art.
  • [0080]
    Although the present invention is defined in terms of providing an input device, such as a button 42 in a word processor for address handling therein, the present invention may be practiced with all types of input devices, such as a touch screen, keyboard button, icon, menu, voice command device, etc., as will be readily apparent to those skilled in the art
  • [0081]
    Although the present invention is defined in terms of a program retrieving information from a document before searching a database, the user may select the information in the document to be searched by the program in the database (e.g., by highlighting, selecting, italicizing, underlining, etc.), as will be readily apparent to those skilled in the art.
  • [0082]
    Although the present invention is defined in terms of a program retrieving a name or portion thereof from a document before searching a database, the program may retrieve an address or portion thereof from the document before searching the database and insert, correct, complete, etc., the retrieved address based on the information found in the database corresponding to the retrieved address or portion thereof, as will be readily apparent to those skilled in the art.
  • [0083]
    Although the present invention is defined in terms of an embodiment as described with respect to FIGS. 16-18, all of the relevant features as described with respect to FIGS. 1-15 apply to the embodiment as described with respect to FIGS. 16-18, as will be readily apparent to those skilled in the art. Similarly, although the present invention is defined in terms of an embodiment as described with respect to FIGS. 1-15, all of the relevant features as described with respect to FIGS. 16-18 apply to the embodiment as described with respect to FIGS. 1-15, as will be readily apparent to those skilled in the art.
  • [0084]
    Although the present invention is defined in terms of an address handling program provided in an operating system environment, such as WINDOWS™, MACINTOSH™, etc., of a personal computer, the program may run on an operating system environment, such as WINDOWS CE™, etc., of a client, such as cell phone, palm top device, personal organizer, etc., as will be readily apparent to those skilled in the art.
  • [0085]
    Obviously, numerous modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the invention may be practiced otherwise than as specifically described herein.
  • [0086]
    This application claims priority and contains subject matter related to Norwegian patent application No. 984066 filed on Sep. 3, 1998, the entire contents of which are hereby incorporated by reference.
Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US4270182 *Dec 30, 1974May 26, 1981Asija Satya PAutomated information input, storage, and retrieval system
US4453217 *Jan 4, 1982Jun 5, 1984Bell Telephone Laboratories, IncorporatedDirectory lookup method and apparatus
US4674065 *Dec 10, 1985Jun 16, 1987International Business Machines CorporationSystem for detecting and correcting contextual errors in a text processing system
US5331555 *May 9, 1991Jul 19, 1994Sharp Kabushiki KaishaElectronic apparatus
US5388150 *Jul 28, 1992Feb 7, 1995Schneyer; RobinAutomatic incoming telephone call identification and disposition system
US5392386 *Feb 3, 1994Feb 21, 1995Inter Hi-Tec AgMethod and apparatus for adding functionality to computer programs executing under graphical user interfaces
US5416901 *Dec 17, 1992May 16, 1995International Business Machines CorporationMethod and apparatus for facilitating direct icon manipulation operations in a data processing system
US5491783 *Dec 30, 1993Feb 13, 1996International Business Machines CorporationMethod and apparatus for facilitating integrated icon-based operations in a data processing system
US5491784 *Dec 30, 1993Feb 13, 1996International Business Machines CorporationMethod and apparatus for facilitating integration of software objects between workspaces in a data processing system graphical user interface
US5491785 *Sep 30, 1993Feb 13, 1996Hewlett-Packard CompanyInformation retrieval device for displaying and directly refreshing the display of a dynamically modifiable document
US5493105 *Apr 19, 1994Feb 20, 1996Desai; Nimesh R.Electronic business card system
US5495565 *Jun 21, 1994Feb 27, 1996Wang Laboratories, Inc.Integrated form document editor with form descriptor table, background bitmap, graphics editor and text editor, composite image generator and intelligent autofill
US5500859 *Aug 11, 1994Mar 19, 1996Multi-Tech Systems, Inc.Voice and data transmission system
US5530853 *Mar 6, 1995Jun 25, 1996International Business Machines CorportaionMethod for filtering items in a computer application program container object using filter data for related entries in a container object of another application program
US5606712 *Mar 17, 1995Feb 25, 1997Casio Computer Co., Ltd.Information managing apparatus capable of utilizing related information in different function modes
US5623652 *Jul 25, 1994Apr 22, 1997Apple Computer, Inc.Method and apparatus for searching for information in a network and for controlling the display of searchable information on display devices in the network
US5628004 *Nov 18, 1994May 6, 1997Optima Direct, Inc.System for managing database of communication of recipients
US5634121 *May 30, 1995May 27, 1997Lockheed Martin CorporationSystem for identifying and linking domain information using a parsing process to identify keywords and phrases
US5640565 *Nov 28, 1995Jun 17, 1997Object Technology Licensing Corp.Business card system
US5708804 *Jul 26, 1996Jan 13, 1998International Business Machines Corp.Apparatus and method therefor of intelligently searching for information in a personal communications device
US5724597 *Jul 29, 1994Mar 3, 1998U S West Technologies, Inc.Method and system for matching names and addresses
US5732229 *Jun 13, 1996Mar 24, 1998Object Technology Licensing CorporationMethod and apparatus for displaying business cards
US5732395 *Jan 29, 1997Mar 24, 1998Nynex Science & TechnologyMethods for controlling the generation of speech from text representing names and addresses
US5734871 *Oct 13, 1995Mar 31, 1998Mitem CorporationMethod for and apparatus for controlling the execution of host computer application programs through a second computer
US5737726 *Dec 12, 1995Apr 7, 1998Anderson Consulting LlpCustomer contact mangement system
US5740433 *Aug 28, 1996Apr 14, 1998Tandem Computers, Inc.Remote duplicate database facility with improved throughput and fault tolerance
US5742905 *Sep 19, 1994Apr 21, 1998Bell Communications Research, Inc.Personal communications internetworking
US5754636 *Feb 21, 1997May 19, 1998Answersoft, Inc.Computer telephone system
US5761656 *Jun 26, 1995Jun 2, 1998Netdynamics, Inc.Interaction between databases and graphical user interfaces
US5761663 *May 15, 1997Jun 2, 1998International Business Machines CorporationMethod for distributed task fulfillment of web browser requests
US5774887 *Nov 18, 1992Jun 30, 1998U S West Advanced Technologies, Inc.Customer service electronic form generating system
US5778367 *Dec 14, 1995Jul 7, 1998Network Engineering Software, Inc.Automated on-line information service and directory, particularly for the world wide web
US5781189 *May 5, 1995Jul 14, 1998Apple Computer, Inc.Embedding internet browser/buttons within components of a network component system
US5787451 *Feb 27, 1997Jul 28, 1998Microsoft CorporationMethod for background spell checking a word processing document
US5859636 *Dec 27, 1995Jan 12, 1999Intel CorporationRecognition of and operation on text data
US5860073 *Jul 17, 1995Jan 12, 1999Microsoft CorporationStyle sheets for publishing system
US5864848 *Jan 31, 1997Jan 26, 1999Microsoft CorporationGoal-driven information interpretation and extraction system
US5873107 *Mar 29, 1996Feb 16, 1999Apple Computer, Inc.System for automatically retrieving information relevant to text being authored
US5873108 *Oct 19, 1996Feb 16, 1999Fuga CorporationPersonal information manager information entry allowing for intermingling of items belonging to different categories within a single unified view
US5884309 *Dec 6, 1995Mar 16, 1999Dynamic Web Transaction Systems, Inc.Order entry system for internet
US5893093 *Jul 2, 1997Apr 6, 1999The Sabre Group, Inc.Information search and retrieval with geographical coordinates
US5896321 *Nov 14, 1997Apr 20, 1999Microsoft CorporationText completion system for a miniature computer
US5896533 *Jul 6, 1995Apr 20, 1999Intel CorporationAccessing internets world-wide web through object linking and embedding technology
US5907838 *Dec 2, 1997May 25, 1999Seiko Epson CorporationInformation search and collection method and system
US5913214 *Aug 8, 1996Jun 15, 1999Massachusetts Inst TechnologyData extraction from world wide web pages
US5923848 *May 31, 1996Jul 13, 1999Microsoft CorporationSystem and method for resolving names in an electronic messaging environment
US5924074 *Sep 27, 1996Jul 13, 1999Azron IncorporatedElectronic medical records system
US5924090 *May 1, 1997Jul 13, 1999Northern Light Technology LlcMethod and apparatus for searching a database of records
US5926808 *Jul 25, 1997Jul 20, 1999Claritech CorporationDisplaying portions of text from multiple documents over multiple databases related to a search query in a computer network
US5930471 *Dec 26, 1996Jul 27, 1999At&T CorpCommunications system and method of operation for electronic messaging using structured response objects and virtual mailboxes
US5930764 *Aug 23, 1996Jul 27, 1999Citibank, N.A.Sales and marketing support system using a customer information database
US6012075 *Nov 14, 1996Jan 4, 2000Microsoft CorporationMethod and system for background grammar checking an electronic document
US6018571 *Sep 30, 1997Jan 25, 2000Mitel CorporationSystem for interactive control of a computer and telephone
US6021403 *Jul 19, 1996Feb 1, 2000Microsoft CorporationIntelligent user assistance facility
US6021412 *Apr 2, 1996Feb 1, 2000Microsoft CorporationMethod and system for automatically adding graphics to a document to illustrate concepts referred to therein
US6026398 *Oct 16, 1997Feb 15, 2000Imarket, IncorporatedSystem and methods for searching and matching databases
US6026410 *Feb 10, 1997Feb 15, 2000Actioneer, Inc.Information organization and collaboration tool for processing notes and action requests in computer systems
US6028605 *Feb 3, 1998Feb 22, 2000Documentum, Inc.Multi-dimensional analysis of objects by manipulating discovered semantic properties
US6055531 *Jun 23, 1997Apr 25, 2000Engate IncorporatedDown-line transcription system having context sensitive searching capability
US6065012 *Feb 27, 1998May 16, 2000Microsoft CorporationSystem and method for displaying and manipulating user-relevant data
US6067565 *Jan 15, 1998May 23, 2000Microsoft CorporationTechnique for prefetching a web page of potential future interest in lieu of continuing a current information download
US6073138 *Feb 8, 1999Jun 6, 2000Boardwalk A.G.System, method, and computer program product for providing relational patterns between entities
US6081788 *Nov 4, 1998Jun 27, 2000About.Com, Inc.Collaborative internet data mining system
US6085201 *Jun 28, 1996Jul 4, 2000Intel CorporationContext-sensitive template engine
US6085226 *Jan 15, 1998Jul 4, 2000Microsoft CorporationMethod and apparatus for utility-directed prefetching of web pages into local cache using continual computation and user models
US6092074 *Feb 10, 1998Jul 18, 2000Connect Innovations, Inc.Dynamic insertion and updating of hypertext links for internet servers
US6178411 *Jul 10, 1998Jan 23, 2001Joshua J. ReiterInteractive process for applying or printing information on letters or parcels
US6182133 *Feb 6, 1998Jan 30, 2001Microsoft CorporationMethod and apparatus for display of information prefetching and cache status having variable visual indication based on a period of time since prefetching
US6189026 *Jun 16, 1997Feb 13, 2001Digital Equipment CorporationTechnique for dynamically generating an address book in a distributed electronic mail system
US6192380 *Mar 31, 1998Feb 20, 2001Intel CorporationAutomatic web based form fill-in
US6208975 *Jun 19, 1997Mar 27, 2001Sabre Inc.Information aggregation and synthesization system
US6209005 *Dec 23, 1996Mar 27, 2001Apple Computer, Inc.Method and apparatus for generating and linking documents to contacts in an organizer
US6223570 *May 4, 2000May 1, 2001Tian-Yuan ChenHousing for an automobile steering wheel lock
US6247029 *May 1, 1998Jun 12, 2001International Business Machines CorporationWeb browser form enhancements
US6253188 *Sep 20, 1996Jun 26, 2001Thomson Newspapers, Inc.Automated interactive classified ad system for the internet
US6338957 *Mar 8, 2001Jan 15, 2002Ajinomoto Co., Inc.Method for producing halo-L-tryptophan
US6349299 *Jun 1, 1999Feb 19, 2002International Business Machines CorporationSystem and method for storing electronic contact information into an electronic address book
US6373940 *May 4, 1998Apr 16, 2002Siemens Information And Communication Networks, Inc.Method and apparatus for transmitting address changes
US6377965 *Nov 7, 1997Apr 23, 2002Microsoft CorporationAutomatic word completion system for partially entered data
US6381593 *May 6, 1999Apr 30, 2002Ricoh Company, Ltd.Document information management system
US6385592 *Jun 30, 1999May 7, 2002Big Media, Inc.System and method for delivering customized advertisements within interactive communication systems
US6405206 *Nov 30, 1998Jun 11, 2002Seiko Epson CorporationMethod and apparatus for searching information, and a recording medium on which is recorded an information searching program
US6523022 *Jul 7, 1999Feb 18, 2003Allen HobbsMethod and apparatus for selectively augmenting retrieved information from a network resource
US6711585 *Jun 15, 2000Mar 23, 2004Kanisa Inc.System and method for implementing a knowledge management system
US6725227 *Nov 2, 1998Apr 20, 2004Nec CorporationAdvanced web bookmark database system
US6738615 *Dec 13, 1999May 18, 2004At&T Corp.Wireless centrex caller ID
US6870828 *Jun 3, 1997Mar 22, 2005Cisco Technology, Inc.Method and apparatus for iconifying and automatically dialing telephone numbers which appear on a Web page
US7039599 *Jun 15, 1998May 2, 2006Doubleclick Inc.Method and apparatus for automatic placement of advertising
US7051019 *Aug 17, 1999May 23, 2006Corbis CorporationMethod and system for obtaining images from a database having images that are relevant to indicated text
US7216292 *Sep 1, 1999May 8, 2007Microsoft CorporationSystem and method for populating forms with previously used data values
US7353246 *Jul 31, 2000Apr 1, 2008Miva Direct, Inc.System and method for enabling information associations
US7496854 *Aug 6, 2001Feb 24, 2009Arendi Holding LimitedMethod, system and computer readable medium for addressing handling from a computer program
US7505974 *Oct 1, 2001Mar 17, 2009Gropper Robert LAuto update utility for digital address books
US7509349 *Jun 29, 2004Mar 24, 2009Onepin, Inc.Method and apparatus for storing and retrieving business contact information in a computer system
US7917843 *Jul 29, 2008Mar 29, 2011Arendi S.A.R.L.Method, system and computer readable medium for addressing handling from a computer program
US7921356 *Jul 22, 2010Apr 5, 2011Arendi S.A.R.L.Method, system and computer readable medium for addressing handling from a computer program
US20020078030 *Feb 15, 2002Jun 20, 2002Hitachi, Ltd.Method of searching documents and a service for searching documents
US20030033288 *Dec 5, 2001Feb 13, 2003Xerox CorporationDocument-centric system with auto-completion and auto-correction
US20030084074 *Nov 1, 2002May 1, 2003Verisign, Inc.Method and system for validating remote database updates
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7917843 *Jul 29, 2008Mar 29, 2011Arendi S.A.R.L.Method, system and computer readable medium for addressing handling from a computer program
US7921356Jul 22, 2010Apr 5, 2011Arendi S.A.R.L.Method, system and computer readable medium for addressing handling from a computer program
US9201950Dec 9, 2010Dec 1, 2015Arendi S.A.R.L.Method, system and computer readable medium for addressing handling from an operating system
US20080313159 *Jul 29, 2008Dec 18, 2008Atle HedloyMethod, System and Computer Readable Medium for Addressing Handling from a Computer Program
US20090128494 *Nov 19, 2007May 21, 2009Duane CherryComputerized phone book
US20110072029 *Dec 9, 2010Mar 24, 2011Atle HedloyMethod, System and Computer Readable Medium for Addressing Handling from an Operating System
Classifications
U.S. Classification707/770
International ClassificationG06F17/30
Cooperative ClassificationG06F17/30634, H04L67/10, G06F17/30011, G06F3/04842, G06F17/30424, G06F3/0482, G06F17/30067, Y10S707/99953, Y10S707/99943
European ClassificationG06F17/30F
Legal Events
DateCodeEventDescription
Dec 27, 2010ASAssignment
Owner name: ARENDI S.A.R.L., LUXEMBOURG
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ARENDI HOLDING LIMITED;REEL/FRAME:025538/0582
Effective date: 20100719
Aug 21, 2012ASAssignment
Owner name: FINNEGAN, HENDERSON, FARABOW, GARRETT & DUNNER, L.
Free format text: SECURITY AGREEMENT;ASSIGNORS:ARENDI S.A.R.L.;ARENDI HOLDING LTD.;SIGNING DATES FROM 20120627 TO 20120810;REEL/FRAME:028857/0674
Sep 4, 2012ASAssignment
Owner name: ARENDI S.A.R.L., LUXEMBOURG
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEDLOY, ATLE;REEL/FRAME:028891/0282
Effective date: 20120904
Nov 6, 2013ASAssignment
Owner name: ARENDI AS, NORWAY
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEDLOY, ATLE;REEL/FRAME:031552/0245
Effective date: 19990901
Owner name: HEGER-HEDLOY, VIOLETTE, NORWAY
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PROVISIONAL LIQUIDATOR OF ARENDI AS;REEL/FRAME:031588/0714
Effective date: 20010118
Owner name: HEDLOY, ATLE, NORWAY
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PROVISIONAL LIQUIDATOR OF ARENDI AS;REEL/FRAME:031588/0714
Effective date: 20010118
Owner name: ARENDI HOLDING LIMITED, CAYMAN ISLANDS
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HEDLOY, ATLE;HEGER-HEDLOY, VIOLETTE;REEL/FRAME:031588/0717
Effective date: 20010315
Jan 7, 2014IPRAia trial proceeding filed before the patent and appeal board: inter partes review
Free format text: TRIAL NO: IPR2014-00214
Opponent name: SAMSUNG ELECTRONICS CO., LTD.
Effective date: 20131203
Free format text: TRIAL NO: IPR2014-00203
Opponent name: MOTOROLA MOBILITY LLC, GOOGLE, INC. APPLE, INC.
Effective date: 20131202