This patent application is being filed simultaneously with a U.S. patent application, titled “PEOPLE AND BUSINESS SEARCH RESULT OPTIMIZATION”.
This disclosure relates generally to the technical fields of communications and, in one example embodiment, to a method, apparatus, and system of people and business search result optimization.
A user may enter information to search in a query prompt (e.g., a request for information from a database) of a website (e.g., Fatdoor®, Microsoft Virtual Earth®, Google Earth®, Yahoo Maps®, etc.). The user may request information for which there are no matching records in the database. For example, the user may enter a request for ‘Francis Detromi’ in ‘Columbus, Indiana’, but such a record may not be found in the database. As a result, the user may receive an error message when the request is entered. The user may not visit the website again because the user may be disappointed that the request did not match the record. When an initial experience with the website is not delightful, the user's perception of the website may be lowered. Future searches on the website may be viewed in context of the initial experience, which did not yield positive results.
Sometimes, the request by the user may be for a person and/or a business about whom the user who has some knowledge prior to entering information in the query prompt. For example, the user may know something about ‘Francis Detromi’ in ‘Columbus, Ind.’ prior to entering this information in the query prompt. However, because the user sees the error message when the record is not found, the user may not be able to share his and/or her knowledge with others.
A method, apparatus, and system of people and business search result optimization are disclosed. In one aspect, a method includes providing a query prompt to a user to enter a search data, referencing a request of the user of a particular listing with a database and automatically creating a profile having seeded data determined through the request when the request does not have a matching record in the database.
In addition, the method may include geo-spatially mapping a location associated with the request when the request includes the location information that is in the database, simultaneously rendering a map with the profile having seeded data based on the geo-spatial mapping of the location associated with the request, creating a marker to visually represent the profile in the map and generating the marker along with other markers indicating profiles of an adjacent business and/or residential listings to the location associated with the profile.
The method may also include reducing a time delay associated with displaying the profile having seeded data by generating the profile having seeded data while rendition of the map and/or generation of the marker are in progress. The method may further include confirming an accuracy of the request with the user prior to automatically creating the profile having seeded data and updating the profile based on additional information provided by the user when the profile is automatically created.
In addition, the method may also include referencing the request with a spell check database and/or a linguistic database when confirming the accuracy of the request with the user, prior to automatically creating the profile having seeded data. Moreover, the method may include prompting the user to confirm the automatic creation of the profile after determining that the request does not have the matching record in the database. Further, the method may also include suggesting an alternate listing based on a category, a type, an interest, a location, and/or a demographic when the request does not have the matching record in the database.
The method may also include transforming the profile into a claimable wiki profile when automatically creating the profile, and updating the additional information when any user modifies information in the claimable wiki profile. The method may further include displaying the claimable wiki profile when the request is subsequently entered by other users in the query prompt and securing the claimable wiki profile when the claimable wiki profile is claimed by a verified user in a geo-spatial social network.
Additionally, the method may include automatically merging duplicate listings in the database based on a neural network algorithm that compares the profile having seeded data with other profiles created in the geo-spatial social network based on an identifier and/or location data, generating a city center location to serve as a repository of automatically generated profiles in which street address information is missing and/or invalid in a particular city, creating a distinctive marker indicating multiple records, each needing further verification by the users of the geo-spatial social network at the city center location, and automatically creating profiles based on transferred address data acquired through a plurality of online address and/or contact databases into the geo-spatial social network and associated with the user when the user provides permission of such transfers.
In addition, the method may include creating a moderators group in which certain users of the geo-spatial network are elected to verify and/or ensure accuracy of listings, both wiki and claimed, in a territory allocated to the moderators group and removing certain ones of the listings, both wiki and claimed, based on the request of the moderators group. The method may include performing a spider search of a network (e.g., the Internet) to automatically append additional data, images and/or videos to the profile having seeded data when substantial matches are found between the spider search and the seeded data in the profile. In addition, the method may also include providing another query prompt to the user to enter a group data, referencing another request of the user of a particular group with a groups database, automatically creating a new group titled through the another request when the another request does not have a matching record in the groups database.
The method may include automatically notifying neighboring users to the location of the user associated with the profile having seeded data to encourage the neighboring users to submit additional information in the profile having seeded data and/or to verify its authenticity through a tiered voting system in which a certain number of delete flags are required to remove the profile having seeded data.
In another aspect, a system includes a geo-spatial search server having an auto-add module to ensure that searches are automatically added as records in a database when results are not found and appropriately geo-tagged on a map view and a plurality of client devices coupled to the geo-spatial search server to submit queries to the geo-spatial search server and/or to offer additional information to search queries in which there are no pre-existing records in the database of the geo-spatial search server.
The system may further include a wiki module in the geo-spatial search server to enable registered users to modify content associated with automatically added records in the database of the geo-spatial search server. The system may also include a notification module to alert certain users that are determined by the geo-spatial search server to be physically located adjacent to a location associated with the automatically added search results to verify a legitimacy of the automatically added records.
In yet another aspect, a method includes automatically creating markers having seeded data in a geo-spatial environment when a search criteria does not match data in a database and simultaneously placing created markers alongside adjacent location markers indicating profiles of claimed users and/or unclaimed wiki profiles in a geo-spatial social network based on a location data provided in the search criteria.
The method may include generating a unique marker to indicate a location at which created markers have been aggregated when location information is incomplete, and segmenting the location as one in which unfound search queries can be updated by future wiki contributors in the geo-spatial social network. The method may also include confirming an accuracy of the search criteria with a user prior to automatically creating markers having seeded data, and associating with any of the markers a profile based on additional information provided by the user contemporaneously with the search criteria.
The methods, systems, and apparatuses disclosed herein may be implemented in any means for achieving various aspects, and may be executed in a form of a machine-readable medium embodying a set of instructions that, when executed by a machine, cause the machine to perform any of the operations disclosed herein. Other features will be apparent from the accompanying drawings and from the detailed description that follows.
Example embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements and in which:
Other features of the present embodiments will be apparent from the accompanying drawings and from the detailed description that follows.
A method, apparatus, and system of people and business search result optimization are disclosed. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments. It will be evident, however, to one skilled in the art that the various embodiments may be practiced without these specific details.
In one embodiment, a method includes providing a query prompt to a user to enter a search data, referencing a request of the user of a particular listing with a database (e.g., the listings database 200 of
In another embodiment, a system includes a geo-spatial search server (e.g., the geo-spatial search server 100A-N of
In yet another embodiment, a method includes automatically creating markers (e.g., the marker module 214 of
The geo-spatial search servers 100A-N may reference a request with a database (e.g., the listings database 200 of
The network 104 may facilitate communication between the geo-spatial search server 100A-N and the client device 102A-N to process the query requested by the user in the geo-spatial environment. The merge module 106 may automatically merge redundant profiles in duplicate listings in the database of the geo-spatial environment (e.g., using a neural network algorithm). The wiki module 108 in the geo-spatial search server may enable registered users to modify content associated with automatically added records in the database of the geo-spatial search server.
The auto-add module 110 may ensure that searches are automatically added as records in the database when the information requested by the user does not match with the records in the database of the geo-spatial environment. The notification module 112 may notify neighbors of the user whose claimable wiki profile is created in the geo-spatial environment to submit additional information in the claimable wiki profile and to verify its authenticity (e.g., through a tiered voting system).
In the example embodiment illustrated in
The duplicate listings in the database may be merged (e.g., using the merge module 106 of
The geo-spatial search server 100A-N having the auto-add module 110 may be used to ensure that searches are automatically added as records in the database (e.g., the listings database 200 of
The wiki module 108 in the geo-spatial search server 100A-N may enable the registered users to modify content associated with automatically added records in the database of the geo-spatial search server 100A-N. The notification module 112 may alert certain users (e.g., that are determined by the geo-spatial search server 100A-N to be physically located adjacent to the location associated with the automatically added search results) to verify a legitimacy of the automatically added records.
The merge module 106 may merge duplicate listings (e.g., using a neural network algorithm) in the database to compare a profile with seeded data and other profiles created in the geo-spatial social network. The comparison may be based on the identifier and location data of the user whose profile is created. The wiki module 108 may create claimable wiki profiles that are modified by registered users of the geo-spatial environment. The wiki module 108 may enable the registered users to modify the content of the wiki profiles of users in the geo-spatial social network. The auto-add module 110 may ensure that searches are automatically added as records in the database when the information requested by the user does not match with the records in the database of the geo-spatial environment.
The notification module 112 may alert certain users (e.g., the certain users may be the users in the immediate neighborhood of the user whose profile is being created in the geo-spatial environment through the auto-add module 110) to encourage them to submit the additional information to the claimable wiki profiles. The listings database 200 may contain records (e.g., a category, a type, interests, location, a demographic, etc.) that are matched when the request of the user is referenced with the particular listings in the database. The business listings 202 may contain the profiles associated with a business in the neighborhood of the geo-spatial environment.
The residential listings 204 may contain information associated with residential profiles in the neighborhood. The clustering module 206 may cluster the geo-spatial search server 100A-N with each server having segmented and/or partitioned data that forms the geo-spatial network. The spider search module 208 may perform a spider search to automatically append additional data, images and/or videos to the profile having the seeded data when substantial searches are found between the spider search and the seeded data in the profile. The alternate listing module 210 may reference the alternate listings provided by the user with alternate lists when the request provided by the users does not match with the records in the database of the geo-spatial environment. The time delay module 212 may reduce the time delay associated with displaying the profile having the seeded data when the user enters the request.
The time delay may be reduced by generating the profile while rendition of maps (e.g., a map of the location associated with the request) and generation of markers (e.g., a marker may visually represent the profile) are in progress. The marker module 214 may create markers in the geo-spatial environment to visually represent the profiles created by the registered users. The geo-spatial mapping module 216 may geo-spatially map the location based on the location information requested by the user available in the database (e.g., the listings database 200). The claiming module 218 may secure the claimable wiki profile when it is claimed by the verified registered user in the geo-spatial social network.
The groups module 220 may enable group creation when the group data requested by the user does not have matching records in the groups database of the geo-spatial environment. In addition, the groups module may enable the creation of a moderators group in which certain users are elected to verify and/or to ensure accuracy of the listings (e.g., wiki and claimed) in a territory allocated to the moderators group. The accuracy module 222 may confirm accuracy of the request with the user before the profile having the seeded data is created in the geo-spatial environment.
The spell check database 224 may reference the request of the user with the listings in the database for a spell check and the linguistic database 226 may reference the request for a linguistic check while confirming the accuracy of the request with the user in the geo-spatial environment. The city center module 228 may serve as a repository of automatically generated profiles when the profile information is incomplete (e.g., street address information may be missing and/or invalid in a particular city).
In the example embodiment illustrated in
The auto-add module 110 communicates with the listings database 200, the spider search module 208, the alternate listing module 210, the time delay module 212, the marker module 214 and the accuracy module 222, as illustrated in the example embodiment of
The request of the user may be referenced with a particular listing of the database (e.g., through the listings database 200 of
The time delay associated with displaying the profile having seeded data may be reduced (e.g., using the time delay module 212 of
An alternate listing (e.g., using the alternate listing module 210 of
Duplicate listings in the database may be merged (e.g., using the merge module 106 of
Additionally, a spider search of the network (e.g., the internet) may be performed (e.g., using the spider search module 208 of
Also, a new group titled through another request may be created automatically when the request does not have a matching record in the groups database. Neighboring users to the location of the user associated with the profile having the seeded data may be notified (e.g., using the notification module 112 of
The geo-spatial search server 100A-N having the auto-add module 110 may be used to ensure that searches are automatically added as records in the database (e.g., the listings database 200 of
Markers having seeded data may be created in the geo-spatial environment (e.g., a geo-spatial environment 522 of
The update module 304 may update and/or append the additional information obtained through matching (e.g., using the match module 302 of
The confirmation module 308 may confirm the accuracy of the additional information generated through the matching of the profile having seeded data with the profiles created in the geo-spatial social network (e.g., so that the additional information may be appended). In the example embodiment illustrated in
The accuracy of a request may be confirmed with a user prior to automatically creating the profile having the seeded data. In addition, the profile (e.g., based on additional information provided by the user) may be updated (e.g., using the update module 304) when the profile is automatically created. Also, the user may be prompted to confirm the automatic creation of the profile after determining that the request does not have the matching record in the database (e.g., the listings database 200 of
The additional information may be updated when any user modifies information in the claimable wiki profile. Additionally, duplicate listings in the database may be merged automatically based on the neural network algorithm that compares the profile having seeded data with other profiles created in the geo-spatial social network based on the identifier and location data. Moreover, certain ones of the listings, (e.g., both wiki and claimed), may be removed based on a request of the moderators group.
Furthermore, the location may be segmented as one in which unfound search queries can be updated by future wiki contributors in the geo-spatial social network. Also, the accuracy of the search criteria may be confirmed with the user prior to automatically creating markers having seeded data.
The search result module 402 may display the search results of the geo-spatial search server (e.g., the geo-spatial search server 100A-N), that may have the auto-add module 110. The auto-add module 110 may automatically create the profile associated with the seeded data when the user request does not match the records in the database. The tracking module 404 may enable the user to track the recently added profiles in the database and/or may allow the user to modify and/or update the profiles in the future.
The tracking module 404 may enable the user to track the recently added profiles from the database under various categories such as the user 406, group 408, business 410, location 412, neighborhood entities 414 and others 416 depending on the information stored in the database. The display module 418 may display the recently added profiles on the homepage/login page to remind the user to update the unfilled data in the created profiles. The geo-spatial mapping module 216 may automatically map the location of the recently added profiles associated with the user request when the request includes the location information that may be in the database.
In one example embodiment illustrated in
Additionally, the moderators group in which certain users of the geo-spatial network are elected may be created to verify and/or ensure accuracy of listings, both wiki and claimed, in a territory allocated to the moderators group. Furthermore, another query prompt may be provided to the user to enter a group data.
The user profile 502 may display location information (e.g., city, country, zip code, etc.) and/or personal information (e.g., name, age, hobbies, etc.) associated with the profile of the registered user. The created profiles block 504 may enable the user to view the list of created profiles associated with the user in the neighborhood and/or may also enable the user to update content associated with the particular wiki profile. In addition, the created profiles option 504 may include a delete option to delete any one of the created profiles based on the user request.
The search option 506 may show the search query (e.g., name, location, profession, etc.) requested by the user. The option 508 may automatically create a new profile with seeded data when the search result does not have a matching record in the database. The option 510 may enable the user to submit additional information associated with the newly created profile (e.g., other than the seeded data). The option 512 may query the user to confirm the accuracy of the request prior to automatically creating the profile having the seeded data.
The confirm option 514 may prompt the user to confirm the automatic creation of the profile after determining that the request does not have a matching record in the database. The location option 516 may display the image and/or the location associated with the search query requested by the user. The comment box 518 may enable the user to view the comments posted by other users in the geo-spatial environment 522. The reminder option 520 may remind the user about the recently added profiles and/or may also enable the user to update and/or view the content data associated with the profile through the update link. The geo-spatial environment 522 may graphically represent any number of markers associated with the profiles marked above the 3-dimensional view in the neighborhood.
In one example embodiment illustrated in
The user interface view 500 as illustrated in the example embodiment of
The name field 602 may display the names of users in the geo-spatial environment. The address field 604 may display the address(es) of the user(s) (e.g., provided by the users). The personal information field 606 may display personal information (e.g., the personal information may include age, sex, interests, etc.) about the users. The professional information field 608 may display professional data (e.g., the professional data may include qualification, occupation, etc.) of the users in the geo-spatial environment. The information displayed in the other user field 610 may reference data contained in the claimable wiki profile(s) created by the registered user(s) in the geo-spatial environment.
In the example embodiment illustrated in
The Professional information field 608 displays “Qualification: B.S., M.D., Occupation: Doctor” in the first row and “Qualification: Software Engineer, Occupation: Systems Analyst” in the second row of the professional information field column 608. The information submitted by other users field 610 displays “A: Monkey smile, B: Quick and talented doctor” in the first row and “Y: Smart but antisocial, P: Weird sense of humor” in the second row of the information submitted by other users field column 610.
The search by category option 702 may provide the query prompt to the user to enter search data based on a category (e.g., name, location, profession, etc.). The search by location option 704 may search for the data associated with the address data (e.g., country, area, zip code, etc.) by referencing the request of the user with the listings in the database. The search by character option 706 may display all the results associated with a particular alphabet when the user selects the particular alphabet. The quick search option 708 may prompt the user to enter the key words associated with the targeted profile data which may display relevant information associated with the user requested keyword.
In one example embodiment illustrated in
The diagrammatic system view 800 may indicate a personal computer and/or a data processing system in which one or more operations disclosed herein are performed. The processor 802 may be a microprocessor, a state machine, an application specific integrated circuit, a field programmable gate array, etc. (e.g., Intel® Pentium® processor). The main memory 804 may be a dynamic random access memory and/or a primary memory of a computer system.
The static memory 806 may be a hard drive, a flash drive, and/or other memory information associated with the data processing system. The bus 808 may be an interconnection between various circuits and/or structures of the data processing system. The video display 810 may provide graphical representation of information on the data processing system. The alpha-numeric input device 812 may be a keypad, keyboard and/or any other input device of text (e.g., a special device to aid the physically handicapped). The cursor control device 814 may be a pointing device such as a mouse.
The drive unit 816 may be a hard drive, a storage system, and/or other longer term storage subsystem. The signal generation device 818 may be a bios and/or a functional operating system of the data processing system. The network interface device 820 may be a device that may perform interface functions such as code conversion, protocol conversion and/or buffering required for communication to and from the network 826. The machine readable medium 822 may provide instructions on which any of the methods disclosed herein may be performed. The instructions 824 may provide source code and/or data code to the processor 802 to enable any one/or more operations disclosed herein.
In operation 908, a location associated with the request may be geo-spatially mapped (e.g., using the geo-spatial mapping module 216 of
In operation 918, an accuracy of the request may be confirmed with the user (e.g., using the accuracy module 222 of
In operation 932, the claimable wiki profile may be displayed when the request is subsequently entered by other users in the query prompt. In operation 934, the claimable wiki profile may be secured when the claimable wiki profile is claimed by a verified user in a geo-spatial social network. In operation 936, duplicate listings in the database may be merged (e.g., using the merge module 106 of
In operation 944, a moderators group may be created in which certain users of the geo-spatial network are elected to verify and/or ensure accuracy of listings, both wiki and claimed, in a territory allocated to the moderators group. In operation 946, certain ones of the listings, both wiki and claimed, may be removed based on a request of the moderators group. In operation 948, a spider search (e.g., using the spider search module 208 of
In operation 956, neighboring users to a location of the user associated with the profile having seeded data may be notified (e.g., using the notification module 112 of
In operation 1008, the location may be segmented as one in which unfound search queries can be updated by future wiki contributors in the geo-spatial social network. In operation 1010, an accuracy of the search criteria may be confirmed (e.g., using the accuracy module 222 of
Although the present embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the various embodiments. For example, the various devices, modules, analyzers, generators, etc. described herein may be enabled and operated using hardware circuitry (e.g., CMOS based logic circuitry), firmware, software and/or any combination of hardware, firmware, and/or software (e.g., embodied in a machine readable medium). For example, the various electrical structure and methods may be embodied using transistors, logic gates, and electrical circuits (e.g., application specific integrated ASIC circuitry and/or in Digital Signal; Processor DSP circuitry).
For example, the merge module 106, the wiki module 108, the auto-add module 110, the notification module 112, the clustering module 206, the spider search module 208, the alternate listing module 210, the time delay module 212, the marker module 214, the geo-spatial mapping module 216, the claiming module 218, the groups module 220, the accuracy module 222, the city center module 228, the combination module 300, the match module 302, the update module 304, the duplication module 306, the confirmation module 308, the tracking module 404, the display module 418 and other modules of
In addition, it will be appreciated that the various operations, processes, and methods disclosed herein may be embodied in a machine-readable medium and a machine accessible medium compatible with a data processing system (e.g., a computer system), and may be performed in any order. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.