US20210209668A1 - Method And System For Maintaining Integrity Of A User's Life State Information - Google Patents
Method And System For Maintaining Integrity Of A User's Life State Information Download PDFInfo
- Publication number
- US20210209668A1 US20210209668A1 US17/208,785 US202117208785A US2021209668A1 US 20210209668 A1 US20210209668 A1 US 20210209668A1 US 202117208785 A US202117208785 A US 202117208785A US 2021209668 A1 US2021209668 A1 US 2021209668A1
- Authority
- US
- United States
- Prior art keywords
- user
- information
- life
- life state
- partner
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title abstract description 58
- 230000015654 memory Effects 0.000 claims description 26
- 238000004891 communication Methods 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 19
- 230000002776 aggregation Effects 0.000 claims 1
- 238000004220 aggregation Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 35
- 238000010586 diagram Methods 0.000 description 22
- 230000006399 behavior Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 14
- 230000008859 change Effects 0.000 description 12
- 238000013461 design Methods 0.000 description 12
- 238000001914 filtration Methods 0.000 description 11
- 230000003287 optical effect Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 230000006855 networking Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- CDFKCKUONRRKJD-UHFFFAOYSA-N 1-(3-chlorophenoxy)-3-[2-[[3-(3-chlorophenoxy)-2-hydroxypropyl]amino]ethylamino]propan-2-ol;methanesulfonic acid Chemical compound CS(O)(=O)=O.CS(O)(=O)=O.C=1C=CC(Cl)=CC=1OCC(O)CNCCNCC(O)COC1=CC=CC(Cl)=C1 CDFKCKUONRRKJD-UHFFFAOYSA-N 0.000 description 1
- 241000239290 Araneae Species 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 206010012601 diabetes mellitus Diseases 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 201000009032 substance abuse Diseases 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0202—Market predictions or forecasting for commercial activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0254—Targeted advertisements based on statistics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0613—Third-party assisted
- G06Q30/0619—Neutral agent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Definitions
- Embodiments of the present invention generally relate to the field of data processing, and in some embodiments, specifically relate to an information delivery system.
- search engines such as Microsoft's BingTM search engine and Google®'s search engine compete against one another to deliver more accurate searches to the users.
- Search services may be available to the users as part of a web portal (e.g., Microsoft MSN®, Yahoo®) or simply as a search interface (e.g., Google®).
- the search engine may rely on web crawlers or spiders to crawl websites for keywords or information that it deems relevant.
- the information extracted by the web crawlers may be added into an index database so that it can be queried and quickly found. Accurate searches are important to the users and correspondingly the advertisers and/or content providers.
- the accuracy of the searches may be based on the keywords selected by the users and how effective the search engines are in building and querying the index database.
- the current methods also use inferential technologies to enhance the results but still lack accuracies.
- This search method may be acceptable to the users for impulse or immediate needs. However, this method is becoming archaic and flawed, and it is especially flawed for obtaining information on an ongoing basis.
- a method to enable a user to receive information that is filtered to align with the information about the user's life is disclosed.
- the information about the user's life may be referred to as the user's life state.
- the user's life state may encompass many aspects related to the user including at least demographic, ethnic, social and psychological aspects.
- the user may provide or load the user's life state.
- the user may grant approved third parties access to the user's life state including associated attributes and sub-attributes.
- the third parties are approved based at least on their ability to filter its information that is consistent with the user's life state, at volume and frequency levels specified by the user.
- the user may selectively block a third party from having access to portions or all of the user's life state.
- the user may be able to rate a third party based on whether the information provided by the third party is aligned with the user's life state.
- the third party may be able to rate the user based on whether the user's behavior is aligned with the user's life state.
- the filtered information is pulled from the third parties and presented to the user via the user's portal. In some embodiments, the filtered information may be presented to various devices, appliances, and systems.
- a marketplace may be implemented to enable the third parties to procure the life states from many users according to settings controlled by the users.
- FIG. 1 illustrates one example of a computing device that may be used, in accordance with some embodiments.
- FIG. 2 illustrates an example of a network that may be used to pull filtered information, in accordance with some embodiments.
- FIG. 3A illustrates an example structure of a life state, in accordance with some embodiments.
- FIG. 3B illustrates an example of a collection life states, in accordance with some embodiments.
- FIG. 3C illustrates an example of granting access to the life state, in accordance with some embodiments.
- FIG. 3D illustrates an example diagram of a group of partners, in accordance with some embodiments.
- FIG. 3E illustrates an example diagram of a portal, in accordance with some embodiments.
- FIG. 4 illustrates example applications that may be used to enable the users to receive the filtered information from the partners, in accordance with some embodiments.
- FIG. 5 illustrates an example of a network with an information delivery server, in accordance with some embodiments.
- FIG. 6 illustrates an example flow diagram of a process that may be performed by an information delivery system to set up the life states, in accordance with some embodiments.
- FIG. 7 illustrates an example flow diagram of a process that may be performed by an information delivery system to allow the users to view the filtered information, in accordance with some embodiments.
- FIG. 8 illustrates an example flow diagram of a process that may be performed on an information delivery server to enable automatically updating the user's life state, in accordance with some embodiments.
- FIG. 9 illustrates an example flow diagram of a process used to rate a partner, in accordance with some embodiments.
- FIG. 10 illustrates an example flow diagram of a process used to rate a user, in accordance with some embodiments.
- FIG. 11 illustrates an example flow diagram of a process that may be used to enable accessing the user's life state, in accordance with some embodiments.
- a method for information delivery comprises enabling a user to register and become a member of an information delivery ecosystem.
- the user provides or loads information about the user's life which is also known as a life state.
- the user's life state may span all areas of a user's life and include at least demographic information, ethnic information, social information, behavioral information, and psychological information.
- the user may grant third parties permission to access the user's life state.
- the third parties are also members of the information delivery system.
- the third parties are evaluated using a set of criteria before they become the members of the information delivery system.
- the third parties may use the user's life state to filter information for the user.
- the present invention also relates to an apparatus for performing the operations herein.
- This apparatus may be specifically constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
- a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled with a computing system bus.
- ROMs read-only memories
- RAMs random access memories
- EPROMs electrically erasable programmable read-only memories
- EEPROMs electrically erasable programmable read-only memory
- magnetic or optical cards such as magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled with a computing system bus.
- FIG. 1 illustrates a block diagram of an example computing system that may use an embodiment of one or more of the software applications discussed herein, in accordance with some example embodiments.
- the computing system environment 100 is only one example of a suitable computing environment, such as a client device, and is not intended to suggest any limitation as to the scope of use or functionality of the design. Neither should the computing environment 100 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment 100 .
- Embodiments of the invention may be implemented on any type of computer, device, apparatus, or even machine that make use of the computer environment 100 .
- the device may be a medical device that accesses the user's medical history or current conditions.
- the design is operational with numerous other general purpose or special purpose computing system environments or configurations.
- Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the design include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, automotive and informational appliances, and the like.
- the design may be described in the general context of computing device executable instructions, such as program modules, being executed by a computer.
- program modules include routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types.
- Those skilled in the art can implement the description and/or figures herein as computer-executable instructions, which can be embodied on any form of computing machine readable media discussed below.
- the design may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network.
- program modules may be located in both local and remote computer storage media including memory storage devices.
- an exemplary computing type system for implementing the design includes a general-purpose computing device in the form of a computing device 110 .
- Components of computing device 110 may include, but are not limited to, a processing unit 120 having one or more processing cores, a system memory 130 , and a system bus 121 that couples various system components including the system memory to the processing unit 120 .
- the system bus 121 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
- such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
- ISA Industry Standard Architecture
- MCA Micro Channel Architecture
- EISA Enhanced ISA
- VESA Video Electronics Standards Association
- PCI Peripheral Component Interconnect
- Computing device 110 typically includes a variety of computing machine readable media.
- Computing machine readable media can be any available media that can be accessed by computing device 110 and includes both volatile and nonvolatile media, removable and non-removable media.
- computing machine readable mediums includes storage of information, such as computer readable instructions, data structures, program modules or other data.
- Computer storage mediums include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computer 100 .
- Communication media typically embodies computer readable instructions, data structures, program modules, or other transport mechanism and includes any information delivery media.
- the system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132 .
- ROM read only memory
- RAM random access memory
- BIOS basic input/output system
- RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 120 .
- FIG. 1 illustrates operating system 134 , application programs 135 , other program modules 136 , and program data 137 .
- the computing device 110 may also include other removable/non-removable volatile/nonvolatile computer storage media.
- FIG. 1 illustrates a hard disk drive 141 that reads from or writes to non-removable, nonvolatile magnetic media, a magnetic disk drive 151 that reads from or writes to a removable, nonvolatile magnetic disk 152 , and an optical disk drive 155 that reads from or writes to a removable, nonvolatile optical disk 156 such as a CD ROM or other optical media.
- removable/non-removable, volatile/nonvolatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, USB drives and devices, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like.
- the hard disk drive 141 is typically connected to the system bus 121 through a non-removable memory interface such as interface 140
- magnetic disk drive 151 and optical disk drive 155 are typically connected to the system bus 121 by a removable memory interface, such as interface 150 .
- hard disk drive 141 is illustrated as storing operating system 144 , application programs 145 , other program modules 146 , and program data 147 . Note that these components can either be the same as or different from operating system 134 , application programs 135 , other program modules 136 , and program data 137 . Operating system 144 , application programs 145 , other program modules 146 , and program data 147 are given different numbers here to illustrate that, at a minimum, they are different copies.
- a user may enter commands and information into the computing device 110 through input devices such as a keyboard 162 , a microphone 163 , and a pointing device 161 , such as a mouse, trackball or touch pad.
- Other input devices may include a joystick, game pad, satellite dish, scanner, or the like.
- These and other input devices are often connected to the processing unit 120 through a user input interface 160 that is coupled to the system bus, but they may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB).
- a monitor or display 191 or other type of display device is also connected to the system bus 121 via an interface, such as a video interface 190 .
- computers may also include other peripheral output devices such as speakers 197 and printer 196 , which may be connected through an output peripheral interface 190 .
- the computing device 110 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 180 .
- the remote computer 180 may be a personal computer, a hand-held device, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computing device 110 .
- the logical connections depicted in FIG. 1 include a local area network (LAN) 171 and a wide area network (WAN) 173 , but may also include other networks.
- LAN local area network
- WAN wide area network
- Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, extranets, and the Internet. In some embodiments, such networking environments may also include satellite, radio frequency (RF), Bluetooth and other means of pushing and/or pulling information.
- RF radio frequency
- a browser application may be resident on the computing device and stored in the memory.
- the computing device 110 When used in a LAN networking environment, the computing device 110 is connected to the LAN 171 through a network interface or adapter 170 .
- the computing device 110 When used in a WAN networking environment, the computing device 110 typically includes a communication module 172 or other means for establishing communications over the WAN 173 , such as the Internet.
- the communication module 172 may be a modem used for wired, wireless communication or both.
- the communication module 172 may be internal or external, may be connected to the system bus 121 via the user-input interface 160 , or other appropriate mechanism.
- program modules depicted relative to the computing device 110 may be stored in the remote memory storage device.
- FIG. 1 illustrates remote application programs 185 as residing on a remote computer 180 . It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
- the present design can be carried out on a computing system such as that described with respect to FIG. 1 .
- the present design can be carried out on a server, a computer devoted to message handling, or on a distributed system in which different portions of the present design are carried out on different parts of the distributed computing system.
- the communication module 172 may employ a Wireless Application Protocol to establish a wireless communication channel.
- the communication module 172 may implement a wireless networking standard such as Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, IEEE std. 802.11-1999, published by IEEE in 1999.
- IEEE Institute of Electrical and Electronics Engineers
- Other wireless communication methods may include Bluetooth, Radio Frequency, etc.
- While other systems may use, in an independent manner, various components that may be used in the design, a comprehensive, integrated system that addresses the multiple advertising system points of vulnerability described herein does not exist.
- Examples of mobile computing devices may be a laptop computer, a cell phone, a personal digital assistant, or other similar device with an on board processing power and wireless communications ability that is powered by a Direct Current (DC) power source that supplies DC voltage to the mobile device and that is solely within the mobile computing device and needs to be recharged on a periodic basis, such as a fuel cell or a battery.
- DC Direct Current
- a computing environment 100 that entails memory and display functions without a processing function.
- a third party may provide customized information to a user, which is relayed to a device for display only with no data manipulation necessary.
- other types of system designs or configurations that are used in the delivery of information may also be used.
- FIG. 2 illustrates a network environment 200 in which the techniques described may be applied, in accordance with some example embodiments.
- the network environment 200 has a network 202 that connects server computing systems 204 - 1 through 204 - n , and at least one or more client computing systems 208 - 1 .
- server computing systems 204 - 1 through 204 - n there may be many server computing systems 204 - 1 through 204 - n and many client computing systems 208 - 1 through 208 - n connected to each other via a network 202 , which may be, for example, the Internet.
- the network 202 might be or include one or more of: an optical network, the Internet, a Local Area Network (LAN), Wide Area Network (WAN), satellite link, fiber network, cable network, or a combination of these and/or others.
- LAN Local Area Network
- WAN Wide Area Network
- client computing system and server computing system is for clarity in specifying who initiates communication (the client computing system) and who responds (the server computing system). No hierarchy is implied unless explicitly stated. Both functions may be in a single communicating device, in which case the client-server and server-client relationship may be viewed as peer-to-peer.
- peers-to-peer may be viewed as peer-to-peer.
- communications between the client computing systems 204 - 1 , 204 - 2 and the server computing systems 208 - 1 , 208 - 2 may be viewed as peer-to-peer if each such communicating device is capable of initiation and response to communication.
- One or more of the server computing systems 204 - 1 to 204 - n may be associated with a database such as, for example, the databases 206 - 1 to 206 - n .
- a firewall such as, for example, the firewall 220 between a client computing system 208 - 3 and the network 202 , may be used to protect data integrity.
- Another firewall example is the firewall 221 positioned between the server 204 - 2 and the network 202 .
- other devices e.g., proxy servers, etc.
- FIG. 2 also illustrates a block diagram of an embodiment of a server computing system to display information, such as a web page, etc.
- a user via a browser from the client computing system 208 - 1 may interact with the web page, and then supply input to the query/fields and/or service presented by a user interface of the application.
- the web page may be served by a web server computing system 204 - 1 on any Hypertext Markup Language (HTML) or Wireless Access Protocol (WAP) enabled client computing system 208 - 1 or any equivalent thereof.
- HTML Hypertext Markup Language
- WAP Wireless Access Protocol
- the client mobile computing system 208 - 1 may be a smart phone, a touch pad, a laptop, a netbook, etc.
- the client computing system 208 - 1 may host a browser to interact with the server computing system 204 - 1 .
- Each application, widget, plug-in, etc. has a code scripted to perform the functions that the software component is coded to carry out such as presenting fields and icons to take details of desired information.
- the applications may be hosted on the server computing system 204 - 1 and served to the browser of the client computing system 208 - 1 .
- the applications then serve pages that allow entry of details and further pages that allow entry of more details.
- a computing machine readable medium includes any mechanism that provides (e.g., stores) information in a form readable by a machine (e.g., a computer).
- a computing machine readable medium includes read only memory (ROM) random access memory (RAM) magnetic disk storage media; optical storage media; flash memory devices DVD's, EPROMs, EEPROMs, FLASH, magnetic or optical cards, or any type of media suitable for storing electronic instructions.
- ROM read only memory
- RAM random access memory
- an algorithm may be written in a number of different software programming languages such as C, C++, SQL, Java, or other variants of such or similar languages. Also, an algorithm may be implemented with lines of code in software, configured logic gates in software, or a combination of both. In an embodiment, the logic consists of electronic circuits that follow the rules of Boolean Logic, software that contain patterns of instructions, or any combination of both.
- FIG. 2 the configuration of the diagram illustrated in FIG. 2 is for illustrative purposes only, and the actual configurations may vary. There might be different configurations of servers, firewalls, clients, and devices. For example, the devices may be anything from iPads, to Autos, to TV devices, and so on.
- Embodiments of the invention fully exploit the information about a user's life to enable delivering filtered and customized information to the users.
- the information about the user's life is also referred to as a life state.
- the life state may consist of many categories.
- a user may grant third parties access to the user's life state by setting security features and gatekeeping features.
- embodiments of the present invention may include an information delivery system that delivers filtered information to the users.
- the information delivery system enables third parties to have access to the users' life states, as allowed in transactions between the users and the third parties.
- Each user is associated with a unique life state.
- the life state is used as filters or as a basis for customized services (e.g., web sites, emails, etc.).
- Embodiments of the invention also include an architecture that includes a centralized server computer system connected to the Internet and configured to deliver information to the users.
- the centralized server computer system is referred to herein as an information delivery server.
- the information delivery server may be configured to provide the users life state interface to enable the users to provide the values for the attributes and sub-attributes associated with their life states.
- the information delivery server is coupled with a database configured to store the values for the attributes and the sub-attributes.
- the information delivery server is configured to provide the users a portal interface to configure their own portals. The users may use their portals to view the filtered information.
- the information delivery server may also be configured to enable the users and the third parties to rate one another. Replication may be involved to make access, delivery and update operations by the information delivery server more efficient.
- the information delivery server may be associated with a marketplace portal to enable the users and the third parties to enter into transactions.
- the transactions may include the users getting compensated for allowing the third parties to access the users' life state, the third parties bidding against one another to earn the right to access the users' life states, etc.
- the information delivery server may be configured to enable the user's life state to be used when the user visits a website of a third party. This enables the third party to provide web pages that are customized according to the user's life state.
- FIG. 3A illustrates an example structure of a life state, in accordance with some embodiments.
- a life state may be associated with many categories. Each category may consist of many attributes. Each attribute may consist of many sub-attributes. Together, the categories, the attributes, and the sub-attributes may conceptually describe who the user is from many different views.
- the categories, attributes and sub-attributes may be related to one another in a top-down relationship and/or laterally—enhancing the interpretations of each attribute value.
- the categories, the attributes, and the sub-attributes may be defined by an administrator or a management team of the information delivery system. In some embodiments, they may also be defined by industry authorities.
- Each of the attributes and sub-attributes is associated with a value. Embodiments of the present invention enable the users to maintain and control the values of each of the attributes and sub-attributes.
- the values may be in any format including, for example, data, text, qualitative, Boolean yes/no, numeric, etc.
- the life state 305 may consist of multiple categories 310 . It is envisaged that each of the many aspects of a user's life can be mapped to a category of the life state 305 .
- Each of the categories 310 may consist of many attributes 315 and sub-attributes 320 .
- each of the sub-attributes 320 may consist of many deeper levels of sub-attributes. For example, under the sub-attribute 1 , there may be sub-attribute 1 . 1 , sub-attribute 1 . 2 , etc.
- the categories, attributes, and/or sub-attributes may be dynamic and may be managed by an administrator. For example, new categories, attributes, and/or sub-attributes may be added or removed; an attribute under one category may be moved to another category, etc.
- the ability to update the categories, the attributes and the sub-attributes illustrate the dynamic nature of the life state.
- attributes There may be a category “psychological.” Under this category, there may be attributes “personality type”, “planner/spontaneous”, and “conservative/risk taking.” Under the attribute “personality type”, there may be the sub-attribute “Myers Briggs Classification” and the sub-attribute “Functions of Consciousness”, and the sub-attribute “Extraversion/Introversion.” Under the category “personal core information”, there may be several attributes such as “age”, “sex”, “marital status”, “family”, “physical”, “health”, “ethnicity”, etc.
- a value for the sub-attribute “ailments” may be “diabetes.”
- a value for the attribute “marital status” may be “single.”
- the values for the attributes and/or sub-attributes may be updated. For example, the value for the attribute “marital status” may be changed from “single” to “married.” For some embodiments, the values for the attributes and sub-attributes may be automatically provided.
- Other possible categories, attributes, and/or sub-attributes may include but not limited to: ‘life style”, “political”, “social”, “technology skills”, “entertainment”, “career”, “goals”, “education.” The number combinations of categories, attributes, and sub-attributes (and deeper levels of sub-attributes) may be extensive, and may represent a snap shot of the life of a user.
- the information delivery server may be configured to provide interview tools, wizards, or applications that gather and map the information about the user to the relevant attributes and sub-attributes.
- FIG. 3B illustrates an example of a collection of life states, in accordance with some embodiments.
- the collection of life states 325 may represent the life states of many users.
- the collection of life states 325 includes the life states 350 , 355 and 360 .
- the funnel shape associated with each of the life states 350 , 355 and 360 illustrates the concept of using a life state to funnel or filter the information available from the third parties. Typically, most of the information from the third parties is not relevant or applicable to the user.
- the life state helps funneling the information available from the third parties so that only filtered information is pushed by the third parties. In other words, the life state enables the third parties to push the right type of information to the user.
- the life state may also be used in other applications.
- the life state In the case of the user surfing the web and visiting a web site, the life state enables the web site to display customized web pages that may include information matching to what the user is interested in.
- the filtered information allowed for procurement of the life states by the third parties in bulk—according to the users' privacy, security, and gatekeeping attributes.
- the life state enhance the search results generated by the search engine.
- FIG. 3C illustrates an example of granting access to the life state, in accordance with some embodiments.
- This example illustrates a life state structure similar to the example described with FIG. 3A .
- a user has complete control how the access to the user's life state is granted.
- the granting of the access can be at the category level, the attribute level, the sub-attribute level, or combinations thereof.
- a combination of one or more categories, one or more attributes, and/or one or more sub-attributes is referred to as an access group.
- Each access group may be viewed as a subset of the life state.
- a third party can be granted permission to access one or more access groups.
- the granting of the access isn't just about seeing the information associated with the user's life state, it's also about how the third party uses the information according to the security and gate keeping attributes.
- the content of an access group may vary and may be changed by the user.
- the granting of the access is performed using the security and gatekeeping features.
- the third party 330 is granted access to the access group 340 which consists of values associated with some attributes under the category 1 .
- the third party 332 is granted permission to the access group 342 which consists of values associated with some sub-attributes under the attribute 1 .
- the third party 334 is granted permission to the access group 346 which consists of values associated with some sub-attributes under the attribute 1 .
- the third party 336 is granted permission to the access group 348 which consists of values associated with some attributes under the category 1 .
- the third party 336 is also granted permission to the access group 346 .
- the third party 338 is granted permission to the access group 348 which consists of values associated with some attributes under the category 1 .
- the third party 338 is also granted permission to the access group 349 which consists of values associated with the attributes and sub-attributes under the category 3 and category 4 .
- These access group and granting permission examples illustrate some of the flexibilities and control that a user may have with the user's life state.
- the directions of the arrows from the access groups to the third parties illustrate the granting of the permission by the user to the third parties.
- FIG. 3D illustrates an example diagram of a group of partners, in accordance with some embodiments.
- the diagram includes life states similar to the life states described with FIG. 3B .
- a third party may have to be approved before it can be granted permission to one or more access groups.
- a set of criteria may be used to evaluate and approve a third party. The set of criteria may be determined by a management team or an administrator associated with the information delivery system.
- the criteria may include one or more of the following: the ability of the third party to provide information to the users according to their life states, the type of service, merchandise and/or information that the third party is offering and whether they map to the categories, attributes and sub-attributes defined by the life state structure, the ability of the third party to map its services and information to the life state structure, the reputation of the third party, the likelihood that the third party will continue to perform as a partner and a leader in the category/attribute/sub-attribute that it is assigned to, etc.
- Other criteria may also be used.
- a license may be granted to the third party.
- the license may give the third party permission to copy the users' life states for a defined period. There may be an expiration date, and the license may need to be renewed.
- the third parties use the copies of the life states to filter its information, or the third parties may customize its web site for the users when the users visit the websites of the third parties. The customization of the web site and its web pages may be according to the life states as granted to the third parties by the users.
- a license may be active, suspended, or revoked. Other license status may also be used.
- Security credentials including user identification (ID) and password may be assigned to an approved third party.
- a third party who has been approved is referred to herein as a partner.
- a partner may be an individual, an organization, a governmental agency, etc.
- the partners may also be defined based on the type of services they offer. For example, the type “Search Engines” may be used for Microsoft and Google when they become partners, and the partner type “Government” may be used when the Medicare office may want to access the users' life states for benefits administration.
- the block 324 represents all of the partners. They include the partners 360 , 361 and 362 . These partners have been granted permission to the life state 350 . As described with FIG. 3C , the level of permission of each of the partners 360 , 361 and 362 may be different. The directions of the arrows from the partners 360 , 361 and 362 to the life state 350 illustrate the filtering of the information from the partners.
- the partners may push information to the users, and they may also offer auto-load program that automatically populates user attributes in the life state. For example, Amazon.com may push information to a user (such as new technology product releases), and Amazon.com may also offer an auto-load program that populates attributes relating to technology adoption, asset inventory, etc.
- FIG. 3E illustrates an example diagram of a portal, in accordance with some embodiments.
- the information delivery server may be configured to receive the filtered information from the partners 324 on behalf of the users and present that information to the user via their portals 370 .
- Each user is associated with a portal.
- the portal 351 is associated with the life state 350
- the portal 356 is associated with the life state 355
- the portal 361 is associated with the life state 360 .
- the users may need to log in to the information delivery server using their user IDs and passwords.
- the filtered information may also be stored as floating variable, cache, memory, etc. on any device or system that accesses the filtered information.
- FIG. 3E also illustrates the overall concepts of embodiments of the present invention where the collection of life states 325 is used to filter the information from the partners 324 to create the filtered information (or a subset of the information of the partner), where the filtered information is presented to the users via the portals 370 .
- the pulling of the filtered information from the partners is automatic.
- FIG. 4 illustrates example applications that may be used to enable the users to receive the filtered information from the partners, in accordance with some embodiments.
- the information delivery server 400 may include user administration application 401 , life state application 405 , partner interface application 410 , information filtering application 415 , portal application 420 , change alert application 425 , rating application 430 and marketplace application 435 . It may be noted that even though these applications are described herein as separate applications, the functionalities of two or more of them may be combined into one application. These applications may be used to pull filtered information from various resources.
- the resources may include Internet websites associated with the partners. Non-Internet resources may also be used.
- a user's life state may be replicated on devices, appliances, or any means that allows the user to control how to grant permission to the user's life state, the third parties to access the user's life state, and the pushing of the filtered information by the third parties on behalf of the user.
- a filtered information pushing mechanism not every device or appliance used in embodiments of the invention is a filtered information pushing mechanism. That is, some devices may be registered in the core system to receive the pushed information, and then the devices may only function in the ecosystem as a conduit for the pushing of the filtered information to the users.
- the user administration application 401 may be configured to manage the users and the partners including setting up their user accounts, user IDs, passwords, etc. These user accounts allow the users and the partners to participate in the information delivery system associated with the information delivery server 400 .
- the user accounts may be stored in the database associated with the information delivery server 400 .
- the user accounts of the users may be encrypted and stored locally in the client computing systems.
- the client computing systems may be appliances, devices, etc. This enables a partner to recognize the user as a member of the information delivery system when the user visits a website associated with the partner. This may enable the partner to keep track of the user's behavior while visiting that website to determine if the user's behavior is aligned with the user's life state.
- the user administration application 401 may also keep track of user type (e.g., user, administrator, etc.), partner type (e.g., individual, organization, etc.), partner category (e.g., content provider, advertiser, etc.), partner status (e.g., active, revoked, suspended, pending, etc.), and the type of license granted to the partner, etc. It may be noted that the user may be an individual, an organization, a business, etc.
- the life state application 405 may be configured to perform operations associated with forming and maintaining of the life states of many users.
- the life state application 405 may be configured to enable an administrator to define a life state structure including the categories, attributes, and sub-attributes.
- the life state application 405 may be configured to present a life state interface to allow the users to provide and update the values for the attributes and sub-attributes for their life states.
- the life state application 405 may also be configured to perform consistency verification to determine if the user provides inconsistent values for the attributes and/or sub-attributes and to notify the user if inconsistencies are found. Other consistency verification may include user behavior versus the attributes, and one category/attribute versus another category/attribute.
- the life states of all of the users may be securely stored in the database associated with the information delivery server 400 and in a relational structure with tables and fields arranged in ways that are logical and meaningful to the user.
- the updated values may be stored in the same database. It is possible that the updates may also be propagated to other replicated systems, devices, appliances that locally store the values, as well as third parties that customize their web sites according to these values. This propagation would be similar to a change trigger.
- a copy of the user's life state may be downloaded and stored in the memory of the client computing system associated with the user.
- the copy in the client computing system is referred to as a local copy of the life state. It is possible that, in some embodiments, only a portion of the information or only related information may be stored in the client computing system. This is because getting the exact copy may be too big.
- the local copy may be periodically updated or synchronized with the values stored in the database.
- the local copy of the life state may enable the user to use it with other services, with the third parties who are not yet partners, etc.
- the local copy of the life state may be used when the user performs a web search so that the results may be more relevant.
- Google becomes a partner it would benefit from accessing the user's attribute values to deliver relevant search results.
- the storing of the local copy of the life state in the client computing system is different from the third parties having access to the life state and filtering its information according to the life state.
- a third party may access a copy of the life state from the information delivery server (instead of from the client computing system) and customized its website according to the user's life state.
- a search engine may access a copy of the life state from the information delivery server and customized its search results accordingly.
- Embodiments of the invention may enable the life state to be used in a more global information delivery with every conduit that the user may use for information as opposed to strictly web searches. For example, when the user visits a website, the user may have the option of selecting to apply the user's life state with that website. The option may be a toggle that can be turned on or off, and the information associated with that website may toggle along with this option. If the website maintains user accounts, the user may connect the user id with the information delivery system with the website. This will allow greater flexibility and efficiency when the website accesses the user's life state.
- the partner interface application 410 may be configured to enable the information delivery server 400 to communicate with one or more servers of the partners. For example, this may enable the partners to access the users' life states as defined by the users' gate keeping and security features. This may include interfacing with the partners to enable customized websites, filtered search results, etc.
- the information filtering application 415 may be configured to share the life states of a user with the partners, limited to the level of permission granted by the user.
- the information filtering application 415 may also be configured to apply the security and the gate keeping features set by the user.
- the partners may use the user's life state to filter their information.
- the information filtering application 415 may receive the filtered information from the partners and present the filtered information to the user via the user's portal.
- the partners may procure the life states via a marketplace.
- the portal application 420 may be configured to allow the users to define how the information provided to the users may be presented and viewed.
- the portal application 420 may be configured to provide a layout interface to allow the user to design the look and feel of the user's portal.
- the layout interface may include parameters to control the fields, links and dimensions of the layout.
- the user may define multiple layouts that change according to event rules defined by the user. For example, the user may define parameters that cause the layout to emphasize on financial and economic information when there is a significant swing in the financial market.
- the layout interface may allow the user to define different information regions. Each of the information regions may focus on the information that corresponds to one aspect of the user's life.
- each of the users may be associated with a portal.
- the user accesses the portal by logging into the information delivery system using the assigned user ID and password.
- the portals, their configurations, layouts, and information regions may be stored in the database associated with the information delivery server 400 .
- the portal application 420 may include logic to communicate and present the information to the users via portable devices, appliances, and any other devices that are capable of receiving the filtered information and enabling the user to view the filtered information.
- the change alert application 425 may be configured to notify the partners and the users whenever there is a change that may affect the process of proving the filtered information to the users.
- the changes may originate from the partners and/or users. For example, the change may be necessary to address complaints or suggestions from many users and/or partners.
- the changes may originate internally by a management team associated with the information delivery system to enhance the information filtering services for the partners and/or the users. For example, it may be necessary to add a new category, to migrate an attribute from one category to another category, to delete an attribute, to change the meaning of an attribute, etc.
- the changes may originate externally by others.
- the change alert application 425 may also be configured to notify a partner when the user modifies the user's life state. Similarly, the change alert application 425 may notify a user when the partner's ability to provide its information is modified.
- the rating application 430 is configured to improve the quality of the filtered information. This includes providing a mechanism to allow the users to rate the partners as well as a mechanism to allow the partners to rate the users.
- the rating of the partners is based on whether the filtered information pulled from the partners is aligned with the life states of the users.
- the rating may be based on a collection of feedbacks from many users. This helps the partners to fine tune their filtering mechanism if they receive low ratings. This also helps identifying the partners who consistently fail to comply with the filtering requirements. For example, a partner who provides unsolicited advertising information should get a low rating because it abuses the information delivery system. A consequence for a partner who gets a low rating is a suspension or revocation of its license. Following are some conceptual examples of the ratings for a partner:
- the user may be necessary for the user to keep the user's life state updated or utilize automatic loader programs that accomplish the same. This is because the user is rated based on whether the user's life state is aligned with the user's behavior whenever applicable. If a partner determines that the user's life state is not accurate, the partner may notify the user of the alignment issue, through a system of ratings. If the user's behavior remains non-aligned with the user's life state for an extended period of time, the information provided to the user may be limited. Following are some conceptual examples of the ratings for a user:
- the marketplace application 435 may be configured to implement an exchange or a market where the users and the partners participate in sell and buy transactions.
- the marketplace may be implemented as a secure web portal that enables the partners to procure the users' life state according to the security and gatekeeping features.
- the marketplace application 435 may be implemented as an auction portal with bidding and purchasing options. Other purchasing options (e.g., fixed price, etc.) may also be used.
- the auction portal may allow searchable bids and reverse bids by the partners and the users. Bid information may be stored in the secured database associated with the information delivery server.
- a partner may access the life states of the user according to the user's security and gatekeeping features.
- a user may use the security feature 370 and the gatekeeping feature 371 to control how the information is filtered so that the user will receive most relevant and most desirable information.
- the security feature 370 illustrates an option that a user may use to control the visibility of the user's life state to the partners.
- the user may use the security feature 370 to control the visibility at the global level, partner level, category level, attribute level or sub-attribute level.
- the security features set at the global level apply to all categories, attributes, and sub-attributes.
- the security features set at the category level apply to all corresponding attributes and sub-attributes.
- the security features set at the attribute level apply to all corresponding sub-attributes and so on.
- the settings of the security features at the lower level takes precedence over the settings of the security features at the corresponding higher level. For example, if a user sets a value at the global level, and then sets another value at the category level, the value at the category level will determine the setting of the security features.
- the user may also have the ability to restrict the duration that the partners can access the user's life state.
- the gatekeeping feature 371 illustrates an option that a user may use to control how much information the user is willing to receive from which partners.
- the user may use the gatekeeping feature 371 to control how an attribute can be used to filter information from a partner and the volume of the information.
- the gatekeeping features set at the global level apply to all categories, attributes, and sub-attributes.
- the gatekeeping features set at the category level apply to all corresponding attributes and sub-attributes.
- the gatekeeping features set at the attribute level apply to all corresponding sub-attributes and so on.
- the gatekeeping features set at the lower level takes precedence over the gatekeeping features set at the corresponding higher level. For example, if a user sets a gatekeeping value at the global level, and then set another conflicting gatekeeping value at the category level, the gatekeeping value at the category level will prevail.
- gatekeeping controls such as frequency and precedence controls that will affect how the system queues up information from partners—which will be a key control in promoting partners to only push the information that really counts, while the user receives only the information that really counts.
- the settings of the gatekeeping features are subordinate to the settings of the security features.
- the settings of the security features for any given category or attribute override the settings of the gatekeeping features for the same category or attribute. For example, if the user sets a security feature for a category as “Not available”, but the user sets a gatekeeping feature for that category as “No Gatekeeping”, then the information delivery server will ignore the setting of the gatekeeping feature. This means that the values of the attributes and sub-attributes associated with that category are not available to any of the partners.
- the “Not available” security setting may be interpreted as a blocking setting which blocks any information related to a category, attribute, or sub-attribute.
- the user will not receive any information related to the “Not available” category even though the gatekeeping feature for that category is set as “No Gatekeeping.”
- the combination of the security features and gatekeeping features allow the users to highly customize how the user grants permission to the user's life state in terms of depth and granularity of information available, types of use, types of partners that can access, etc.
- gatekeeping features are different from security in that they determine how information is delivered and displayed to the user. This includes controlling the frequency, extent, type, and volume of filtered information that is pushed by the partner. This is where the marketplace implementation becomes important. When a user wants to allow information for a specific attribute to be sold in the marketplace, but no information is delivered for that attribute, then the security settings would allow visibility in the marketplace, and the gatekeeping settings would not allow information delivery to the portal (or when surfing to external sites).
- the life state application 405 described in FIG. 4 may be configured to auto-populate the attributes and sub-attributes with values.
- the values may be derived from the partners. It is possible that the partners may accumulate extensive information about a user's behavior, which in turn gives them the ability to populate the users attribute values according to this behavior.
- a set of attributes for a user's asset inventory may include various products, etc. Amazon.com could easily populate the asset inventory according to the user's purchase history. There may be an option to allow the user to select the auto-populating feature.
- Auto-load programs may be created by any approved and active partner.
- the delineation of which categories/attributes/sub-attributes is updated and how they are updated may be a function of how the Auto-Load program is constructed and how the user runs the program.
- the quality of these programs and which partner auto-load programs should be used will be functions of the user experience, ratings, and the overall quality and flexibility of the auto-load program.
- the life state application 405 described in FIG. 4 may be configured to automatically update the life state of a user.
- the updates may be based on transactions that the user engages in and may be performed periodically. It is possible that user's behavior may not be consistent with the user's life state. For example, the user indicates in the life state category and attribute values that would lead to avoidance of water sports related transaction behavior. However, when the user visits the websites of the partners, the user frequently purchases items that are for water sports. In this scenario, the life state application 405 may modify the user's life state to align with the user's behavior.
- the user can also review, assess, and override any values that are set from an auto update, if the manual setting of the values better reflects the user's life state. This ensures that the user's life state is up to date.
- the functionality of auto-updating and auto-loading can initially set to baselines, but it can also update attribute values at the users' discretion. There might be options or parameters on the auto-update program such as “Do not update values that have been manually updated.” This would mean only null values or those previously set by the auto-update program would be updated.
- the automatic update feature also allows the user to assess the situations where their perceived preferences do not correspond to their actual preferences. This may help improve the user rating.
- the partners also benefit from this feature as well since the updated values will translate into better and more accurate information provided to the users. As a result, the partner may receive a higher rating.
- FIG. 5 illustrates an example of a network with an information delivery server, in accordance with some embodiments.
- the network may include an information delivery server 505 coupled with database 510 and connected to network 202 .
- client computing systems 500 and 501 Also connected to the network 202 are client computing systems 500 and 501 , partner servers 515 and 525 and their respective databases 520 and 530 .
- the client computing systems 500 , 501 may be configured with browser software to access the services of the information delivery server 505 using the Internet.
- the client computing systems 500 , 501 may be connected to the network 202 via wired or wireless communication (e.g., RF, Bluetooth, etc.).
- a user may use the client computing system 500 to register with the information delivery server 505 , input values to configure the user's life state, and set up security features and gatekeeping features.
- the user may use the client computing system 500 to log in to the information delivery server 505 and access the user's portal to view the filtered information.
- the user's life state, security features, gatekeeping features, and filtered information may be stored in the database 510 .
- the network infrastructure described in FIG. 5 may also be used to enable accessing partner websites, performing web searches using partner search engines, and enabling the partners to participate in the marketplace to procure the life states.
- Embodiments of the invention may also include mobile-enabled implementations to enable the users to use the mobile devices to communicate with the information delivery server.
- the mobile device 500 may be used by a user to connect to the information delivery server 505 via the network 202 . Having the mobile capability may enable the users to provide updates on an impulse basis, especially at a time when the user is experiencing something that may need to be reflected in the user's life state.
- the information delivery server 505 may enable the user to download a mobile application for this purpose.
- the mobile application may include user interface that makes it easier to provide information about the user's experience. For example, the user may be watching a movie, and the user may use the mobile device to indicate the name of the movie and how much the user enjoys watching that movie. That action will be analyzed by the information delivery server and the user's entertainment attribute may be updated.
- mirrored servers 506 configured to perform tasks similar to the information delivery servers 505 to accommodate the demand and usage by many users. These mirrored servers may be located at different geographical areas. For example, at a first site, there may be one or more mirrored servers 506 . Each of the mirrored servers 506 may be associated with a mirrored database 511 which may be configured to store information similar to the database 510 . Further, there may be multiple mirrored sites, each having similar hardware and software configuration and set up as the first site.
- the multiple sites may collaborate with one another in a distributed manner to help speed up the process enabling the users to set up and maintain their life states, interacting with the partner servers, receiving the filtered information from the partners, enabling the users to configure their portals, presenting the filtered information to the users' portals, etc.
- Using mirrored servers and distributed processing may help the users to view most relevant and accurate filtered information in their portals in near real time.
- FIGS. 6-11 describe various processes that may be performed by the information delivery system. Each process includes multiple blocks, with each block representing one or more operations. The sequences of the blocks may vary depending on the implementations. Some operations may be combined while some operations may be separated into multiple operations.
- FIG. 6 illustrates an example flow diagram of a process that may be performed by an information delivery system to set up the life states, in accordance with some embodiments.
- the process is associated with operations that may be performed by the information delivery server 505 described with FIG. 5 .
- the structure of a life state is defined. This may include defining the categories, the attributes, the sub-attributes, and any deeper level of sub-attributes. For example, each of the attributes and sub-attributes may be represented by fields in a database table with each of the fields having a value.
- a life state is associated with that user, as shown in block 610 .
- the attributes and the sub-attributes associated with the user's life state may be automatically given some values. These values may be derived from the offerings of the partners, as shown in block 615 .
- the user is allowed to update the values of these attributes and/or sub-attributes. This may be due to changes to the user's life. This may be due to the initial values not being aligned with the user's life.
- options may be made available to enable the users to set security features and gatekeeping features. As described, these features allow the users to configure the visibility of the user's life state and how or from whom the information is to be pulled on behalf of the user.
- FIG. 7 illustrates an example flow diagram of a process that may be performed by an information delivery system to allow the users to view the filtered information, in accordance with some embodiments.
- the process is associated with operations that may be performed by the information delivery server 505 described with FIG. 5 .
- a user registers with the information delivery system and create a user account
- that user account is associated with a user's portal, as shown in block 705 .
- the user may be provided options to configure the user's portal. This may include configuring the layout for the user's portal.
- one or more partners may access the user's life state. The access of the user's life state is based on permissions granted by the users.
- the partners may use the user's life state to generate filtered information that is aligned with the user's life state.
- the filtered information is pushed by the partners.
- the filtered information is presented to the user via the user's portal.
- FIG. 8 illustrates an example flow diagram of a process that may be performed on an information delivery server to enable automatically updating the user's life state, in accordance with some embodiments.
- the process is associated with operations that may be performed by the information delivery server 505 described with FIG. 5 .
- the process may include tracking the user's behavior when the user visits a website of a partner. As described above, when the user visits the website of a partner, the partner may recognize that the user is a member of the same information delivery system that the partner is associated with. The partner may customize the content of its website or filter the search results using this information.
- the account of the user and the account of the partner with the information delivery system may be related or connected.
- the recognition may be based on the information stored locally on the client computing system of the user. Alternatively, the user id may be locally stored or stored in temporary internet/buffer files by associating with another user login, and then the attribute values from the user's life state may be obtained, refreshed, or updated.
- the tracking operation may include interacting with the partner's server and receiving the tracking information from the partner's server, as shown in block 805 .
- a test is performed to determine if the user's behavior is aligned with the user's life state. If the user's behavior is aligned, the process flow from block 810 back to block 805 and the determination may continue. However, from the block 810 , if the user's behavior is not aligned, the process flow to block 815 , where the user's life state may be automatically updated to reflect the user's behavior. From the block 815 , the process may flow back to block 805 and the determination may continue. For some embodiments, this process may be performed periodically. An automatic update option may be selected by the user. In this process, the users will also be provided with the attribute values that are not aligned, which may help the user and partner migrate towards better alignment.
- FIG. 9 illustrates an example flow diagram of a process used to rate a partner, in accordance with some embodiments.
- the users are enabled to provide rating information for a partner. The rating is based on how the filtered information from the partners is aligned with the users' life states. If the alignment is not as expected, the rating may be low. A rating scale may be set by the management team associated with the information delivery system.
- a test is performed to determine if the rating is acceptable. If the rating is acceptable, the process may flow back to block 905 to collect more ratings. It may be noted that the rating of the partner may be evaluated after collecting a large collection of rating from many users.
- the process may flow to block 915 where the information from the partner may be limited.
- the information pushed by the partner may include unsolicited and/or unwanted advertising information, and the information delivery system may partially or completely block the information from the partner.
- the partner's rating is low, then the user may or may not want to limit the information from that partner. In other words, a low alignment rating for the partner may not necessarily mean the user shows less interest in the information pushed by the partner. If the user wants to further limit, reduce, or prohibit information from a given partner, the user can use the security and gatekeeping settings to do that.
- the information delivery system may change the status of the partner if necessary. For example, the partner may be placed suspended and its status may be changed from “active” to “suspended.” This type of disciplinary action may be performed in aggregate. It may be performed by an administrator or someone with such authority, and not likely a function of automation.
- the partner may be notified about the rating and related changes. For example, warnings may be sent to the partner to notify the partner about the change in status.
- the partner may fine tune its filtering mechanism to improve alignment.
- the process may flow from the block 925 to the block 905 .
- the partner rating operations may be performed periodically or as needed.
- FIG. 10 illustrates an example flow diagram of a process used to rate a user, in accordance with some embodiments.
- the partners are enabled to provide rating information for a user.
- a user's life state involves many aspects of the user's life, and it is expected to change as the user experiences changes in the user's life. The changes may be reflected in the user's behavior when, for example, the user visits a website of a partner.
- the partner may track the user's behaviors, compare those behaviors with the user's life state, and give the user a rating.
- a test is performed to determine if the rating for the user is acceptable.
- a rating scale may be determined by the management team, and the scale may be the same or different from the scale used to rate the partner. If the rating is not acceptable, the process may flow to block 1015 , where the information delivery system may perform operations to restrict the amount of filtered information that is pushed on behalf of the user. Other operations may also be performed when the rating is not acceptable. For example, warnings may be sent to the user to notify the user of the low rating; requests may be sent to the user to notify the user to update the user's life state; the status of the user may be changed, etc. as shown in block 1020 . From the block 1010 , if the rating is acceptable, the process may flow back to block 1005 to collect more ratings.
- the rating of the user may be evaluated after collecting a large collection of rating from many partners. From the block 1020 , the process may also flow back to the block 1005 .
- the user rating operations may be performed periodically or as needed. Embodiments of the invention may merely notify the users of the low rating but may not cause any impact on the amount of filtered information being pushed to the user. As such the operations described in block 1015 may not be performed. In these situations, the user may use the user ratings confidentially to manually work on improving the user's life state or maybe just understanding it better.
- FIG. 11 illustrates an example flow diagram of a process that may be used to enable accessing the user's life state, in accordance with some embodiments. It may be noted that the operations described in the different blocks of this process may not necessarily need to be performed in sequence and some may be performed by different partners. The blocks are meant to convey different ways that the user's life state may be used by the partners in various situations. In all operations, the information delivery server is configured to enable the partners to access the user's life state.
- the user's life state may be used by a partner to customize its website or web pages. This may be useful when the user visits the partner's website. Information not consistent with the user's life state may be filtered from the website and only relevant information may be displayed.
- the partner may associate the user id of the user with the user's life state from the information delivery system, retrieve (or refresh or update) the user's life state, and customize its web pages accordingly.
- the user's life state may be used by a search partner to filter its search results when the user visits the site to perform a search. Search results not consistent with the user's life state may be filtered.
- the search partner may provide a toggle to enable the user to activate or deactivate the filtering of the search results based on the user's life state.
- the partners may participate in a marketplace (e.g., in the form of an auction) and negotiate to access the user's life state. The access may be based on the user's security and gatekeeping settings and may be in bulk form (e.g., thousands of life states per purchase).
- embodiments of the inventions may include a method for receiving information about and relevant to a user's life from a user who is a registered member of an information delivery system.
- the information about and relevant to the user's life includes at least (a) demographic information, (b) ethnic information, (c) social information, and (d) psychological information.
- the method also includes enabling the user to grant permissions to a partner to access the information about and relevant to the user's life, wherein the partner is also a registered member of the information delivery system, and wherein the user grants the permission to the partner by controlling visibility of the partner to the information about and relevant to the user's life and by controlling frequency, extent, type, and volume of filtered information that is pushed by the partner.
- the method includes receiving the filtered information from the partner, wherein the filtered information is generated by the partner based on applying the information about and relevant to the user's life to information of the partner, wherein the information about and relevant to the user's life is provided by the user using a client computing system associated with the information delivery system, and wherein the information about and relevant to the user's life is received by a server computing system associated with the information delivery system.
- Embodiments of the invention also include a computer-readable media that includes instructions that perform the operations similar to the method described above.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Probability & Statistics with Applications (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
- This application claims is a continuation of U.S. patent application Ser. No. 16/876,848, filed May 17, 2020, which is a continuation of U.S. patent application Ser. No. 15/658,268, filed Jul. 24, 2017, now issued U.S. Pat. No. 10,657,576, which is a continuation of U.S. patent application Ser. No. 13/913,095, filed Jun. 7, 2013, now issued U.S. Pat. No. 9,740,772, which is a continuation of U.S. patent application Ser. No. 13/101,058, filed May 4, 2011, now issued U.S. Pat. No. 8,484,098, which claims priority to U.S. Provisional Application No. 61/448,817, filed Mar. 3, 2011, all of which are incorporated by reference in their entireties herein.
- Embodiments of the present invention generally relate to the field of data processing, and in some embodiments, specifically relate to an information delivery system.
- Users today rely heavily on the Internet to search for information. Popular search engines such as Microsoft's Bing™ search engine and Google®'s search engine compete against one another to deliver more accurate searches to the users. Search services may be available to the users as part of a web portal (e.g., Microsoft MSN®, Yahoo®) or simply as a search interface (e.g., Google®). Generally, the search engine may rely on web crawlers or spiders to crawl websites for keywords or information that it deems relevant. The information extracted by the web crawlers may be added into an index database so that it can be queried and quickly found. Accurate searches are important to the users and correspondingly the advertisers and/or content providers. The accuracy of the searches may be based on the keywords selected by the users and how effective the search engines are in building and querying the index database. The current methods also use inferential technologies to enhance the results but still lack accuracies. When a search is perceived by a user as accurate, the user is more likely to continue using the same search engine for subsequent searches. This search method may be acceptable to the users for impulse or immediate needs. However, this method is becoming archaic and flawed, and it is especially flawed for obtaining information on an ongoing basis.
- For some embodiments, a method to enable a user to receive information that is filtered to align with the information about the user's life is disclosed. The information about the user's life may be referred to as the user's life state. The user's life state may encompass many aspects related to the user including at least demographic, ethnic, social and psychological aspects. The user may provide or load the user's life state. The user may grant approved third parties access to the user's life state including associated attributes and sub-attributes. The third parties are approved based at least on their ability to filter its information that is consistent with the user's life state, at volume and frequency levels specified by the user. The user may selectively block a third party from having access to portions or all of the user's life state. The user may be able to rate a third party based on whether the information provided by the third party is aligned with the user's life state. The third party may be able to rate the user based on whether the user's behavior is aligned with the user's life state. The filtered information is pulled from the third parties and presented to the user via the user's portal. In some embodiments, the filtered information may be presented to various devices, appliances, and systems. A marketplace may be implemented to enable the third parties to procure the life states from many users according to settings controlled by the users.
- The multiple drawings refer to the embodiments of the invention. While embodiments of the invention described herein is subject to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and will herein be described in detail.
-
FIG. 1 illustrates one example of a computing device that may be used, in accordance with some embodiments. -
FIG. 2 illustrates an example of a network that may be used to pull filtered information, in accordance with some embodiments. -
FIG. 3A illustrates an example structure of a life state, in accordance with some embodiments. -
FIG. 3B illustrates an example of a collection life states, in accordance with some embodiments. -
FIG. 3C illustrates an example of granting access to the life state, in accordance with some embodiments. -
FIG. 3D illustrates an example diagram of a group of partners, in accordance with some embodiments. -
FIG. 3E illustrates an example diagram of a portal, in accordance with some embodiments. -
FIG. 4 illustrates example applications that may be used to enable the users to receive the filtered information from the partners, in accordance with some embodiments. -
FIG. 5 illustrates an example of a network with an information delivery server, in accordance with some embodiments. -
FIG. 6 illustrates an example flow diagram of a process that may be performed by an information delivery system to set up the life states, in accordance with some embodiments. -
FIG. 7 illustrates an example flow diagram of a process that may be performed by an information delivery system to allow the users to view the filtered information, in accordance with some embodiments. -
FIG. 8 illustrates an example flow diagram of a process that may be performed on an information delivery server to enable automatically updating the user's life state, in accordance with some embodiments. -
FIG. 9 illustrates an example flow diagram of a process used to rate a partner, in accordance with some embodiments. -
FIG. 10 illustrates an example flow diagram of a process used to rate a user, in accordance with some embodiments. -
FIG. 11 illustrates an example flow diagram of a process that may be used to enable accessing the user's life state, in accordance with some embodiments. - For some embodiments, a method for information delivery is disclosed. The method comprises enabling a user to register and become a member of an information delivery ecosystem. The user provides or loads information about the user's life which is also known as a life state. The user's life state may span all areas of a user's life and include at least demographic information, ethnic information, social information, behavioral information, and psychological information. The user may grant third parties permission to access the user's life state. The third parties are also members of the information delivery system. The third parties are evaluated using a set of criteria before they become the members of the information delivery system. The third parties may use the user's life state to filter information for the user.
- In the following description, numerous specific details are set forth, such as examples of specific data signals, components, connections, etc. in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well known components or methods have not been described in detail but rather in block diagrams in order to avoid unnecessarily obscuring the present invention. Thus, the specific details set forth are merely exemplary. The specific details may be varied from and still be contemplated to be within the spirit and scope of the present invention.
- The present invention also relates to an apparatus for performing the operations herein. This apparatus may be specifically constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled with a computing system bus. Portions of any modules or components described herein may be implemented in lines of code in software, configured logic gates in software, or a combination of both, and the portions implemented in software are tangibly stored on a computer readable storage medium.
- The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method blocks. The required structure for a variety of these systems will appear from the description below.
- In the following description of exemplary embodiments, reference is made to the accompanying drawings that form a part hereof, and in which it is shown by way of illustration specific embodiments in which the invention can be practiced. It is to be understood that other embodiments can be used and structural changes can be made without departing from the scope of the embodiments of this invention. As used herein, the terms “couple,” “connect,” and “attach” are interchangeable and include various forms of connecting one part to another either directly or indirectly. Also, it should be appreciated that one or more structural features described in one embodiment could be implemented in a different embodiment, even if not specifically mentioned as being a feature thereof.
-
FIG. 1 illustrates a block diagram of an example computing system that may use an embodiment of one or more of the software applications discussed herein, in accordance with some example embodiments. The computing system environment 100 is only one example of a suitable computing environment, such as a client device, and is not intended to suggest any limitation as to the scope of use or functionality of the design. Neither should the computing environment 100 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment 100. Embodiments of the invention may be implemented on any type of computer, device, apparatus, or even machine that make use of the computer environment 100. For example, the device may be a medical device that accesses the user's medical history or current conditions. - The design is operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the design include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, automotive and informational appliances, and the like.
- The design may be described in the general context of computing device executable instructions, such as program modules, being executed by a computer. Generally, the program modules include routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types. Those skilled in the art can implement the description and/or figures herein as computer-executable instructions, which can be embodied on any form of computing machine readable media discussed below.
- The design may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
- With reference to
FIG. 1 , an exemplary computing type system for implementing the design includes a general-purpose computing device in the form of acomputing device 110. Components ofcomputing device 110 may include, but are not limited to, aprocessing unit 120 having one or more processing cores, asystem memory 130, and asystem bus 121 that couples various system components including the system memory to theprocessing unit 120. Thesystem bus 121 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus. -
Computing device 110 typically includes a variety of computing machine readable media. Computing machine readable media can be any available media that can be accessed by computingdevice 110 and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computing machine readable mediums includes storage of information, such as computer readable instructions, data structures, program modules or other data. Computer storage mediums include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computer 100. Communication media typically embodies computer readable instructions, data structures, program modules, or other transport mechanism and includes any information delivery media. - The
system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132. A basic input/output system 133 (BIOS), containing the basic routines that help to transfer information between elements withincomputing device 110, such as during start-up, is typically stored inROM 131.RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processingunit 120. By way of example, and not limitation,FIG. 1 illustratesoperating system 134,application programs 135,other program modules 136, andprogram data 137. - The
computing device 110 may also include other removable/non-removable volatile/nonvolatile computer storage media. By way of example only,FIG. 1 illustrates ahard disk drive 141 that reads from or writes to non-removable, nonvolatile magnetic media, amagnetic disk drive 151 that reads from or writes to a removable, nonvolatilemagnetic disk 152, and anoptical disk drive 155 that reads from or writes to a removable, nonvolatileoptical disk 156 such as a CD ROM or other optical media. Other removable/non-removable, volatile/nonvolatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, USB drives and devices, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. Thehard disk drive 141 is typically connected to thesystem bus 121 through a non-removable memory interface such asinterface 140, andmagnetic disk drive 151 andoptical disk drive 155 are typically connected to thesystem bus 121 by a removable memory interface, such asinterface 150. - The drives and their associated computer storage media discussed above and illustrated in
FIG. 1 , provide storage of computer readable instructions, data structures, program modules and other data for thecomputing device 110. InFIG. 1 , for example,hard disk drive 141 is illustrated as storingoperating system 144,application programs 145,other program modules 146, andprogram data 147. Note that these components can either be the same as or different fromoperating system 134,application programs 135,other program modules 136, andprogram data 137.Operating system 144,application programs 145,other program modules 146, andprogram data 147 are given different numbers here to illustrate that, at a minimum, they are different copies. - A user may enter commands and information into the
computing device 110 through input devices such as akeyboard 162, amicrophone 163, and apointing device 161, such as a mouse, trackball or touch pad. Other input devices (not shown) may include a joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to theprocessing unit 120 through auser input interface 160 that is coupled to the system bus, but they may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB). A monitor or display 191 or other type of display device is also connected to thesystem bus 121 via an interface, such as avideo interface 190. In addition to the monitor, computers may also include other peripheral output devices such asspeakers 197 andprinter 196, which may be connected through an outputperipheral interface 190. - The
computing device 110 may operate in a networked environment using logical connections to one or more remote computers, such as aremote computer 180. Theremote computer 180 may be a personal computer, a hand-held device, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to thecomputing device 110. The logical connections depicted inFIG. 1 include a local area network (LAN) 171 and a wide area network (WAN) 173, but may also include other networks. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, extranets, and the Internet. In some embodiments, such networking environments may also include satellite, radio frequency (RF), Bluetooth and other means of pushing and/or pulling information. A browser application may be resident on the computing device and stored in the memory. - When used in a LAN networking environment, the
computing device 110 is connected to the LAN 171 through a network interface oradapter 170. When used in a WAN networking environment, thecomputing device 110 typically includes acommunication module 172 or other means for establishing communications over theWAN 173, such as the Internet. Thecommunication module 172 may be a modem used for wired, wireless communication or both. Thecommunication module 172 may be internal or external, may be connected to thesystem bus 121 via the user-input interface 160, or other appropriate mechanism. In a networked environment, program modules depicted relative to thecomputing device 110, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation,FIG. 1 illustratesremote application programs 185 as residing on aremote computer 180. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used. - It should be noted that the present design can be carried out on a computing system such as that described with respect to
FIG. 1 . However, the present design can be carried out on a server, a computer devoted to message handling, or on a distributed system in which different portions of the present design are carried out on different parts of the distributed computing system. - Another device that may be coupled to bus 111 is a power supply such as a battery and Alternating Current adapter circuit. As discussed above, the DC power supply may be a battery, a fuel cell, or similar DC power source that needs to be recharged on a periodic basis. For wireless communication, the
communication module 172 may employ a Wireless Application Protocol to establish a wireless communication channel. Thecommunication module 172 may implement a wireless networking standard such as Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, IEEE std. 802.11-1999, published by IEEE in 1999. Other wireless communication methods that may also be used may include Bluetooth, Radio Frequency, etc. - While other systems may use, in an independent manner, various components that may be used in the design, a comprehensive, integrated system that addresses the multiple advertising system points of vulnerability described herein does not exist. Examples of mobile computing devices may be a laptop computer, a cell phone, a personal digital assistant, or other similar device with an on board processing power and wireless communications ability that is powered by a Direct Current (DC) power source that supplies DC voltage to the mobile device and that is solely within the mobile computing device and needs to be recharged on a periodic basis, such as a fuel cell or a battery.
- It is possible for some embodiments of the invention to have a computing environment 100 that entails memory and display functions without a processing function. For example, a third party may provide customized information to a user, which is relayed to a device for display only with no data manipulation necessary. It should be noted that, in some embodiments, other types of system designs or configurations that are used in the delivery of information may also be used.
-
FIG. 2 illustrates anetwork environment 200 in which the techniques described may be applied, in accordance with some example embodiments. Thenetwork environment 200 has anetwork 202 that connects server computing systems 204-1 through 204-n, and at least one or more client computing systems 208-1. As shown, there may be many server computing systems 204-1 through 204-n and many client computing systems 208-1 through 208-n connected to each other via anetwork 202, which may be, for example, the Internet. Note, that alternatively thenetwork 202 might be or include one or more of: an optical network, the Internet, a Local Area Network (LAN), Wide Area Network (WAN), satellite link, fiber network, cable network, or a combination of these and/or others. It is to be further appreciated that the use of the terms client computing system and server computing system is for clarity in specifying who initiates communication (the client computing system) and who responds (the server computing system). No hierarchy is implied unless explicitly stated. Both functions may be in a single communicating device, in which case the client-server and server-client relationship may be viewed as peer-to-peer. Thus, if two systems such as the client computing system 208-1 and the server computing system 204-1 can both initiate and respond to communications, their communication may be viewed as peer-to-peer. Likewise, communications between the client computing systems 204-1, 204-2 and the server computing systems 208-1, 208-2 may be viewed as peer-to-peer if each such communicating device is capable of initiation and response to communication. One or more of the server computing systems 204-1 to 204-n may be associated with a database such as, for example, the databases 206-1 to 206-n. A firewall such as, for example, thefirewall 220 between a client computing system 208-3 and thenetwork 202, may be used to protect data integrity. Another firewall example is thefirewall 221 positioned between the server 204-2 and thenetwork 202. Although not shown, other devices (e.g., proxy servers, etc.) may also be connected to thenetwork 202. -
FIG. 2 also illustrates a block diagram of an embodiment of a server computing system to display information, such as a web page, etc. A user via a browser from the client computing system 208-1 may interact with the web page, and then supply input to the query/fields and/or service presented by a user interface of the application. The web page may be served by a web server computing system 204-1 on any Hypertext Markup Language (HTML) or Wireless Access Protocol (WAP) enabled client computing system 208-1 or any equivalent thereof. For example, the client mobile computing system 208-1 may be a smart phone, a touch pad, a laptop, a netbook, etc. The client computing system 208-1 may host a browser to interact with the server computing system 204-1. Each application, widget, plug-in, etc. has a code scripted to perform the functions that the software component is coded to carry out such as presenting fields and icons to take details of desired information. The applications may be hosted on the server computing system 204-1 and served to the browser of the client computing system 208-1. The applications then serve pages that allow entry of details and further pages that allow entry of more details. - Any application and other scripted code components may be stored on a computing machine readable medium which, when executed on the server causes the server to perform those functions. In an embodiment, the software used to facilitate the functions and processes described herein can be embodied onto a computing machine readable medium such as computer readable medium. As discussed above a computing machine readable medium includes any mechanism that provides (e.g., stores) information in a form readable by a machine (e.g., a computer). For example, a computing machine readable medium includes read only memory (ROM) random access memory (RAM) magnetic disk storage media; optical storage media; flash memory devices DVD's, EPROMs, EEPROMs, FLASH, magnetic or optical cards, or any type of media suitable for storing electronic instructions. The information representing the apparatuses and/or methods stored on the computing machine readable medium may be used in the process of creating the apparatuses and/or methods described herein.
- Some portions of the detailed descriptions which follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. These algorithms may be written in a number of different software programming languages such as C, C++, SQL, Java, or other variants of such or similar languages. Also, an algorithm may be implemented with lines of code in software, configured logic gates in software, or a combination of both. In an embodiment, the logic consists of electronic circuits that follow the rules of Boolean Logic, software that contain patterns of instructions, or any combination of both.
- It should be noted that the configuration of the diagram illustrated in
FIG. 2 is for illustrative purposes only, and the actual configurations may vary. There might be different configurations of servers, firewalls, clients, and devices. For example, the devices may be anything from iPads, to Autos, to TV devices, and so on. - It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the above discussions, it is appreciated that throughout the description, discussions utilizing terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computing system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computing system's registers and memories into other data similarly represented as physical quantities within the computing system memories or registers, or other such information storage, transmission or display devices.
- As the Internet continues to evolve into a more intelligent network of information, there remains a significant gap between what the users want and what or how the search engines can deliver the information to the users. Current search techniques have many limitations that embodiments of the present invention address. Following are some of the factors regarding the limitations of the current search techniques: (a) Users may not accurately understand when they should submit a query or that their situation requires a query; (b) It is almost impossible to use accurate search terms or keywords in a way that will yield exactly what the users are looking for; (c) Even if the accurate search terms are provided, changes in the user's Life State or the information environment may cause what is considered accurate during one time period to become inaccurate during another time period; (d) Because of a user's privacy rights, the searches performed by the search engines will always be inadequate by failing to accurately take into consideration factors hidden or limited by the privacy rights; (e) Because of privacy rights, the searches performed by the search engines will be invasive to a User's privacy rights, as the current method of managing privacy rights is flawed; (f) There are no user feedback mechanisms to bilaterally advise the providers of search results of their accuracy, allowing the providers to more effectively tailor their results for each User; (g) Since the number of organizations and indexed information is theoretically infinite, there is no mechanism that causes the providers of search results use a method of continuous improvement and focus to yield fewer more relevant query results. Instead, there is the appearance of some relevant results within an extremely large data set, composed mostly of less relevant results.
- Embodiments of the invention fully exploit the information about a user's life to enable delivering filtered and customized information to the users. The information about the user's life is also referred to as a life state. The life state may consist of many categories. A user may grant third parties access to the user's life state by setting security features and gatekeeping features. As will be described, embodiments of the present invention may include an information delivery system that delivers filtered information to the users. The information delivery system enables third parties to have access to the users' life states, as allowed in transactions between the users and the third parties. Each user is associated with a unique life state. The life state is used as filters or as a basis for customized services (e.g., web sites, emails, etc.). Embodiments of the invention also include an architecture that includes a centralized server computer system connected to the Internet and configured to deliver information to the users. The centralized server computer system is referred to herein as an information delivery server. The information delivery server may be configured to provide the users life state interface to enable the users to provide the values for the attributes and sub-attributes associated with their life states. The information delivery server is coupled with a database configured to store the values for the attributes and the sub-attributes. The information delivery server is configured to provide the users a portal interface to configure their own portals. The users may use their portals to view the filtered information. The information delivery server may also be configured to enable the users and the third parties to rate one another. Replication may be involved to make access, delivery and update operations by the information delivery server more efficient.
- The information delivery server may be associated with a marketplace portal to enable the users and the third parties to enter into transactions. The transactions may include the users getting compensated for allowing the third parties to access the users' life state, the third parties bidding against one another to earn the right to access the users' life states, etc. In addition, the information delivery server may be configured to enable the user's life state to be used when the user visits a website of a third party. This enables the third party to provide web pages that are customized according to the user's life state.
-
FIG. 3A illustrates an example structure of a life state, in accordance with some embodiments. A life state may be associated with many categories. Each category may consist of many attributes. Each attribute may consist of many sub-attributes. Together, the categories, the attributes, and the sub-attributes may conceptually describe who the user is from many different views. The categories, attributes and sub-attributes may be related to one another in a top-down relationship and/or laterally—enhancing the interpretations of each attribute value. The categories, the attributes, and the sub-attributes may be defined by an administrator or a management team of the information delivery system. In some embodiments, they may also be defined by industry authorities. Each of the attributes and sub-attributes is associated with a value. Embodiments of the present invention enable the users to maintain and control the values of each of the attributes and sub-attributes. The values may be in any format including, for example, data, text, qualitative, Boolean yes/no, numeric, etc. - Referring to
FIG. 3A , thelife state 305 may consist ofmultiple categories 310. It is envisaged that each of the many aspects of a user's life can be mapped to a category of thelife state 305. Each of thecategories 310 may consist ofmany attributes 315 and sub-attributes 320. Although not illustrated, each of the sub-attributes 320 may consist of many deeper levels of sub-attributes. For example, under thesub-attribute 1, there may be sub-attribute 1.1, sub-attribute 1.2, etc. The categories, attributes, and/or sub-attributes may be dynamic and may be managed by an administrator. For example, new categories, attributes, and/or sub-attributes may be added or removed; an attribute under one category may be moved to another category, etc. The ability to update the categories, the attributes and the sub-attributes illustrate the dynamic nature of the life state. - Following are some possible categories, attributes, and sub-attributes. There may be a category “psychological.” Under this category, there may be attributes “personality type”, “planner/spontaneous”, and “conservative/risk taking.” Under the attribute “personality type”, there may be the sub-attribute “Myers Briggs Classification” and the sub-attribute “Functions of Consciousness”, and the sub-attribute “Extraversion/Introversion.” Under the category “personal core information”, there may be several attributes such as “age”, “sex”, “marital status”, “family”, “physical”, “health”, “ethnicity”, etc. Under the attribute “health”, there may be a sub-attribute such as “ailments”, and under the sub-attribute “ailments”, there may be lower level of sub-attributes such as “treatments”, “medication”, etc. A value for the sub-attribute “ailments” may be “diabetes.” A value for the attribute “marital status” may be “single.” As mentioned, the number of categories, attributes and sub-attributes may be large since they together describe the users' life state. Other example categories are described in the corresponding provisional application which is described in the related application section at the top of this document.
- As the user's life changes, the values for the attributes and/or sub-attributes may be updated. For example, the value for the attribute “marital status” may be changed from “single” to “married.” For some embodiments, the values for the attributes and sub-attributes may be automatically provided. Other possible categories, attributes, and/or sub-attributes may include but not limited to: ‘life style”, “political”, “social”, “technology skills”, “entertainment”, “career”, “goals”, “education.” The number combinations of categories, attributes, and sub-attributes (and deeper levels of sub-attributes) may be extensive, and may represent a snap shot of the life of a user. It may be noted that this is different from the traditional user profile used by current systems since the information included in a traditional user profile is very limited and not as extensive as what is included in a user's life state. An option may be provided to enable the users to select using the automatic setting of values. For example, a new user may select this option to speed up the processing of setting up the user's life state. The user may then update the values as necessary. The information delivery server may be configured to provide interview tools, wizards, or applications that gather and map the information about the user to the relevant attributes and sub-attributes.
-
FIG. 3B illustrates an example of a collection of life states, in accordance with some embodiments. The collection of life states 325 may represent the life states of many users. In the current example, the collection of life states 325 includes the life states 350, 355 and 360. The funnel shape associated with each of the life states 350, 355 and 360 illustrates the concept of using a life state to funnel or filter the information available from the third parties. Typically, most of the information from the third parties is not relevant or applicable to the user. The life state helps funneling the information available from the third parties so that only filtered information is pushed by the third parties. In other words, the life state enables the third parties to push the right type of information to the user. - The life state may also be used in other applications. In the case of the user surfing the web and visiting a web site, the life state enables the web site to display customized web pages that may include information matching to what the user is interested in. In the case of a marketplace, the filtered information allowed for procurement of the life states by the third parties in bulk—according to the users' privacy, security, and gatekeeping attributes. In the case of search using a search engines, the life state enhance the search results generated by the search engine.
-
FIG. 3C illustrates an example of granting access to the life state, in accordance with some embodiments. This example illustrates a life state structure similar to the example described withFIG. 3A . A user has complete control how the access to the user's life state is granted. The granting of the access can be at the category level, the attribute level, the sub-attribute level, or combinations thereof. A combination of one or more categories, one or more attributes, and/or one or more sub-attributes is referred to as an access group. Each access group may be viewed as a subset of the life state. A third party can be granted permission to access one or more access groups. It should be noted that the granting of the access isn't just about seeing the information associated with the user's life state, it's also about how the third party uses the information according to the security and gate keeping attributes. The content of an access group may vary and may be changed by the user. As will be described, the granting of the access is performed using the security and gatekeeping features. - As illustrated, the
third party 330 is granted access to theaccess group 340 which consists of values associated with some attributes under thecategory 1. Thethird party 332 is granted permission to theaccess group 342 which consists of values associated with some sub-attributes under theattribute 1. Thethird party 334 is granted permission to theaccess group 346 which consists of values associated with some sub-attributes under theattribute 1. Thethird party 336 is granted permission to theaccess group 348 which consists of values associated with some attributes under thecategory 1. Thethird party 336 is also granted permission to theaccess group 346. Thethird party 338 is granted permission to theaccess group 348 which consists of values associated with some attributes under thecategory 1. Thethird party 338 is also granted permission to theaccess group 349 which consists of values associated with the attributes and sub-attributes under thecategory 3 andcategory 4. These access group and granting permission examples illustrate some of the flexibilities and control that a user may have with the user's life state. The directions of the arrows from the access groups to the third parties illustrate the granting of the permission by the user to the third parties. -
FIG. 3D illustrates an example diagram of a group of partners, in accordance with some embodiments. The diagram includes life states similar to the life states described withFIG. 3B . For some embodiments, a third party may have to be approved before it can be granted permission to one or more access groups. A set of criteria may be used to evaluate and approve a third party. The set of criteria may be determined by a management team or an administrator associated with the information delivery system. For example, the criteria may include one or more of the following: the ability of the third party to provide information to the users according to their life states, the type of service, merchandise and/or information that the third party is offering and whether they map to the categories, attributes and sub-attributes defined by the life state structure, the ability of the third party to map its services and information to the life state structure, the reputation of the third party, the likelihood that the third party will continue to perform as a partner and a leader in the category/attribute/sub-attribute that it is assigned to, etc. Other criteria may also be used. - Once a third party is approved, it becomes a partner. A license may be granted to the third party. The license may give the third party permission to copy the users' life states for a defined period. There may be an expiration date, and the license may need to be renewed. The third parties use the copies of the life states to filter its information, or the third parties may customize its web site for the users when the users visit the websites of the third parties. The customization of the web site and its web pages may be according to the life states as granted to the third parties by the users. Depending on the actions of a third party, a license may be active, suspended, or revoked. Other license status may also be used. Security credentials including user identification (ID) and password may be assigned to an approved third party. A third party who has been approved is referred to herein as a partner. For some embodiments, only those partners whose status is active may be granted permission to access the users' life states. There may be different types of partners. For example, a partner may be an individual, an organization, a governmental agency, etc. The partners may also be defined based on the type of services they offer. For example, the type “Search Engines” may be used for Microsoft and Google when they become partners, and the partner type “Government” may be used when the Medicare office may want to access the users' life states for benefits administration.
- In the current example, the
block 324 represents all of the partners. They include thepartners 360, 361 and 362. These partners have been granted permission to thelife state 350. As described withFIG. 3C , the level of permission of each of thepartners 360, 361 and 362 may be different. The directions of the arrows from thepartners 360, 361 and 362 to thelife state 350 illustrate the filtering of the information from the partners. For some embodiments, the partners may push information to the users, and they may also offer auto-load program that automatically populates user attributes in the life state. For example, Amazon.com may push information to a user (such as new technology product releases), and Amazon.com may also offer an auto-load program that populates attributes relating to technology adoption, asset inventory, etc. -
FIG. 3E illustrates an example diagram of a portal, in accordance with some embodiments. The information delivery server may be configured to receive the filtered information from thepartners 324 on behalf of the users and present that information to the user via theirportals 370. Each user is associated with a portal. In the current example, the portal 351 is associated with thelife state 350, the portal 356 is associated with thelife state 355, and the portal 361 is associated with thelife state 360. To access the filtered information, the users may need to log in to the information delivery server using their user IDs and passwords. The filtered information may also be stored as floating variable, cache, memory, etc. on any device or system that accesses the filtered information. The directions of the arrows from the life states 350, 355 and 360 to the respective portals 351, 356 and 361 illustrate the flow of the filtered information to the portals. The information available via the portal 351 may be different from the information available via the portal 356 because thelife state 350 may be different from thelife state 355.FIG. 3E also illustrates the overall concepts of embodiments of the present invention where the collection of life states 325 is used to filter the information from thepartners 324 to create the filtered information (or a subset of the information of the partner), where the filtered information is presented to the users via theportals 370. For some embodiments, the pulling of the filtered information from the partners is automatic. -
FIG. 4 illustrates example applications that may be used to enable the users to receive the filtered information from the partners, in accordance with some embodiments. Theinformation delivery server 400 may include user administration application 401,life state application 405,partner interface application 410,information filtering application 415,portal application 420, changealert application 425,rating application 430 andmarketplace application 435. It may be noted that even though these applications are described herein as separate applications, the functionalities of two or more of them may be combined into one application. These applications may be used to pull filtered information from various resources. The resources may include Internet websites associated with the partners. Non-Internet resources may also be used. For example, a user's life state may be replicated on devices, appliances, or any means that allows the user to control how to grant permission to the user's life state, the third parties to access the user's life state, and the pushing of the filtered information by the third parties on behalf of the user. It may be noted that not every device or appliance used in embodiments of the invention is a filtered information pushing mechanism. That is, some devices may be registered in the core system to receive the pushed information, and then the devices may only function in the ecosystem as a conduit for the pushing of the filtered information to the users. - The user administration application 401 may be configured to manage the users and the partners including setting up their user accounts, user IDs, passwords, etc. These user accounts allow the users and the partners to participate in the information delivery system associated with the
information delivery server 400. The user accounts may be stored in the database associated with theinformation delivery server 400. The user accounts of the users may be encrypted and stored locally in the client computing systems. The client computing systems may be appliances, devices, etc. This enables a partner to recognize the user as a member of the information delivery system when the user visits a website associated with the partner. This may enable the partner to keep track of the user's behavior while visiting that website to determine if the user's behavior is aligned with the user's life state. The user administration application 401 may also keep track of user type (e.g., user, administrator, etc.), partner type (e.g., individual, organization, etc.), partner category (e.g., content provider, advertiser, etc.), partner status (e.g., active, revoked, suspended, pending, etc.), and the type of license granted to the partner, etc. It may be noted that the user may be an individual, an organization, a business, etc. - The
life state application 405 may be configured to perform operations associated with forming and maintaining of the life states of many users. Thelife state application 405 may be configured to enable an administrator to define a life state structure including the categories, attributes, and sub-attributes. Thelife state application 405 may be configured to present a life state interface to allow the users to provide and update the values for the attributes and sub-attributes for their life states. For some embodiments, thelife state application 405 may also be configured to perform consistency verification to determine if the user provides inconsistent values for the attributes and/or sub-attributes and to notify the user if inconsistencies are found. Other consistency verification may include user behavior versus the attributes, and one category/attribute versus another category/attribute. - The life states of all of the users may be securely stored in the database associated with the
information delivery server 400 and in a relational structure with tables and fields arranged in ways that are logical and meaningful to the user. When the users update their life states, the updated values may be stored in the same database. It is possible that the updates may also be propagated to other replicated systems, devices, appliances that locally store the values, as well as third parties that customize their web sites according to these values. This propagation would be similar to a change trigger. - For some embodiments, a copy of the user's life state may be downloaded and stored in the memory of the client computing system associated with the user. The copy in the client computing system is referred to as a local copy of the life state. It is possible that, in some embodiments, only a portion of the information or only related information may be stored in the client computing system. This is because getting the exact copy may be too big.
- Sometimes it might be just the user id that's stored in floating variables, memory, cache, etc., which then pulls the user's life state when needed.
- The local copy may be periodically updated or synchronized with the values stored in the database. The local copy of the life state may enable the user to use it with other services, with the third parties who are not yet partners, etc. For example, the local copy of the life state may be used when the user performs a web search so that the results may be more relevant. For example, when Google becomes a partner, it would benefit from accessing the user's attribute values to deliver relevant search results. It may be noted that the storing of the local copy of the life state in the client computing system is different from the third parties having access to the life state and filtering its information according to the life state. As a variation of the application of the life state, a third party may access a copy of the life state from the information delivery server (instead of from the client computing system) and customized its website according to the user's life state. Similarly, a search engine may access a copy of the life state from the information delivery server and customized its search results accordingly.
- Embodiments of the invention may enable the life state to be used in a more global information delivery with every conduit that the user may use for information as opposed to strictly web searches. For example, when the user visits a website, the user may have the option of selecting to apply the user's life state with that website. The option may be a toggle that can be turned on or off, and the information associated with that website may toggle along with this option. If the website maintains user accounts, the user may connect the user id with the information delivery system with the website. This will allow greater flexibility and efficiency when the website accesses the user's life state.
- The
partner interface application 410 may be configured to enable theinformation delivery server 400 to communicate with one or more servers of the partners. For example, this may enable the partners to access the users' life states as defined by the users' gate keeping and security features. This may include interfacing with the partners to enable customized websites, filtered search results, etc. - The
information filtering application 415 may be configured to share the life states of a user with the partners, limited to the level of permission granted by the user. Theinformation filtering application 415 may also be configured to apply the security and the gate keeping features set by the user. As described, the partners may use the user's life state to filter their information. Theinformation filtering application 415 may receive the filtered information from the partners and present the filtered information to the user via the user's portal. As will be described, the partners may procure the life states via a marketplace. - The
portal application 420 may be configured to allow the users to define how the information provided to the users may be presented and viewed. Theportal application 420 may be configured to provide a layout interface to allow the user to design the look and feel of the user's portal. The layout interface may include parameters to control the fields, links and dimensions of the layout. The user may define multiple layouts that change according to event rules defined by the user. For example, the user may define parameters that cause the layout to emphasize on financial and economic information when there is a significant swing in the financial market. The layout interface may allow the user to define different information regions. Each of the information regions may focus on the information that corresponds to one aspect of the user's life. As mentioned, each of the users may be associated with a portal. The user accesses the portal by logging into the information delivery system using the assigned user ID and password. The portals, their configurations, layouts, and information regions may be stored in the database associated with theinformation delivery server 400. - For some embodiments, the
portal application 420 may include logic to communicate and present the information to the users via portable devices, appliances, and any other devices that are capable of receiving the filtered information and enabling the user to view the filtered information. - The
change alert application 425 may be configured to notify the partners and the users whenever there is a change that may affect the process of proving the filtered information to the users. The changes may originate from the partners and/or users. For example, the change may be necessary to address complaints or suggestions from many users and/or partners. The changes may originate internally by a management team associated with the information delivery system to enhance the information filtering services for the partners and/or the users. For example, it may be necessary to add a new category, to migrate an attribute from one category to another category, to delete an attribute, to change the meaning of an attribute, etc. The changes may originate externally by others. Thechange alert application 425 may also be configured to notify a partner when the user modifies the user's life state. Similarly, thechange alert application 425 may notify a user when the partner's ability to provide its information is modified. - The
rating application 430 is configured to improve the quality of the filtered information. This includes providing a mechanism to allow the users to rate the partners as well as a mechanism to allow the partners to rate the users. The rating of the partners is based on whether the filtered information pulled from the partners is aligned with the life states of the users. The rating may be based on a collection of feedbacks from many users. This helps the partners to fine tune their filtering mechanism if they receive low ratings. This also helps identifying the partners who consistently fail to comply with the filtering requirements. For example, a partner who provides unsolicited advertising information should get a low rating because it abuses the information delivery system. A consequence for a partner who gets a low rating is a suspension or revocation of its license. Following are some conceptual examples of the ratings for a partner: -
- None—The information from the partner is not aligned with the user's life state
- Low—The information from the partner is minimally aligned with the user's life state
- Moderate—The information from the partner is mostly aligned with the user's life state
- High—The information from the partner is significantly aligned with the user's life state
- In order for a user to receive accurate filtered information, it may be necessary for the user to keep the user's life state updated or utilize automatic loader programs that accomplish the same. This is because the user is rated based on whether the user's life state is aligned with the user's behavior whenever applicable. If a partner determines that the user's life state is not accurate, the partner may notify the user of the alignment issue, through a system of ratings. If the user's behavior remains non-aligned with the user's life state for an extended period of time, the information provided to the user may be limited. Following are some conceptual examples of the ratings for a user:
-
- None—The user's transactions are not aligned with the user's life state
- Low—The user's transactions are minimally aligned with the user's life state
- Moderate—The user's transactions are mostly aligned with the user's life state
- High—The user's transactions are significantly aligned with the user's life state
- The
marketplace application 435 may be configured to implement an exchange or a market where the users and the partners participate in sell and buy transactions. In some embodiments, the marketplace may be implemented as a secure web portal that enables the partners to procure the users' life state according to the security and gatekeeping features. For some embodiments, themarketplace application 435 may be implemented as an auction portal with bidding and purchasing options. Other purchasing options (e.g., fixed price, etc.) may also be used. The auction portal may allow searchable bids and reverse bids by the partners and the users. Bid information may be stored in the secured database associated with the information delivery server. - A partner may access the life states of the user according to the user's security and gatekeeping features. Referring to
FIG. 3D , a user may use thesecurity feature 370 and thegatekeeping feature 371 to control how the information is filtered so that the user will receive most relevant and most desirable information. Thesecurity feature 370 illustrates an option that a user may use to control the visibility of the user's life state to the partners. The user may use thesecurity feature 370 to control the visibility at the global level, partner level, category level, attribute level or sub-attribute level. The security features set at the global level apply to all categories, attributes, and sub-attributes. The security features set at the category level apply to all corresponding attributes and sub-attributes. The security features set at the attribute level apply to all corresponding sub-attributes and so on. When there is a difference among the settings of the security features, the settings of the security features at the lower level takes precedence over the settings of the security features at the corresponding higher level. For example, if a user sets a value at the global level, and then sets another value at the category level, the value at the category level will determine the setting of the security features. For some embodiments, the user may also have the ability to restrict the duration that the partners can access the user's life state. Following are some examples settings of the security features: -
- Not available—No information relating to the category, attribute, or sub-attribute is available to any partner or any other parties
- Available only to preferred/approved list—No information relating to the category, attribute, or sub-attribute is available to any partner or other parties unless they are included in the user's list of approved or preferred partners and/or parties
- Available—Information relating to the category, attribute, or sub-attribute is available to any partner
- Available to content providers—No information relating to the category, attribute, or sub-attribute is available to any partner unless the partner is a content provider or the partner is in the list of approved or preferred content providers
- Available to advertisers—No information relating to the category, attribute, or sub-attribute is available to any partner unless the partner or other party is an advertiser or is in the user's list of approved or preferred advertisers
- The
gatekeeping feature 371 illustrates an option that a user may use to control how much information the user is willing to receive from which partners. The user may use thegatekeeping feature 371 to control how an attribute can be used to filter information from a partner and the volume of the information. The gatekeeping features set at the global level apply to all categories, attributes, and sub-attributes. The gatekeeping features set at the category level apply to all corresponding attributes and sub-attributes. The gatekeeping features set at the attribute level apply to all corresponding sub-attributes and so on. When there is a difference among the settings of the gatekeeping features, the gatekeeping features set at the lower level takes precedence over the gatekeeping features set at the corresponding higher level. For example, if a user sets a gatekeeping value at the global level, and then set another conflicting gatekeeping value at the category level, the gatekeeping value at the category level will prevail. Some examples of the gatekeeping features settings include: -
- No gatekeeping—All of the information is passed to the user through the funnel
- Approved list—The information is passed to the user if the information is from a partner that is in the list of the user's approved or preferred partner
- Content providers—The information is passed to the user if the information is from a partner who is a content provider or if the partner is in the user's list of approved or preferred content providers
- Advertisers—The information is passed to the user if the information is from an advertiser or if the information is from a partner who is in the user's list of approved or preferred advertisers.
- None—No information is passed to the user
- For some embodiments, there may also be many other gatekeeping controls, such as frequency and precedence controls that will affect how the system queues up information from partners—which will be a key control in promoting partners to only push the information that really counts, while the user receives only the information that really counts.
- For some embodiments, the settings of the gatekeeping features are subordinate to the settings of the security features. The settings of the security features for any given category or attribute override the settings of the gatekeeping features for the same category or attribute. For example, if the user sets a security feature for a category as “Not available”, but the user sets a gatekeeping feature for that category as “No Gatekeeping”, then the information delivery server will ignore the setting of the gatekeeping feature. This means that the values of the attributes and sub-attributes associated with that category are not available to any of the partners. The “Not available” security setting may be interpreted as a blocking setting which blocks any information related to a category, attribute, or sub-attribute. In this example, the user will not receive any information related to the “Not available” category even though the gatekeeping feature for that category is set as “No Gatekeeping.” The combination of the security features and gatekeeping features allow the users to highly customize how the user grants permission to the user's life state in terms of depth and granularity of information available, types of use, types of partners that can access, etc.
- In general, gatekeeping features are different from security in that they determine how information is delivered and displayed to the user. This includes controlling the frequency, extent, type, and volume of filtered information that is pushed by the partner. This is where the marketplace implementation becomes important. When a user wants to allow information for a specific attribute to be sold in the marketplace, but no information is delivered for that attribute, then the security settings would allow visibility in the marketplace, and the gatekeeping settings would not allow information delivery to the portal (or when surfing to external sites).
- For some embodiments, the
life state application 405 described inFIG. 4 may be configured to auto-populate the attributes and sub-attributes with values. The values may be derived from the partners. It is possible that the partners may accumulate extensive information about a user's behavior, which in turn gives them the ability to populate the users attribute values according to this behavior. For example, a set of attributes for a user's asset inventory may include various products, etc. Amazon.com could easily populate the asset inventory according to the user's purchase history. There may be an option to allow the user to select the auto-populating feature. - Auto-load programs may be created by any approved and active partner. The delineation of which categories/attributes/sub-attributes is updated and how they are updated may be a function of how the Auto-Load program is constructed and how the user runs the program. There may be parameters that will specify whether or not an auto-load program may overwrite values from a previous auto-load by the same partner, or by a previous auto-load by a different partner, or by a previous value input by a user. The quality of these programs and which partner auto-load programs should be used will be functions of the user experience, ratings, and the overall quality and flexibility of the auto-load program.
- For some embodiments, the
life state application 405 described inFIG. 4 may be configured to automatically update the life state of a user. There may be a setting that enables the user to indicate that the automatic update of the user's life state is allowed. The updates may be based on transactions that the user engages in and may be performed periodically. It is possible that user's behavior may not be consistent with the user's life state. For example, the user indicates in the life state category and attribute values that would lead to avoidance of water sports related transaction behavior. However, when the user visits the websites of the partners, the user frequently purchases items that are for water sports. In this scenario, thelife state application 405 may modify the user's life state to align with the user's behavior. This may include automatically translating a user's transactional history into values for the attributes and/or sub-attributes. The user can also review, assess, and override any values that are set from an auto update, if the manual setting of the values better reflects the user's life state. This ensures that the user's life state is up to date. - For some embodiments, the functionality of auto-updating and auto-loading can initially set to baselines, but it can also update attribute values at the users' discretion. There might be options or parameters on the auto-update program such as “Do not update values that have been manually updated.” This would mean only null values or those previously set by the auto-update program would be updated.
- The automatic update feature also allows the user to assess the situations where their perceived preferences do not correspond to their actual preferences. This may help improve the user rating. The partners also benefit from this feature as well since the updated values will translate into better and more accurate information provided to the users. As a result, the partner may receive a higher rating.
- Network with Partner Servers
-
FIG. 5 illustrates an example of a network with an information delivery server, in accordance with some embodiments. The network may include aninformation delivery server 505 coupled withdatabase 510 and connected tonetwork 202. Also connected to thenetwork 202 areclient computing systems partner servers respective databases client computing systems information delivery server 505 using the Internet. Theclient computing systems network 202 via wired or wireless communication (e.g., RF, Bluetooth, etc.). For example, a user may use theclient computing system 500 to register with theinformation delivery server 505, input values to configure the user's life state, and set up security features and gatekeeping features. The user may use theclient computing system 500 to log in to theinformation delivery server 505 and access the user's portal to view the filtered information. The user's life state, security features, gatekeeping features, and filtered information may be stored in thedatabase 510. The network infrastructure described inFIG. 5 may also be used to enable accessing partner websites, performing web searches using partner search engines, and enabling the partners to participate in the marketplace to procure the life states. - Embodiments of the invention may also include mobile-enabled implementations to enable the users to use the mobile devices to communicate with the information delivery server. As illustrated in
FIG. 5 , themobile device 500 may be used by a user to connect to theinformation delivery server 505 via thenetwork 202. Having the mobile capability may enable the users to provide updates on an impulse basis, especially at a time when the user is experiencing something that may need to be reflected in the user's life state. Theinformation delivery server 505 may enable the user to download a mobile application for this purpose. The mobile application may include user interface that makes it easier to provide information about the user's experience. For example, the user may be watching a movie, and the user may use the mobile device to indicate the name of the movie and how much the user enjoys watching that movie. That action will be analyzed by the information delivery server and the user's entertainment attribute may be updated. - Referring to
FIG. 5 , in some embodiments, there may be one or more mirroredservers 506 configured to perform tasks similar to theinformation delivery servers 505 to accommodate the demand and usage by many users. These mirrored servers may be located at different geographical areas. For example, at a first site, there may be one or more mirroredservers 506. Each of the mirroredservers 506 may be associated with a mirroreddatabase 511 which may be configured to store information similar to thedatabase 510. Further, there may be multiple mirrored sites, each having similar hardware and software configuration and set up as the first site. The multiple sites may collaborate with one another in a distributed manner to help speed up the process enabling the users to set up and maintain their life states, interacting with the partner servers, receiving the filtered information from the partners, enabling the users to configure their portals, presenting the filtered information to the users' portals, etc. Using mirrored servers and distributed processing may help the users to view most relevant and accurate filtered information in their portals in near real time. - It should be noted that there are many different distributed processing architectures and the description provided here is not meant to limit to a particular architecture, but rather to convey that distributed processing may be implemented to provide better user experience for some embodiments.
-
FIGS. 6-11 describe various processes that may be performed by the information delivery system. Each process includes multiple blocks, with each block representing one or more operations. The sequences of the blocks may vary depending on the implementations. Some operations may be combined while some operations may be separated into multiple operations. -
FIG. 6 illustrates an example flow diagram of a process that may be performed by an information delivery system to set up the life states, in accordance with some embodiments. The process is associated with operations that may be performed by theinformation delivery server 505 described withFIG. 5 . Atblock 605, the structure of a life state is defined. This may include defining the categories, the attributes, the sub-attributes, and any deeper level of sub-attributes. For example, each of the attributes and sub-attributes may be represented by fields in a database table with each of the fields having a value. Each time a new user is registered with theinformation delivery server 505, a life state is associated with that user, as shown inblock 610. The attributes and the sub-attributes associated with the user's life state may be automatically given some values. These values may be derived from the offerings of the partners, as shown inblock 615. At block 620, the user is allowed to update the values of these attributes and/or sub-attributes. This may be due to changes to the user's life. This may be due to the initial values not being aligned with the user's life. At block 625, options may be made available to enable the users to set security features and gatekeeping features. As described, these features allow the users to configure the visibility of the user's life state and how or from whom the information is to be pulled on behalf of the user. -
FIG. 7 illustrates an example flow diagram of a process that may be performed by an information delivery system to allow the users to view the filtered information, in accordance with some embodiments. The process is associated with operations that may be performed by theinformation delivery server 505 described withFIG. 5 . When a user registers with the information delivery system and create a user account, that user account is associated with a user's portal, as shown inblock 705. The user may be provided options to configure the user's portal. This may include configuring the layout for the user's portal. At block 710, one or more partners may access the user's life state. The access of the user's life state is based on permissions granted by the users. The partners may use the user's life state to generate filtered information that is aligned with the user's life state. At block 715, the filtered information is pushed by the partners. At block 720, the filtered information is presented to the user via the user's portal. -
FIG. 8 illustrates an example flow diagram of a process that may be performed on an information delivery server to enable automatically updating the user's life state, in accordance with some embodiments. The process is associated with operations that may be performed by theinformation delivery server 505 described withFIG. 5 . The process may include tracking the user's behavior when the user visits a website of a partner. As described above, when the user visits the website of a partner, the partner may recognize that the user is a member of the same information delivery system that the partner is associated with. The partner may customize the content of its website or filter the search results using this information. The account of the user and the account of the partner with the information delivery system may be related or connected. The recognition may be based on the information stored locally on the client computing system of the user. Alternatively, the user id may be locally stored or stored in temporary internet/buffer files by associating with another user login, and then the attribute values from the user's life state may be obtained, refreshed, or updated. - The tracking operation may include interacting with the partner's server and receiving the tracking information from the partner's server, as shown in block 805. At
block 810, a test is performed to determine if the user's behavior is aligned with the user's life state. If the user's behavior is aligned, the process flow fromblock 810 back to block 805 and the determination may continue. However, from theblock 810, if the user's behavior is not aligned, the process flow to block 815, where the user's life state may be automatically updated to reflect the user's behavior. From the block 815, the process may flow back to block 805 and the determination may continue. For some embodiments, this process may be performed periodically. An automatic update option may be selected by the user. In this process, the users will also be provided with the attribute values that are not aligned, which may help the user and partner migrate towards better alignment. -
FIG. 9 illustrates an example flow diagram of a process used to rate a partner, in accordance with some embodiments. At block 905, the users are enabled to provide rating information for a partner. The rating is based on how the filtered information from the partners is aligned with the users' life states. If the alignment is not as expected, the rating may be low. A rating scale may be set by the management team associated with the information delivery system. Atblock 910, a test is performed to determine if the rating is acceptable. If the rating is acceptable, the process may flow back to block 905 to collect more ratings. It may be noted that the rating of the partner may be evaluated after collecting a large collection of rating from many users. From theblock 910, if it is determined that the rating is not acceptable, the process may flow to block 915 where the information from the partner may be limited. For example, the information pushed by the partner may include unsolicited and/or unwanted advertising information, and the information delivery system may partially or completely block the information from the partner. For some embodiments, if the partner's rating is low, then the user may or may not want to limit the information from that partner. In other words, a low alignment rating for the partner may not necessarily mean the user shows less interest in the information pushed by the partner. If the user wants to further limit, reduce, or prohibit information from a given partner, the user can use the security and gatekeeping settings to do that. At block 920, the information delivery system may change the status of the partner if necessary. For example, the partner may be placed suspended and its status may be changed from “active” to “suspended.” This type of disciplinary action may be performed in aggregate. It may be performed by an administrator or someone with such authority, and not likely a function of automation. - At
block 925, the partner may be notified about the rating and related changes. For example, warnings may be sent to the partner to notify the partner about the change in status. The partner may fine tune its filtering mechanism to improve alignment. The process may flow from theblock 925 to the block 905. The partner rating operations may be performed periodically or as needed. -
FIG. 10 illustrates an example flow diagram of a process used to rate a user, in accordance with some embodiments. At block 1005, the partners are enabled to provide rating information for a user. As described above, a user's life state involves many aspects of the user's life, and it is expected to change as the user experiences changes in the user's life. The changes may be reflected in the user's behavior when, for example, the user visits a website of a partner. The partner may track the user's behaviors, compare those behaviors with the user's life state, and give the user a rating. At block 1010, a test is performed to determine if the rating for the user is acceptable. As with the rating for a partner, a rating scale may be determined by the management team, and the scale may be the same or different from the scale used to rate the partner. If the rating is not acceptable, the process may flow to block 1015, where the information delivery system may perform operations to restrict the amount of filtered information that is pushed on behalf of the user. Other operations may also be performed when the rating is not acceptable. For example, warnings may be sent to the user to notify the user of the low rating; requests may be sent to the user to notify the user to update the user's life state; the status of the user may be changed, etc. as shown inblock 1020. From the block 1010, if the rating is acceptable, the process may flow back to block 1005 to collect more ratings. It is possible that the rating of the user may be evaluated after collecting a large collection of rating from many partners. From theblock 1020, the process may also flow back to the block 1005. The user rating operations may be performed periodically or as needed. Embodiments of the invention may merely notify the users of the low rating but may not cause any impact on the amount of filtered information being pushed to the user. As such the operations described in block 1015 may not be performed. In these situations, the user may use the user ratings confidentially to manually work on improving the user's life state or maybe just understanding it better. -
FIG. 11 illustrates an example flow diagram of a process that may be used to enable accessing the user's life state, in accordance with some embodiments. It may be noted that the operations described in the different blocks of this process may not necessarily need to be performed in sequence and some may be performed by different partners. The blocks are meant to convey different ways that the user's life state may be used by the partners in various situations. In all operations, the information delivery server is configured to enable the partners to access the user's life state. - At block 1105, the user's life state may be used by a partner to customize its website or web pages. This may be useful when the user visits the partner's website. Information not consistent with the user's life state may be filtered from the website and only relevant information may be displayed. The partner may associate the user id of the user with the user's life state from the information delivery system, retrieve (or refresh or update) the user's life state, and customize its web pages accordingly. At block 1110, the user's life state may be used by a search partner to filter its search results when the user visits the site to perform a search. Search results not consistent with the user's life state may be filtered. The search partner may provide a toggle to enable the user to activate or deactivate the filtering of the search results based on the user's life state. At
block 1115, the partners may participate in a marketplace (e.g., in the form of an auction) and negotiate to access the user's life state. The access may be based on the user's security and gatekeeping settings and may be in bulk form (e.g., thousands of life states per purchase). - From the descriptions above, embodiments of the inventions may include a method for receiving information about and relevant to a user's life from a user who is a registered member of an information delivery system. The information about and relevant to the user's life includes at least (a) demographic information, (b) ethnic information, (c) social information, and (d) psychological information. The method also includes enabling the user to grant permissions to a partner to access the information about and relevant to the user's life, wherein the partner is also a registered member of the information delivery system, and wherein the user grants the permission to the partner by controlling visibility of the partner to the information about and relevant to the user's life and by controlling frequency, extent, type, and volume of filtered information that is pushed by the partner. In addition, the method includes receiving the filtered information from the partner, wherein the filtered information is generated by the partner based on applying the information about and relevant to the user's life to information of the partner, wherein the information about and relevant to the user's life is provided by the user using a client computing system associated with the information delivery system, and wherein the information about and relevant to the user's life is received by a server computing system associated with the information delivery system. Embodiments of the invention also include a computer-readable media that includes instructions that perform the operations similar to the method described above.
- Although embodiments of this invention have been fully described with reference to the accompanying drawings, it is to be noted that various changes and modifications will become apparent to those skilled in the art. Such changes and modifications are to be understood as being included within the scope of embodiments of this invention as defined by the appended claims. For example, specific examples are provided for shapes and materials; however, embodiments include those variations obvious to a person skilled in the art, such as changing a shape or combining materials together. Further, while some specific embodiments of the invention have been shown the invention is not to be limited to these embodiments. For example, several specific modules have been shown. Each module performs a few specific functions. However, all of these functions could be grouped into one module or even broken down further into scores of modules. Most functions performed by electronic hardware components may be duplicated by software emulation and vice versa. The invention is to be understood as not limited by the specific embodiments described herein, but only by scope of the appended claims.
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/208,785 US20210209668A1 (en) | 2011-03-03 | 2021-03-22 | Method And System For Maintaining Integrity Of A User's Life State Information |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161448817P | 2011-03-03 | 2011-03-03 | |
US13/101,058 US8484098B2 (en) | 2011-03-03 | 2011-05-04 | System for information delivery facilitating partner rating of users and user ratings of partners |
US13/913,095 US9740772B2 (en) | 2011-03-03 | 2013-06-07 | Method and system for maintaining integrity of a user's life state information |
US15/658,268 US10657576B2 (en) | 2011-03-03 | 2017-07-24 | Method and system for maintaining integrity of a user'S life state information |
US16/876,848 US20200279316A1 (en) | 2011-03-03 | 2020-05-18 | Method And System For Maintaining Integrity Of A User's Life State Information |
US17/208,785 US20210209668A1 (en) | 2011-03-03 | 2021-03-22 | Method And System For Maintaining Integrity Of A User's Life State Information |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/876,848 Continuation US20200279316A1 (en) | 2011-03-03 | 2020-05-18 | Method And System For Maintaining Integrity Of A User's Life State Information |
Publications (1)
Publication Number | Publication Date |
---|---|
US20210209668A1 true US20210209668A1 (en) | 2021-07-08 |
Family
ID=46753870
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/101,058 Active 2031-08-31 US8484098B2 (en) | 2011-03-03 | 2011-05-04 | System for information delivery facilitating partner rating of users and user ratings of partners |
US13/913,095 Active 2031-05-06 US9740772B2 (en) | 2011-03-03 | 2013-06-07 | Method and system for maintaining integrity of a user's life state information |
US15/658,268 Active US10657576B2 (en) | 2011-03-03 | 2017-07-24 | Method and system for maintaining integrity of a user'S life state information |
US16/876,848 Abandoned US20200279316A1 (en) | 2011-03-03 | 2020-05-18 | Method And System For Maintaining Integrity Of A User's Life State Information |
US17/208,785 Pending US20210209668A1 (en) | 2011-03-03 | 2021-03-22 | Method And System For Maintaining Integrity Of A User's Life State Information |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/101,058 Active 2031-08-31 US8484098B2 (en) | 2011-03-03 | 2011-05-04 | System for information delivery facilitating partner rating of users and user ratings of partners |
US13/913,095 Active 2031-05-06 US9740772B2 (en) | 2011-03-03 | 2013-06-07 | Method and system for maintaining integrity of a user's life state information |
US15/658,268 Active US10657576B2 (en) | 2011-03-03 | 2017-07-24 | Method and system for maintaining integrity of a user'S life state information |
US16/876,848 Abandoned US20200279316A1 (en) | 2011-03-03 | 2020-05-18 | Method And System For Maintaining Integrity Of A User's Life State Information |
Country Status (1)
Country | Link |
---|---|
US (5) | US8484098B2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8254535B1 (en) * | 2006-11-14 | 2012-08-28 | Nuance Communications, Inc. | Performing actions for users based on spoken information |
US8484098B2 (en) * | 2011-03-03 | 2013-07-09 | Michael Bilotta | System for information delivery facilitating partner rating of users and user ratings of partners |
US8630860B1 (en) * | 2011-03-03 | 2014-01-14 | Nuance Communications, Inc. | Speaker and call characteristic sensitive open voice search |
US9092642B2 (en) | 2012-09-27 | 2015-07-28 | Intel Corporation | Managing personal privacy settings |
US20190188230A1 (en) * | 2014-03-12 | 2019-06-20 | Michael Bilotta | Systems and methods for an information-based life view |
US20150261401A1 (en) * | 2014-03-12 | 2015-09-17 | Michael Bilotta | Information based Life view |
US20190102819A1 (en) * | 2014-08-12 | 2019-04-04 | Michael Bilotta | Information Marketplace |
US20160048847A1 (en) * | 2014-08-12 | 2016-02-18 | Michael Bilotta | Information Marketplace |
US10548005B2 (en) * | 2016-07-18 | 2020-01-28 | Lg Electronics Inc. | Method for security of user equipment connection identifier in wireless communication system and apparatus therefor |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070067297A1 (en) * | 2004-04-30 | 2007-03-22 | Kublickis Peter J | System and methods for a micropayment-enabled marketplace with permission-based, self-service, precision-targeted delivery of advertising, entertainment and informational content and relationship marketing to anonymous internet users |
US20090138335A1 (en) * | 2007-08-13 | 2009-05-28 | Universal Passage, Inc. | Method and system for providing identity template management as a part of a marketing and sales program for universal life stage decision support |
US20090276825A1 (en) * | 2006-06-22 | 2009-11-05 | Nec Corporation | Sharing management system, sharing management method and program |
US20100257577A1 (en) * | 2009-04-03 | 2010-10-07 | International Business Machines Corporation | Managing privacy settings for a social network |
US20100280965A1 (en) * | 2009-04-30 | 2010-11-04 | Nokia Corporation | Method and apparatus for intuitive management of privacy settings |
US20110167059A1 (en) * | 2010-01-07 | 2011-07-07 | Farzan Fallah | Computer based methods and systems for establishing trust between two or more parties |
US20120173397A1 (en) * | 2011-01-03 | 2012-07-05 | Joseph Elwell | Method and system for obtaining user data from third parties |
US9098833B2 (en) * | 2008-02-04 | 2015-08-04 | Toshiba America Research, Inc. | Populating and managing (PAM) contact information in the network address book (NAB) |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6029195A (en) | 1994-11-29 | 2000-02-22 | Herz; Frederick S. M. | System for customized electronic identification of desirable objects |
US5848396A (en) | 1996-04-26 | 1998-12-08 | Freedom Of Information, Inc. | Method and apparatus for determining behavioral profile of a computer user |
US6138142A (en) | 1996-12-20 | 2000-10-24 | Intel Corporation | Method for providing customized Web information based on attributes of the requester |
US6182068B1 (en) | 1997-08-01 | 2001-01-30 | Ask Jeeves, Inc. | Personalized search methods |
US6343274B1 (en) * | 1998-09-11 | 2002-01-29 | Hewlett-Packard | Apparatus and method for merchant-to-consumer advertisement communication system |
US6480835B1 (en) | 1998-12-31 | 2002-11-12 | Intel Corporation | Method and system for searching on integrated metadata |
US6539392B1 (en) | 2000-03-29 | 2003-03-25 | Bizrate.Com | System and method for data collection, evaluation, information generation, and presentation |
US6687696B2 (en) | 2000-07-26 | 2004-02-03 | Recommind Inc. | System and method for personalized search, information filtering, and for generating recommendations utilizing statistical latent class models |
US20020078045A1 (en) | 2000-12-14 | 2002-06-20 | Rabindranath Dutta | System, method, and program for ranking search results using user category weighting |
US20030220913A1 (en) | 2002-05-24 | 2003-11-27 | International Business Machines Corporation | Techniques for personalized and adaptive search services |
US7069308B2 (en) | 2003-06-16 | 2006-06-27 | Friendster, Inc. | System, method and apparatus for connecting users in an online computer system based on their relationships within social networks |
US7895595B2 (en) | 2003-07-30 | 2011-02-22 | Northwestern University | Automatic method and system for formulating and transforming representations of context used by information services |
US20050071328A1 (en) | 2003-09-30 | 2005-03-31 | Lawrence Stephen R. | Personalization of web search |
US7693827B2 (en) | 2003-09-30 | 2010-04-06 | Google Inc. | Personalization of placed content ordering in search results |
US7165119B2 (en) | 2003-10-14 | 2007-01-16 | America Online, Inc. | Search enhancement system and method having rankings, explicitly specified by the user, based upon applicability and validity of search parameters in regard to a subject matter |
US20050160083A1 (en) | 2004-01-16 | 2005-07-21 | Yahoo! Inc. | User-specific vertical search |
US7716223B2 (en) | 2004-03-29 | 2010-05-11 | Google Inc. | Variable personalization of search results in a search engine |
US8620915B1 (en) | 2007-03-13 | 2013-12-31 | Google Inc. | Systems and methods for promoting personalized search results based on personal information |
US7139157B2 (en) | 2004-07-30 | 2006-11-21 | Kyocera Wireless Corp. | System and method for protecting a load from a voltage source |
US7882039B2 (en) | 2004-09-15 | 2011-02-01 | Yahoo! Inc. | System and method of adaptive personalization of search results for online dating services |
US7620628B2 (en) | 2004-12-06 | 2009-11-17 | Yahoo! Inc. | Search processing with automatic categorization of queries |
US20080010128A1 (en) * | 2006-06-14 | 2008-01-10 | Lightspeed Studios Inc. | Image-taking system |
US7761464B2 (en) | 2006-06-19 | 2010-07-20 | Microsoft Corporation | Diversifying search results for improved search and personalization |
US7783636B2 (en) | 2006-09-28 | 2010-08-24 | Microsoft Corporation | Personalized information retrieval search with backoff |
WO2008141256A2 (en) * | 2007-05-10 | 2008-11-20 | Mary Kay Hoal | Social networking system |
US8244721B2 (en) | 2008-02-13 | 2012-08-14 | Microsoft Corporation | Using related users data to enhance web search |
US20110145057A1 (en) * | 2009-12-14 | 2011-06-16 | Chacha Search, Inc. | Method and system of providing offers by messaging services |
US20110208589A1 (en) * | 2010-02-24 | 2011-08-25 | Research In Motion Limited | System and method for displaying an advertisement on a mobile device |
US8484098B2 (en) * | 2011-03-03 | 2013-07-09 | Michael Bilotta | System for information delivery facilitating partner rating of users and user ratings of partners |
-
2011
- 2011-05-04 US US13/101,058 patent/US8484098B2/en active Active
-
2013
- 2013-06-07 US US13/913,095 patent/US9740772B2/en active Active
-
2017
- 2017-07-24 US US15/658,268 patent/US10657576B2/en active Active
-
2020
- 2020-05-18 US US16/876,848 patent/US20200279316A1/en not_active Abandoned
-
2021
- 2021-03-22 US US17/208,785 patent/US20210209668A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070067297A1 (en) * | 2004-04-30 | 2007-03-22 | Kublickis Peter J | System and methods for a micropayment-enabled marketplace with permission-based, self-service, precision-targeted delivery of advertising, entertainment and informational content and relationship marketing to anonymous internet users |
US20090276825A1 (en) * | 2006-06-22 | 2009-11-05 | Nec Corporation | Sharing management system, sharing management method and program |
US20090138335A1 (en) * | 2007-08-13 | 2009-05-28 | Universal Passage, Inc. | Method and system for providing identity template management as a part of a marketing and sales program for universal life stage decision support |
US9098833B2 (en) * | 2008-02-04 | 2015-08-04 | Toshiba America Research, Inc. | Populating and managing (PAM) contact information in the network address book (NAB) |
US20100257577A1 (en) * | 2009-04-03 | 2010-10-07 | International Business Machines Corporation | Managing privacy settings for a social network |
US20100280965A1 (en) * | 2009-04-30 | 2010-11-04 | Nokia Corporation | Method and apparatus for intuitive management of privacy settings |
US20110167059A1 (en) * | 2010-01-07 | 2011-07-07 | Farzan Fallah | Computer based methods and systems for establishing trust between two or more parties |
US20120173397A1 (en) * | 2011-01-03 | 2012-07-05 | Joseph Elwell | Method and system for obtaining user data from third parties |
Also Published As
Publication number | Publication date |
---|---|
US10657576B2 (en) | 2020-05-19 |
US20200279316A1 (en) | 2020-09-03 |
US20130275445A1 (en) | 2013-10-17 |
US8484098B2 (en) | 2013-07-09 |
US20120226569A1 (en) | 2012-09-06 |
US20170323012A1 (en) | 2017-11-09 |
US9740772B2 (en) | 2017-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210209668A1 (en) | Method And System For Maintaining Integrity Of A User's Life State Information | |
US11863310B1 (en) | Aggregating user web browsing data | |
US11954186B2 (en) | System and method for effectuating data countermeasures | |
US20180232535A1 (en) | Data privacy management system and method | |
US11372987B1 (en) | System and method for controlling data using containers | |
US20120278127A1 (en) | Generating product recommendations based on dynamic product context data and/or social activity data related to a product | |
JP5707036B2 (en) | DISCLOSURE CONTROL FUNCTION PROVIDING DEVICE, SYSTEM, METHOD, AND PROGRAM | |
US20120158792A1 (en) | Aggregated profile and online concierge | |
US10984129B2 (en) | Information based life view | |
US10867066B2 (en) | Virtual reality information delivery system | |
US20210398182A1 (en) | Information Marketplace | |
Wu et al. | CEPTM: A Cross‐Edge Model for Diverse Personalization Service and Topic Migration in MEC | |
US20160048847A1 (en) | Information Marketplace | |
US20230074364A1 (en) | Privacy-preserving virtual email system | |
US11681823B2 (en) | Information based life view | |
Klien et al. | Competition and consumer privacy in the cyberspace market. | |
US20150261401A1 (en) | Information based Life view | |
EP4345643A1 (en) | Distributing large amounts of global metadata using object files |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |