On-line method and apparatus for collecting demographic information about a user of a world-wide-web site and dynamically selecting questions to present to the user6873965Abstract An on-line method and apparatus for collecting demographic information from a user of a home WWW site and for dynamically selecting questions to present to the user is disclosed. A plurality of sponsor symbols are displayed for the user on the home WWW site. A signal is received at the home WWW site from the user indicating a selection of one of the sponsor symbols by the user. In response to the selected sponsor symbol, a first set of one or more prize symbols are displayed for the user on the home WWW site. A further signal is then received at the home WWW site from the user indicating a selection of a prize symbol from the first set of prize symbols by the user. Next, the system determines whether the user is a registered user of the home WWW site and, if the user is not a registered user of the home WWW site, the system collects demographic information about the user during registration of the user on the home WWW site. In response to the demographic information, at least one question is selected from a plurality of candidate questions, wherein each of the plurality of candidate questions is associated with the entity corresponding to the selected sponsor symbol. The selected question is displayed to the user on the home WWW site. Next, a signal is received from the user indicating an answer of the user to the selected question, and the answer is stored in a database. Claims What is claimed is: Description BACKGROUND OF THE INVENTION
TABLE 1
USER RECORD
Field Name Field Type
USR_ID NUMBER (12)
USR_EMAIL VARCHAR2 (50)
USR_SAL CHAR (5)
USR_FNAME VARCHAR2 (50)
USR_MI CHAR (1)
USR_LNAME VARCHAR2 (50)
USR_ADRS1 VARCHAR2 (50)
USR_ADRS2 VARCHAR2 (50)
USR_APT VARCHAR2 (50)
USR_CITY VARCHAR2 (50)
USR_STATE VARCHAR2 (10)
USR_ZIP VARCHAR2 (20)
USR_PHONE VARCHAR2 (30)
USR_BDATE DATE
USR_STATUS VARCHAR2 (10)
USR_WORK VARCHAR2 (10)
USR_WIFEWRK VARCHAR2 (10)
USR_DESC VARCHAR2 (10)
USR_WIFEDESC VARCHAR2 (10)
USR_INCOME VARCHAR2 (10)
USR_OWN_HOME CHAR (1)
USR_RENT_HOME CHAR (1)
USR_MAILINGS CHAR (1)
USR_UPDATE DATE
USR_SEX VARCHAR2 (10)
EDUCATION NUMBER (3)
OTHER PEOPLE CHAR (1)
CHILD_UNDER_ONE CHAR (1)
OTHER_GENDER1 CHAR (1)
OTHER_AGE1 NUMBER (3)
OTHER_GENDER2 CHAR (1)
OTHER_AGE2 NUMBER (3)
OTHER_GENDER3 CHAR (1)
OTHER_AGE3 NUMBER (3)
OTHER_GENDER4 CHAR (1)
OTHER_AGE4 NUMBER (3)
INFO_USAGE CHAR (1)
RECEIVE_OFFERS CHAR (1)
COUNTRY VARCHAR2 (10)
RESIDENCE VARCHAR2 (10)
SPONSOR_CODE VARCHAR2 (10)
USR_AGE NUMBER (3)
JOIN_DATE DATE
The USR_STATUS field in the User Record stores a flag representing whether the user is currently an active or inactive user of the home WWW site; the USR_MAILINGS and INFO_USAGE fields correspond to the information requested in questions 9 and 10 of page 500 and store information representing whether the user has opted to receive offerings from the home WWW site and, if so, whether the user wishes to receive such offerings electronically by e-mail; and the SPR_ID field stores an identification number corresponding to the sponsor that the user selected in step 104 during the user's first visit to the home WWW site. The remaining fields in the User Record store information that is self-evident from the field names. In an alternate embodiment, only a subset of the demographic information represented by the User Record shown in Table 1 is collected from the user during the registration and used later in connection with the question selection process. The subset of demographic information includes, for example, only the user's name, address, phone number, birth date, and whether the user wishes to receive offers or prize information electronically from the home WWW site (i.e., the shipping information and questions 6, 9 and 10 shown on page 500.) As explained more fully below, the present invention stores a plurality of sponsor-specific questions for each entity (or sponsor) associated with a sponsor symbol that may be selected by a given user in step 104. During successive visits of the user to the home WWW site where the user selects the same sponsor symbol in step 104, individual questions from the plurality of sponsor-specific questions associated with the selected sponsor symbol are presented to the user. In one embodiment, during each successive visit of the user where the user selects the same sponsor symbol in step 104, the system first identifies an unanswered question from the plurality of candidate questions associated with the selected sponsor symbol. Next, the system compares demographic criteria associated with the unanswered question (stored in the logical_operator field of a Question_Criteria_Record discussed below) with the demographic information about the user stored in the User Record associated with the user. The unanswered question is then selected for subsequent presentation to the user only if the demographic criteria associated with the unanswered question matches the demographic information of the user. If the demographic criteria associated with the unanswered question does not match the demographic information of the user, a further unanswered question is identified from the plurality of candidate questions associated with the selected sponsor symbol, and the process is repeated until either (i) the demographic criteria associated with an unanswered question matches the demographic information of the user, or (ii) the system is unable to find an unanswered question that is associated with the selected sponsor symbol having demographic criteria that matches the demographic information of the user. In this embodiment, during each iteration of the question selection process described above, the unanswered questions are analyzed sequentially in the order set forth in a User_Ques Record (discussed below). For example, the first question represented in the User_Ques record is first analyzed against the user's demographics. If the user's demographics match the criteria associated with the first question, then the first question is selected for presentation to the user and, during the next visit of the user to the site where the user selects the same sponsor symbol, the second question represented in the User_Ques record is next analyzed against the user's demographics. Alternatively, if the user's demographics does not match the criteria associated with the first question, then the second question represented in the User_Ques record is analyzed against the user's demographics and the process is repeated sequentially (i.e., the third question is analyzed next, and so on) until the system finds a question with demographic criteria that match the user's demographics. During each subsequent visit of the user to site where the same sponsor symbol is selected, the system initially analyzes the question in the User_Ques record immediately following the question presented to the user during the last visit where the same sponsor symbol was selected, and the system repeats the process until a question with matching demographic criteria is found. In a further embodiment of the present invention, the order in which the questions from the User_Ques record are analyzed against the user's demographics is based on previous answers provided by the user to earlier questions represented in the User_Ques record. For example, in this embodiment, the third question in the User_Ques record will be analyzed against the user's demographics only if the user answered "YES" to the first or second questions in the User_Ques record; otherwise the third question will be skipped and the fourth question in the User_Ques record will next be analyzed against the user's demographics. Thus, in this embodiment, the ordering and selection of the questions presented to the user during the various visits is determined using both the user's demographic information and answers given by the user to previous sponsor-specific questions associated with the selected sponsor symbol. Decision logic (stored in the DRQ_LOGIC fields of the DRQUESTNS record discussed below) specific to each individual sponsor and keyed to previous user answers issued in this embodiment to select and determine the order of questions presented to the user during the various visits to the home WWW site. The sponsor-specific decision logic uses answers given by the user to previous sponsor-specific questions associated with the sponsor to decide which sponsor-specific question to next analyze against the user's demographic information until a question with demographic criteria that matches that of the user is found. For each sponsor (see spr_id field in Table 2 below) that may be selected by a given user in step 104, the associated plurality of sponsor-specific questions (see spdq1 to spdq30 fields below) that may be presented to any given user is preferably represented in a Sponsor_Question_Template record having the data format shown below in Table 2.
TABLE 2
SPONSOR_QUESTION_TEMPLATE
Field Name Field Type
SPR_ID NUMBER (12)
SPDQ1 VARCHAR2 (14)
SPDQ2 VARCHAR2 (14)
SPDQ3 VARCHAR2 (14)
SPDQ4 VARCHAR2 (14)
SPDQ5 VARCHAR2 (14)
SPDQ6 VARCHAR2 (14)
SPDQ7 VARCHAR2 (14)
SPDQ8 VARCHAR2 (14)
SPDQ9 VARCHAR2 (14)
SPDQ10 VARCHAR2 (14)
SPDQ11 VARCHAR2 (14)
SPDQ12 VARCHAR2 (14)
SPDQ13 VARCHAR2 (14)
SPDQ14 VARCHAR2 (14)
SPDQ15 VARCHAR2 (14)
SPDQ16 VARCHAR2 (14)
SPDQ17 VARCHAR2 (14)
SPDQ18 VARCHAR2 (14)
SPDQ19 VARCHAR2 (14)
SPDQ20 VARCHAR2 (14)
SPDQ21 VARCHAR2 (14)
SPDQ22 VARCHAR2 (14)
SPDQ23 VARCHAR2 (14)
SPDQ24 VARCHAR2 (14)
SPDQ25 VARCHAR2 (14)
SPDQ26 VARCHAR2 (14)
SPDQ27 VARCHAR2 (14)
SPDQ28 VARCHAR2 (14)
SPDQ29 VARCHAR2 (14)
SPDQ30 VARCHAR2 (14)
Referring again to FIGS. 1A and 1B, in response to the selection of the prize symbol by the user in step 106 (if the user was already a registered user) or the completion of the user registration process in step 110, the system determines in step 112 whether the sponsor corresponding to the sponsor symbol selected by the user in step 104 has provided sponsor-specific questions to be presented to user's that select the sponsor's symbol in step 104. This step is performed by examining the existing Sponsor_Question_Template records, and determining whether a Sponsor_Question_Template record exists with a spr_id field corresponding to the sponsor symbol selected in step 104. If so, the system proceeds to step 114, where the system determines whether a User_Ques record associated with the user and the selected sponsor exists. This step is performed by examining the existing User_Ques records (stored in a User_Ques table and discussed below), and determining whether a User_Ques record exists with a user_id field corresponding to the current user and a spr_id field corresponding to the sponsor symbol selected in step 104. If such a User_Ques record does not exist, then as discussed below, in step 116 the system creates such a record from the Sponsor_Question_Template record associated with the sponsor selected in step 104. In step 116, the system creates a User_Ques record associated with the current user and the sponsor selected in step 104 by inserting the identification number of the current user in the user_id field of a blank User_Ques record, and inserting the identification number associated with the sponsor selected in step 104 in the spr_id field of the blank User_Ques record. Each User_Ques record preferably has the data format shown below in Table 3. Thus, in addition to the user_id and spr_id fields, each User_Ques record includes a plurality of fields for storing answers (see usrqa1 to usrqa30 fields in Table 3) of the user to the sponsor-specific questions stored in the Sponsor_Question_Template associated with the sponsor selected by the user in step 104.
TABLE 3
USER_QUES RECORD
Field Name Field Type
USR_ID NUMBER (12)
SPR_ID NUMBER (12)
USRQA1 CHAR (1)
USRQA2 CHAR (1)
USRQA3 CHAR (1)
USRQA4 CHAR (1)
USRQA5 CHAR (1)
USRQA6 CHAR (1)
USRQA7 CHAR (1)
USRQA8 CHAR (1)
USRQA9 CHAR (1)
USRQA10 CHAR (1)
USRQA11 CHAR (1)
USRQA12 CHAR (1)
USRQA13 CHAR (1)
USRQA14 CHAR (1)
USRQA15 CHAR (1)
USRQA16 CHAR (1)
USRQA17 CHAR (1)
USRQA18 CHAR (1)
USRQA19 CHAR (1)
USRQA20 CHAR (1)
USRQA21 CHAR (1)
USRQA22 CHAR (1)
USRQA23 CHAR (1)
USRQA24 CHAR (1)
USRQA25 CHAR (1)
USRQA26 CHAR (1)
USRQA27 CHAR (1)
USRQA28 CHAR (1)
USRQA29 CHAR (1)
USRQA30 CHAR (1)
USR_EMAIL VARCHAR2 (50)
Referring again to FIGS. 1A and 1B, in step 118 the system determines whether there are any applicable sponsor-specific questions associated with the selected sponsor that have not yet been analyzed against the user's demographic information. This step is performed by examining the answer fields of the User_Ques record associated with the current user and the selected sponsor, and examining the Sponsor_Question_Template associated with the selected sponsor, and determining whether any of the applicable questions set forth in the Sponsor_Question_Template have yet to have been analyzed against the user's demographic information. If one or more of such questions have yet to have been analyzed against the user's demographic information, then in step 120, the system selects an unanswered question from the User_Ques record associated with the current user and the selected sponsor for analysis. As mentioned above, the order in which questions are selected for analysis against the user's demographics in step 120 can either be based simply on the ordering of the questions within the User_Ques record, or alternatively, on decision logic which uses previous answers to determine the order in which questions are selected for analysis against the user's demographic information. For each question that may be selected by the system in step 120, the system stores a DRQUESTNS record that includes, among other things, an identification number associated with the question (see drq_id field below), the sponsor associated with the question (see spr_id field below), the text of the question and the possible answers to the question (see drq_question title and drq_no_of_choices fields, respectively) and the decision logic described above (or objective rules) that specifies whether, based on previous answers of the user, the question should be presented to the user (see drq_logic field below.) In the embodiment described above where questions are selected for analysis against the user's demographics in step 120 can based simply on the ordering of the questions within the User_Ques record, the drq_logic field is not used. Each DRQUESTNS record preferably has the data format shown below in Table 4.
TABLE 4
DRQUESTNS RECORD
Field Name Field Type
DRQ_ID NUMBER (12)
SPR_ID NUMBER (12)
DRQ_HTML LONG
DRQ_LOGIC VARCHAR2 (50)
DRQ_QUESTION.sub.-- VARCHAR2 (500)
TITLE
DRQ_NO_OF.sub.-- NUMBER (5)
CHOICES
Referring again to FIGS. 1A and 1B, in step 120 the system retrieves the DRQUESTNS record associated with the next unanswered question to be applied against the user's demographic information. Next, in step 122, the system retrieves question criteria information associated with the selected unanswered question. For each question that may be selected by the system in step 120, the system stores a QUESTION_CRITERIA record that includes, among other things, an identification number associated with the question (see dr_question_id field in Table 5), the sponsor associated with the question (see spr_id field in Table 5) and objective criteria (see criteria_text and logical_operator fields in Table 5) for determining whether demographic criteria associated with question match the demographic information of the user. The information stored in the criteria_text and logical_operator fields contains, for example, demographic parameters that must be met in order for the question to be presented to the user, e.g., the user must be male and have no children in order for this question to be presented to the user, or the user must live in a certain geographic area and/or be in a certain age bracket in order for this question to be presented to the user. Each QUESTION_CRITERIA record preferably has the data format shown below in Table 5.
TABLE 5
QUESTION_CRITERIA RECORD
Field Name Field Type
CRITERIA_ID NUMBER (12)
SPONSOR_ID NUMBER (12)
DR_QUESTION_ID NUMBER (12)
CRITERIA_TEXT VARCHAR2 (2000)
LOGICAL.sub.-- VARCHAR2 (5)
OPERATOR
In step 124, the system determines whether to present the selected question to the user by applying the objective criteria in the QUESTION_CRITERIA record to the user's demographic information. If, based on the user's demographic information, the objective criteria (stored in the criteria_text and logical_operator fields in Table 5) indicates that the question should be presented to the user then, in step 126, the selected question is presented to the user; otherwise, the system proceeds back to step 118 where the process is repeated. FIG. 6 shows an exemplary page 600 that may be used to display a sponsor-specific question 610 to the user on the home WWW site. After the sponsor-specific question is presented to the user, the system waits for the user to answer the question and, in step 128, the system writes the user's answer to an answer table. Following the recording of the user's answer, the user is given an opportunity to register to win the prize selected in step 106 (by clicking on text 620) after which, the system redirects the user from the home WWW site to a further WWW site associated with the sponsor selected in step 104. In one embodiment of the present invention, the steps described above (i.e., steps 102-130) are performed during an initial visit of the user to the home WWW site. Thereafter, during a second (and subsequent) visit(s) of the user to the WWW site where the same sponsor symbol is selected in step 104, the answer(s) given by the user to the previously selected sponsor-specific question(s) are optionally used, in conjunction with the user's demographic information, to select a further sponsor-specific question to present to the user in steps 120-124. This process is repeated during subsequent visits of the user to the home WWW site in which the user selects the same sponsor symbol in step 104, until the User_Ques record associated with the user and the selected sponsor indicates that all the sponsor-specific questions associated with the selected sponsor and applicable to the user have been presented to the user. If the user visits the home WWW site and selects the same sponsor symbol enough times such that all of sponsor-specific questions applicable to the user have been presented to the user, then, in a preferred embodiment, in response to further visits where the user selects the same sponsor symbol, the system begins selecting and presenting site-specific questions (described below) to the user. Referring again to FIGS. 1A and 1B, if, in step 112, the system determined that the sponsor corresponding to the sponsor symbol selected by the user in step 104 did not provide sponsor-specific questions to be presented to user's that select the sponsor's symbol in step 104, then the system proceeds to step 132 where a site question is selected for analysis against the user's demographic information. In contrast to the sponsor-specific questions discussed above which are designed to solicit information that is tailored for a particular sponsor, each site question is designed to solicit more general marketing information from a user. For each site question that may be selected by the system in step 132, the system stores a SITE_QUESTION record that includes, among other things, an identification number associated with the question (see site_id field in Table 6), the text of the question and the possible answers to the question (see title and no_of_choices fields) and decision logic (or objective rules) that specifies whether, based on previous answers of the user, the question should be presented to the user (see logic field below). In one embodiment, where unanswered site-specific questions are selected randomly in step 132 for analysis against the user's demographic information, the logic field is not used. Each SITE_QUESTION record preferably has the data format shown below in Table 6.
TABLE 6
SITE_QUESTION RECORD
Field Name Field Type
SITE_ID NUMBER (12)
HTML LONG
LOGIC VARCHAR2 (50)
TITLE VARCHAR2 (500)
TYPE VARCHAR2 (50)
NO_OF_CHOICES NUMBER (5)
Referring again to FIGS. 1A and 1B, in step 132 the system retrieves the SITE_QUESTION record associated with the next unanswered site question to be applied against the user's demographic information. Next, in step 134, the system retrieves question criteria information associated with the selected unanswered site question. For each site question that may be selected by the system in step 132, the system stores a SQ_CRITERIA record that includes, among other things, an identification number associated with the question (see site_ques_id field in Table 7), and objective criteria (see text and logical_operator fields in Table 7) for determining whether demographic criteria associated with the question match the demographic information of the user. The information stored in the text and logical_operator fields contains, for example, demographic parameters that must be met in order for the question to be presented to the user, e.g., the user must be male and have no children in order for this question to be presented to the user, or the user must live in a certain geographic area and/or be in a certain age bracket in order for this question to be presented to the user. Each SQ_CRITERIA record preferably has the data format shown below in Table 7.
TABLE 7
SQ_CRITERIA RECORD
Field Name Field Type
SITE_ID NUMBER (12)
SITE_QUES_ID NUMBER (12)
TEXT VARCHAR2 (2000)
LOGICAL.sub.-- VARCHAR2 (5)
OPERATOR
In step 134, the system determines whether to present the selected site question to the user by applying the objective criteria in the SQ_CRITERIA record to the user's demographic information. If, based on the user's demographic information, the objective criteria (stored in the text and logical_operator fields in Table 7) indicate that the selected site question should be presented to the user then, in step 136, the selected question is presented to the user; otherwise, the system proceeds back to step 132 where the process is repeated. After the site question is presented to the user, the system waits for the user to answer the question and, in step 138, the system writes the user's answer to an answer table. Following the recording of the user's answer, the user is given an opportunity to register to win the prize selected in step 106 (by clicking on text 520) after which, the system redirects the user from the home WWW site to a further WWW site associated with the sponsor selected in step 104. Although, in the description set forth above, the present invention was described in conjunction with the selection of a single sponsor symbol in step 104, it will be understood that during subsequent visits of the user to the home WWW site the user may select a different sponsor symbol during each iteration of step 104. In such an instance, the process of the present invention will be implemented the same as described above, except the sponsor-specific questions selected for presentation to the user will be different (i.e., the sponsor-specific questions will be tailored to the different sponsor) and the logic and criteria used for determining which of these sponsor-specific questions to present to the user and in what order will similarly be different (i.e., again, this logic and criteria will be tailored to the different sponsor.) Thus, multiple sponsors can collect demographic and marketing information (e.g., the answers to the sponsor-specific question) tailored for each sponsor from users that visit the home WWW site. Referring now to FIG. 7, there is shown a block diagram of the hardware components of an on-line system 700 for collecting demographic information from a user of a home WWW site and for dynamically selecting questions to present to the user, in accordance with the present invention. System 700 includes a router 705 coupled to web servers 710 and 720. The router is coupled through the WWW to users that send and receive signals from web servers 710 and 720. Each user preferably communicates with the home WWW site through a user personal computer (not shown) that displays the page information provided by the home WWW site described above, and sends signals back to the home WWW site indicating the user's selections in steps 102, 104, 106, 128 and the other information input by the user, including, for example, the user's e-mail information and demographic information discussed above. Web server 720 is in turn coupled to application server 740. The system described above in connection with FIGS. 1A and 1B is preferably implemented in software on web servers 710, 720 and application server 730. The various record tables described above are stored in databases 730 and 750. In accordance with a further alternative embodiment, parameters in addition to a user's demographic information and previous answers are used to select the next sponsor-specific/site question to present to the user in steps 120-124 and 132-134. The additional parameters used for question selection include prizes for which a user registers, prizes a user wins, the prize categories that the user has selected during past visits to the home WWW site, and/or how long the user has stayed on various pages of the home WWW site during the current and earlier visits to the home WWW site. In accordance with a still further aspect of the invention (not shown in FIGS. 1A and 1B,) if a user attempts to leave the home WWW site prior to step 130 by, for example, manually changing the URL on the user's web browser, the present invention selects and displays a site question (i.e., steps 134-138) to the user prior to allowing the user to move to the next web site. The previous description of the preferred embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to the embodiments described above will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without the use of inventive faculty. Thus, the present invention is not intended to be limited to the methods and apparatuses shown herein but is to be accorded the widest scope consistent with the claims set forth below.
|
Same subclass Same class Consider this |
||||||||||
