US20100145954A1 - Role Based Search - Google Patents
Role Based Search Download PDFInfo
- Publication number
- US20100145954A1 US20100145954A1 US12/329,284 US32928408A US2010145954A1 US 20100145954 A1 US20100145954 A1 US 20100145954A1 US 32928408 A US32928408 A US 32928408A US 2010145954 A1 US2010145954 A1 US 2010145954A1
- Authority
- US
- United States
- Prior art keywords
- search
- demographic
- user
- information
- category
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims abstract description 18
- 238000000034 method Methods 0.000 claims description 39
- 230000008520 organization Effects 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims 1
- 238000012423 maintenance Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- HEFNNWSXXWATRW-UHFFFAOYSA-N Ibuprofen Chemical compound CC(C)CC1=CC=C(C(C)C(O)=O)C=C1 HEFNNWSXXWATRW-UHFFFAOYSA-N 0.000 description 3
- 229940013181 advil Drugs 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 235000013305 food Nutrition 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- JLYFCTQDENRSOL-VIFPVBQESA-N dimethenamid-P Chemical compound COC[C@H](C)N(C(=O)CCl)C=1C(C)=CSC=1C JLYFCTQDENRSOL-VIFPVBQESA-N 0.000 description 2
- 229940079593 drug Drugs 0.000 description 2
- 239000003814 drug Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 235000006508 Nelumbo nucifera Nutrition 0.000 description 1
- 240000002853 Nelumbo nucifera Species 0.000 description 1
- 235000006510 Nelumbo pentapetala Nutrition 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- NNKKTZOEKDFTBU-YBEGLDIGSA-N cinidon ethyl Chemical compound C1=C(Cl)C(/C=C(\Cl)C(=O)OCC)=CC(N2C(C3=C(CCCC3)C2=O)=O)=C1 NNKKTZOEKDFTBU-YBEGLDIGSA-N 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000000875 corresponding effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000007723 transport mechanism Effects 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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
Definitions
- FIG. 5 shows an example search result tailoring module of the server of FIG. 2 .
- FIG. 7 shows another example embodiment of the search user interface of FIG. 6 with the user's demographic identity shown.
- FIG. 8 shows a flowchart of an example method for creating prioritized search results based on demographic information and search term and destination site categorization.
- Server 106 retrieves demographic information 112 from demographic information source 110 .
- Demographic information 112 is analyzed and categorized into demographic categories by server 106 or another computing device.
- the demographic categories can overlap and need not be mutually exclusive.
- categorized demographic information repository 114 is used to store the categorized demographic information 112 for later use.
- categorized demographic information repository 114 may be included on server 106 in a variety of formats and on a variety of mediums. It may also be stored on a different server or across a multitude of servers.
- a user identification system 116 identifies users as they connect to the server through client 102 or client 104 .
- user identification system 116 identifies the user of clients 102 and 104 through the users' usernames and accounts.
- Server 106 uses user identification system 116 to identify individual users so that server 106 can track the search usage of users of clients 102 and 104 .
- each user is assigned a unique demographic identity by user identification system 116 that is stored in user demographic identity repository 118 .
- User demographic identity repository 118 is a repository that stores each individual user's unique demographic identity for later use. This unique demographic identity associates the user with one or more of the demographic categories found in categorized demographic information repository 114 . In example embodiments, this demographic identity is anonymous, only containing information necessary for the proper function of system 100 . In example embodiments, this unique demographic identity can be extracted from the demographic information source 110 and stored in user demographic identity repository 118 . In other example embodiments, the user's unique demographic identity may be stored on the demographic information source 110 and accessed directly by the user identification system 116 .
- User identification system 116 can also be established as part of server 106 , on another server, or at a different location.
- the user's unique demographic identity as identified by user identification system 116 and stored in user demographic identity repository 118 is used to create, maintain, and categorize a categorized search term repository 120 and a categorized destination site repository 122 using the demographic categories found in categorized demographic information repository 114 .
- categorized search term repository 120 is a database containing search terms used by users of the system.
- the database is categorized by various demographic criteria, so that users sharing a particular demographic criterion can use the search terms most common to other users sharing that particular demographic criterion.
- categorized destination site repository 122 is a database containing destination sites visited by users of the system.
- destination sites are those chosen from a search result list. It is also contemplated that destination sites could be any site visited by a user, whether or not it was visited from a result list.
- the database is categorized by various demographic criteria, so that users sharing a particular demographic criterion can use the destination sites most common to other users sharing that particular demographic criterion.
- the usage information of the user of client 102 is assigned to various demographic categories pertaining to the current user's unique demographic identity and added to categorized search term repository 120 and categorized destination site repository 122 . This assignment will be discussed in further detail below.
- Example server 106 typically includes at least one processing unit and system memory.
- the system memory may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two.
- the system memory typically includes an operating system suitable for controlling the operation of a networked personal computer, such as the WINDOWS® operating systems from Microsoft Corporation of Redmond, Wash. or a server, such as Windows Server 2008, also from Microsoft Corporation of Redmond, Wash.
- the system memory may also include one or more software applications and may include program data.
- the server may have additional features or functionality.
- the server may also include additional data storage devices including computer readable storage media (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape.
- Computer readable storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.
- System memory, removable storage, and non-removable storage are all examples of computer readable storage media.
- Computer readable storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD, DVD, Blu-Ray or other optical storage media, magnetic cassettes, magnetic tape, or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by server 106 . Any such computer storage media may be part of server 106 .
- Server 106 may also have input device(s) such as a keyboard, mouse, pen, camera, voice input device, touch input device, etc.
- Output device(s) such as a display, speakers, printer, etc. may also be included.
- Server 106 may also contain communication connections that allow the device to communicate with other computing devices (e.g., clients 102 and 104 ) over a network, such as network 108 , in a distributed computing environment, for example, an intranet or the Internet.
- a communication connection is an example of communication media.
- Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media.
- modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
- communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
- wired media such as a wired network or direct-wired connection
- wireless media such as acoustic, RF, infrared and other wireless media.
- computer readable media includes both storage media and communication media.
- Clients 102 and 104 can be configured in a manner similar to that of server 106 above.
- FIG. 2 shows a detailed view of the logical portions of server 106 .
- Server 106 includes a demographic identification module 202 , a search term and destination site categorizing module 204 , and a search result tailoring module 206 .
- all or some of the operation of these different modules can be spread across several servers or other computing devices.
- Demographic identification module 202 retrieves, categorizes, and stores demographic information from a demographic information source.
- the demographic information is first retrieved from a demographic information source.
- the demographic information is categorized based on at least one demographic criterion.
- the categorized demographic information is stored for later use.
- FIG. 3 shows demographic identification module 202 of FIG. 2 in further detail.
- Demographic identification module 202 includes an information retrieving module 302 , an information categorization module 304 , and an information storage module 306 .
- Information retrieving module 302 is used to retrieve demographic information 112 from demographic information source 110 .
- demographic information source 110 contains demographic information about organizations, including businesses, institutions, and other legal entities.
- demographic information source 110 is an employee directory server for a corporation.
- the demographic information source could be a server running the ACTIVE DIRECTORY® directory service from Microsoft Corporation of Redmond, Wash.
- demographic information source 110 is a server running the ACTIVE DIRECTORY® directory service which contains a central list of all of a corporation's employees, as well as general information about the organization and specific information about each employee, including all employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. This information is extracted by information retrieving module 302 from demographic information source 110 as demographic information 112 .
- all personally identifiable information is removed from demographic information 112 to mitigate privacy concerns.
- the information may be anonymized.
- Information about each individual in demographic information 112 is anonymized by being associated with an anonymized user id.
- the anonymized user id can be designed so that it is difficult, if not impossible, to retrieve personal information about any particular individual from information associated with the anonymized user id or the anonymized user id itself.
- Demographic information 112 can be stored in a variety of formats and on a variety of mediums. In example embodiments, demographic information 112 is only temporarily stored in its current state and is further processed by server 106 or another computing device in an information categorization module 304 .
- Information categorization module 304 is used to analyze and categorize extracted demographic information 112 received from information retrieving module 302 .
- Demographic information 112 is analyzed and categorized by certain criteria, such as the organization's general field of operation and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. For example, if an employee has the term “marketing” in her title, she may be categorized as belonging to the category “marketing.” Similarly, if a different employee has the term “sales” in his title, he may be categorized as belonging to the category “sales.”
- Information storage module 306 is used to store the analyzed and categorized demographic information 112 . As demographic information 112 is analyzed and categorized by information categorization module 304 , it is stored for later use by information storage module 306 in categorized demographic information repository 114 . Categorized demographic information repository 114 may be local on media attached to server 106 or remote on a different server or other device.
- search term and destination site categorizing module 204 creates, maintains, and indexes search term and destination site repositories.
- Search term and destination site repositories are used to keep track of the search terms used and destination sites visited by members of particular demographic categories.
- the repositories are indexed so that the most relevant search terms and destination sites for a particular demographic category receive higher priority than less relevant search terms and destination sites.
- FIG. 4 shows search term and destination site categorizing module 204 of FIG. 2 in further detail.
- Search term and destination site categorizing module 204 includes a search repository creation module 402 , a user identification module 404 , a search repository maintenance module 406 , a search term indexing module 408 , and a destination site indexing module 410 .
- Search repository creation module 402 is used to establish one or more search repositories.
- the categorized search term repository 120 and the categorized destination site repository 122 are created.
- Categorized search term repository 120 and categorized destination site repository 122 are cross referenced with one another.
- a single categorized repository is created for both search terms and destination sites or a multitude of categorized repositories could be created.
- other example embodiments may have either a categorized search term repository 120 or a categorized destination site repository 122 , but not both. It is also contemplated that other categorized repositories covering other aspects of searching might also be created.
- User identification module 404 is used to identify the user of client 102 or 104 .
- user identification module 404 receives the current user's unique demographic identity from user identification system 116 .
- server 106 can determine user's unique demographic identity itself, without user identification system 116 .
- the current user's unique demographic identity can be determined based on her worksite user id, by another user id (such as a WINDOWS LIVETM ID, a GOOGLETM Account id, or Yahoo! ID), by manual selection by the user, or by some other means.
- Search repository maintenance module 406 is used to maintain the search repositories created by search repository creation module 402 .
- search terms used in the search query are received by server 106 and added to categorized search term repository 120 by search repository maintenance module 406 .
- Categorized search term repository 120 contains information about specific search terms used, by whom the terms are used, and with what frequency members of a particular business demographic category use the terms. This information is collected, stored, and maintained at various layers of abstraction, from narrower categories, such as the specific job title or description at a particular corporation to all the people in “sales” at all corporations in the industry.
- the categorized destination site repository 122 is updated by search repository maintenance module 406 .
- search repository maintenance module 406 cross references the categorized search term repository 120 and categorized destination site repository 122 .
- Search repository maintenance module 406 continually updates and maintains categorized search term repository 120 and categorized destination site repository 122 .
- Search term indexing module 408 is used to index the search terms received by server 106 from client 102 , and all other clients, during every search.
- the search terms are indexed by occurrence, so that the most commonly used search terms for a particular demographic category are indexed higher than less commonly used search terms in that same demographic category.
- each search term used by a specific demographic category is compared against all other search terms used by the specific demographic category.
- Search term indexing module 408 calculates the percentage of searches run with a particular search term in a specific demographic category out of the total searches ran for that particular search term across all the demographic categories combined. For example, the term “clinical trial” might be included in 0.5 percent of all searches done by the demographic category “medical professionals,” but is only included in about 0.001 percent of searches for an average user.
- search term indexing module 408 examines all of the search terms for which there was a satisfactory click through pattern.
- the click through pattern is not a satisfactory click through pattern if the user misspells the word and is prompted with an alternate spelling and chooses the alternate spelling. For example, many medical professionals might mistype “clinical trial” by typing “clinecal trial.” This would lead to no click through for the search term “clinecal trial.”
- search term indexing module 408 presents the user who mistyped “clinical trial” as “clinecal trial” with a prompt indicating the correct spelling of “clinical trial” as a potential alternative search query.
- search term indexing module 408 prompts the user with a “did you mean” prompt before the correct spelled search term.
- search terms can be indexed by some other criterion.
- search term indexing module 408 indexes the frequency which people in the same demographic categories, such as people in the same field, job titles, and departments or with the same responsibilities, roles, functions, job descriptions, and responsibility levels, search particular terms. As always, this list is not exhaustive and other criteria could also be used to categorize and index. Search term indexing module 408 can also keep track of the frequency of each search term in the aggregate compared against other search terms. In example embodiments where there is no categorized search term repository 120 or a combined repository, search term indexing module 408 may be omitted.
- server 106 will determine in search term indexing module 408 which search terms are most representative of a specific demographic category by comparing which words are used most often in that specific demographic category. Search terms used most frequently in a particularly demographic category may be useful to the members of that demographic category when the users are searching for information.
- the categorizing and indexing of search terms in categorized search term repository 120 is a way of identifying what have proven to be successful search terms for a particular demographic category. Thus, users who need assistance with forming their searches using terms relevant to their demographic categories will be able to benefit from the search expertise of others in their demographic categories.
- each demographic category will have its own unique set of search terms, indexed highest to lowest. As users continue to use the search, the indexes will become more refined and will continually lead to better results.
- the term “patent” may be used primarily by patent attorneys, paralegals, patent agents, and patent examiners in the legal and patent procurement fields.
- the term “patent” would likely be ranked higher by search term indexing module 408 in these demographic categories than it would in the demographic categories established for employees of a hospital.
- the term “stent” may primarily be used by doctors, nurses, and medical device manufactures in the medical and medical device manufacture fields. Thus, the term “stent” would rank higher in these demographic categories than it would in the demographic categories of employees of an advertising agency.
- product placement may primarily be used by account managers, creative designers, and commercial photographers at an advertising agency, but it may also be used by in house marketing and advertising employees of a food processing corporation.
- product placement may rank higher in the demographic categories of account managers at the advertising agency, than it would of the in house marketers of the food processing corporation, but it would rank higher in the demographic category for the in house marketers than it would in a demographic category containing accountants at the same food processing corporation.
- a particular search term may index higher for one particular job title, such as salesperson, than it would for another job title, such as accountant.
- a particular search term may also index higher for a particular responsibility level than it would for another. For example, a seasoned partner at an accounting firm may have a substantially different index for the term “earned income” than does a newly employed accounting associate.
- destination site indexing module 410 is used to index the destination sites visited by the user of client 102 .
- the destination sites are indexed by occurrence, so that the most commonly visited destination sites for a particular demographic category are indexed higher than less commonly visited destination sites in that demographic category. It is contemplated that the destination sites could also be indexed using other criteria, including relevance, authoritativeness, language, etc.
- Destination site indexing module 410 indexes the frequency at which people in the same demographic category visit particular sites in the results list. Demographic categories may include those in the same field, job titles, and departments or people with the same responsibilities, roles, functions, job descriptions, and responsibility levels. It can also keep track of the frequency at which each site in the result list is visited in the aggregate. Thus, each demographic category will have its own unique set of destination sites, indexed highest to lowest.
- destination site indexing module 410 only indexes sites visited by users. Specifically, a destination site will not be added to the destination site index by destination site indexing module 410 until a user has actually visited it. In example embodiments, destination site indexing module 410 indexes sites after they have received a quality visit. Specifically, a site is added to the destination site index by destination site indexing module 410 if the user does not return to the search results quickly after visiting the destination site. Because users can often quickly discern upon visiting a destination site whether it is a good or bad result, this is a reliable indicator of the quality of the visit. In example embodiments, the quality of destination sites can also be determined by the users themselves through a ranking process. For example, each user is able to rank destination sites after visiting them by organizing, editing, and/or annotating the search results in the results list, as well as sharing such information with other users.
- the destination sites visited most frequently in a particular demographic category may be useful to the members of that demographic category when searching for information.
- the categorizing and indexing of destination sites in categorized destination site repository 122 is a way of identifying what have proven to be useful destination sites for a particular demographic category.
- search result tailoring module 206 creates search filters and implements the search filters usage in a user interface.
- Search filters are created for particular demographic categories based on the indexes in the search term and destination site repositories.
- the search filters are created so that results that contain the search terms indexed highest for the particular demographic category will be prioritized above other results.
- the filters are also created so that results with higher priority in the destination site index will be prioritized above other results.
- FIG. 5 shows search result tailoring module 206 of FIG. 2 in further detail.
- Search result tailoring module 206 includes a search filter creation module 502 and a user interface module 504 .
- search filter creation module 502 creates search filters for particular demographic categories.
- these filters are search macros.
- the filters are created using information found in categorized demographic information repository 114 and both categorized search term repository 120 and categorized destination site repository 122 .
- the filters enable prioritization of search results based on particular search terms and destination sites having various indexes for the particular demographic categories of the current user of client 102 .
- a single user might fall into more than one demographic category and filters will be tailored appropriately to accommodate multiple demographic categories by search filter creation module 502 .
- search filters tailored for automobile sales staff and automobile mechanics will likely produce more similar results than search filters tailored for automobile sales staff and computer sales staff.
- search filters tailored for automobile sales staff and computer sales staff would likely produce more similar results than search filters tailored for automobile sales staff and computer repair technicians.
- both small and large distinctions between the demographic identities of particular users will influence which filter they will use as a default.
- the filters created by search filter creation module 502 use an algorithm which takes into account the search terms and destination sites indexed highest for the user's particular demographic categories.
- the algorithm creates a filter which will sort the results of a search by placing sites higher in the search results that include the higher ranked search terms from categorized search term repository 120 and the higher ranked destination sites from categorized destination site repository 122 .
- User interface module 504 enables the user of client 102 to run a search tailored to the user's demographic category by using a search filter created by search filter creation module 502 .
- user interface module 504 allows the user to use the default filter created for her based on her unique demographic identity as determined by user identification system 116 and user identification module 404 .
- the user can switch from her default filter to use a more appropriate filter on a temporary or indefinite basis.
- the user can change from using the filter corresponding to her unique demographic identity by modifying all or some of her unique demographic identity.
- information about her future searches will be categorized by demographic identification module 202 and by search repository maintenance module 406 using the user's modified demographic identity.
- when the user modifies her unique demographic identity it does not affect the operation of demographic identification module 202 or search repository maintenance module 406 . In this case, information about her future searches will continue to be categorized based on her default unique demographic identity by server 106 in demographic identification module 202 and search repository maintenance module 406 .
- FIG. 6 shows an example embodiment of a search user interface 600 where the user's demographic identity is not shown.
- the example search user interface 600 includes an identification bar 602 and a search query bar 604 into which a user inputs search terms.
- Search user interface 600 also includes a search button 606 , which is clickable by the user. Once the user has inputted appropriate search terms, the user can click search button 606 . Once search button 606 is pressed, the query is sent to user interface module 504 on server 106 .
- user interface module 504 receives the query and performs a search using a search filter correlating with the user's unique demographic identity. For example, in one embodiment, user interface module 504 receives the query from the user and appends additional demographic category tailored terms and rules to the query before initiating the search. For example, if a member of a “medical professional” demographic category searches for “Advil,” rules are appended to the query to prefer results including “clinical trial” and “New England Journal of Medicine.” The search is run with the modified query, resulting in tailored results.
- user interface module 504 receives the query from the user and performs the search, displaying the unfiltered results.
- the user interface module 504 suggests refinements based on the user's demographic category or categories. For example, user interface module 504 suggests refinements to a search for “Advil” by a member of a “medical professional” demographic category.
- user interface module 504 may prompt the user that she may be looking for Advil Clinical Trials of that she may find the results she is looking for in the Journal of the American Medical Association, the New England Journal of Medicine, etc.
- the default listing from the search is manipulated at the server level to be relevant to the user's demographic categories and the search term and destination site indexes.
- the user can be presented with alterative spellings of words that appear to be mistyped.
- these alternative spellings are customized based on the user's specific demographic categories. For example, when the search term “tent” is included in a search query done by a member of a “medical professional” demographic category, user interface module 504 suggests the alternative spelling “stent” because “stent” is a term indexed in the medical professional index, while “tent” is not.
- the results of the search are displayed in search user interface 600 by user interface module 504 .
- the results of the search are displayed in other places, such as a new browser window displayed on client 102 , in a specific search results window displayed on client 102 , or in a specific toolbar component of a piece of business software (such as the OUTLOOK® messaging and collaboration client, Word, or POWERPOINT® presentation graphics program, all by Microsoft Corporation of Redmond, Wash.).
- Example search user interface 600 also contains an information toggle button 610 which allows the user to toggle between showing the user's current demographic information or not.
- FIG. 6 shows search user interface in a state where the user's current demographic identity information is not displayed.
- information toggle button 610 is pressed, the search user interface is updated to show the user's current demographic identity information.
- information toggle button 610 is also visually changed to indicate whether the toggle is set to show the user's current demographic identity information or not.
- FIG. 7 shows an example embodiment of a search user interface 600 where the user's demographic identity is shown.
- the information toggle button 610 has been pressed and the user's current demographic identity information is shown in user demographic identity status section 702 .
- Information toggle button 610 has been visually changed to indicate that the user's current demographic identity information is being show and that the user can press the information toggle button 610 to switch search user interface 600 , so that the user's current demographic identity information is not shown, as in FIG. 6 .
- user demographic identity status section 702 includes status information about the user's industry on user industry status line 704 .
- user industry status line 704 indicates that the user's industry is “auto dealership.”
- a user industry edit link 706 allows the user to override and change her industry.
- User demographic identity status section 702 includes status information about the user's responsibilities on user responsibility status line 708 .
- user responsibility status line 708 indicates that the user's responsibility is “sales.”
- a user responsibility edit link 710 allows the user to override and change her responsibility.
- User demographic identity status section 702 includes status information about the user's company size on user company size status line 712 .
- user company size status line 712 indicates that the user's company size is “small.”
- a user company size edit link 714 allows the user to override and change her company size.
- User demographic identity status section 702 includes status information about the user's responsibility level on user responsibility level status line 716 .
- user responsibility level status line 716 indicates that the user's level is “director.”
- a user responsibility level edit link 718 allows the user to override and change her level.
- a user may indicate she desires to modify her demographic identity by toggling the search user interface 600 to see more information using information toggle button 610 .
- search user interface 600 will look similar to FIG. 7 . It will show user demographic identity status section 702 , where the user can see user industry status line 704 , user responsibility status line 708 , user company size status line 712 , and user responsibility level status line 716 . In other embodiments, more or fewer demographic options can be displayed in user demographic identity status section 702 .
- Each demographic option is editable and may be temporarily or indefinitely modified by the user.
- the user industry status shown on user industry status line 704 can be modified by selecting the user industry edit link 706 .
- the user responsibility status shown on user responsibility status line 708 can be modified by selecting the user responsibility edit link 710 .
- the user company size shown on user company size status line 712 can be modified by selecting the user company size edit link 714 .
- the user's responsibility level shown on user responsibility level status line 716 can be modified by selecting the user responsibility level edit link 718 . Any other available user demographic options could also be modified in a similar way.
- User demographic identity status section 702 also includes a reset to default demographic identity button 720 .
- reset to default demographic identity button 720 resets any modified demographic information to the user's default settings gathered earlier through demographic identification module 202 and associated with the user by user identification system 116 and user identification module 404 .
- FIG. 9 shows the process 802 for categorizing demographic information in more detail.
- server 106 creates a categorized demographic information repository 114 .
- demographic information source 110 is accessed by server 106 .
- server 106 can connect to an Active Directory server.
- server 106 retrieves demographic information 112 from demographic information source 110 .
- Demographic information 112 can be retrieved according to example information retrieving module 302 of server 106 described above.
- server 106 can retrieve demographic information from an Active Directory server, including a central list of all an organization's employees, as well as general information about the organization, including general field of operation and size, and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. Information can also be retrieved from other demographic information sources, including websites and industry databases.
- server 106 categorizes demographic information 112 .
- Demographic information 112 can be categorized according to example information categorization module 304 of server 106 described above.
- server 106 stores the categorized demographic information.
- Information can be stored in categorized demographic information repository 114 according to example information storage module 306 of server 106 .
- operation 904 , operation 906 , operation 908 , and operation 910 are repeated for a number of different organizations, by accessing demographic information from each organization's Active Directory server and other demographic information sources.
- FIG. 10 shows a flowchart of example process 804 for categorizing search terms and destination sites.
- categorized search term repository 120 is created.
- Categorized search term repository 120 can be created according to example search repository creation module 402 .
- categorized destination site repository 122 is created.
- Categorized destination site repository 122 can be created according to example search repository creation module 402 .
- the current user is identified by server 106 and user identification system 116 . In example embodiments, the current user can be identified according to example user identification module 404 .
- server 106 receives a search term from client 102 .
- the search term can be checked against search terms already found in categorized search term repository 120 and if the term was not already in categorized search term repository 120 , server 106 might suggest another possible search term that was contained in categorized search term repository 120 . This ability of the system would help users who were not sure how to spell a particular term or who misspelled the term in the search.
- Alternative word suggestions might be particularly useful if the alternative words suggested were chosen from those indexed with higher priorities as discussed below.
- server 106 maintains categorized search term repository 120 .
- Categorized search term repository 120 can be maintained according to example search repository maintenance module 406 .
- the search term is added to categorized search term repository 120 if it is not already present.
- the demographic categories pertaining to the current user's unique demographic identity are properly associated with the search term in the categorized search term repository 120 using various criteria, such as the organization's general field of operation and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. If the current search term was already present in categorized search term repository 120 , the demographic categories pertaining to the current user's unique demographic identity are properly associated and aggregated with the pre-existing categorized demographic information associated with that particular search term in categorized search term repository 120 .
- categorized search term repository 120 is indexed by search term popularity in each demographic category. Operation 1006 can be carried out according to example search term indexing module 408 . In other embodiments, categorized search term repository 120 could be indexed by other criteria.
- a list of search results is displayed to the user.
- the search results relate to World Wide Web based content.
- the user can then select which content to view and which web pages to visit.
- example embodiments focus on searches performed on the World Wide Web, the same system and methods can be used for searches on other networks and computing devices, including the Internet generally and intranets.
- the user clicks on a particular link, and is taken to the particular destination site associated with the link.
- Destination sites include web sites, web pages, and other content. In specific embodiments, destination sites could also include network accessible files of any types.
- the user selected destination sites are received from client 102 by server 106 .
- server 106 maintains categorized destination site repository 122 .
- Categorized destination site repository 122 can be maintained according to example search repository maintenance module 406 .
- the destination site is added to categorized destination site repository 122 if it is not already present.
- the demographic categories pertaining to the current user's unique demographic identity are properly associated with the destination site in the categorized destination site repository 122 using various criteria, such as the organization's general field of operation and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels.
- the demographic categories pertaining to the current user's unique demographic identity are properly associated and aggregated with the pre-existing categorized demographic information correlated with that particular search term in categorized search term repository 120 .
- categorized destination site repository 122 is indexed by destination site popularity in each demographic category. Operation 1018 can be carried out according to example destination site indexing module 410 . In other embodiments, destination site repository 122 could be indexed by other criteria.
- server 106 returns to operation 1006 , where it identifies the current user again and proceeds with the retrieval, categorization and indexing of both search terms and destination sites in operations 1008 , 1010 , 1012 , 1014 , 1016 , and 1018 .
- example process 804 for categorizing search terms and destination sites shows certain operations happening before other operations, it is contemplated that these operations can be performed in other orders as well.
- operation 1014 may immediately follow operation 1008 and come before operations 1010 and 1012 .
- operation 1018 may occur before operation 1012
- operation 1016 may occur before operation 1010 , etc.
- FIG. 11 shows a flowchart of example process 806 for tailoring and performing a search using filters.
- search filters are created based on the indexes created in categorized search term repository 120 and categorized destination site repository 122 as applied to the current user's unique demographic identity. Operation 1102 can be carried out according to example search filter creation module 502 .
- search filters are used to tailor the search results from a user's search. Operation 1104 can be carried out according to example user interface module 504 .
- the user's demographic classification can be modified by the user according to the example embodiment of a search user interface 600 shown in FIG. 7 and described above.
- FIG. 12 shows a flowchart for an example method for using a system employing an example embodiment of a role based search 1200 according to the present disclosure.
- server 106 receives notification that the search user interface 600 has been opened on client 102 .
- the user interface can function according to the example embodiment of a search user interface 600 shown in FIGS. 6 and 7 and described above.
- search user interface 600 be implemented in other ways, including as part of a web site, as an element of a world wide web browser (such as Microsoft Internet Explorer, MOZILLA® FIREFOX®, APPLE® SAFARI®, or GOOGLETM Chrome), or integrated into an Email Client (such as MICROSOFT® OUTLOOK®, MICROSOFT® WINDOWS® Mail, or MICROSOFT® WINDOWS LIVETM Mail, IBM® LOTUS NOTES®, NOVELL® GROUPWISE®, APPLE® Mail, or MOZILLA® THUNDERBIRDTM).
- a world wide web browser such as Microsoft Internet Explorer, MOZILLA® FIREFOX®, APPLE® SAFARI®, or GOOGLETM Chrome
- Email Client such as MICROSOFT® OUTLOOK®, MICROSOFT® WINDOWS® Mail, or MICROSOFT® WINDOWS LIVETM Mail, IBM® LOTUS NOTES®, NOVELL
- server 106 identifies the user and sets her default search parameters.
- the user identification is facilitated by user identification system 116 and can be performed according to user identification module 404 .
- the user can be identified through use of her user account while logged into client 102 .
- the user can log into a centralized user account server to be identified by means of a user id (such as a WINDOWS LIVETM ID, a GOOGLETM Account id, or Yahoo! ID).
- server 106 receives any requests from client 102 to modify the user's unique demographic identity.
- the user's search query is received by server 106 at operation 1208 .
- the search query can include words, numerals, and characters and can be refined using Boolean operators.
- a default search is run using the user's default demographic identity at operation 1210 .
- server 106 uses the filters described above to prioritize the search results based on the user's default demographic identity.
- the search results based on the user's default demographic identity are sent to client 102 at operation 1214 .
- server 106 receives a request from client 102 to modify the user's demographic identity, then server 106 receives user modifications to demographic identity from client 102 at operation 1216 .
- the user's search query is received by server 106 at operation 1218 .
- the search query can include words, numerals, and characters and can be refined using Boolean operators.
- a modified search is run using the user's modified demographic identity at operation 1220 .
- server 106 uses the filters described above to prioritize the search results based on the user's modified demographic identity. Specifically, the search will be run with a different filter than the one used in operation 1212 . The new filter corresponds to the user's modified demographic identity instead of her default demographic identity. Finally, the search results based on the user's modified demographic identity are sent to client 102 at operation 1224 .
- the systems and methods of this disclosure could be adapted to allow for role targeted advertising, specifically role targeted search advertisements and role targeted display advertisements.
- the systems and methods above could be adapted to allow for role based interactivity in developer communities.
Abstract
Description
- Text based searching of content has been aided much by electronic computers. Search results are commonly generated by computer-implemented search engines. Search engines are helpful in finding content stored on computers and networks. Search engines are particularly useful in sorting through the vastness of the Internet and the World Wide Web, but they are also used on intranets, smaller networks, and individual machines. Generally, search engines sort results using various methods and based on a number of criteria. Such criteria may include the creation date of particular content, its relevance, or the number of times it has been viewed.
- Search engines fall into different categories, such as general purpose consumer oriented search engines and vertical search engines. Historically, general purpose search engines took a one size fits all approach to searching, though more modem solutions have attempted to personalize the search experience and tailor the search results. Vertical search engines are typically used with specific databases and can offer a greater degree of customization in order to find more relevant results. Vertical search engines are often limited in breadth compared to general purpose search engines.
- In one aspect, a computing device includes a processing unit, and a system memory connected to the processing unit. The system memory includes instructions that, when executed by the processing unit, cause the processing unit to create: a demographic identification module that retrieves demographic profile information associated with a user and identifies a relevant demographic category based on the demographic profile information; a population search module that categorizes search information from other users within the relevant demographic category as the other users search for information, the search information including search terms used by the other users and destination content reviewed by the other users; and a search result module that filters a search query from the user by applying the categorized search information for the relevant demographic category and presents filtered search results to the user.
- In another aspect, a method of searching content includes: retrieving demographic information from an organization; creating a categorized demographic information repository including a plurality of demographic categories based on the demographic information; storing the demographic categories on a computing device; for each of the demographic categories, creating a search index including a plurality of search terms used by other individuals that are associated with a relevant demographic category of the plurality of demographic categories; for each of the demographic categories, creating a destination index including a plurality of destination content used by the other individuals that are associated with the relevant demographic category; and using the plurality of demographic categories to filter search results for a user associated with the relevant demographic category based on the search index and the destination index for the demographic category.
- In yet another aspect, a computer-readable storage medium has stored computer-executable instructions that, when executed by a computing device, perform steps including: retrieving demographic information from a corporate directory; creating a categorized demographic information repository including a plurality of demographic categories based on the demographic information from the corporate directory; for each of the demographic categories, creating a search index including a plurality of search terms used by other individuals that are associated with a relevant demographic category of the plurality of demographic categories, the search terms being indexed from a high priority to a low priority based on usage; for each of the demographic categories, creating a destination index including a plurality of destination content used by the other individuals that are associated with the relevant demographic category, the destination content being indexed from a high priority to a low priority based on usage; and using the plurality of demographic categories to filter search results for a user associated with the relevant demographic category based on the search index and the destination index for the demographic category, including: receiving a search query from the user; automatically identifying the relevant demographic category associated with the user; performing a search based on the search query; creating a search filter based on demographic information associated with the user, the search filter being configured to prioritize search results, including: applying one or more of the plurality of search terms from the search index used by other individuals that are associated with the relevant demographic category to the search; and limiting the search results to results associated with the destination content from the destination index used by the other individuals that are associated with the relevant demographic category; filtering the search results using the search filter; and providing the filtered search results to the user.
- This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
-
FIG. 1 shows an example system for prioritizing search results using demographic information and search term and destination site categorization. -
FIG. 2 shows an example server of the system ofFIG. 1 . -
FIG. 3 shows an example demographic identification module of the server ofFIG. 2 . -
FIG. 4 shows an example search term and destination site categorizing module of the server ofFIG. 2 . -
FIG. 5 shows an example search result tailoring module of the server ofFIG. 2 . -
FIG. 6 shows an example embodiment of the search user interface. -
FIG. 7 shows another example embodiment of the search user interface ofFIG. 6 with the user's demographic identity shown. -
FIG. 8 shows a flowchart of an example method for creating prioritized search results based on demographic information and search term and destination site categorization. -
FIG. 9 shows the process for categorizing demographic information from the method ofFIG. 8 . -
FIG. 10 shows the process for categorizing and indexing search terms and destination sites from the method ofFIG. 8 . -
FIG. 11 shows the process for tailoring a search using demographic information and search term and destination site categorization from the method ofFIG. 8 . -
FIG. 12 shows a flowchart for an example method for using a system employing an example embodiment of a role based search according to the present disclosure. - The present application is directed to system and methods for searching using demographic information and/or search term and destination site categorization to prioritize search results. Search term categorization and prioritization can enable users in particular demographic classes to benefit from the knowledge of the demographic class as a whole by leveraging search terms and destination sites visited by users of the demographic class as a whole.
-
FIG. 1 shows an example system for prioritizing search results using demographic information and/or search term and destination site categorization. Thesystem 100 includesclients server 106, anetwork 108, and ademographic information source 110. Greater or fewer clients, servers, networks, and demographic information sources can be used. - In example embodiments,
clients Clients -
Server 106 is accessible toclients network 108.Server 106 can include input/output devices, a central processing unit (“CPU”), a data storage device, and a network device. In example embodiments,network 108 is the Internet andclients server 106 and resources connected toserver 106 remotely. -
Demographic information source 110 is a source ofdemographic information 112 about a segment of the population. Examples of pertinent demographic information included in thedemographic information 112 include information relating to a corporation and information relating to the employees of the corporation, such as the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. In example embodiments,demographic information source 110 contains demographic information about the corporation and its employees. -
Server 106 retrievesdemographic information 112 fromdemographic information source 110.Demographic information 112 is analyzed and categorized into demographic categories byserver 106 or another computing device. The demographic categories can overlap and need not be mutually exclusive. - Once
demographic information 112 has been analyzed and categorized, it is stored in categorizeddemographic information repository 114. Categorizeddemographic information repository 114 is used to store the categorizeddemographic information 112 for later use. In example embodiments, categorizeddemographic information repository 114 may be included onserver 106 in a variety of formats and on a variety of mediums. It may also be stored on a different server or across a multitude of servers. - In example embodiments, a
user identification system 116 identifies users as they connect to the server throughclient 102 orclient 104. In example embodiments,user identification system 116 identifies the user ofclients Server 106 usesuser identification system 116 to identify individual users so thatserver 106 can track the search usage of users ofclients - In example embodiments, each user is assigned a unique demographic identity by
user identification system 116 that is stored in user demographic identity repository 118. User demographic identity repository 118 is a repository that stores each individual user's unique demographic identity for later use. This unique demographic identity associates the user with one or more of the demographic categories found in categorizeddemographic information repository 114. In example embodiments, this demographic identity is anonymous, only containing information necessary for the proper function ofsystem 100. In example embodiments, this unique demographic identity can be extracted from thedemographic information source 110 and stored in user demographic identity repository 118. In other example embodiments, the user's unique demographic identity may be stored on thedemographic information source 110 and accessed directly by theuser identification system 116. -
User identification system 116 can also be established as part ofserver 106, on another server, or at a different location. The user's unique demographic identity as identified byuser identification system 116 and stored in user demographic identity repository 118, is used to create, maintain, and categorize a categorizedsearch term repository 120 and a categorizeddestination site repository 122 using the demographic categories found in categorizeddemographic information repository 114. - In example embodiments, categorized
search term repository 120 is a database containing search terms used by users of the system. The database is categorized by various demographic criteria, so that users sharing a particular demographic criterion can use the search terms most common to other users sharing that particular demographic criterion. - In example embodiments, categorized
destination site repository 122 is a database containing destination sites visited by users of the system. In example embodiments, destination sites are those chosen from a search result list. It is also contemplated that destination sites could be any site visited by a user, whether or not it was visited from a result list. The database is categorized by various demographic criteria, so that users sharing a particular demographic criterion can use the destination sites most common to other users sharing that particular demographic criterion. - In example embodiments, the usage information of the user of
client 102 is assigned to various demographic categories pertaining to the current user's unique demographic identity and added to categorizedsearch term repository 120 and categorizeddestination site repository 122. This assignment will be discussed in further detail below. -
Example server 106 typically includes at least one processing unit and system memory. Depending on the exact configuration and type of computing device, the system memory may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. The system memory typically includes an operating system suitable for controlling the operation of a networked personal computer, such as the WINDOWS® operating systems from Microsoft Corporation of Redmond, Wash. or a server, such as Windows Server 2008, also from Microsoft Corporation of Redmond, Wash. The system memory may also include one or more software applications and may include program data. - The server may have additional features or functionality. For example, the server may also include additional data storage devices including computer readable storage media (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Computer readable storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. System memory, removable storage, and non-removable storage are all examples of computer readable storage media. Computer readable storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD, DVD, Blu-Ray or other optical storage media, magnetic cassettes, magnetic tape, or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by
server 106. Any such computer storage media may be part ofserver 106.Server 106 may also have input device(s) such as a keyboard, mouse, pen, camera, voice input device, touch input device, etc. Output device(s) such as a display, speakers, printer, etc. may also be included. -
Server 106 may also contain communication connections that allow the device to communicate with other computing devices (e.g.,clients 102 and 104) over a network, such asnetwork 108, in a distributed computing environment, for example, an intranet or the Internet. A communication connection is an example of communication media. Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media. -
Clients server 106 above. -
FIG. 2 shows a detailed view of the logical portions ofserver 106.Server 106 includes ademographic identification module 202, a search term and destinationsite categorizing module 204, and a searchresult tailoring module 206. In other example embodiments, all or some of the operation of these different modules can be spread across several servers or other computing devices. -
Demographic identification module 202 retrieves, categorizes, and stores demographic information from a demographic information source. The demographic information is first retrieved from a demographic information source. Second, the demographic information is categorized based on at least one demographic criterion. Finally, the categorized demographic information is stored for later use. -
FIG. 3 showsdemographic identification module 202 ofFIG. 2 in further detail.Demographic identification module 202 includes aninformation retrieving module 302, aninformation categorization module 304, and aninformation storage module 306. -
Information retrieving module 302 is used to retrievedemographic information 112 fromdemographic information source 110. Specifically,demographic information source 110 contains demographic information about organizations, including businesses, institutions, and other legal entities. In example embodiments,demographic information source 110 is an employee directory server for a corporation. Specifically, the demographic information source could be a server running the ACTIVE DIRECTORY® directory service from Microsoft Corporation of Redmond, Wash. - In example embodiments,
demographic information source 110 is a server running the ACTIVE DIRECTORY® directory service which contains a central list of all of a corporation's employees, as well as general information about the organization and specific information about each employee, including all employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. This information is extracted byinformation retrieving module 302 fromdemographic information source 110 asdemographic information 112. - In example embodiments, all personally identifiable information is removed from
demographic information 112 to mitigate privacy concerns. In example embodiments, the information may be anonymized. Information about each individual indemographic information 112 is anonymized by being associated with an anonymized user id. Specifically, the anonymized user id can be designed so that it is difficult, if not impossible, to retrieve personal information about any particular individual from information associated with the anonymized user id or the anonymized user id itself. -
Demographic information 112 can be stored in a variety of formats and on a variety of mediums. In example embodiments,demographic information 112 is only temporarily stored in its current state and is further processed byserver 106 or another computing device in aninformation categorization module 304. -
Information categorization module 304 is used to analyze and categorize extracteddemographic information 112 received frominformation retrieving module 302.Demographic information 112 is analyzed and categorized by certain criteria, such as the organization's general field of operation and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. For example, if an employee has the term “marketing” in her title, she may be categorized as belonging to the category “marketing.” Similarly, if a different employee has the term “sales” in his title, he may be categorized as belonging to the category “sales.” -
Information storage module 306 is used to store the analyzed and categorizeddemographic information 112. Asdemographic information 112 is analyzed and categorized byinformation categorization module 304, it is stored for later use byinformation storage module 306 in categorizeddemographic information repository 114. Categorizeddemographic information repository 114 may be local on media attached toserver 106 or remote on a different server or other device. - Referring back to
FIG. 2 , search term and destinationsite categorizing module 204 creates, maintains, and indexes search term and destination site repositories. Search term and destination site repositories are used to keep track of the search terms used and destination sites visited by members of particular demographic categories. The repositories are indexed so that the most relevant search terms and destination sites for a particular demographic category receive higher priority than less relevant search terms and destination sites. -
FIG. 4 shows search term and destinationsite categorizing module 204 ofFIG. 2 in further detail. Search term and destinationsite categorizing module 204 includes a searchrepository creation module 402, auser identification module 404, a searchrepository maintenance module 406, a searchterm indexing module 408, and a destinationsite indexing module 410. - Search
repository creation module 402 is used to establish one or more search repositories. In example embodiments, the categorizedsearch term repository 120 and the categorizeddestination site repository 122 are created. Categorizedsearch term repository 120 and categorizeddestination site repository 122 are cross referenced with one another. In other embodiments, a single categorized repository is created for both search terms and destination sites or a multitude of categorized repositories could be created. Alternatively, other example embodiments may have either a categorizedsearch term repository 120 or a categorizeddestination site repository 122, but not both. It is also contemplated that other categorized repositories covering other aspects of searching might also be created. -
User identification module 404 is used to identify the user ofclient client 102 connects toserver 106,user identification module 404 receives the current user's unique demographic identity fromuser identification system 116. In other embodiments,server 106 can determine user's unique demographic identity itself, withoutuser identification system 116. The current user's unique demographic identity can be determined based on her worksite user id, by another user id (such as a WINDOWS LIVE™ ID, a GOOGLE™ Account id, or Yahoo! ID), by manual selection by the user, or by some other means. - Search
repository maintenance module 406 is used to maintain the search repositories created by searchrepository creation module 402. When a user ofclient 102 initiates a search, the search terms used in the search query are received byserver 106 and added to categorizedsearch term repository 120 by searchrepository maintenance module 406. Categorizedsearch term repository 120 contains information about specific search terms used, by whom the terms are used, and with what frequency members of a particular business demographic category use the terms. This information is collected, stored, and maintained at various layers of abstraction, from narrower categories, such as the specific job title or description at a particular corporation to all the people in “sales” at all corporations in the industry. - After every search is performed in example embodiments, the categorized
destination site repository 122 is updated by searchrepository maintenance module 406. Each time the user ofclient 102 selects a particular website to view from search results, categorizeddestination site repository 122 is updated by searchrepository maintenance module 406. Further, searchrepository maintenance module 406 cross references the categorizedsearch term repository 120 and categorizeddestination site repository 122. - Search
repository maintenance module 406 continually updates and maintains categorizedsearch term repository 120 and categorizeddestination site repository 122. In example embodiments, there are separate search repository maintenance modules to maintain the categorizedsearch term repository 120 and categorizeddestination site repository 122. In example embodiments, there is only a single categorized repository and the searchrepository maintenance module 406 will only create, update, and maintain that single categorized repository. In example embodiments, there could be any number of categorized repositories and any number of search repository maintenance modules. - Search
term indexing module 408 is used to index the search terms received byserver 106 fromclient 102, and all other clients, during every search. The search terms are indexed by occurrence, so that the most commonly used search terms for a particular demographic category are indexed higher than less commonly used search terms in that same demographic category. Specifically, in one embodiment, each search term used by a specific demographic category is compared against all other search terms used by the specific demographic category. Searchterm indexing module 408 calculates the percentage of searches run with a particular search term in a specific demographic category out of the total searches ran for that particular search term across all the demographic categories combined. For example, the term “clinical trial” might be included in 0.5 percent of all searches done by the demographic category “medical professionals,” but is only included in about 0.001 percent of searches for an average user. - In other embodiments, search
term indexing module 408 examines all of the search terms for which there was a satisfactory click through pattern. The click through pattern is not a satisfactory click through pattern if the user misspells the word and is prompted with an alternate spelling and chooses the alternate spelling. For example, many medical professionals might mistype “clinical trial” by typing “clinecal trial.” This would lead to no click through for the search term “clinecal trial.” In example embodiments, searchterm indexing module 408 presents the user who mistyped “clinical trial” as “clinecal trial” with a prompt indicating the correct spelling of “clinical trial” as a potential alternative search query. In example embodiments, searchterm indexing module 408 prompts the user with a “did you mean” prompt before the correct spelled search term. In example embodiments, only the successful searches are indexed. In other embodiments, the search terms can be indexed by some other criterion. - In example embodiments, search
term indexing module 408 indexes the frequency which people in the same demographic categories, such as people in the same field, job titles, and departments or with the same responsibilities, roles, functions, job descriptions, and responsibility levels, search particular terms. As always, this list is not exhaustive and other criteria could also be used to categorize and index. Searchterm indexing module 408 can also keep track of the frequency of each search term in the aggregate compared against other search terms. In example embodiments where there is no categorizedsearch term repository 120 or a combined repository, searchterm indexing module 408 may be omitted. - As discussed above,
server 106 will determine in searchterm indexing module 408 which search terms are most representative of a specific demographic category by comparing which words are used most often in that specific demographic category. Search terms used most frequently in a particularly demographic category may be useful to the members of that demographic category when the users are searching for information. In essence, the categorizing and indexing of search terms in categorizedsearch term repository 120 is a way of identifying what have proven to be successful search terms for a particular demographic category. Thus, users who need assistance with forming their searches using terms relevant to their demographic categories will be able to benefit from the search expertise of others in their demographic categories. Thus, each demographic category will have its own unique set of search terms, indexed highest to lowest. As users continue to use the search, the indexes will become more refined and will continually lead to better results. - For example, the term “patent” may be used primarily by patent attorneys, paralegals, patent agents, and patent examiners in the legal and patent procurement fields. The term “patent” would likely be ranked higher by search
term indexing module 408 in these demographic categories than it would in the demographic categories established for employees of a hospital. Similarly, the term “stent” may primarily be used by doctors, nurses, and medical device manufactures in the medical and medical device manufacture fields. Thus, the term “stent” would rank higher in these demographic categories than it would in the demographic categories of employees of an advertising agency. - Along the same lines, the phrase “product placement” may primarily be used by account managers, creative designers, and commercial photographers at an advertising agency, but it may also be used by in house marketing and advertising employees of a food processing corporation. The term “product placement” may rank higher in the demographic categories of account managers at the advertising agency, than it would of the in house marketers of the food processing corporation, but it would rank higher in the demographic category for the in house marketers than it would in a demographic category containing accountants at the same food processing corporation.
- As demonstrated above, a particular search term may index higher for one particular job title, such as salesperson, than it would for another job title, such as accountant. A particular search term may also index higher for a particular responsibility level than it would for another. For example, a seasoned partner at an accounting firm may have a substantially different index for the term “earned income” than does a newly employed accounting associate.
- In specific embodiments, destination
site indexing module 410 is used to index the destination sites visited by the user ofclient 102. In example embodiments, the destination sites are indexed by occurrence, so that the most commonly visited destination sites for a particular demographic category are indexed higher than less commonly visited destination sites in that demographic category. It is contemplated that the destination sites could also be indexed using other criteria, including relevance, authoritativeness, language, etc. Destinationsite indexing module 410 indexes the frequency at which people in the same demographic category visit particular sites in the results list. Demographic categories may include those in the same field, job titles, and departments or people with the same responsibilities, roles, functions, job descriptions, and responsibility levels. It can also keep track of the frequency at which each site in the result list is visited in the aggregate. Thus, each demographic category will have its own unique set of destination sites, indexed highest to lowest. - In example embodiments, destination
site indexing module 410 only indexes sites visited by users. Specifically, a destination site will not be added to the destination site index by destinationsite indexing module 410 until a user has actually visited it. In example embodiments, destinationsite indexing module 410 indexes sites after they have received a quality visit. Specifically, a site is added to the destination site index by destinationsite indexing module 410 if the user does not return to the search results quickly after visiting the destination site. Because users can often quickly discern upon visiting a destination site whether it is a good or bad result, this is a reliable indicator of the quality of the visit. In example embodiments, the quality of destination sites can also be determined by the users themselves through a ranking process. For example, each user is able to rank destination sites after visiting them by organizing, editing, and/or annotating the search results in the results list, as well as sharing such information with other users. - The destination sites visited most frequently in a particular demographic category may be useful to the members of that demographic category when searching for information. In essence, the categorizing and indexing of destination sites in categorized
destination site repository 122 is a way of identifying what have proven to be useful destination sites for a particular demographic category. - Referring back to
FIG. 2 , searchresult tailoring module 206 creates search filters and implements the search filters usage in a user interface. Search filters are created for particular demographic categories based on the indexes in the search term and destination site repositories. The search filters are created so that results that contain the search terms indexed highest for the particular demographic category will be prioritized above other results. The filters are also created so that results with higher priority in the destination site index will be prioritized above other results. -
FIG. 5 shows searchresult tailoring module 206 ofFIG. 2 in further detail. Searchresult tailoring module 206 includes a searchfilter creation module 502 and auser interface module 504. - In example embodiments, search
filter creation module 502 creates search filters for particular demographic categories. In example embodiments, these filters are search macros. The filters are created using information found in categorizeddemographic information repository 114 and both categorizedsearch term repository 120 and categorizeddestination site repository 122. The filters enable prioritization of search results based on particular search terms and destination sites having various indexes for the particular demographic categories of the current user ofclient 102. A single user might fall into more than one demographic category and filters will be tailored appropriately to accommodate multiple demographic categories by searchfilter creation module 502. - For example, search filters tailored for automobile sales staff and automobile mechanics will likely produce more similar results than search filters tailored for automobile sales staff and computer sales staff. But, the search filters tailored for automobile sales staff and computer sales staff would likely produce more similar results than search filters tailored for automobile sales staff and computer repair technicians. Thus, both small and large distinctions between the demographic identities of particular users will influence which filter they will use as a default.
- In example embodiments, the filters created by search
filter creation module 502 use an algorithm which takes into account the search terms and destination sites indexed highest for the user's particular demographic categories. The algorithm creates a filter which will sort the results of a search by placing sites higher in the search results that include the higher ranked search terms from categorizedsearch term repository 120 and the higher ranked destination sites from categorizeddestination site repository 122. -
User interface module 504 enables the user ofclient 102 to run a search tailored to the user's demographic category by using a search filter created by searchfilter creation module 502. In example embodiments,user interface module 504 allows the user to use the default filter created for her based on her unique demographic identity as determined byuser identification system 116 anduser identification module 404. - Applicants also contemplate that the user can switch from her default filter to use a more appropriate filter on a temporary or indefinite basis. In example embodiments, the user can change from using the filter corresponding to her unique demographic identity by modifying all or some of her unique demographic identity. In example embodiments, after a user modifies her unique demographic identity, information about her future searches will be categorized by
demographic identification module 202 and by searchrepository maintenance module 406 using the user's modified demographic identity. In other embodiments, when the user modifies her unique demographic identity it does not affect the operation ofdemographic identification module 202 or searchrepository maintenance module 406. In this case, information about her future searches will continue to be categorized based on her default unique demographic identity byserver 106 indemographic identification module 202 and searchrepository maintenance module 406. -
FIG. 6 shows an example embodiment of asearch user interface 600 where the user's demographic identity is not shown. The examplesearch user interface 600 includes anidentification bar 602 and asearch query bar 604 into which a user inputs search terms.Search user interface 600 also includes asearch button 606, which is clickable by the user. Once the user has inputted appropriate search terms, the user can clicksearch button 606. Oncesearch button 606 is pressed, the query is sent touser interface module 504 onserver 106. - In example embodiments,
user interface module 504 receives the query and performs a search using a search filter correlating with the user's unique demographic identity. For example, in one embodiment,user interface module 504 receives the query from the user and appends additional demographic category tailored terms and rules to the query before initiating the search. For example, if a member of a “medical professional” demographic category searches for “Advil,” rules are appended to the query to prefer results including “clinical trial” and “New England Journal of Medicine.” The search is run with the modified query, resulting in tailored results. - In example embodiments,
user interface module 504 receives the query from the user and performs the search, displaying the unfiltered results. In addition to the unfiltered results, theuser interface module 504 suggests refinements based on the user's demographic category or categories. For example,user interface module 504 suggests refinements to a search for “Advil” by a member of a “medical professional” demographic category. Specifically,user interface module 504 may prompt the user that she may be looking for Advil Clinical Trials of that she may find the results she is looking for in the Journal of the American Medical Association, the New England Journal of Medicine, etc. - In example embodiments, the default listing from the search is manipulated at the server level to be relevant to the user's demographic categories and the search term and destination site indexes. The user can be presented with alterative spellings of words that appear to be mistyped. In specific embodiments, these alternative spellings are customized based on the user's specific demographic categories. For example, when the search term “tent” is included in a search query done by a member of a “medical professional” demographic category,
user interface module 504 suggests the alternative spelling “stent” because “stent” is a term indexed in the medical professional index, while “tent” is not. - The results of the search are displayed in
search user interface 600 byuser interface module 504. In other embodiments, the results of the search are displayed in other places, such as a new browser window displayed onclient 102, in a specific search results window displayed onclient 102, or in a specific toolbar component of a piece of business software (such as the OUTLOOK® messaging and collaboration client, Word, or POWERPOINT® presentation graphics program, all by Microsoft Corporation of Redmond, Wash.). - Example
search user interface 600 also contains aninformation toggle button 610 which allows the user to toggle between showing the user's current demographic information or not.FIG. 6 shows search user interface in a state where the user's current demographic identity information is not displayed. Wheninformation toggle button 610 is pressed, the search user interface is updated to show the user's current demographic identity information. In example embodiments,information toggle button 610 is also visually changed to indicate whether the toggle is set to show the user's current demographic identity information or not. -
FIG. 7 shows an example embodiment of asearch user interface 600 where the user's demographic identity is shown. In this example embodiment, theinformation toggle button 610 has been pressed and the user's current demographic identity information is shown in user demographicidentity status section 702.Information toggle button 610 has been visually changed to indicate that the user's current demographic identity information is being show and that the user can press theinformation toggle button 610 to switchsearch user interface 600, so that the user's current demographic identity information is not shown, as inFIG. 6 . - In example embodiments, user demographic
identity status section 702 includes status information about the user's industry on userindustry status line 704. In the examplesearch user interface 600 shown inFIG. 7 , userindustry status line 704 indicates that the user's industry is “auto dealership.” A userindustry edit link 706 allows the user to override and change her industry. - User demographic
identity status section 702 includes status information about the user's responsibilities on userresponsibility status line 708. In the examplesearch user interface 600 shown inFIG. 7 , userresponsibility status line 708 indicates that the user's responsibility is “sales.” A userresponsibility edit link 710 allows the user to override and change her responsibility. User demographicidentity status section 702 includes status information about the user's company size on user companysize status line 712. In the examplesearch user interface 600 shown inFIG. 7 , user companysize status line 712 indicates that the user's company size is “small.” A user companysize edit link 714 allows the user to override and change her company size. - User demographic
identity status section 702 includes status information about the user's responsibility level on user responsibilitylevel status line 716. In the examplesearch user interface 600 shown inFIG. 7 , user responsibilitylevel status line 716 indicates that the user's level is “director.” A user responsibilitylevel edit link 718 allows the user to override and change her level. - A user may indicate she desires to modify her demographic identity by toggling the
search user interface 600 to see more information usinginformation toggle button 610. Once toggled,search user interface 600 will look similar toFIG. 7 . It will show user demographicidentity status section 702, where the user can see userindustry status line 704, userresponsibility status line 708, user companysize status line 712, and user responsibilitylevel status line 716. In other embodiments, more or fewer demographic options can be displayed in user demographicidentity status section 702. - Each demographic option is editable and may be temporarily or indefinitely modified by the user. In example embodiments, the user industry status shown on user
industry status line 704 can be modified by selecting the userindustry edit link 706. The user responsibility status shown on userresponsibility status line 708 can be modified by selecting the userresponsibility edit link 710. The user company size shown on user companysize status line 712 can be modified by selecting the user companysize edit link 714. The user's responsibility level shown on user responsibilitylevel status line 716 can be modified by selecting the user responsibilitylevel edit link 718. Any other available user demographic options could also be modified in a similar way. - User demographic
identity status section 702 also includes a reset to defaultdemographic identity button 720. When clicked by a user, reset to defaultdemographic identity button 720 resets any modified demographic information to the user's default settings gathered earlier throughdemographic identification module 202 and associated with the user byuser identification system 116 anduser identification module 404. -
FIG. 8 shows an example flowchart of amethod 800 for creating prioritized search results based on demographic information and search term and destination site categorization.Method 800 for creating prioritized search results can be broken down into three sub-processes: aprocess 802 for categorizing demographic information, aprocess 804 for categorizing and indexing search terms and destination sites, and aprocess 806 for tailoring and performing a search using filters. Each of these sub-processes is described in further detail below. -
FIG. 9 shows theprocess 802 for categorizing demographic information in more detail. Atoperation 902,server 106 creates a categorizeddemographic information repository 114. Atoperation 904,demographic information source 110 is accessed byserver 106. For example,server 106 can connect to an Active Directory server. Atoperation 906,server 106 retrievesdemographic information 112 fromdemographic information source 110.Demographic information 112 can be retrieved according to exampleinformation retrieving module 302 ofserver 106 described above. For example,server 106 can retrieve demographic information from an Active Directory server, including a central list of all an organization's employees, as well as general information about the organization, including general field of operation and size, and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. Information can also be retrieved from other demographic information sources, including websites and industry databases. - At
operation 908,server 106 categorizesdemographic information 112.Demographic information 112 can be categorized according to exampleinformation categorization module 304 ofserver 106 described above. Atoperation 910,server 106 stores the categorized demographic information. Information can be stored in categorizeddemographic information repository 114 according to exampleinformation storage module 306 ofserver 106. In example embodiments,operation 904,operation 906,operation 908, andoperation 910 are repeated for a number of different organizations, by accessing demographic information from each organization's Active Directory server and other demographic information sources. -
FIG. 10 shows a flowchart ofexample process 804 for categorizing search terms and destination sites. Atoperation 1002, categorizedsearch term repository 120 is created. Categorizedsearch term repository 120 can be created according to example searchrepository creation module 402. Atoperation 1004, categorizeddestination site repository 122 is created. Categorizeddestination site repository 122 can be created according to example searchrepository creation module 402. Atoperation 1006, the current user is identified byserver 106 anduser identification system 116. In example embodiments, the current user can be identified according to exampleuser identification module 404. - At
operation 1008,server 106 receives a search term fromclient 102. In example embodiments, applicants contemplate that the search term can be checked against search terms already found in categorizedsearch term repository 120 and if the term was not already in categorizedsearch term repository 120,server 106 might suggest another possible search term that was contained in categorizedsearch term repository 120. This ability of the system would help users who were not sure how to spell a particular term or who misspelled the term in the search. Alternative word suggestions might be particularly useful if the alternative words suggested were chosen from those indexed with higher priorities as discussed below. - At
operation 1010,server 106 maintains categorizedsearch term repository 120. Categorizedsearch term repository 120 can be maintained according to example searchrepository maintenance module 406. For example, the search term is added to categorizedsearch term repository 120 if it is not already present. Next, the demographic categories pertaining to the current user's unique demographic identity are properly associated with the search term in the categorizedsearch term repository 120 using various criteria, such as the organization's general field of operation and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. If the current search term was already present in categorizedsearch term repository 120, the demographic categories pertaining to the current user's unique demographic identity are properly associated and aggregated with the pre-existing categorized demographic information associated with that particular search term in categorizedsearch term repository 120. - At
operation 1012, categorizedsearch term repository 120 is indexed by search term popularity in each demographic category.Operation 1006 can be carried out according to example searchterm indexing module 408. In other embodiments, categorizedsearch term repository 120 could be indexed by other criteria. - In example embodiments, once the user of
client 102 has initiated a search, a list of search results is displayed to the user. In example embodiments, the search results relate to World Wide Web based content. The user can then select which content to view and which web pages to visit. Though example embodiments focus on searches performed on the World Wide Web, the same system and methods can be used for searches on other networks and computing devices, including the Internet generally and intranets. In example embodiments, the user clicks on a particular link, and is taken to the particular destination site associated with the link. Destination sites include web sites, web pages, and other content. In specific embodiments, destination sites could also include network accessible files of any types. - At
operation 1014, the user selected destination sites are received fromclient 102 byserver 106. Atoperation 1016,server 106 maintains categorizeddestination site repository 122. Categorizeddestination site repository 122 can be maintained according to example searchrepository maintenance module 406. For example, the destination site is added to categorizeddestination site repository 122 if it is not already present. Next, the demographic categories pertaining to the current user's unique demographic identity are properly associated with the destination site in the categorizeddestination site repository 122 using various criteria, such as the organization's general field of operation and the employees' specific departments, responsibilities, roles, functions, job titles, job descriptions, and responsibility levels. If the current search term was already present in categorizeddestination site repository 122, the demographic categories pertaining to the current user's unique demographic identity are properly associated and aggregated with the pre-existing categorized demographic information correlated with that particular search term in categorizedsearch term repository 120. - At
operation 1018, categorizeddestination site repository 122 is indexed by destination site popularity in each demographic category.Operation 1018 can be carried out according to example destinationsite indexing module 410. In other embodiments,destination site repository 122 could be indexed by other criteria. - Once
operation 1018 is completed,server 106 returns tooperation 1006, where it identifies the current user again and proceeds with the retrieval, categorization and indexing of both search terms and destination sites inoperations example process 804 for categorizing search terms and destination sites shows certain operations happening before other operations, it is contemplated that these operations can be performed in other orders as well. For example,operation 1014 may immediately followoperation 1008 and come beforeoperations operation 1018 may occur beforeoperation 1012,operation 1016 may occur beforeoperation 1010, etc. -
FIG. 11 shows a flowchart ofexample process 806 for tailoring and performing a search using filters. Atoperation 1102, search filters are created based on the indexes created in categorizedsearch term repository 120 and categorizeddestination site repository 122 as applied to the current user's unique demographic identity.Operation 1102 can be carried out according to example searchfilter creation module 502. - At operation 1104, search filters are used to tailor the search results from a user's search. Operation 1104 can be carried out according to example
user interface module 504. In example embodiments, the user's demographic classification can be modified by the user according to the example embodiment of asearch user interface 600 shown inFIG. 7 and described above. -
FIG. 12 shows a flowchart for an example method for using a system employing an example embodiment of a role basedsearch 1200 according to the present disclosure. Atoperation 1202,server 106 receives notification that thesearch user interface 600 has been opened onclient 102. In example embodiments, the user interface can function according to the example embodiment of asearch user interface 600 shown inFIGS. 6 and 7 and described above. It is also possible that thesearch user interface 600 be implemented in other ways, including as part of a web site, as an element of a world wide web browser (such as Microsoft Internet Explorer, MOZILLA® FIREFOX®, APPLE® SAFARI®, or GOOGLE™ Chrome), or integrated into an Email Client (such as MICROSOFT® OUTLOOK®, MICROSOFT® WINDOWS® Mail, or MICROSOFT® WINDOWS LIVE™ Mail, IBM® LOTUS NOTES®, NOVELL® GROUPWISE®, APPLE® Mail, or MOZILLA® THUNDERBIRD™). - At
operation 1204,server 106 identifies the user and sets her default search parameters. In example embodiments, the user identification is facilitated byuser identification system 116 and can be performed according touser identification module 404. In example embodiments, the user can be identified through use of her user account while logged intoclient 102. In other embodiments, the user can log into a centralized user account server to be identified by means of a user id (such as a WINDOWS LIVE™ ID, a GOOGLE™ Account id, or Yahoo! ID). Atdecision 1206,server 106 receives any requests fromclient 102 to modify the user's unique demographic identity. If a request is not received to modify the user's demographic identity, the user's search query is received byserver 106 atoperation 1208. In example embodiments, the search query can include words, numerals, and characters and can be refined using Boolean operators. A default search is run using the user's default demographic identity atoperation 1210. Atoperation 1212,server 106 uses the filters described above to prioritize the search results based on the user's default demographic identity. Finally, the search results based on the user's default demographic identity are sent toclient 102 atoperation 1214. - If at
decision 1206,server 106 receives a request fromclient 102 to modify the user's demographic identity, thenserver 106 receives user modifications to demographic identity fromclient 102 atoperation 1216. Onceserver 106 receives user modifications to demographic identity atoperation 1216, the user's search query is received byserver 106 atoperation 1218. In example embodiments, the search query can include words, numerals, and characters and can be refined using Boolean operators. A modified search is run using the user's modified demographic identity atoperation 1220. Atoperation 1222,server 106 uses the filters described above to prioritize the search results based on the user's modified demographic identity. Specifically, the search will be run with a different filter than the one used inoperation 1212. The new filter corresponds to the user's modified demographic identity instead of her default demographic identity. Finally, the search results based on the user's modified demographic identity are sent toclient 102 atoperation 1224. - Though the preceding systems and methods are focused on being used in the creation of filters allowing users to conduct a role based search, the same principles can be used in other applications. For example, the systems and methods of this disclosure could be adapted to allow for role targeted advertising, specifically role targeted search advertisements and role targeted display advertisements. In another example embodiment, the systems and methods above could be adapted to allow for role based interactivity in developer communities.
- Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/329,284 US8407218B2 (en) | 2008-12-05 | 2008-12-05 | Role based search |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/329,284 US8407218B2 (en) | 2008-12-05 | 2008-12-05 | Role based search |
Publications (2)
Publication Number | Publication Date |
---|---|
US20100145954A1 true US20100145954A1 (en) | 2010-06-10 |
US8407218B2 US8407218B2 (en) | 2013-03-26 |
Family
ID=42232202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/329,284 Active 2030-08-20 US8407218B2 (en) | 2008-12-05 | 2008-12-05 | Role based search |
Country Status (1)
Country | Link |
---|---|
US (1) | US8407218B2 (en) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120166466A1 (en) * | 2010-12-28 | 2012-06-28 | General Electric Company | Methods and apparatus for adaptive searching for healthcare information |
US20140068457A1 (en) * | 2008-12-31 | 2014-03-06 | Robert Taaffe Lindsay | Displaying demographic information of members discussing topics in a forum |
CN103870527A (en) * | 2012-12-14 | 2014-06-18 | 国际商业机器公司 | Search engine optimization using a find operation |
WO2014149179A1 (en) * | 2013-03-15 | 2014-09-25 | NutraSpace LLC | Customized query application and data result updating procedure |
US20140330836A1 (en) * | 2013-05-06 | 2014-11-06 | Thomson Reuters (Markets) Llc | Offline searching of encrypted content |
CN104487964A (en) * | 2013-03-14 | 2015-04-01 | 尼尔森(美国)有限公司 | Methods and apparatus to monitor media presentations |
US9507491B2 (en) | 2012-12-14 | 2016-11-29 | International Business Machines Corporation | Search engine optimization utilizing scrolling fixation |
US9521013B2 (en) | 2008-12-31 | 2016-12-13 | Facebook, Inc. | Tracking significant topics of discourse in forums |
US20170039283A1 (en) * | 2015-08-03 | 2017-02-09 | Microsoft Technology Licensing, Llc | Searching Based on the Persona of Another |
US10390094B2 (en) | 2013-04-24 | 2019-08-20 | The Nielsen Company (Us), Llc | Methods and apparatus to create a panel of media device users |
US10810607B2 (en) | 2014-09-17 | 2020-10-20 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US11182847B2 (en) * | 2019-05-02 | 2021-11-23 | Capital One Services, Llc | Techniques to facilitate online commerce by leveraging user activity |
US11232110B2 (en) | 2019-08-23 | 2022-01-25 | Capital One Services, Llc | Natural language keyword tag extraction |
US11288731B2 (en) | 2019-12-27 | 2022-03-29 | Capital One Services, Llc | Personalized car recommendations based on customer web traffic |
US11361040B2 (en) * | 2019-01-11 | 2022-06-14 | Johnson Controls Tyco IP Holdings LLP | Systems and methods for providing persona-adjusted data |
US11416565B2 (en) | 2019-04-30 | 2022-08-16 | Capital One Services, Llc | Techniques to leverage machine learning for search engine optimization |
US11915293B2 (en) | 2019-01-22 | 2024-02-27 | Capital One Services, Llc | Offering automobile recommendations from generic features learned from natural language inputs |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210366032A1 (en) * | 2020-05-19 | 2021-11-25 | Invnt Llc | Virtual Shopping/Gaming Experience |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020010794A1 (en) * | 1999-08-06 | 2002-01-24 | Francis J. Stanbach Jr. | Internet hosting system |
US20020055872A1 (en) * | 2000-06-23 | 2002-05-09 | Labrie David William | User services and information management system and method |
US6523021B1 (en) * | 2000-07-31 | 2003-02-18 | Microsoft Corporation | Business directory search engine |
US20030088553A1 (en) * | 2002-11-23 | 2003-05-08 | Emergency 24, Inc. | Method for providing relevant search results based on an initial online search query |
US6778982B1 (en) * | 1999-05-11 | 2004-08-17 | Maquis Techtrix, Llc | Online content provider system and method |
US20050160083A1 (en) * | 2004-01-16 | 2005-07-21 | Yahoo! Inc. | User-specific vertical search |
US20050278317A1 (en) * | 2004-05-14 | 2005-12-15 | William Gross | Personalized search engine |
US20070192318A1 (en) * | 2005-09-14 | 2007-08-16 | Jorey Ramer | Creation of a mobile search suggestion dictionary |
US20070208728A1 (en) * | 2006-03-03 | 2007-09-06 | Microsoft Corporation | Predicting demographic attributes based on online behavior |
US20070294225A1 (en) * | 2006-06-19 | 2007-12-20 | Microsoft Corporation | Diversifying search results for improved search and personalization |
US20080109422A1 (en) * | 2006-11-02 | 2008-05-08 | Yahoo! Inc. | Personalized search |
US7428522B1 (en) * | 2007-09-27 | 2008-09-23 | Yahoo! Inc. | Real-time search term popularity determination, by search origin geographic location |
US20100094699A1 (en) * | 2008-10-09 | 2010-04-15 | Beal Bryan | Consolidated consumer rewards systems and methods with card vendor integration |
US7792835B2 (en) * | 2006-07-25 | 2010-09-07 | Mypoints.Com Inc. | Method of efficient target query selection ranging |
-
2008
- 2008-12-05 US US12/329,284 patent/US8407218B2/en active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6778982B1 (en) * | 1999-05-11 | 2004-08-17 | Maquis Techtrix, Llc | Online content provider system and method |
US20020010794A1 (en) * | 1999-08-06 | 2002-01-24 | Francis J. Stanbach Jr. | Internet hosting system |
US20020055872A1 (en) * | 2000-06-23 | 2002-05-09 | Labrie David William | User services and information management system and method |
US6523021B1 (en) * | 2000-07-31 | 2003-02-18 | Microsoft Corporation | Business directory search engine |
US20030088553A1 (en) * | 2002-11-23 | 2003-05-08 | Emergency 24, Inc. | Method for providing relevant search results based on an initial online search query |
US20050160083A1 (en) * | 2004-01-16 | 2005-07-21 | Yahoo! Inc. | User-specific vertical search |
US20050278317A1 (en) * | 2004-05-14 | 2005-12-15 | William Gross | Personalized search engine |
US20070192318A1 (en) * | 2005-09-14 | 2007-08-16 | Jorey Ramer | Creation of a mobile search suggestion dictionary |
US20070208728A1 (en) * | 2006-03-03 | 2007-09-06 | Microsoft Corporation | Predicting demographic attributes based on online behavior |
US20070294225A1 (en) * | 2006-06-19 | 2007-12-20 | Microsoft Corporation | Diversifying search results for improved search and personalization |
US7792835B2 (en) * | 2006-07-25 | 2010-09-07 | Mypoints.Com Inc. | Method of efficient target query selection ranging |
US20080109422A1 (en) * | 2006-11-02 | 2008-05-08 | Yahoo! Inc. | Personalized search |
US7428522B1 (en) * | 2007-09-27 | 2008-09-23 | Yahoo! Inc. | Real-time search term popularity determination, by search origin geographic location |
US20100094699A1 (en) * | 2008-10-09 | 2010-04-15 | Beal Bryan | Consolidated consumer rewards systems and methods with card vendor integration |
Cited By (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140068457A1 (en) * | 2008-12-31 | 2014-03-06 | Robert Taaffe Lindsay | Displaying demographic information of members discussing topics in a forum |
US10275413B2 (en) | 2008-12-31 | 2019-04-30 | Facebook, Inc. | Tracking significant topics of discourse in forums |
US9826005B2 (en) * | 2008-12-31 | 2017-11-21 | Facebook, Inc. | Displaying demographic information of members discussing topics in a forum |
US9521013B2 (en) | 2008-12-31 | 2016-12-13 | Facebook, Inc. | Tracking significant topics of discourse in forums |
US20120166466A1 (en) * | 2010-12-28 | 2012-06-28 | General Electric Company | Methods and apparatus for adaptive searching for healthcare information |
US9507491B2 (en) | 2012-12-14 | 2016-11-29 | International Business Machines Corporation | Search engine optimization utilizing scrolling fixation |
CN103870527A (en) * | 2012-12-14 | 2014-06-18 | 国际商业机器公司 | Search engine optimization using a find operation |
US20140172841A1 (en) * | 2012-12-14 | 2014-06-19 | International Business Machines Corporation | Search engine optimization using a find operation |
US20140207768A1 (en) * | 2012-12-14 | 2014-07-24 | International Business Machines Corporation | Search engine optimization using a find operation |
US8990192B2 (en) * | 2012-12-14 | 2015-03-24 | International Business Machines Corporation | Search engine optimization using a find operation |
US8996512B2 (en) * | 2012-12-14 | 2015-03-31 | International Business Machines Corporation | Search engine optimization using a find operation |
US9507492B2 (en) | 2012-12-14 | 2016-11-29 | International Business Machines Corporation | Search engine optimization utilizing scrolling fixation |
CN104487964A (en) * | 2013-03-14 | 2015-04-01 | 尼尔森(美国)有限公司 | Methods and apparatus to monitor media presentations |
US11019163B2 (en) | 2013-03-14 | 2021-05-25 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US20230336638A1 (en) * | 2013-03-14 | 2023-10-19 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US11736583B2 (en) * | 2013-03-14 | 2023-08-22 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US20220368774A1 (en) * | 2013-03-14 | 2022-11-17 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US10212242B2 (en) | 2013-03-14 | 2019-02-19 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US9503536B2 (en) * | 2013-03-14 | 2016-11-22 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US11431814B2 (en) | 2013-03-14 | 2022-08-30 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US10623511B2 (en) | 2013-03-14 | 2020-04-14 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
WO2014149179A1 (en) * | 2013-03-15 | 2014-09-25 | NutraSpace LLC | Customized query application and data result updating procedure |
US9477785B2 (en) | 2013-03-15 | 2016-10-25 | NutraSpace LLC | Customized query application and data result updating procedure |
US10945043B2 (en) | 2013-04-24 | 2021-03-09 | The Nielsen Company (Us), Llc | Methods and apparatus to create a panel of media device users |
US10390094B2 (en) | 2013-04-24 | 2019-08-20 | The Nielsen Company (Us), Llc | Methods and apparatus to create a panel of media device users |
US11457282B2 (en) | 2013-04-24 | 2022-09-27 | The Nielsen Company (Us), Llc | Methods and apparatus to create a panel of media device users |
US20140330836A1 (en) * | 2013-05-06 | 2014-11-06 | Thomson Reuters (Markets) Llc | Offline searching of encrypted content |
US10810607B2 (en) | 2014-09-17 | 2020-10-20 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US11468458B2 (en) | 2014-09-17 | 2022-10-11 | The Nielsen Company (Us), Llc | Methods and apparatus to monitor media presentations |
US20170039283A1 (en) * | 2015-08-03 | 2017-02-09 | Microsoft Technology Licensing, Llc | Searching Based on the Persona of Another |
US11361040B2 (en) * | 2019-01-11 | 2022-06-14 | Johnson Controls Tyco IP Holdings LLP | Systems and methods for providing persona-adjusted data |
US11915293B2 (en) | 2019-01-22 | 2024-02-27 | Capital One Services, Llc | Offering automobile recommendations from generic features learned from natural language inputs |
US11416565B2 (en) | 2019-04-30 | 2022-08-16 | Capital One Services, Llc | Techniques to leverage machine learning for search engine optimization |
US11182847B2 (en) * | 2019-05-02 | 2021-11-23 | Capital One Services, Llc | Techniques to facilitate online commerce by leveraging user activity |
US11232110B2 (en) | 2019-08-23 | 2022-01-25 | Capital One Services, Llc | Natural language keyword tag extraction |
US11288731B2 (en) | 2019-12-27 | 2022-03-29 | Capital One Services, Llc | Personalized car recommendations based on customer web traffic |
Also Published As
Publication number | Publication date |
---|---|
US8407218B2 (en) | 2013-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8407218B2 (en) | Role based search | |
US11663254B2 (en) | System and engine for seeded clustering of news events | |
US9501476B2 (en) | Personalization engine for characterizing a document | |
US8843475B2 (en) | System and method for collaborative knowledge structure creation and management | |
US7716217B2 (en) | Determining relevance of electronic content | |
US7912816B2 (en) | Adaptive archive data management | |
US9268843B2 (en) | Personalization engine for building a user profile | |
US8024333B1 (en) | System and method for providing information navigation and filtration | |
US7702621B2 (en) | System and method for providing profile matching within an unstructured document | |
US20080222105A1 (en) | Entity recommendation system using restricted information tagged to selected entities | |
AU2014318392B2 (en) | Systems, methods, and software for manuscript recommendations and submissions | |
US20130282693A1 (en) | Object oriented data and metadata based search | |
US8103678B1 (en) | System and method for establishing relevance of objects in an enterprise system | |
US11416907B2 (en) | Unbiased search and user feedback analytics | |
US20200142938A1 (en) | Unbiasing search results | |
US11308177B2 (en) | System and method for accessing and managing cognitive knowledge | |
EP2384476A1 (en) | Personalization engine for building a user profile |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT CORPORATION,WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BARLIN, DAVID S.;DEAN, MICHAEL R.;PANDIAN, AGNITA;AND OTHERS;SIGNING DATES FROM 20081201 TO 20090107;REEL/FRAME:022070/0456 Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BARLIN, DAVID S.;DEAN, MICHAEL R.;PANDIAN, AGNITA;AND OTHERS;SIGNING DATES FROM 20081201 TO 20090107;REEL/FRAME:022070/0456 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034564/0001 Effective date: 20141014 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |