WO1999046701A1 - Method and system for automatically filling forms in an integrated network based transaction environment - Google Patents

Method and system for automatically filling forms in an integrated network based transaction environment Download PDF

Info

Publication number
WO1999046701A1
WO1999046701A1 PCT/US1999/004489 US9904489W WO9946701A1 WO 1999046701 A1 WO1999046701 A1 WO 1999046701A1 US 9904489 W US9904489 W US 9904489W WO 9946701 A1 WO9946701 A1 WO 9946701A1
Authority
WO
WIPO (PCT)
Prior art keywords
line
code
forms
user
presented
Prior art date
Application number
PCT/US1999/004489
Other languages
French (fr)
Inventor
Ashish Gupta
Anand Rajaraman
Original Assignee
Amazon.Com, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/066,739 external-priority patent/US6643624B2/en
Priority claimed from US09/066,523 external-priority patent/US6199079B1/en
Application filed by Amazon.Com, Inc. filed Critical Amazon.Com, Inc.
Priority to AU27994/99A priority Critical patent/AU2799499A/en
Publication of WO1999046701A1 publication Critical patent/WO1999046701A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/221Parsing markup language streams

Definitions

  • This invention relates to the area of internet based commerce.
  • this invention enables a method and system for automatically filling in and submitting forms presented by vendor sites in order to effect commercial transactions on the web.
  • the process of interacting with the web through a browser may be broadly conceptualized as two types of interactions.
  • the first kind of interaction is based on a user finding information and collating it without subsequent interaction with the provider of the information. This is similar to reading a magazine or researching a library.
  • the second kind of interaction is based upon a user requesting goods or services from the provider of the information on the web.
  • Electronic commerce is based upon the confluence of both these activities.
  • the web is useful largely because of the ease at which it makes information available and the diversity of information it provides. Problems arise when the information is scattered in many places and not readily accessible or not easily searchable. The following issues impede the efficient use of data by users of the world wide web: (a) different data representations, (b) different vocabularies, (c) different levels of functionality (d) multiple locations, and (e) absence from the web. 3
  • VDBMS Virtual Database Management System
  • the flow of information from the user to providers of data is as important as the flow of information from providers to the user.
  • the bidirectional exchange of data forms the basis of commerce in traditional media and online. For example, a purchase involves information flow from the store to the buyer, in the display of goods available, and from the buyer to the store, in that information is a credit card number or a check or cash to complete the transaction.
  • What is needed is a method to enable a user shopping for items from different vendors' Web sites to automatically fill in order forms and then to purchase these items without having to browse and interact with different sites.
  • a method of automatically filling in on-line forms presented by web pages in an internet transactional environment by determining based upon selectable criteria a form identifier corresponding to a particular on-line form, and thereupon, for each form so identified, identifying one or many corresponding match patterns with which a page containing a target on-line form is parsed to obtain a plurality of attributes, and thereupon, for each attribute obtained in the parsing step, indexing into a database to obtain user information which may be used to fill in the target form.
  • a key advantage of systems according to the present invention is that the user does not have to fill in multiple forms in order to effect internet transactions.
  • a further advantage of the present invention is that the user does not have to interact with multiple dissimilar interfaces.
  • a yet further advantage of the present invention is that the user can shop across multiple vendors without repeatedly entering purchase information.
  • Fig. 1A depicts a representative client server relationship in accordance with a particular embodiment of the invention
  • Fig. IB depicts a functional perspective of the representative client server relationship in accordance with a particular embodiment of the invention
  • Fig. 1C depicts a functional perspective of the components of a particular embodiment of the invention
  • Fig. ID depicts a plurality of relationships among data in accordance with a particular embodiment of the invention
  • FIGS. 2 A - 2D depict representative forms in accordance with a particular embodiment of the invention.
  • FIG. 3 A - 3D depict flowcharts of processing in accordance with a particular embodiment of the invention.
  • the present invention provides a method for automatically filling in information into forms presented by vendor web sites in order to effect commercial transactions on the web.
  • Systems according to the present invention enable online shoppers to make selections and purchase products from a plurality of vendor sources using a common interface program without requiring the user to repeatedly fill in redundant information into purchasing forms presented by vendor web sites.
  • Attribute A blank space in a form, used to hold information, such as mailing address.
  • Transformation A function which when applied to user meta data yields a value to
  • Fig. 1A shows a conventional client-server computer system which includes a server 20 and numerous clients, one of which is shown as client 25.
  • server receives queries from 6
  • server 20 includes one or more processors 30 which communicate with a number of peripheral devices via a bus subsystem 32. These peripheral devices typically include a storage subsystem 35, comprised of memory subsystem 35a and file storage subsystem 35b, which hold computer programs (e.g.
  • Network Interface code or instructions and data
  • set of user interface input and output devices 37 and an interface to outside networks, which may employ Ethernet, Token Ring, ATM, IEEE 802.3, ITU X.25, Serial Link Internet Protocol (SLIP) or the public switched telephone network.
  • This interface is shown schematically as a "Network Interface" block 40. It is coupled to corresponding interface devices in client computers via a network connection 45.
  • Client 25 has the same general configuration, although typically with less storage and processing capability.
  • the client computer could be a terminal or a low-end personal computer
  • the server computer is generally a high-end workstation or mainframe, such as a SUN SPARCTM server.
  • Corresponding elements and subsystems in the client computer are shown with corresponding, but primed, reference numerals.
  • the user interface input devices typically includes a keyboard and may further include a pointing device and a scanner.
  • the pointing device may be an indirect pointing device such as a mouse, trackball, touchpad, or graphics tablet, or a direct pointing device such as a touchscreen incorporated into the display.
  • Other types of user interface input devices, such as voice recognition systems, are also possible.
  • the user interface output devices typically include a printer and a display subsystem, which includes a display controller and a display device coupled to the controller.
  • the display device may be a cathode ray tube (CRT), a flat-panel device such as a liquid crystal display (LCD), or a projection device.
  • Display controller provides control signals to the display device and normally includes a display memory for storing the pixels that appear on the display device.
  • the display subsystem may also provide non-visual display such as audio output. 7
  • the memory subsystem typically includes a number of memories including a main random access memory (RAM) for storage of instructions and data during program execution and a read only memory (ROM) in which fixed instructions are stored.
  • RAM main random access memory
  • ROM read only memory
  • the ROM would include portions of the operating system; in the case of IBM-compatible personal computers, this would include the BIOS (basic input/output system).
  • the file storage subsystem provides persistent (non-volatile) storage for program and data files, and typically includes at least one hard disk drive and at least one floppy disk drive (with associated removable media). There may also be other devices such as a CD-ROM drive and optical drives (all with their associate removable media). Additionally, the computer system may include drives of the type with removable media cartridges.
  • the removable media cartridges may, for example be hard disk cartridges, such as those marketed by Syquest and others, and flexible disk cartridges, such as those marketed by Iomega.
  • One or more of the drives may be located at a remote location, such as in a server on a local area network or at a site of the Internet's World Wide Web.
  • bus subsystem is used generically so as to include any mechanism for letting the various components and subsystems communicate with each other as intended.
  • the other components need not be at the same physical location.
  • portions of the file storage system could be connected via various local-area or wide-area network media, including telephone lines.
  • the input devices and display need not be at the same location as the processor, although it is anticipated that the present invention will most often be implemented in the context of PCs and workstations.
  • Bus subsystem 32 is shown schematically as a single bus, but a typical system has a number of buses such as a local bus and one or more expansion buses (e.g.
  • the client computer may be a desktop system or a portable system.
  • interface devices 37' or devices 37 in a standalone system.
  • client queries are entered via a keyboard, communicated to client processor 30' , and thence to network interface 40' over bus 8 subsystem 32' .
  • the query is then communicated to server 20 via network connection 45.
  • results of the query are commumcated from the server to the client via network connection 45 for output on one of devices 37' (say a display or a printer), or may be stored on storage subsystem 35' .
  • Fig. IB is a functional diagram of the computer system of Fig. 1A.
  • Fig. IB depicts a server 20, and a representative client 25 of a multiplicity of clients which may interact with the server 20 via the internet 45 or any other communications method. Blocks to the right of the server are indicative of the processing components and functions which occur in the server's program and data storage indicated by block 35a in Fig. 1A.
  • a TCP/IP "stack" 44 works in conjunction with Operating System 42 to communicate with processes over a network or serial connection attaching Server 20 to internet 45.
  • Web server software 46 executes concurrently and cooperatively with other processes in server 20 to make data objects 50 and 51 available to requesting clients.
  • a Common Gateway Interface (CGI) script 55 enables information from user clients to be acted upon by web server 46, or other processes within server 20. Responses to client queries may be returned to the clients in the form of a Hypertext Markup Language (HTML) document outputs which are then communicated via internet 45 back to the user.
  • CGI Common Gateway Interface
  • Client 25 in Fig. IB possesses software implementing functional processes operatively disposed in its program and data storage as indicated by block 35a' in Fig. 1A.
  • TCP/IP stack 44' works in conjunction with Operating System 42' to communicate with processes over a network or serial connection attaching Client 25 to internet 45.
  • Software implementing the function of a web browser 46' executes concurrently and cooperatively with other processes in client 25 to make requests of server 20 for data objects 50 and 51. The user of the client may interact via the web browser 46' to make such queries of the server 20 via internet 45 and to view responses from the server 20 via internet 45 on the web browser 46' .
  • FIG. 1C depicts a functional perspective of the software components resident in storage subsystem 35' of client 25 or storage subsystem 35 server 20, which cooperatively perform automated transaction processing in accordance with a particular embodiment of the invention.
  • Transaction integrator 100 performs processing of 9 information in conjunction with one or more wrapper programs 140, 150 and 160 configured to specific merchandising sites 139, 149 and 159.
  • Automated form filling component 110 interacts with User Meta-database 170 and User Selection database 180 in order to perform the filling in of online forms presented by various shopping sites.
  • Transaction integrator 100 controls responding to the user's requests to search for various merchandise, obtaining information from the user about the user's merchandise selections from the search results and building information into the User Meta-database 170 and the User Selection database 180.
  • Fig. ID depicts a plurality of relationships between data objects in the User Meta-database 170.
  • Relationship 60 associates a form finding criterion, here a form URL 64, with a form identifier, here a form name 62.
  • Relationship 70 associates a pattern for matching 74 with a form name 72.
  • Relationship 80 associates a form name 82 with a property name 86, an attribute name 84 and a transform function 88.
  • Attribute 84 is a field in a form which we would like to fill in automatically, for example a space for the user's name.
  • Property 86 is a piece of user meta data, stored in User Meta- database 170, for example, a name of a user.
  • Transformation function 88 converts a property into a value for filling in a field in a form. For example, consider a form that has an attribute called "name” which is of a type "last name, first name. " Further, consider user meta data that unique to each user comprising a first property, "first-name, " and a second property, "last-name. " A value to fill into the form for the
  • name attribute is obtained by concatenating the property "last-name, " followed by a “comma, " followed by the property "first-name. "
  • the concatenation process is a transformation function.
  • the same user meta data may be specified in different ways by different forms. Applying these techniques, provides the ability to specify how to modify properties, or meta data, to fill in a wide variety of forms.
  • relationship 90 associates a User ID 92 with a form ID 94, and a plurality of property-value tuples 96, 98 and 99.
  • Figs. 2 A and 2B depict representative forms for transactions with online merchants.
  • the usual method of consummating a purchase order is for the user to fill in the fields in a series of forms with the required information and click a "submit" button to complete the purchase.
  • Fig. 2A depicts a registration form 201 , having a plurality of 10 fields in which the user enters information. The user must enter her name in a name field 202, her mailing information in address fields 204, 206, 208, 210 and 212, her telephone number in a telephone number field 214, then click a "done" button 216 to submit form 201 to the server 20.
  • 2B depicts a shipping and account information form 203, having a plurality of fields in which the user must enter information.
  • the user enters her desired method of shipment by selecting the corresponding button in shipment box 220.
  • she indicates the type of account she wishes to establish using buttons 222 and 224.
  • she enters her payment information in credit card type button 226, card number field 228, expiration field 230, name field 232 and issuing bank field 234.
  • Fig. 3 A depicts a flowchart 301 of the process steps in executing an automated transaction.
  • the user performs a search for items of interest using a search program as is known in the art.
  • the user makes a selection of an item from the result page using a mouse, or other method.
  • a transaction is initiated with a site corresponding to a vendor offering the merchandise selected by the user.
  • a request to buy the selected product is initiated at the site of the vendor corresponding to the item selected by the user. Processing for this step is depicted in greater detail in a flowchart 305 in Fig. 3C.
  • Fig. 3B depicts a- flowchart 303 of steps in virtual check-out counter processing.
  • the user performs a search for items of interest using a search program as is known in the art.
  • a step 325 the user's selection of an item from the result page 206 by using a mouse to click an "Add it" icon 242, or other method, is added to a list of items to purchase. Then, in a step 326, the list is parsed for selection data. Next, in a step 328, selection data for the purchase request is stored into the User Selection database 180. Next, in a decisional step 330, a determination is made whether the user has finished making selections. If the user makes further selections, the processing depicted by steps 322 - 330 of flowchart 303 is performed for each selection made by the user.
  • transaction processing is performed for each selection made by the user in steps 322-330 of flowchart 303.
  • Flowchart 305 of Fig. 3C depicts the transaction processing of step 334 in greater detail. Otherwise, when no further user selections remain, processing returns.
  • Fig. 3C depicts a flowchart 305 depicting the processing for completing a transaction with a vendor on behalf of a user.
  • a decisional step 342 a determination is made whether there are any remaining forms which must be filled in to complete the transaction. If a form must be filled in, then in a step 344, the form is filled in by processing detailed in Fig. 3D. Next, processing returns to decisional step 342. When decisional step 342 determines that no further forms remain, all forms required by the vendor site have been filled in. Processing then continues with an optional step 346, which displays a screen to prompt the user to confirm the purchase. Finally, in a step 348, the transaction with the vendor site is completed and confirmation information returned by the vendor is stored for subsequent tracking.
  • Forms associated with a vendor's site corresponding to product selections made by a user are automatically filled in with the information stored in User Meta- database 170 and -User Selection database 180, such as the name, credit card number, and address of a user, using relationships 60, 70, 80 and 90 depicted in Fig. ID.
  • Fig. 3D depicts a flowchart 307 of the process steps for automated form filing according to a 12 particular embodiment of the invention.
  • the appropriate form identifier for a particular vendor is determined based upon a selectable criterion using relationship 60. Relationship 60 associates the criterion of form URL 64 with a form identifier, form name 62.
  • a step 352 the form identifier determined in step 350 is used to determine one or more corresponding matching patterns using relationship 70.
  • Relationship 70 associates form identifier form name 72, which will be the form identifier determined in step 350, with pattern 74.
  • pattern 74 is matched against a page web page containing a form of interest which is to be filled in.
  • a decisional step 356 if no match is found with the pattern 74, then an error condition is returned, so that a system administrator can be made aware that there is a form for which no matching pattern exists. Otherwise, in a step 358, the page is parsed in order to obtain a plurality of attributes.
  • a step 359 properties are identified using relationship 80 to identify those required to fill in the target form.
  • a value is obtained for each property using relationship 90 by matching the form identifier to a form name 94 and reading property - value pairs 96, 98 and 99.
  • the properties determined in step 358 are transformed using relationship 80 to yield values for each attribute in the target form by applying transformation function 88 corresponding to property name 86 matching the property of interest in relationship 80 for the particular form identifier form name 82. The result is used to fill in the attribute corresponding to attribute name 84.
  • the target form is filled in with property values obtained in step 362. Then processing returns.
  • wrapper a program which fills in and submits forms in order to accumulate information from web sites, may be used to complete a purchase transaction.
  • the data to be filled into each form is obtained from the User Meta-database 170 and User Selection database 180.
  • Wrapper programs are described in detail in a co-owned, co-pending U.S. Patent Application No. 08/724,943, in the name of Ashish Gupta, et. al., entitled “Method and Apparatus for Structuring the Querying and Interpretation of Semistructured Information, " which is incorporated herein by reference in its entirety for all purposes.
  • a wrapper program is constructed for each vendor to capture the logic for the forms that need to be filled to consummate a 13 purchase.
  • a second wrapper program is constructed for each site to perform information-gathering.
  • the transaction- wrapper exercises different parts and different functionality of the site than the information-gathering wrapper. Any site can have multiple wrappers built for it, each of which gets different information or performs a different function. Constructing wrappers which fill in and submit forms is described in greater detail in a co-owned, co-pending U.S. Patent Application No. 08/995,868, in the name of Ashish Gupta, et. al.
  • the user's clicking the "Buy it” link causes the execution of the transaction-wrapper that fills the correct forms in the correct order, ultimately bringing the user to the point where the user can confirm the transaction. All intermediate steps of filling forms with user-specific information is performed by the wrapper.
  • the automated form filling technology may be used in a proxy server to intercept incoming pages.
  • the automated form filling technology may be used in a browser program to screen pages before display to the user.
  • the present invention provides for a method of automatically filling in forms in conducting transactions with multiple vendor sites using a common interface.
  • An advantage of the present invention is that there is a single point of user profile information for submission.
  • a further advantage of the present invention is that it enables the user to buy a collection of items by a given date at the minimum cost, including tax and shipping charges.
  • a yet further advantage of the present invention is that it employs a single point to check out instead of multiple points thus saving time and money for everyone concerned.

Abstract

A method of automatically filling in on-line forms presented by web pages in an internet transactional environment by determining (350) based upon selectable criteria a form identifier corresponding to a particular on-line form, and thereupon, for each form so identified, indentifying (352) one or many corresponding match patterns (354) with which a page containing a target on-line form is parsed (358) to obtain a plurality of attributes, and thereupon, for each attribute obtained in the parsing step, indexing into a database to obtain (360) and then appropriately transform (362) user information which may be used to fill in (364) the target form.

Description

METHOD AND SYSTEM FOR AUTOMATICALLY FILLING FORMS IN AN INTEGRATED NETWORK BASED TRANSACTION
ENVIRONMENT
COPYRIGHT NOTICE A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority from the following U.S. Provisional Applications, the disclosure of which, including all appendices and all attached documents, is incorporated by reference in its entirety for all purposes: U.S. Provisional Patent Application Serial No. , Anand
Rajaraman, et. al. entitled, "Method and System for Integrating Transaction Mechanisms Over Multiple Internet Sites, " filed March 9, 1998, (attorney docket number 17907- 15.0); and
U.S. Provisional Patent Application Serial No. , Anand Rajaraman, et. al. entitled, "Automatically Filling Forms," filed March 11, 1998, (attorney docket number 17907-16.0).
The following two commonly-owned copending applications, including this one, are being filed concurrently and the other one is hereby incorporated by reference in its entirety for all purposes: U.S. Patent Application Serial No. , Ashish Gupta, et. al. entitled, "Method for Integrating Transaction Mechanisms Over Multiple Internet Sites" (attorney docket number 17907-15.10); and 2
U.S. Patent Application Serial No. , Ashish Gupta, et. al. entitled, "Method for Automatically Filing Forms in an Integrated Network Based Transaction Environment, " (attorney docket number 17907-16.10).
This application makes reference to the following commonly owned U.S. Patent Applications, which are incorporated herein in their entirety for all purposes:
Copending U.S. Patent Application Serial No. 08/724,943, in the name of Ashish Gupta, et. al. , entitled "Method and Apparatus for Structuring the Querying and Interpretation of Semistructured Information, " relates to information retrieval and interpretation from disparate semistructured information resources; and Copending U.S. Patent Application No. 08/995,868, in the name of Ashish
Gupta, et. al. , entitled "Method for Data Gathering Around Forms and Search Barriers, " which relates to submitting forms to gather data.
BACKGROUND OF THE INVENTION This invention relates to the area of internet based commerce.
Specifically, this invention enables a method and system for automatically filling in and submitting forms presented by vendor sites in order to effect commercial transactions on the web.
The process of interacting with the web through a browser may be broadly conceptualized as two types of interactions. The first kind of interaction is based on a user finding information and collating it without subsequent interaction with the provider of the information. This is similar to reading a magazine or researching a library. The second kind of interaction is based upon a user requesting goods or services from the provider of the information on the web. Electronic commerce is based upon the confluence of both these activities.
From a user's perspective, the web is useful largely because of the ease at which it makes information available and the diversity of information it provides. Problems arise when the information is scattered in many places and not readily accessible or not easily searchable. The following issues impede the efficient use of data by users of the world wide web: (a) different data representations, (b) different vocabularies, (c) different levels of functionality (d) multiple locations, and (e) absence from the web. 3
In a co-owned, co-pending U.S. Patent Application Serial No. 08/724,923, entitled "Method and Apparatus for Structuring the Querying and Interpretation of Semistructured Information," Ashish Gupta, et. al. introduced Virtual Database Management System ("VDBMS") technology in which structure is added to semi- structured data, thereby making the data searchable using known techniques. Further, VDBMS technology enables data from multiple sites to be integrated together and made searchable via a common mechanism. This technology is applicable to non-web sources such as legacy data sources in Relational Database Management Systems ("RDBMS"), text files, feeds in systems like SII, word and other text processor documents, UNIX file systems, and so forth. The technology's broad applicability in integrating a multiplicity of sources has been proven in the market in publicly available services.
The flow of information from the user to providers of data is as important as the flow of information from providers to the user. The bidirectional exchange of data forms the basis of commerce in traditional media and online. For example, a purchase involves information flow from the store to the buyer, in the display of goods available, and from the buyer to the store, in that information is a credit card number or a check or cash to complete the transaction.
Currently, internet purchasers must visit multiple web sites in order to consummate a transaction. For example, a user desiring to purchase a book entitled "World Peace, " and a CD-ROM entitled "Unplugged", desires to make these purchases efficiently and to get the best prices for these items. The user must visit many different vendors to determine who sells the items, select a particular vendor for each item based on separately visiting the vendors, fill in multiple forms for the different vendors, each of which requires the user to enter the same information and finally track multiple transactions.
Using the search methods described in U.S. Patent Application No. 08/724,923, the user can find the best price for any item available from many vendors. The user is able to seamlessly query multiple different vendor data to make a decision, simplifying the decision process. However, purchasing the items still requires that the user interact with multiple web site "shopping carts, " and fill in the required information multiple times. For example, the user must give her name, address, credit card number and click the "Buy it" button for each of the vendors and deal with their order entry forms. 4
What is needed is a method to enable a user shopping for items from different vendors' Web sites to automatically fill in order forms and then to purchase these items without having to browse and interact with different sites.
SUMMARY OF THE INVENTION
According to the invention, a method of automatically filling in on-line forms presented by web pages in an internet transactional environment by determining based upon selectable criteria a form identifier corresponding to a particular on-line form, and thereupon, for each form so identified, identifying one or many corresponding match patterns with which a page containing a target on-line form is parsed to obtain a plurality of attributes, and thereupon, for each attribute obtained in the parsing step, indexing into a database to obtain user information which may be used to fill in the target form.
The above approach has many advantages: A key advantage of systems according to the present invention is that the user does not have to fill in multiple forms in order to effect internet transactions.
A further advantage of the present invention is that the user does not have to interact with multiple dissimilar interfaces.
A yet further advantage of the present invention is that the user can shop across multiple vendors without repeatedly entering purchase information.
The invention will be better understood with reference to the following detailed description and its accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1A depicts a representative client server relationship in accordance with a particular embodiment of the invention;
Fig. IB depicts a functional perspective of the representative client server relationship in accordance with a particular embodiment of the invention; Fig. 1C depicts a functional perspective of the components of a particular embodiment of the invention;
Fig. ID depicts a plurality of relationships among data in accordance with a particular embodiment of the invention; 5
Figs. 2 A - 2D depict representative forms in accordance with a particular embodiment of the invention;
Figs. 3 A - 3D depict flowcharts of processing in accordance with a particular embodiment of the invention.
DESCRIPTION OF THE SPECIFIC EMBODIMENTS 1.0 Introduction
The present invention provides a method for automatically filling in information into forms presented by vendor web sites in order to effect commercial transactions on the web. Systems according to the present invention enable online shoppers to make selections and purchase products from a plurality of vendor sources using a common interface program without requiring the user to repeatedly fill in redundant information into purchasing forms presented by vendor web sites. A particular embodiment according to the invention has been reduced to practice and will be made available under the trade name "AutoScribe. "™ Table 1 provides a definitional list of certain terms used herein:
Attribute A blank space in a form, used to hold information, such as mailing address.
Property A piece of user meta data.
Transformation A function which when applied to user meta data yields a value to
Function fill into a form.
Table 1
1.1 Hardware Overview
The method for automating form filling in order to effect commercial transactions on the web is implemented in the Perl and Java programming languages and is operational on a computer system such as shown in Fig. 1A. This invention may be implemented in a client-server environment, but a client-server environment is not essential. Fig. 1A shows a conventional client-server computer system which includes a server 20 and numerous clients, one of which is shown as client 25. The use of the term "server" is used in the context of the invention, wherein the server receives queries from 6
(typically remote) clients, does substantially all the processing necessary to formulate responses to the queries, and provides these responses to the clients. However, server 20 may itself act in the capacity of a client when it accesses remote databases located at another node acting as a database server. The hardware configurations are in general standard and will be described only briefly. In accordance with known practice, server 20 includes one or more processors 30 which communicate with a number of peripheral devices via a bus subsystem 32. These peripheral devices typically include a storage subsystem 35, comprised of memory subsystem 35a and file storage subsystem 35b, which hold computer programs (e.g. , code or instructions) and data, set of user interface input and output devices 37, and an interface to outside networks, which may employ Ethernet, Token Ring, ATM, IEEE 802.3, ITU X.25, Serial Link Internet Protocol (SLIP) or the public switched telephone network. This interface is shown schematically as a "Network Interface" block 40. It is coupled to corresponding interface devices in client computers via a network connection 45.
Client 25 has the same general configuration, although typically with less storage and processing capability. Thus, while the client computer could be a terminal or a low-end personal computer, the server computer is generally a high-end workstation or mainframe, such as a SUN SPARC™ server. Corresponding elements and subsystems in the client computer are shown with corresponding, but primed, reference numerals.
The user interface input devices typically includes a keyboard and may further include a pointing device and a scanner. The pointing device may be an indirect pointing device such as a mouse, trackball, touchpad, or graphics tablet, or a direct pointing device such as a touchscreen incorporated into the display. Other types of user interface input devices, such as voice recognition systems, are also possible.
The user interface output devices typically include a printer and a display subsystem, which includes a display controller and a display device coupled to the controller. The display device may be a cathode ray tube (CRT), a flat-panel device such as a liquid crystal display (LCD), or a projection device. Display controller provides control signals to the display device and normally includes a display memory for storing the pixels that appear on the display device. The display subsystem may also provide non-visual display such as audio output. 7
The memory subsystem typically includes a number of memories including a main random access memory (RAM) for storage of instructions and data during program execution and a read only memory (ROM) in which fixed instructions are stored. In the case of Macintosh-compatible personal computers the ROM would include portions of the operating system; in the case of IBM-compatible personal computers, this would include the BIOS (basic input/output system).
The file storage subsystem provides persistent (non-volatile) storage for program and data files, and typically includes at least one hard disk drive and at least one floppy disk drive (with associated removable media). There may also be other devices such as a CD-ROM drive and optical drives (all with their associate removable media). Additionally, the computer system may include drives of the type with removable media cartridges. The removable media cartridges may, for example be hard disk cartridges, such as those marketed by Syquest and others, and flexible disk cartridges, such as those marketed by Iomega. One or more of the drives may be located at a remote location, such as in a server on a local area network or at a site of the Internet's World Wide Web.
In this context, the term "bus subsystem" is used generically so as to include any mechanism for letting the various components and subsystems communicate with each other as intended. With the exception of the input devices and the display, the other components need not be at the same physical location. Thus, for example, portions of the file storage system could be connected via various local-area or wide-area network media, including telephone lines. Similarly, the input devices and display need not be at the same location as the processor, although it is anticipated that the present invention will most often be implemented in the context of PCs and workstations. Bus subsystem 32 is shown schematically as a single bus, but a typical system has a number of buses such as a local bus and one or more expansion buses (e.g. , ADB, SCSI, ISA, EISA, MCA, NuBus, or PCI), as well as serial and parallel ports. Network connections are usually established through a device such as a network adapter on one of these expansion buses or a modem on a serial port. The client computer may be a desktop system or a portable system.
The user interacts with the system using interface devices 37' (or devices 37 in a standalone system). For example, client queries are entered via a keyboard, communicated to client processor 30' , and thence to network interface 40' over bus 8 subsystem 32' . The query is then communicated to server 20 via network connection 45. Similarly, results of the query are commumcated from the server to the client via network connection 45 for output on one of devices 37' (say a display or a printer), or may be stored on storage subsystem 35' .
1.2 Software Architecture
Fig. IB is a functional diagram of the computer system of Fig. 1A. Fig. IB depicts a server 20, and a representative client 25 of a multiplicity of clients which may interact with the server 20 via the internet 45 or any other communications method. Blocks to the right of the server are indicative of the processing components and functions which occur in the server's program and data storage indicated by block 35a in Fig. 1A. A TCP/IP "stack" 44 works in conjunction with Operating System 42 to communicate with processes over a network or serial connection attaching Server 20 to internet 45. Web server software 46 executes concurrently and cooperatively with other processes in server 20 to make data objects 50 and 51 available to requesting clients. A Common Gateway Interface (CGI) script 55 enables information from user clients to be acted upon by web server 46, or other processes within server 20. Responses to client queries may be returned to the clients in the form of a Hypertext Markup Language (HTML) document outputs which are then communicated via internet 45 back to the user.
Client 25 in Fig. IB possesses software implementing functional processes operatively disposed in its program and data storage as indicated by block 35a' in Fig. 1A. TCP/IP stack 44', works in conjunction with Operating System 42' to communicate with processes over a network or serial connection attaching Client 25 to internet 45. Software implementing the function of a web browser 46' executes concurrently and cooperatively with other processes in client 25 to make requests of server 20 for data objects 50 and 51. The user of the client may interact via the web browser 46' to make such queries of the server 20 via internet 45 and to view responses from the server 20 via internet 45 on the web browser 46' . Fig. 1C depicts a functional perspective of the software components resident in storage subsystem 35' of client 25 or storage subsystem 35 server 20, which cooperatively perform automated transaction processing in accordance with a particular embodiment of the invention. Transaction integrator 100 performs processing of 9 information in conjunction with one or more wrapper programs 140, 150 and 160 configured to specific merchandising sites 139, 149 and 159. Automated form filling component 110 interacts with User Meta-database 170 and User Selection database 180 in order to perform the filling in of online forms presented by various shopping sites. Transaction integrator 100 controls responding to the user's requests to search for various merchandise, obtaining information from the user about the user's merchandise selections from the search results and building information into the User Meta-database 170 and the User Selection database 180.
Fig. ID depicts a plurality of relationships between data objects in the User Meta-database 170. Relationship 60 associates a form finding criterion, here a form URL 64, with a form identifier, here a form name 62. Relationship 70 associates a pattern for matching 74 with a form name 72. Relationship 80 associates a form name 82 with a property name 86, an attribute name 84 and a transform function 88. Attribute 84 is a field in a form which we would like to fill in automatically, for example a space for the user's name. Property 86 is a piece of user meta data, stored in User Meta- database 170, for example, a name of a user. Transformation function 88 converts a property into a value for filling in a field in a form. For example, consider a form that has an attribute called "name" which is of a type "last name, first name. " Further, consider user meta data that unique to each user comprising a first property, "first-name, " and a second property, "last-name. " A value to fill into the form for the
"name" attribute is obtained by concatenating the property "last-name, " followed by a "comma, " followed by the property "first-name. " The concatenation process is a transformation function. Using this technique, the same user meta data may be specified in different ways by different forms. Applying these techniques, provides the ability to specify how to modify properties, or meta data, to fill in a wide variety of forms.
Finally, relationship 90 associates a User ID 92 with a form ID 94, and a plurality of property-value tuples 96, 98 and 99.
2.0 On-line Transactions Forms Figs. 2 A and 2B depict representative forms for transactions with online merchants. The usual method of consummating a purchase order is for the user to fill in the fields in a series of forms with the required information and click a "submit" button to complete the purchase. Fig. 2A depicts a registration form 201 , having a plurality of 10 fields in which the user enters information. The user must enter her name in a name field 202, her mailing information in address fields 204, 206, 208, 210 and 212, her telephone number in a telephone number field 214, then click a "done" button 216 to submit form 201 to the server 20. Fig. 2B depicts a shipping and account information form 203, having a plurality of fields in which the user must enter information. The user enters her desired method of shipment by selecting the corresponding button in shipment box 220. Next, she indicates the type of account she wishes to establish using buttons 222 and 224. Then, she enters her payment information in credit card type button 226, card number field 228, expiration field 230, name field 232 and issuing bank field 234. Thus, it is not one form that is filled in, but a series of forms.
3.0 Automating On-line Transactions
3.1 Automating A Single On-line Transaction
Fig. 3 A depicts a flowchart 301 of the process steps in executing an automated transaction. In a step 312, the user performs a search for items of interest using a search program as is known in the art. Then, in a step 314, a result page depicting the results of the search performed in step 312, such as result page 205 of Fig. 2C, is displayed to the user. Next, in a step 316, the user makes a selection of an item from the result page using a mouse, or other method. Next, in a step 318, a transaction is initiated with a site corresponding to a vendor offering the merchandise selected by the user. For example, in the sample result page 205, when a user clicks a "Buy it" link 240, a request to buy the selected product is initiated at the site of the vendor corresponding to the item selected by the user. Processing for this step is depicted in greater detail in a flowchart 305 in Fig. 3C.
3.2 Transactions with Multiple On-line Vendors
Multiple purchases across different vendors are integrated based upon the concept of a "virtual check-out counter, " from which all transactions are consummated. The virtual checkout counter enables the user to make payments at a single point even though returns and product question transactions are handled by individual vendor sites. Fig. 3B depicts a- flowchart 303 of steps in virtual check-out counter processing. In a step 322, the user performs a search for items of interest using a search program as is known in the art. Then, in a step 324, a result page depicting the results of the search 11 performed in step 322, such as result page 206 of Fig. 2D, is displayed to the user. Next, in a step 325, the user's selection of an item from the result page 206 by using a mouse to click an "Add it" icon 242, or other method, is added to a list of items to purchase. Then, in a step 326, the list is parsed for selection data. Next, in a step 328, selection data for the purchase request is stored into the User Selection database 180. Next, in a decisional step 330, a determination is made whether the user has finished making selections. If the user makes further selections, the processing depicted by steps 322 - 330 of flowchart 303 is performed for each selection made by the user. Otherwise, responsive to the user's request to "check out, " in a decisional step 332, a determination is made if any selections made by the user require transaction processing. In a step 334, transaction processing is performed for each selection made by the user in steps 322-330 of flowchart 303. Flowchart 305 of Fig. 3C depicts the transaction processing of step 334 in greater detail. Otherwise, when no further user selections remain, processing returns.
3.3 Automating Transaction Form Filling
Fig. 3C depicts a flowchart 305 depicting the processing for completing a transaction with a vendor on behalf of a user. In a decisional step 342, a determination is made whether there are any remaining forms which must be filled in to complete the transaction. If a form must be filled in, then in a step 344, the form is filled in by processing detailed in Fig. 3D. Next, processing returns to decisional step 342. When decisional step 342 determines that no further forms remain, all forms required by the vendor site have been filled in. Processing then continues with an optional step 346, which displays a screen to prompt the user to confirm the purchase. Finally, in a step 348, the transaction with the vendor site is completed and confirmation information returned by the vendor is stored for subsequent tracking.
3.4 Automated Order Form Filling
Forms associated with a vendor's site corresponding to product selections made by a user are automatically filled in with the information stored in User Meta- database 170 and -User Selection database 180, such as the name, credit card number, and address of a user, using relationships 60, 70, 80 and 90 depicted in Fig. ID. Fig. 3D depicts a flowchart 307 of the process steps for automated form filing according to a 12 particular embodiment of the invention. In a step 350, the appropriate form identifier for a particular vendor is determined based upon a selectable criterion using relationship 60. Relationship 60 associates the criterion of form URL 64 with a form identifier, form name 62. Next, in a step 352, the form identifier determined in step 350 is used to determine one or more corresponding matching patterns using relationship 70. Relationship 70 associates form identifier form name 72, which will be the form identifier determined in step 350, with pattern 74. Next, in a step 354, pattern 74 is matched against a page web page containing a form of interest which is to be filled in. In a decisional step 356, if no match is found with the pattern 74, then an error condition is returned, so that a system administrator can be made aware that there is a form for which no matching pattern exists. Otherwise, in a step 358, the page is parsed in order to obtain a plurality of attributes. Then, in a step 359, properties are identified using relationship 80 to identify those required to fill in the target form. In a step 360, a value is obtained for each property using relationship 90 by matching the form identifier to a form name 94 and reading property - value pairs 96, 98 and 99. Next, in a step 362, the properties determined in step 358 are transformed using relationship 80 to yield values for each attribute in the target form by applying transformation function 88 corresponding to property name 86 matching the property of interest in relationship 80 for the particular form identifier form name 82. The result is used to fill in the attribute corresponding to attribute name 84. Finally, in a step 364, the target form is filled in with property values obtained in step 362. Then processing returns.
3.4.1 Submitting Forms Using A Wrapper
In an alternative embodiment, the concept of a wrapper, a program which fills in and submits forms in order to accumulate information from web sites, may be used to complete a purchase transaction. The data to be filled into each form is obtained from the User Meta-database 170 and User Selection database 180. Wrapper programs are described in detail in a co-owned, co-pending U.S. Patent Application No. 08/724,943, in the name of Ashish Gupta, et. al., entitled "Method and Apparatus for Structuring the Querying and Interpretation of Semistructured Information, " which is incorporated herein by reference in its entirety for all purposes.
According to this embodiment, a wrapper program is constructed for each vendor to capture the logic for the forms that need to be filled to consummate a 13 purchase. A second wrapper program is constructed for each site to perform information-gathering. The transaction- wrapper exercises different parts and different functionality of the site than the information-gathering wrapper. Any site can have multiple wrappers built for it, each of which gets different information or performs a different function. Constructing wrappers which fill in and submit forms is described in greater detail in a co-owned, co-pending U.S. Patent Application No. 08/995,868, in the name of Ashish Gupta, et. al. , entitled "Method for Data Gathering Around Forms and Search Barriers, " which is incorporated herein by reference in its entirety for all purposes. According to this embodiment, the user's clicking the "Buy it" link causes the execution of the transaction-wrapper that fills the correct forms in the correct order, ultimately bringing the user to the point where the user can confirm the transaction. All intermediate steps of filling forms with user-specific information is performed by the wrapper.
3.4.2 Applications in Select Embodiments
In a particular embodiment, the automated form filling technology may be used in a proxy server to intercept incoming pages. In an alternative embodiment, the automated form filling technology may be used in a browser program to screen pages before display to the user.
4.0 Conclusion
In conclusion the present invention provides for a method of automatically filling in forms in conducting transactions with multiple vendor sites using a common interface. An advantage of the present invention is that there is a single point of user profile information for submission. A further advantage of the present invention is that it enables the user to buy a collection of items by a given date at the minimum cost, including tax and shipping charges. A yet further advantage of the present invention is that it employs a single point to check out instead of multiple points thus saving time and money for everyone concerned.
Other embodiments of the present invention and its individual components will become readily apparent to those skilled in the art from the foregoing detailed description. As will be realized, the invention is capable of other and different 14 embodiments, and its several details are capable of modifications in various obvious respects, all without departing from the spirit and the scope of the present invention. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not as restrictive. It is therefore not intended that the invention be limited except as indicated by the appended claims.

Claims

15WHAT IS CLAIMED IS:
1. A method of automatically filling in on-line forms in an internet transactional environment, said on-line forms being contained in a plurality of pages, presented by one or many internet sites, comprising the steps of: determining based upon selected criterion a form identifier corresponding to a particular on-line form; for each form identified in the determining step, identifying a plurality of corresponding match patterns; matching each match pattern identified in the identifying step to a particular page containing said particular on-line form; parsing said particular page to obtain a plurality of attributes; for each attribute obtained in the parsing step, indexing into a database to obtain user information; filling in said particular on-line form with said user information obtained in the indexing step.
2. The method of claim 1 wherein said selected criterion further comprises a Uniform Resource Locator (URL).
3. The method of claim 1 wherein said forms are presented by online sites to gather information to complete a transaction.
4. The method of claim 1 further comprising the steps of: recognizing a subsequent form presented by said on-line site; performing the determining through filling steps repeatedly for said subsequent form.
5. The method of claim 1 wherein said online sites are world wide web sites.
6. A system for automatically filling in on-line forms in an internet transactional environment, said on-line forms being contained in a plurality of pages, presented by one or many internet sites, comprising: 16 at least one client and at least one server, said client and said server operatively disposed to: determining based upon selected criterion a form identifier corresponding to a particular on-line form; for each form identified in the determining step, identifying a plurality of corresponding match patterns; matching each match pattern identified in the identifying step to a particular page containing said particular on-line form; parsing said particular page to obtain a plurality of attributes; for each attribute obtained in the parsing step, indexing into a database to obtain user information; filling in said particular on-line form with said user information obtained in the indexing step.
7. The system of claim 6 wherein said selected criterion further comprises a Uniform Resource Locator (URL).
8. The system of claim 6 wherein said forms are presented by online sites to gather information to complete a transaction.
9. The system of claim 6 further comprising the steps of: recognizing a subsequent form presented by said on-line site; performing the determining through filling steps repeatedly for said subsequent form.
10. The system of claim 6 wherein said online sites are world wide web sites.
11. A computer programming product for automatically filling in on-line forms in an internet transactional environment, said on-line forms being contained in a plurality of pages, presented by one or many internet sites, comprising: a computer readable storage medium; code for determining based upon selected criterion a form identifier corresponding to a particular on-line form; 17 code for identifying a plurality of corresponding match patterns, for each form identified by the determining code; code for matching each match pattern identified by the identifying code to a particular page containing said particular on-line form; code for parsing said particular page to obtain a plurality of attributes; code for indexing into a database to obtain user information, for each attribute obtained in the parsing step; code for filling in said particular on-line form with said user information obtained in the indexing step.
12. The computer programming product of claim 11 wherein said selected criterion further comprises a Uniform Resource Locator (URL).
13. The computer programming product of claim 11 wherein said forms are presented by online sites to gather information to complete a transaction.
14. The computer programming product of claim 11 further comprising: code for recognizing a subsequent form presented by said on-line site; code for invoking the code for determining through the code for filling repeatedly for said subsequent form.
15. The computer programming product of claim 11 wherein said online sites are world wide web sites.
PCT/US1999/004489 1998-03-09 1999-03-01 Method and system for automatically filling forms in an integrated network based transaction environment WO1999046701A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU27994/99A AU2799499A (en) 1998-03-09 1999-03-01 Method and system for automatically filling forms in an integrated network basedtransaction environment

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US7732298P 1998-03-09 1998-03-09
US60/077,322 1998-03-09
US7765598P 1998-03-11 1998-03-11
US60/077,655 1998-03-11
US09/066,523 1998-03-20
US09/066,739 US6643624B2 (en) 1998-03-09 1998-03-20 Method and system for integrating transaction mechanisms over multiple internet sites
US09/066,739 1998-03-20
US09/066,523 US6199079B1 (en) 1998-03-09 1998-03-20 Method and system for automatically filling forms in an integrated network based transaction environment

Publications (1)

Publication Number Publication Date
WO1999046701A1 true WO1999046701A1 (en) 1999-09-16

Family

ID=27490570

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/US1999/004442 WO1999046707A1 (en) 1998-03-09 1999-03-01 Method and system for integrating transaction mechanisms over multiple internet sites
PCT/US1999/004489 WO1999046701A1 (en) 1998-03-09 1999-03-01 Method and system for automatically filling forms in an integrated network based transaction environment

Family Applications Before (1)

Application Number Title Priority Date Filing Date
PCT/US1999/004442 WO1999046707A1 (en) 1998-03-09 1999-03-01 Method and system for integrating transaction mechanisms over multiple internet sites

Country Status (2)

Country Link
AU (2) AU2885099A (en)
WO (2) WO1999046707A1 (en)

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001022288A2 (en) * 1999-09-20 2001-03-29 Fusionone, Inc. Performing server actions using template with field that can be completed without obtaining information from a user
WO2001025958A2 (en) * 1999-10-01 2001-04-12 Infospace, Inc. Selective proxy approach to filling-in forms embedded in distributed electronic documents
WO2001031505A2 (en) * 1999-10-28 2001-05-03 Ericsson Inc. Method for creating and using a web shortcut
WO2001033390A2 (en) * 1999-10-29 2001-05-10 Entrypoint, Inc. Method and apparatus for populating a form with data
WO2001037129A1 (en) * 1999-11-17 2001-05-25 Bayshore Capital Inc. Method and apparatus for automated transaction processing
WO2001039031A2 (en) * 1999-11-09 2001-05-31 Gator.Com Method for automatic form filling
WO2001045022A2 (en) * 1999-11-05 2001-06-21 Infospace, Inc. Method and apparatus for completion of fields on internet webpage forms
WO2001046873A1 (en) * 1999-12-20 2001-06-28 Netzero, Inc. Method and apparatus employing a proxy server for modifying an html document supplied by a web server to a web client
EP1128266A2 (en) * 2000-02-22 2001-08-29 Orsus Solutions Limited Cooperative software application architecture
WO2001084359A2 (en) * 2000-04-28 2001-11-08 Obongo, Inc. Method and system for automating internet interactions using recorded data
WO2001095143A1 (en) * 2000-06-07 2001-12-13 Gator Corporation Method for web browser automation
WO2002084516A1 (en) * 2001-04-13 2002-10-24 Earthlink, Inc. Systems and methods for transferring information between a database in a handheld internet appliance and a web site
GB2375620A (en) * 2001-01-23 2002-11-20 Games By Design Ltd Interactive internet system
WO2003030017A2 (en) * 2001-09-28 2003-04-10 Kinek Technologies Inc. Prompted form filling mechanism
EP1325425A1 (en) * 2000-10-13 2003-07-09 America Online, Inc. Method and system of automating internet interactions
WO2002089012A3 (en) * 2000-12-22 2003-09-04 Centives Inc E Pre-filling order forms for transactions over a communications network
US6910179B1 (en) 1998-11-10 2005-06-21 Clarita Corporation Method and apparatus for automatic form filling
WO2006117643A1 (en) * 2005-05-02 2006-11-09 Nokia Corporation Method and device for automatically providing data for a field in a template
US7277923B2 (en) 2001-04-13 2007-10-02 Earthlink, Inc. Systems and methods for automatically accessing internet information from a local application on a handheld internet appliance
US7277927B2 (en) 2001-04-13 2007-10-02 Earthlink, Inc. Systems and methods for saving internet content into a handheld internet appliance
US7281029B2 (en) 2003-05-13 2007-10-09 Aol Llc, A Delaware Limited Liability Company Method and system of capturing data for automating internet interactions
US7349867B2 (en) 2000-12-22 2008-03-25 Invenda Corporation Tracking transactions by using addresses in a communications network
US7363248B2 (en) 2000-12-22 2008-04-22 Invenda Corporation Pre-filling order forms for transactions over a communications network
CN100403827C (en) * 2001-05-23 2008-07-16 高通股份有限公司 Synchronization of stored servoce parameters in communication system
US7415429B2 (en) 2000-12-22 2008-08-19 Invenda Corporation Providing navigation objects for communications over a network
US7500178B1 (en) * 2003-09-11 2009-03-03 Agis Network, Inc. Techniques for processing electronic forms
US8078602B2 (en) 2004-12-17 2011-12-13 Claria Innovations, Llc Search engine for a computer network
US8095597B2 (en) 2001-05-01 2012-01-10 Aol Inc. Method and system of automating data capture from electronic correspondence
USRE44110E1 (en) 2000-02-24 2013-03-26 Mahogan Data Llc Machine-to-machine e-commerce interface using extensible markup language
US9495446B2 (en) 2004-12-20 2016-11-15 Gula Consulting Limited Liability Company Method and device for publishing cross-network user behavioral data
US9542076B1 (en) 2004-05-12 2017-01-10 Synchronoss Technologies, Inc. System for and method of updating a personal profile
US9615221B1 (en) 2003-07-21 2017-04-04 Synchronoss Technologies, Inc. Device message management system
EP3531316A4 (en) * 2017-05-23 2019-12-25 Alibaba Group Holding Limited Block chain-based data processing method and device

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162436B1 (en) 1999-09-24 2007-01-09 In-Development, Llc System and method for pairing providers with consumers of online goods and services
KR20020004606A (en) * 2000-07-06 2002-01-16 김성군 integrating system of shopping mole
KR20000059056A (en) * 2000-07-12 2000-10-05 김상배 Multi-mall universal shopping system and business method using such system
KR20010096625A (en) * 2001-03-07 2001-11-08 김종관 Total management system for sold shopping malls and method thereof
US6985871B2 (en) 2001-08-10 2006-01-10 United Parcel Service Of America, Inc. Systems and methods for scheduling reoccurring deliveries and pickups
KR20020035084A (en) * 2002-04-20 2002-05-09 이기홍 Integrated Information Management
US20050021223A1 (en) 2003-04-15 2005-01-27 United Parcel Service Of America, Inc. Rush hour modeling for routing and scheduling
US9135575B2 (en) 2005-05-09 2015-09-15 Roadnet Technologies, Inc. Systems and methods for routing and scheduling visits to delivery locations

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745681A (en) * 1996-01-11 1998-04-28 Sun Microsystems, Inc. Stateless shopping cart for the web
US5758328A (en) * 1996-02-22 1998-05-26 Giovannoli; Joseph Computerized quotation system and method
US5794207A (en) * 1996-09-04 1998-08-11 Walker Asset Management Limited Partnership Method and apparatus for a cryptographically assisted commercial network system designed to facilitate buyer-driven conditional purchase offers
US5794259A (en) * 1996-07-25 1998-08-11 Lextron Systems, Inc Apparatus and methods to enhance web browsing on the internet
US5832459A (en) * 1994-08-19 1998-11-03 Andersen Consulting Llp Computerized source searching system and method for use in an order entry system
US5890139A (en) * 1995-12-08 1999-03-30 Fujitsu Limited Answering method and system in online shopping
US5897622A (en) * 1996-10-16 1999-04-27 Microsoft Corporation Electronic shopping and merchandising system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994028497A1 (en) * 1993-05-20 1994-12-08 Moore Business Forms, Inc. Computer integration network for channeling customer orders through a centralized computer to various suppliers
US5809483A (en) * 1994-05-13 1998-09-15 Broka; S. William Online transaction processing system for bond trading
US5845263A (en) * 1995-06-16 1998-12-01 High Technology Solutions, Inc. Interactive visual ordering system
US5710887A (en) * 1995-08-29 1998-01-20 Broadvision Computer system and method for electronic commerce
US5732398A (en) * 1995-11-09 1998-03-24 Keyosk Corp. Self-service system for selling travel-related services or products
US5850446A (en) * 1996-06-17 1998-12-15 Verifone, Inc. System, method and article of manufacture for virtual point of sale processing utilizing an extensible, flexible architecture
US5889863A (en) * 1996-06-17 1999-03-30 Verifone, Inc. System, method and article of manufacture for remote virtual point of sale processing utilizing a multichannel, extensible, flexible architecture
US6125352A (en) * 1996-06-28 2000-09-26 Microsoft Corporation System and method for conducting commerce over a distributed network
US5937391A (en) * 1996-07-11 1999-08-10 Fujitsu Limited Point-service system in online shopping mall

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832459A (en) * 1994-08-19 1998-11-03 Andersen Consulting Llp Computerized source searching system and method for use in an order entry system
US5890139A (en) * 1995-12-08 1999-03-30 Fujitsu Limited Answering method and system in online shopping
US5745681A (en) * 1996-01-11 1998-04-28 Sun Microsystems, Inc. Stateless shopping cart for the web
US5758328A (en) * 1996-02-22 1998-05-26 Giovannoli; Joseph Computerized quotation system and method
US5794259A (en) * 1996-07-25 1998-08-11 Lextron Systems, Inc Apparatus and methods to enhance web browsing on the internet
US5794207A (en) * 1996-09-04 1998-08-11 Walker Asset Management Limited Partnership Method and apparatus for a cryptographically assisted commercial network system designed to facilitate buyer-driven conditional purchase offers
US5897622A (en) * 1996-10-16 1999-04-27 Microsoft Corporation Electronic shopping and merchandising system

Cited By (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6499042B1 (en) 1998-10-07 2002-12-24 Infospace, Inc. Selective proxy approach to filling-in forms embedded in distributed electronic documents
US7206998B2 (en) 1998-11-10 2007-04-17 Claria Corporation System and method for automatically learning information used for electronic form-filling
US6910179B1 (en) 1998-11-10 2005-06-21 Clarita Corporation Method and apparatus for automatic form filling
US7293074B1 (en) 1999-09-20 2007-11-06 Fusionone, Inc. Performing server actions using template with field that can be completed without obtaining information from a user
WO2001022288A3 (en) * 1999-09-20 2004-12-23 Fusionone Inc Performing server actions using template with field that can be completed without obtaining information from a user
WO2001022288A2 (en) * 1999-09-20 2001-03-29 Fusionone, Inc. Performing server actions using template with field that can be completed without obtaining information from a user
WO2001025958A3 (en) * 1999-10-01 2002-01-10 Infospace Inc Selective proxy approach to filling-in forms embedded in distributed electronic documents
WO2001025958A2 (en) * 1999-10-01 2001-04-12 Infospace, Inc. Selective proxy approach to filling-in forms embedded in distributed electronic documents
WO2001031505A2 (en) * 1999-10-28 2001-05-03 Ericsson Inc. Method for creating and using a web shortcut
WO2001031505A3 (en) * 1999-10-28 2002-07-18 Ericsson Inc Method for creating and using a web shortcut
WO2001033390A3 (en) * 1999-10-29 2003-05-30 Entrypoint Inc Method and apparatus for populating a form with data
US7962845B2 (en) 1999-10-29 2011-06-14 Aol Inc. Method and apparatus for populating a form with data
WO2001033390A2 (en) * 1999-10-29 2001-05-10 Entrypoint, Inc. Method and apparatus for populating a form with data
US20110219293A1 (en) * 1999-10-29 2011-09-08 Aol Inc. Method and apparatus for populating a form with data
US9081756B2 (en) 1999-10-29 2015-07-14 Microsoft Technology Licensing, Llc Method and apparatus for populating a form with data
WO2001045022A3 (en) * 1999-11-05 2002-01-10 Infospace Inc Method and apparatus for completion of fields on internet webpage forms
WO2001045022A2 (en) * 1999-11-05 2001-06-21 Infospace, Inc. Method and apparatus for completion of fields on internet webpage forms
WO2001039031A3 (en) * 1999-11-09 2002-02-14 Gator Com Method for automatic form filling
WO2001039031A2 (en) * 1999-11-09 2001-05-31 Gator.Com Method for automatic form filling
WO2001037129A1 (en) * 1999-11-17 2001-05-25 Bayshore Capital Inc. Method and apparatus for automated transaction processing
WO2001046873A1 (en) * 1999-12-20 2001-06-28 Netzero, Inc. Method and apparatus employing a proxy server for modifying an html document supplied by a web server to a web client
EP1128266A3 (en) * 2000-02-22 2004-02-25 Orsus Solutions Limited Cooperative software application architecture
EP1128266A2 (en) * 2000-02-22 2001-08-29 Orsus Solutions Limited Cooperative software application architecture
USRE44110E1 (en) 2000-02-24 2013-03-26 Mahogan Data Llc Machine-to-machine e-commerce interface using extensible markup language
WO2001084359A3 (en) * 2000-04-28 2002-03-28 Obongo Inc Method and system for automating internet interactions using recorded data
JP2004501426A (en) * 2000-04-28 2004-01-15 アメリカ オンライン インコーポレーティッド Method and system for executing recorded data for automating internet interactions
CN100435141C (en) * 2000-04-28 2008-11-19 美国联机股份有限公司 Method and system for automating internet interactions using recorded data
WO2001084359A2 (en) * 2000-04-28 2001-11-08 Obongo, Inc. Method and system for automating internet interactions using recorded data
WO2001095143A1 (en) * 2000-06-07 2001-12-13 Gator Corporation Method for web browser automation
EP1325425A4 (en) * 2000-10-13 2006-01-18 America Online Inc Method and system of automating internet interactions
US7330876B1 (en) 2000-10-13 2008-02-12 Aol Llc, A Delaware Limited Liability Company Method and system of automating internet interactions
EP1325425A1 (en) * 2000-10-13 2003-07-09 America Online, Inc. Method and system of automating internet interactions
US8706565B2 (en) 2000-12-22 2014-04-22 Risible Enterprise LLC Pre-filling order forms for transactions over a communications network
US10204363B2 (en) 2000-12-22 2019-02-12 Tamiras Per Pte. Ltd., Llc System and method for modifying electronic documents transmitted through an intermediary
WO2002089012A3 (en) * 2000-12-22 2003-09-04 Centives Inc E Pre-filling order forms for transactions over a communications network
US8849704B2 (en) 2000-12-22 2014-09-30 Risible Enterprises Llc Tracking transactions by using addresses in a communications network
US7349867B2 (en) 2000-12-22 2008-03-25 Invenda Corporation Tracking transactions by using addresses in a communications network
US7363248B2 (en) 2000-12-22 2008-04-22 Invenda Corporation Pre-filling order forms for transactions over a communications network
US8996415B2 (en) 2000-12-22 2015-03-31 Risible Enterprises Llc Tracking transactions by using addresses in a communications network
US7415429B2 (en) 2000-12-22 2008-08-19 Invenda Corporation Providing navigation objects for communications over a network
GB2375620A (en) * 2001-01-23 2002-11-20 Games By Design Ltd Interactive internet system
US7277923B2 (en) 2001-04-13 2007-10-02 Earthlink, Inc. Systems and methods for automatically accessing internet information from a local application on a handheld internet appliance
WO2002084516A1 (en) * 2001-04-13 2002-10-24 Earthlink, Inc. Systems and methods for transferring information between a database in a handheld internet appliance and a web site
US7277927B2 (en) 2001-04-13 2007-10-02 Earthlink, Inc. Systems and methods for saving internet content into a handheld internet appliance
US10027613B2 (en) 2001-05-01 2018-07-17 Mercury Kingdom Assets Limited Method and system of automating data capture from electronic correspondence
US9280763B2 (en) 2001-05-01 2016-03-08 Mercury Kingdom Assets Limited Method and system of automating data capture from electronic correspondence
US8095597B2 (en) 2001-05-01 2012-01-10 Aol Inc. Method and system of automating data capture from electronic correspondence
CN100403827C (en) * 2001-05-23 2008-07-16 高通股份有限公司 Synchronization of stored servoce parameters in communication system
WO2003030017A3 (en) * 2001-09-28 2004-01-15 Kinek Technologies Inc Prompted form filling mechanism
WO2003030017A2 (en) * 2001-09-28 2003-04-10 Kinek Technologies Inc. Prompted form filling mechanism
US7281029B2 (en) 2003-05-13 2007-10-09 Aol Llc, A Delaware Limited Liability Company Method and system of capturing data for automating internet interactions
US9615221B1 (en) 2003-07-21 2017-04-04 Synchronoss Technologies, Inc. Device message management system
US9723460B1 (en) 2003-07-21 2017-08-01 Synchronoss Technologies, Inc. Device message management system
US7500178B1 (en) * 2003-09-11 2009-03-03 Agis Network, Inc. Techniques for processing electronic forms
US9542076B1 (en) 2004-05-12 2017-01-10 Synchronoss Technologies, Inc. System for and method of updating a personal profile
US8078602B2 (en) 2004-12-17 2011-12-13 Claria Innovations, Llc Search engine for a computer network
US9495446B2 (en) 2004-12-20 2016-11-15 Gula Consulting Limited Liability Company Method and device for publishing cross-network user behavioral data
WO2006117643A1 (en) * 2005-05-02 2006-11-09 Nokia Corporation Method and device for automatically providing data for a field in a template
USRE44742E1 (en) 2005-05-02 2014-02-04 Sulvanuss Capital L.L.C. Dynamic message templates and messaging macros
US7751533B2 (en) 2005-05-02 2010-07-06 Nokia Corporation Dynamic message templates and messaging macros
EP3531316A4 (en) * 2017-05-23 2019-12-25 Alibaba Group Holding Limited Block chain-based data processing method and device
JP2020515088A (en) * 2017-05-23 2020-05-21 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited Blockchain-based data processing method and device
EP3910513A1 (en) * 2017-05-23 2021-11-17 Advanced New Technologies Co., Ltd. Blockchain-based data processing method and device
US11379803B2 (en) 2017-05-23 2022-07-05 Advanced New Technologies Co., Ltd. Blockchain-based data processing method and device

Also Published As

Publication number Publication date
AU2799499A (en) 1999-09-27
WO1999046707A1 (en) 1999-09-16
AU2885099A (en) 1999-09-27

Similar Documents

Publication Publication Date Title
US6199079B1 (en) Method and system for automatically filling forms in an integrated network based transaction environment
US6643624B2 (en) Method and system for integrating transaction mechanisms over multiple internet sites
WO1999046701A1 (en) Method and system for automatically filling forms in an integrated network based transaction environment
US6484150B1 (en) Electronic shopping and merchandising system accessing legacy data in a database independent schema manner
US7587359B2 (en) Method and system for harvesting feedback and comments regarding multiple items from users of a network-based transaction facility
US7647322B2 (en) System and method for retrieving and displaying data, such as economic data relating to salaries, cost of living and employee benefits
US20020002513A1 (en) Computer network transaction system
US20020156685A1 (en) System and method for automating electronic commerce transactions using a virtual shopping cart
US20030144924A1 (en) Smart multi-search method and system
US20020042750A1 (en) System method and article of manufacture for a visual self calculating order system over the world wide web
US20020099562A1 (en) System and method of data exchange for electronic transactions with multiple sources
US20020111879A1 (en) Method and system for selecting and purchasing products via a communications network
KR20000012750A (en) Method for Automatic Shopping Agent in Internet Shopping Intermediate Service
US20140082063A1 (en) Methods and systems for harvesting comments regarding users on a network-based facility
US20040039660A1 (en) Automated on-line purchasing system
US7246106B2 (en) System and method for distributing electronic information
KR100372919B1 (en) Electronic Commerce System and Selling Method in the Same
US20040117263A1 (en) Method, server system and computer program product for user registration and electronic commerce system
US20020040330A1 (en) Apparatus and method for providing information about sale of goods, method for displaying information about sale of goods, and computer-readable recording medium
WO2002027604A2 (en) Method and system for performing electronic commerce
KR20010060745A (en) Method for comparing and searching shopping mall in three dimensional form on electronic commerce
WO2000079459A2 (en) Descriptive search method and apparatus for use in electronic commerce
JP2003091681A (en) Transaction support device, transaction support method, transaction support system and program for realizing transaction support function on computer
CA2360221A1 (en) Method and system for facilitating electronic commercial transactions
US20020062256A1 (en) System for selling goods

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG US US US US UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase