US 20050149854 A1
A method and apparatus allowing for entry of form data in a browser. In the described embodiment, a browser automation program executes on the user's computer and communicates with a browser program in order to determine when forms are encountered.
1. A method for inputting information into a form, comprising:
detecting an access to a first site that presents a form for receiving data from a user;
determining whether a script for completing at least a portion of the form resides in a database local to the user;
accessing a second site to ascertain whether the second site has a version of the script if the script does not reside in the local database; and
completing at least a portion of the form utilizing the script.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
10. A system for inputting information into a form, comprising:
means for detecting an access to a first site that presents a form for receiving data from a user;
means for determining whether a script for completing at least a portion of the form resides in a database local to the user;
means for accessing a second site to ascertain whether the second site has a version of the script if the script does not reside in the local database; and
means for completing at least a portion of the form utilizing the script.
11. The system of
12. The system of
13. The system of
14. The system of
15. The system of
16. The system of
17. The system of
18. The system of
19. A computer program product for inputting information into a form, comprising:
computer code for detecting an access to a first site that presents a form for receiving data from a user;
computer code for determining whether a script for completing at least a portion of the form resides in a database local to the user;
computer code for accessing a second site to ascertain whether the second site has a version of the script if the script does not reside in the local database; and
computer code for completing at least a portion of the form utilizing the script.
20. The computer program product of
This application is a continuation of U.S. application Ser. No. 09/436,973, filed Nov. 9, 1999 (and which is incorporated by reference herein in its entirety), which itself claims the benefit of U.S. Provisional Application No. 60/107,791, filed Nov. 10, 1998.
1. Field of the Invention
The present invention relates to the field graphical user interfaces and more particularly to a method for entering information into a form on a screen display associated with an electronic device.
2. Description of the Related Art
Many a site on the Internet's World Wide Web (hereafter “web site,” “web page” or simply “site”) require the entry of various information in order to gain full access to the site and the services offered by the site. For example, many commercial sites require a user to set up an account and, in doing so, to provide various levels of personal information. Typically, the information is relatively repetitive from site to site—e.g., name, address, telephone number, electronic mail (email) address, credit card number, etc. In some cases, the information must be entered each time the user attempts to use the site. In other cases, an account is actually set up for the user and maintained—the user needs only to enter the full information the first time the site is accessed.
An example of an account set up screen is provided in
One method of addressing the inconvenience of repetitive data entry of account information is the so-called “wallet” technology. Using “wallets”, a user may enter certain information (name, address, billing/credit card information) once and sites that run the particular wallet technology will be able to receive the information without requiring the user to reenter the data. Unfortunately, this technology requires sites to execute the wallet technology in order to allow a user to benefit from it. A diagram 200 illustrating a particular embodiment of the wallet technology is shown in
One other method of addressing the inconvenience of repetitive data entry is the so-called “type-ahead” technology in which the user's computing system attempts to “remember” certain information and, if a user starts to type a sequence of characters using, for example, a keyboard or other character input device, the system attempts to recognize the character sequence and complete the sequence. For example, if the user named John Smith starts to type his name in a name field, the system may recognize the user is typing “John Smith” after the user has only typed “Joh” and automatically fill in the remaining “n Smith”.
Unfortunately, the type ahead technology is limited in that it may or may not correctly recognize the phrase being typed and implementations are typically browser software dependent. Moreover, the type ahead technology requires the user to independently visit each field in a form, rather than filling in multiple fields with a single click.
Thus, it would be useful to provide a method and apparatus which reduces the inconvenience of repetitive data entry. It would be particularly useful to provide a method and apparatus which was not browser dependent and which did not require implementation by each individual web site in order to allow a user to benefit from it.
A method and apparatus providing for improved automation for entry of data in forms displayed on a screen via a web browser.
For ease of reference, reference numerals in the accompanying drawings typically are in the form “drawing number” followed by two digits, xx; for example, reference numerals may be numbered 3xx. In certain cases, a reference numeral may be introduced on one drawing and the same reference numeral may be utilized on other drawings to refer to the same item.
In the described embodiment, the browser automation program 302 may gain knowledge of the format of a form encountered on any number of web sites. For purposes of this invention, a web site for which the format of the form has been learned by the browser automation program 302 is termed a “scripted” site. One method for the browser automation program to gain this knowledge is for the user to have previously filled out the same form. The browser automation program 302 then associates the content and order of the fields for the form with the content of personal data in the user database 304 (e.g., the program 302 learns that the field named “Name” on a particular form should be associated with the user's name in the user database 304).
A second method for the browser automation program to gain this knowledge is for the form to have been analyzed and information stored regarding the fields and expected contents. This may be done, for example, for popular or well known web sites that utilize forms. The information may be stored locally on each user's computer 301 or may be stored at a central location accessible to the user via network 307, such as the browser automation home site 305.
In an embodiment that stores this information at the home site 305, when a new URL is encountered, the home site 305 is contacted over the network 307 (it should be noted that the network could be the Internet or an intranet). In certain embodiments, information may be stored on the user's computer allowing local identification of which forms are stored at the home site 305. For example, a hash code may be developed to allow local (at the user's computer) determination of whether the form is scripted, i.e., whether information regarding the format of the form is stored, at the home site.
In addition, when encountering a form, whether for the first or a subsequent time, the browser automation program 302 may analyze the underlying structure of the form to determine if there are fields for which data is available from the user database 304. Typically, this process may involve analyzing the HyperText Markup Language (HTML), extensible Markup Language (XML), or other underlying code received from the visited web site 306.
Regardless of the method, if a script is available for the form, a pop up dialog window 401 is displayed in conjunction with the visited web site. An example in
The pop up window 401 is better viewed with reference to
It should be further noted that the pop up windows illustrated in
Moreover, for each user, any one of a number of profiles 404 may be provided from which to select to fill in the form. For example, the user may click on different profiles for home, work, or other. The multiple profiles allow for different sets of data to be input into the form, e.g., shipping address, phone, fax, and email address. For instance, depending on whether the user desires to communicate with the provider of the web site from home, work, or some other logical or physical designation, the user can select a desired profile to provide the appropriate information necessary for the web site provider to communicate or transact with the user accordingly.
Yet further flexibility is provided by the browser automation program in utilizing pull down lists 405 for many of the fields of personal information accessible via pop up window 401. The user may specify one of multiple shipping addresses, phone numbers, email addresses, etc, for each profile. Thus, if a user maintains multiple offices and wishes to register or otherwise communicate personal contact information to a particular web site, the user may specify one particular office address. The user may then register at another web site using a different office address, by selecting a different office address via the pull down list associated with the shipping address field in the pop up window 401.
The information displayed in the pop up window 401 may have been initially supplied directly by the user or may have been learned as the user entered data in the normal course of 20 filling out forms on web pages. The data is stored, typically in an encrypted format, on the user's computer 301 as user data in database 304. When the browser automation program 302 is executed, the user is asked for a password in order to access the encrypted data. In one embodiment, the data is stored in a separate file which may be copied by the user and transported from computer to computer. In one embodiment, the data within the file 304 is retained with time stamp information. Using the timestamp information, the browser automation program 302 may merge two user data files, keeping the most recent information from both files.
In addition to assisting in completing relatively long forms as was shown in
The user may be provided with the option of having the form filled in by selecting the login button 804, for example, via a single click of a mouse pointer device. Thus, for example, when a login form is encountered, the browser automation program 302 may fill in the form with a minimum number of keystrokes or input from the user to log in to the site.
In one embodiment, changes to the information stored in the user database 304 causes notifications to be automatically sent to web sites which have been supplied with this data. Thus, for example, if the user changes the home address information, information may be sent to those web sites which have been previously supplied with the user's home address information notifying the web sites of the change. The appropriate scripts for updating this information may be stored, for example, at the home site 305.
There are, of course, alternatives to the described embodiment which are within the reach of one of ordinary skill in the relevant art. The present invention is intended to be limited only by the claims presented below.
Thus, what has been disclosed is a method and apparatus for entry of form data in a web browser.