EP1171828A1 - Search engine database and interface - Google PatentsSearch engine database and interface
- Publication number
- EP1171828A1 EP1171828A1 EP00904256A EP00904256A EP1171828A1 EP 1171828 A1 EP1171828 A1 EP 1171828A1 EP 00904256 A EP00904256 A EP 00904256A EP 00904256 A EP00904256 A EP 00904256A EP 1171828 A1 EP1171828 A1 EP 1171828A1
- European Patent Office
- Prior art keywords
- 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.)
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L29/00—Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 contains provisionally no documents
- H04L29/02—Communication control; Communication processing contains provisionally no documents
- H04L29/06—Communication control; Communication processing contains provisionally no documents characterised by a protocol
- G06—COMPUTING; CALCULATING; 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
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network-specific arrangements or communication protocols supporting networked applications
- H04L67/18—Network-specific arrangements or communication protocols supporting networked applications in which the network application is adapted for the location of the user terminal
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Application independent communication protocol aspects or techniques in packet data networks
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—High level architectural aspects of 7-layer open systems interconnection [OSI] type protocol stacks
- H04L69/322—Aspects of intra-layer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Aspects of intra-layer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer, i.e. layer seven
SEARCH ENGINE DATABASE AND INTERFACE
This application claims priority to the following copending U.S. provisional patent applications: serial no. 60/115,353 (filed January 8, 1999), serial no. 60/117,975 (filed January 29, 1999), serial no. 60/119,187 (filed February 8, 1999), serial no. 60/119,495 (filed February 10, 1999), serial no. 60/119,636 (filed February 11, 1999), serial no. 60/120,865 (filed February 19, 1999), serial no.60/122,357 (filed March2, 1999), serial no. 60/124,091 (filed March 12, 1999), and serial no. 60/129,140 (filed April 13, 1999), all entitled "Search Engine Database and Interface." The above-listed patent applications are hereby incorporated by reference herein as to their entireties.
BACKGROUND OF THE INVENTION
Internet search engines have a problem in that they return too many search hits, most of which are not the information which the user desires to view. For example, it is extremely difficult to find a local business or service among the millions of web sites that exist. For example, a user may wish to find all video stores near his or her home. If one searches for the words "video store," for example, a conventional Internet-based search engine would return tens of thousands of Internet pages. Accordingly, improved filtering techniques are desirable.
SUMMARY OF THE INVENTION
It would therefore be desirable to many users to be able to search for only those results that are geographically locally accessible to the user. It would also be desirable for an Internet-based search engine to automatically determine from what geographic area the user is connected to the Internet, so that the search engine could automatically default to a search limited to near or within the user's geographic area. It would further be desirable for a user to be able to custom-define a geographic area within which a search should be limited. It would also be desirable to be able to use an Internet-based search engine to not only search for web sites, but to further search for telephone numbers, e-mail and/or street addresses, names, contact information, and/or other information associated with businesses, services, government offices, and or individual persons, whether or not a web site is associated with any of these.
Further, existing web sites and other Internet-based content (such as search engines) do not automatically take into account a user's geographic location. For example, if a user in the United States were to log onto a Japanese web site having both a Japanese language version web page and an English language version web page, the Japanese web site would not automatically switch to the English language version web page responsive to the user being in the United States. The user would have to manually request the English language version web page. Further, where no English language version is available, it would be desirable for the web browser to automatically convert the web page to the English language for display to the user. Additionally, a user in one state or country where, for instance, pornography is illegal, should be prevented from accessing pornographic content located in another state or country. Further, knowing the geographic area of the user would allow a web page, search engine, newsgroup, and/or other internet content to take actions based on such geographic area, such as automatically positioning a map, or determining demographic information.
Further, existing search engines are not able to interpret web site contents, and can only index web pages as a whole. It would be desirable for a search engine or database spider to be able to distinguish and separately index certain contents of web pages, such as listings of classified advertisements, store locations, dealerships, community calendar events, etc., to make such things searchable on an individual basis, especially when combined with geographic and date and/or time information about the individual listings. It would further be desirable for web sites to have demographic information about the visitors to a site, such as but not limited to the average income of the visitor's neighborhood, language of the visitor, country of the visitor, etc., so as to tailor the site to the user's tastes, income, etc. It would further be desirable for web sites to have specific information about visitors to the site, such as whether they rent or own, what kind of automobile they drive, etc., in order to better target advertisements to the visitor.
It would further be desirable to automatically present a user with the version of a web site that is in the user's preferred language. It would further be desirable and convenient to a user for a web site to customize information, filter out certain information, allow or deny access, provide additional information, and/or provide prices in a particular currency depending upon the location and/or preferred language of the user.
Further, there is currently no way for a web page that is linked to another page to pass dynamic information to that other page. For instance, it would be desirable to configure a search engine or web page to find out demographic, financial, taste and or interest information about a visitor, such as what the visitor has been searching for, or what the visitor's neighborhood demographics are in order to better serve the visitor. For example, the user may use dynamically reconfigurable web pages which vary based on the linking information. However, currently there is no way to pass information along to a site the user might click, such as by passing hyperlink information, search results and/or entry information, and/or information useful for banner advertisements. It would be desirable and valuable to have this ability so that businesses who receive clicks or referrals from other sites can have access to geographic, demographic, and/or other information about the user visiting the referred site from the referring site.
Further, there is currently no way for a search engine to notify web sites that web sites have appeared in search results. There is also currently no way for search engines to solicit advertisements from web sites, based on the number of times their site appears in search results or is clicked on or on what keywords bring up the web page. Further, search engines currently do not keep track of the number of times a particular web site appears in search results or is clicked on. Search engines do not keep track of search words or phrases that cause particular web sites to appear in results.
It would be desirable for search engines to be able to keep track of web site views and clicks, to associate this information with search words and phrases in order to do direct marketing of search engine ad space with this information. Web sites that had access to information regarding how the web sites appeared in search results would aid web sites in analyzing the demographics and search interest of potential and actual customers of the web sites.
Any of these desirable features would render a search engine or other web site much more useful and convenient. Unfortunately, no existing Internet web sites currently offer any of these desirable features.
In still further embodiments, a search engine may be configured to place Microsoft at the top of a search of, for example, "word processors" for payment of a certain fee. Additionally, for another fee, a competitors web page, e.g., WordPerfect, may be buried at the end of the search results or left out entirely.
One or more aspects of the invention described herein solves one or more of the problems with conventional Internet-based content such as search engines, other web sites, and the user interfaces. Examples of aspects of the invention follow.
Aspects of the invention described herein include an Internet-based search engine having a geographically-coded search engine database. The geographically-coded search engine database allows a user to include geographical limitations when requesting a search by the search engine, thus limiting the number of search results to those that are most relevant to the user. For example, the user may search for "video store" with typing in his or her zip code. The search engine will sort the pages returned with video stores closest to the users location displayed first.
Still further aspects of the invention include geographically-coded web search engine databases and geographic interfaces to an Internet search engine. In some aspects of the invention, the search engine database stores location information such as zip code and/or world coordinate location information obtained from addresses, registration databases, and/or spidering web pages. It can optionally store telephone numbers, fax numbers, and/or e-mail addresses spidered from web pages, registration databases, and/or any of the aforementioned information obtained from directories or other databases, such as yellow or white page directories or web based directories such as those maintained by Network Solutions Inc.
Some aspects of our invention change the face of searching the Internet by allowing the user the option of presenting search results to the user ranked with geography in mind, instead of simply ranked by search terms. For example, in one embodiment of the invention, the user may be viewing a search results of "video store" and then click on a button "sort geographically" and the search results will be sorted based on the user's current location, state, and/or based on the country of origin of the web pages. This will make it simple and meaningful for small, local businesses to have an Internet presence, since they will no longer be buried with thousands or millions of other businesses when users search for them. Thus, aspects of the present invention allow the Internet to be not only a place for global commerce, but for local commerce as well.
Other aspects of the invention provide information about the user who is viewing web pages or using a search engine. Such information may include, but is not limited to, the user's geographic coordinates, location, phone number, address, personal fmances/likes/demographics and neighborhood demographics.
In aspects of the invention, the search engine database is compiled using various techniques. For example, traditional techniques of compiling existing directory-type databases, such as yellow pages are limited in that they are primarily manual. Aspects of the invention include creating and/or supplementing a database utilizing a computer (e.g. spider) and/or human initiated analyzing web site contents. Thus, the substantial content of the existing WEB is utilized to correlate directory entries to existing WEB pages and/or company locations to WEB pages. Accordingly, aspects of the present invention including merging the contents of these two resources. For example, electronic yellow and white pages directories will be automatically linked to associated web content of the business listed in the directory. Where a user/business is provided with a directory listing in either the Yellow pages, White pages, and or 1-800 directories etc., the user is also sold a WEB link and/or WEB space which allows the directory to link directly to the WEB space for that local business. Aspects of the invention include a search database including a html based yellow pages which link yellow pages ads as well as a companies web pages directly to the search result in the Internet based search engine. In this manner, the search engine may return for each listing a short description of the entity together with links to html versions of its yellow pages ads, other customized information or ads about the company, store locations, and any associated driving directions, maps, hours of operation, phone, facsimile, e-mail, and/or the companies web pages in a single integrated interface.
Aspects of the invention include localizing searches for businesses or services in order to bring the user closer to local businesses. For localized searches, many users will want to call or visit a local business instead of contacting them through the Internet. For this reason, in still further aspects of the invention, our search engine database and user interface may provide (e.g., for each store location) phone numbers, fax numbers, e-mail addresses, hours of operations, driving directions, and/or maps in the search results to help the user locate the business. Providing the hours of operation, phone, fax, e-mail address, directions and/or map in a standardized format gives the user quick and simple access to this information without the user needing to wander through perhaps endless pages of a businesses WEB space to locate the information. For example, a user may wish to locate all doctors within 10 miles that have hours on Saturday. Using current Internet or Yellow pages listing, this task is all but impossible. Aspects of the invention simplify this invention enormously. Not only is the search performed to locate the doctor, but the doctors biography, practice area, hospital affiliations, insurance affiliations, and other critical information are automatically linked in the search results in a similar manner as discussed above. Thus, aspects of the invention substantially improve the access to local businesses on the Internet. Further, there is no longer any need to visit the business' web site to find a phone or fax number or other detailed information or consult a yellow pages directory. Aspects of the invention allow all essential information to be provided via a search engine.
In other aspects of the invention, the Internet search engine allows a user to locate all businesses within a certain driving distance which sell a particular item. For example, a user may search for all music stores within 10 miles that sell the new compact disk by a particular artist. The search engine first locates the local business which sell music within the specified distance from the person executing the query. Next, the search engine locates the web page associated with the business and checks the inventory to determine whether the CD is in stock. For example, the search engine may query the "Boarders" web site to determine how many of the compact disks are in stock and at what price. A similar check could be done on other returned results and the user would be presented with a list of local stores having the merchandise as well as the price, driving distance, phone/fax numbers, and store hours.
Further, in aspects of the invention the search engine may increase revenue by selling sorting parameters to the local businesses. For example, for "video stores" with in 5 miles, the search engine could sort based on revenue paid to the search engine. Thus, in these aspects of the invention the search engine may use two criteria to return the results (distance ranges) and (payment of placement revenue).
Since some contact with the business is likely, aspects of our invention further allow the user of such an embodiment to automatically e-mail, fax, and/or phone (e.g., using IP telephony) the entities returned in search results. Since a visit to the business is likely, the search engine interface in aspects of the invention may further provide the street address and/or driving directions from the user location to the business location. Where the search engine is incorporated into an automobile navigation system, the driving directions may be automatically loaded via a hot button. Alternatively, where the search engine is located in a home or business computer, the driving directions may be forwarded via ftp, e-mail, and/or proprietary protocol to the car's IP address and loaded automatically. For example, in aspects of the invention, a user in a home may search for the nearest video store, locate the store using the described search engine, and forward the directions to the navigation computer in his or her car. Alternatively, the search may be conducted via an Internet link in the car (e.g. associated with the same display as the navigation system) and then utilized by the navigation system to guide the users vehicle to the location of the business. Although driving directions are currently provided by some online services, but none are currently linked to a general-purpose search engine that has location coded into the database. Further, no current system allows the search results to be downloaded into a navigational system of a vehicle to guide the user to the location found in the Internet search.
Aspects of the invention also include various other web pages and business applications that benefit from knowing the location of or other information about the user accessing the web page and/or can benefit from knowing the location of, or other information about, the owner or sponsor of the web page such as the local business.
One or more additional aspects of the invention include any of the below-described elements, either alone or in any combination or sub-combination with themselves or the above described aspects of the invention. The headings provided are for ease of reference and do not limit any aspect of the invention to any particular heading, subject matter, or field of application:
Regarding, among other things, a web site or search engine and database: • a database for an Internet-based search engine associating internet web site addresses with a locator that may include one or more of a geographic location and/or geographic area and/or postal address and/or a telephone number and/or a fax number and/or an e-mail address, the data being searchable by an Internet-based search engine. • a database for an Internet-based search engine associating visual and/or program table entries within an Internet web site or plurality of web sites with geographic location and/or geographic area and/or postal address and/or a telephone number and or a fax number and/or an e-mail address information. The data may be searchable by an Internet-based search engine such that web content may be associated with local address/contact information.
• an Internet-based search engine database storing data and/or having access to data representing a plurality of web sites, advertisements, local events, businesses, individuals, services, and/or government offices, some or all being associated in the search engine database with a geographic location and/or geographic area and/or postal address and or a telephone number and/or a fax number and/or an e-mail address, the data being searchable by an Internet-based search engine.
• an Internet-based search engine utilizing a search engine database, the search engine database including information representing geographic information and/or postal address and/or telephone number and/or fax number and/or e-mail addresses associated with each of a plurality of web sites, advertisements, local events, businesses, individuals, services, and/or government offices.
• an Internet-based search engine that relates information about a user of the search engine to one or more databases of personal an or demographic information and makes that data available to others.
• a method for searching a geographically-coded database using an Internet-based search engine, the search including a geographic search limitation in the search string such as "video store" and zip=21110. • an interface for allowing a user to search an Internet-based search engine using a geographic search limitation.
• an Internet-based search engine configured to translate search terms as necessary in order to search through various databases each in a different language.
• an Internet-based search engine database including data representing various versions of the same searchable data in a plurality of different languages.
• an Internet-based search engine or web page configured to present search results according to a preferred language of the user, and/or to translate search results as required.
• an Internet-based search engine or web page configured to determine the geographic location from which a user is connected to the Internet, and/or to configure results based on the determined geographic location.
• a method and apparatus for performing an internet-based search using search terms and/or criteria such as "near," "away from," "adjacent," "within (x distance)," "near few of," "near many," etc. as described below.
• a method of automatically utilizing the geographic location of the user to limit the results of an Internet-based search engine search
• an Internet-based search engine configured to allow a user to define one or more geographical search limitations for a search, including without limitation areas to search and areas to exclude, for example using a textual and/or graphical interface such as by marking a map with a mouse or other pointing tool.
• a method for defining one or more such geographical search limitations for a search in an Internet-based search engine, for example using a textual and/or graphical interface such as by using a mouse or other pointing tool and a map.
• an Internet-based search engine configured to receive an address associated with a search result generated by the search engine and to convert (or receive a conversion of) the address to a geographic coordinate (e.g., latitude and longitude).
• a method of converting an address associated with a search result generated by an Internet-based search engine to a geographic coordinate.
• an Internet-based search engine configured to present a plurality of search results sorted according to the geographic location of each search result, a geographic proximity of the search result to the user, and/or according to the type of the search result, such as whether the search result is a web site, a web-based business, a non- business service, a government office, and/or an individual person.
• a method of cross correlating search results with yellow pages listing to associate addresses/phone numbers and/or yellow page advertisements with web pages.
• in an Internet-based search engine, a method of presenting a plurality of search results sorted according to the geographic location of each search result, a geographic proximity of the search result to the user, and/or according to the type of the search result, such as whether the search result is a web site, a web-based business, a business without a web address, a non-business service, a government office, and/or an individual person.
• an Internet-based search engine configured to allow a user to search according to whether search results are near a predetermined route (e.g., an interstate highway).
• a method of configuring a search by an Internet-based search engine to search according to whether search results are near a predetermined route. • a web site and/or an Internet-based search engine configured to download drawing data and to reconstruct the drawing data into an image.
• a method of downloading from the Internet drawing data and reconstructing the drawing data into an image.
• a web site and/or an Internet-based search engine configured to pre-download data (such as drawing data and or search result data) before the data is requested by a user, and/or to configured to predict when such pre-downloaded data would likely be used in the near future by the user.
• a method of pre-downloading data from the Internet before the data is requested by the user, and or for predicting when such pre-downloaded data would likely be used in the near future by the user.
• an Internet-based search engine configured to communicate with an Internet-based directory (e.g., an Internet-based white pages, yellow pages, and/or blue pages). The Internet-based search engine may perform a search in the directory based on a search term and associate the results with a web page-based search.
• an Internet-based search engine configured to communicate retrieve data from an Internet-based directory (e.g., an Internet-based white pages, yellow pages, and/or blue pages) and integrate the search results with the results from a web page-based search.
• a method of relating user information to personal or demographic information and further making that data available to others.
• a method and apparatus for passing user information, such as but not limited to the user's location and/or area being searched and/or phone number and/or other personal information and/or general demographic information based on the location of the user, to a web site the user is referred to by a search engine or other web site.
• a method and apparatus for determining the location of a web page and/or user and/or other Internet content using an autonomous system number associated with equipment associated with the user and/or web page and/or other Internet content. In further aspects of the invention, the autonomous system number may be incorporated into router information.
• a method and apparatus for determining the location of a web server by reading one or more router tables and determining the path that information associated with the web server has taken in a network. • an Internet-based search engine or other web site that passes user information, such as but not limited to the user's location and/or area being searched and/or search terms, to a web site the user is referred to by the search engine or web site.
• a method for using the user information passed from a search engine on a web server to modify the contents of a web page or allow or deny access or to provide one of a selection of different web pages.
• a method and apparatus for allowing a user to broadcast an e-mail message to businesses located in a search, e.g., by sending n number of entities returned in the search results using the e-mail address contained in the search engine database of this invention. For example, in aspects of the invention, a user may send an e-mail requesting information about a particular rare coin to all coin dealerships within 100 miles.
• a method and apparatus for sending information to a receiving party, by determining a telephone number of a facsimile machine associated with the receiving party, converting a text file or e-mail containing the information into a format suitable for forwarding to the facsimile machine, and forwarding the information to the facsimile machine in the converted format via the fax telephone number.
• a method and apparatus for providing click statistics in a search engine. • in search engine search results, providing an option to not show repetitive web sites.
• in search engine search results, providing an option to sort by distance from a particular geographic location.
• in search engine search results, providing an option to sort by businesses with associated web sites. • in search engine search results, providing an option to sort by businesses having a known address.
• in search engine search results, providing an option to integrate phone directory information. • searching of a newsgroup by a search engine, e.g., by allowing different fields to be coded separately (geographic location of messages, messages with attachments, etc.)
• providing geographic locations of messages in a newsgroup.
• an advertiser paying a search engine for clicks on the advertiser's search result (e.g., the advertiser's website)
• a search engine conducting surveys of demographic information, search terms used, and/or result clicked on by users.
• a search engine searching obituaries. The search engine may further send an electronic card responsive to a particular person dying and thereby being listed in an obituary searched upon.
• a search engine providing an "ask for" service.
Regarding, among other things, the location of a user:
• a method and apparatus for automatically determining a user ' s geographic location. • a method of automatically determining the geographic location, including without limitation, country, from which a user is connected to the Internet based on the user's internet protocol address or URL or the IP address or URL of the device connecting the user to the internet.
• a method and apparatus for determining a user's geographic location based on marking a map, e.g with a mouse.
• a method and apparatus for determining a user ' s geographic location based on caller identification (caller ID) information associated with a telephone call through which the user is connected to the internet. • a method and apparatus for determining a user's geographic location, address, and telephone number based on a credit card number
• a method and apparatus for determining a user's geographic location based on a zip code and then verifying that is the actual location of the user by validating the zip code on a credit card.
• a method and apparatus for determining a user's geographic location, name, age, gender, address, phone number, fax number, credit card number, and/or other personal information, based on a single user profile, a plurality of user profiles, or a selected one of a plurality of user profiles stored at the user's computer and/or the user's location, such as stored by the user's internet browser application.
• a method and apparatus for determining a user's geographic location, name, age, gender, address, phone number, fax number, credit card number, and/or other personal information based on a single user profile, a plurality of user profiles, or a selected one of a plurality of user profiles stored at a server computer and/or the server computer's location, such as stored by the user's Internet access provider or the provider of online services to the user.
• a method and apparatus for determining a user's geographic location based on GPS information generated by a GPS device associated with the user (e.g., co-located with the user) and or associated with a navigational device in a users vehicle. • a method and apparatus for updating GPS information as the user relocates, such as continuously or periodically, so that the GPS information may be utilized by an internet site or another user to determine the geographic location of the user. Exemplary aspects of the invention include continually updating the geographic coordinates in a search engine for a user having a mobile terminal.
• a method and apparatus for utilizing a chip ID and/or other information associated with the user's computer hardware to determine the user's geographic location, name, age, gender, address, phone number, fax number, credit card number, and/or other personal information
• in a cellular communications environment, a method and apparatus for determining a user's computer location from the location of the wireless cell the user's computer is connected to.
• a method and apparatus for querying a user's browser for geographic location, telephone number, credit card information, fax number, address, account information and/or other personal information based on a query, tag and/or token (e.g., an HTML tag, Meta tag, and/or any other type of tag/token) sent by the server computer to the user's browser.
• a method and apparatus of storing information about a user, such as the user ' s name, address, geographic location, phone number, e-mail address, fax number and/or other personal information in a user's web browser.
• a web browser that stores information about a user such as the user's name, address, geographic location, phone number, e-mail address, fax number and/or other personal information and automatically or on request provides that information to a web site.
• a method of using location information from a locator device (e.g., a GPS device) to determine a location of the user and to use the determined location according to various other aspects of the present invention. • a method and apparatus for generating and/or utilizing a token (such as a cookie) that passes information such as a user's geographic location, preferences, and/or other user profile information. The token may be standardized so as to be useable by any web page and/or other internet content. The token may be utilized for determining the user's geographic location, the user's preferences, and/or other information associated with the user.
• a method and apparatus for e-mailing coupons, offers, solicitations, and/or other information concerning goods and/or services to a list of recipients, with the contents of the mailing and/or the recipients of the mailing optionally based on the location of the recipient.
• a method and apparatus for providing a searchable source of online coupons to users, with the coupons provided based optionally on the location of the user.
• a method and apparatus for determining the geographic location of a user who has sent an e-mail according to the user's e-mail address or a content of the e-mail. • a method and apparatus for determining e-mail addresses of only those users who are located within a predetermined geographic area.
• a method and apparatus for determining e-mail addresses of only those users who are businesses and located within a predetermined geographic area.
• a method and apparatus for determining the web pages of only those users who are businesses and located within a predetermined geographic area.
• a method and apparatus for determining phone numbers of only those businesses with Web pages who are located within a predetermined geographic area.
• a method and apparatus for determining facsimile numbers of only those businesses who are located within a predetermined geographic area, and sending a facsimile to those businesses using the Internet.
• a method and apparatus for determining the geographic service area of an internet service provider. For example, in aspects of the invention, one way to determine the geographic service area includes using a Traceroute function as described herein.
• a method and apparatus for detecting an access to a web page, using a trace route function and/or automatically passed information to determine the likely geographic service area of user, and altering the appearance of the Web page and/or information provided to the user based on the geographic information. • a method and apparatus for determining the geographic area of a user even when the user is accessing the internet via a large internet service provider. One way to determine the geographic area of the user includes using a Traceroute function as described herein.
Regarding, among other things, the location of the owner or sponsor of a web page:
• a method and apparatus for determining a web site's or site owner's geographic location based on a tag or token (e.g., an HTML tag, Meta tag, and/or any other type of tag or token) sent by the web server computer or included in the web page coding.
• a method and apparatus for determining a web site's or site owner's geographic location based on a telephone number found on a web page.
• a method and apparatus for determining geographic locations of web sites, businesses, individuals, services and or government agencies or offices based on a DNS entry in a domain name server, the DNS entry having geographic information associated with the web site or its owner.
• a method of providing new HTML or META tags that describe a location, phone number, operating hours, geographic areas served by a business, web site type (business, personal, etc.), fax number, and/or e-mail address and/or other business or personal information to be included in a search engine database.
• a method of obtaining personal information or demographic information about a visitor to a web site.
Regarding, among other things, the use of the location of the user and/or the web page:
• a method and apparatus for presenting advertisements (e.g. banner ads) customized to a particular user based on the user's location as, for example, determined by one of the methods of this invention.
• a search engine and/or other web site configured to present an advertisement (e.g., a banner ad and/or commercial) to a user based on the geographic location of the user.
• a method of automatically utilizing the geographic location of the user to automatically switch the user to another portion of the web site and/or customize and/or configure the presentation of the web site and or allow or deny access to the web site based on the geographic location of the user. In exemplary aspects, the web page may be reconfigured to allow the user to check the inventory of the local store branch nearest the user.
• a method for presenting/reconfiguring information on a search engine and/or other web site to a user based on the user's geographic location.
• an Internet browser configured to utilize information such as a user's preferred language, geographic location, and/or address to determine a configuration and/or filtering of information to be presented to the user. • a method and apparatus for automatically determining a user's geographic location and updating, recompiling, and/or otherwise reconfiguring a web page or allowing or denying access to the web page based on the geographic location of a user accessing the web page.
• a method and apparatus for automatically determining a user's geographic location and for redirecting a user to a particular URL based on the user's geographic location.
• a method and apparatus for finding the approximate geographic location of a user connected to the Internet through a multi-location service provider.
Regarding, among other things, internet spider programs:
• an Internet spider program that automatically sends e-mail messages to web site owners or contacts requesting additional information about sites being spidered and automatically incorporates the response to the e-mail in the database of information about the site. • in an Internet spider program, a method to automatically send e-mail messages to web site owners or contacts requesting additional information about the site being spidered and incorporate the response to the e-mail in the database of information about the site. • a device and/or a software application (such as an Internet spider and/or an application for extracting data from an existing Internet-based search engine database) for creating and/or updating a search engine database of the present invention. • a method of creating and or updating a search engine database of the present invention using an Internet spider and/or an application for extracting data from an existing Internet-based search engine database.
• an Internet-based search engine spider configured to communicate with an Internet- based directory (e.g., an Internet-based white pages, yellow pages, and/or blue pages). The Internet-based spider may associate the directory's contents with web page or web site contents.
• a method to cause an internet spider program to re-spider an internet site on a regular basis, using HTML or other tags to establish the re-spidering frequency.
• an Internet-based search engine spider configured to re-spider sites based on HTML or other tags on the site.
• HTML or other tags that are used to cause an internet spider program to re-spider a site on a scheduled basis.
Regarding other aspects of the invention: • a method and apparatus for generating a user profile suitable for use by an Internet browser application and from which the Internet browser application may retrieve information to send to a web page and/or to other Internet content.
• a method and apparatus for providing tour information to a user (e.g., a tourist), the content of the tour information being based on the geographic location of the user and/or the apparatus. Aspects of the invention also include meta tags based on tourist type information such as hotels, restaurants, scenic tours, museums, boat tours, bed & breakfast, cruises, attractions, amusement parks, tourist information pages, travel guides, etc., such that the search engine can return tourist information when a search is made on a particular destination geographic location.
• a method and apparatus for presenting an order form to a user, which order form, when sent by the user, is automatically routed to the location or business serving the user's location. For example, the user may search on all painting contractors within 10 miles of his home, and send a standard format request for additional information to all contractors by pressing a button. The request may be E-mailed to businesses who are Internet connected and faxed to businesses which only have a facsimile number.
• a method and apparatus for automatically adjusting a time-keeping device, such as but not limited to a computer, watch, and/or clock, according to the time zone it is located in.
• a method and apparatus for adjusting a radio or television receiving device to a new station based on the user's preference as to type of station and/or their geographic location and/or the station signal strength. • a method and apparatus that automatically notifies web site owners about new
HTML and other tags that can be used on their site. Aspects of this invention include a spider causing an E-mail message to a site contact where certain meta tags are not utilized at the site. • a method and apparatus for limiting the users of Internet chat facilities to those within a geographic area.
• a method and apparatus for sending targeted e-mails based on demographic information obtained from e-mail addresses. • a method and apparatus for attaching demographic information to lists of e-mail addresses based on finding the location of the user of the e-mail address.
• a method and apparatus for passing information (and or a token associated with such information) associated with a user of a referring Internet web page to a referred-to web page. Such information may be dynamically generated information such as personal, geographic, and/or demographic information associated with the user as described herein.
• using extended header fields in IP Version 6 to pass information to other websites and or other Internet content.
These and other features of the invention will be apparent upon consideration of the following detailed description of preferred embodiments. Although the invention has been defined using the appended claims, these claims are exemplary of the invention in that the invention is intended to include the elements and steps described herein in any combination or sub-combination. For example, it is intended that each of the above aspects of the invention may be used individually and/or in combination with one or more other aspects of the invention. Accordingly, there are any number of alternative combinations for defining the invention, which incorporate one or more elements from the specification, including the description, claims, aspects of the invention, and/or drawings, in various combinations or sub-combinations. It will be apparent to those skilled in the art relevant to the present invention that, in light of the present specification, alternate combinations and sub- combinations of one or more aspects of the present invention, either alone or in combination with one or more elements and/or steps defined herein, may constitute alternate aspects of the invention. It is intended that the written description of the invention contained herein cover all such modifications and alterations.
BRIEF DESCRIPTION OF THE FIGURES
The foregoing summary of the invention, as well as the following detailed description of preferred embodiments, is better understood when read in conjunction with the accompanying drawings regarding a search engine embodiment, which are included by the way of example, and not by way of limitation with regard to the claimed invention.
Figure 1 A illustrates an exemplary embodiment of a search engine and search engine database configured to be connected to the user, various web sites, and various services via the Internet according to aspects of the present invention.
Figure IB illustrates an exemplary embodiment of an architecture implementing the search engine and search engine database of Figure 1.
Figure 2 illustrates an exemplary embodiment of an initial map page presented to the user according to aspects of the present invention.
Figure 3 illustrates an exemplary embodiment of a page according to aspects of the present invention for finding the user's location on the map of Figure 2. Figure 4 illustrates an exemplary embodiment of a page according to aspects of the present invention wherein the user has clicked on a location of the map of Figure 2 and has zoomed in to a portion of the map.
Figure 5 illustrates an exemplary embodiment of a page according to aspects of the present invention wherein the user has zoomed into a city and marked a location.
Figure 6 illustrates an exemplary embodiment of a search page according to aspects of the present invention.
Figure 7 illustrates an exemplary embodiment of the search page of Figure 6 according to aspects of the present invention wherein the user is re-sizing the search area on the map.
Figure 8 illustrates an exemplary embodiment of the search page of Figure 7 according to aspects of the present invention wherein the user has finished re-sizing the search area on the map. Figure 9 illustrates an exemplary embodiment of a page according to aspects of the present invention wherein the user has selected to search a new location.
Figure 10 illustrates an exemplary embodiment of a page according to aspects of the present invention wherein the user has selected a point-to-point search.
Figure 11 illustrates an exemplary embodiment of a page according to aspects of the present invention wherein the user has selected to change the searching preferences.
Figure 12 illustrates an exemplary embodiment of a search result page according to aspects of the present invention showing individual results and mapped results.
Figure 13 illustrates an exemplary embodiment of a search result page according to aspects of the present invention showing density results. Figure 14 illustrates an exemplary embodiment of a search result page according to aspects of the present invention wherein the search results are divided by local businesses and web-based businesses.
Figure 15 illustrates an exemplary embodiment of a page according to aspects of the present invention wherein the user has clicked, in the mapped results shown in Figure 12, on a location 1200 corresponding to "Mel's Blockbuster Video."
Figure 16 is a flow chart illustrating an exemplary embodiment of steps in a method for finding e-mail, postal addresses, and/or telephone information on web pages according to aspects of the present invention.
Figure 17 is a flow chart illustrating an exemplary embodiment of steps in a method for determining the IP addresses of a particular Internet service provider (ISP) and/or for determining the geographic location of each of the IP addresses according to aspects of the present invention. Figure 18 is a flow chart illustrating an exemplary embodiment of steps in a method for determining the approximate geographic area of any visitor to a web site coming from the aforementioned ISP according to aspects of the present invention.
Figure 19 is a flow chart illustrating an exemplary embodiment of steps in a method for passing information about a user, such as geographic, demographic, or personal information, to another website according to aspects of the present invention.
Figure 20 is a flow chart illustrating an exemplary embodiment of steps in a method for using statistics to sell advertising such as banner ads and/or commercials according to aspects of the present invention.
Figure 21 is a flow chart illustrating an exemplary embodiment of steps in a method for providing an Internet web site with user information according to aspects of the present invention.
Figure 22 is a flow chart illustrating an exemplary embodiment of steps in a method for automatically filling out a form from an Internet web site according to aspects of the present invention.
Figure 23 is a flow chart illustrating an exemplary embodiment of steps in a method that a search engine may use to perform a search based on a geographic limitation and/or keywords according to aspects of the present invention. Figure 24 is a flow chart illustrating an exemplary embodiment of steps in a method that a search engine may use to perform a search based on the user's geographic location and/or keywords according to aspects of the present invention.
Figure 25a is a flow chart illustrating exemplary embodiments of steps in a method that a web site may use to provide web site content that is dependent upon the user's geographical location according to aspects of the present invention.
Figure 25b is a flow chart illustrating exemplary embodiments of steps in a method that a web site may use to selectively redirect a user to another web site and/or web page within the web site depending upon the user's geographical location according to aspects of the present invention. Figure 26 is a flow chart illustrating an exemplary embodiment of steps in a method that an Internet spider and/or other web site may use to gather information about various web sites so that a database may be created according to aspects of the present invention.
Figure 27 is a flow chart illustrating an exemplary embodiment of steps in a method that a web site may user to selectively allow a user access to the web site based on the user's geographic location according to aspects of the present invention.
Figure 28 is a flow chart illustrating an exemplary embodiment of steps in a method that a search engine may use to search for web sites based on the geographical location of the web sites according to aspects of the present invention. Figure 29 is a illustrates an exemplary embodiment of an interface for allowing an operator to review and/or edit a search engine database in accordance with aspects of the invention. DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION General Background and Definitions:
The present application relates generally to Internet search engines. A search engine may encompass, without limitation, any method or apparatus for searching content such as web pages that have search or spidering capability. For instance, a search engine may include a program that indexes onto a search engine database(s) such things as words, phrases, graphics, images, geographic data, phone numbers, facsimile numbers, E-mail addresses, server locations, categories, and or time limitations. A search engine is often configured to reside on the Internet, e.g., at an Internet web site, and allows users to search for sites that contain certain content such as particular words or phrases. The search engine may perform a search based on the search term or terms. Search terms include, without limitation, one or more characters, symbols, words, phrases, alphanumerals, graphics, images, geographical limitations, time limitations, and/or logical limitations (e.g., Boolean logical limitations) entered by a user when doing a search on a search engine. Spidering includes the process a search engine does when categorizes and indexes content such as when it follows many or all of the links on a web site and/or indexes the contents of the site. Spidering may be performed by the search engine itself and/or by outside spidering services, programs, and or agents). Search results may include a list (or a portion thereof) of results returned to the user by the search engine as a result of a search.
Embodiments of the present invention also relates to methods and apparatus for geographically-coding certain types of data. Geographically coding includes coding with geographic location information such as latitude and longitude, city, county, state, country, hemisphere, postal address, and/or any other types of geographical information. Area maps may be utilized and include a map of a defined geographic area. Search area maps may also be utilized and include an area map used to limit a geographical area of a search and/or of search results. Search area includes the area defined and/or displayed to the user on the search area map. User includes a person using Internet-based content. User location includes the physical geographical location of the user. Results location includes the physical geographical location and/or area of a listing in the search result. General Description:
Referring to Fig. 1 A and IB, a user 3 may have a computer and/or other interface, such as a personal computer (PC) 20 having a connection to the Internet 23 via the public-switched telephone network (PSTN) 21. Alternatively, the PC 20 may be connected to the Internet 23 via a direct connection to the internet, a digital subscriber loop (DSL), wireless connection, cable connection, and/or any other technique of connecting to the Internet. To obtain access to the Internet, the user may have an account with an internet service provider (ISP) and may utilize a server such as ISP server 22. The ISP server may be connected to the PSTN 22 and or other network such as a cable system giving the ISP access to both the user and the Internet. The ISP server 22 may offer such services as web page hosting, e-mail, web searching via one or more search engines, and/or other access to the Internet.
As is well known in the art, the Internet has numerous servers connected thereto. For example, another server 34 may host one or more web sites and may be connected via one or more other ISP. Embodiments of the invention may also include one or more search provider's web servers 24 and/or one or more directory web servers such as the exemplary yellow pages web server 25. These servers may be physically separate and/or integrated into the same server and/or database. The search provider's web server may have connected thereto the search engine 1 (e.g., a high speed computer such as a main frame or high-end server), a search engine database 2 (e.g., storage memory, disks, tapes, and/or other components holding all of the search engine database data), and/or one or more computers implementing the internet spider 10. The yellow pages web server 25 may have connected thereto a yellow pages search engine 26 (e.g., a high speed computer such as a main frame or high-end server) and/or a yellow pages database 27 (e.g., storage memory, disks, tapes, and/or other components holding all yellow pages data).
The Internet may include a plurality of routers and/or switches 36a-36i for routing Internet Protocol (IP) packets between the various servers connected thereto. The routers communicate using TCP/IP communication protocol and typically allow an originating site to be traced using well known programs. The Internet 23 may also be connected to the PSTN 21 via a plurality of other servers and/or gateways, such as gateway 33. Gateway 33 may be utilized by the search engine to initiate phone and/or facsimile calls as specified herein.
The search provider's web server 24 may server as an interface between the search engine 1 and the Internet 23. The search engine 1 may provide some or all of the searching services discussed herein (e.g., searching only within a local geographic area). The search engine database 2 may include a large storage device (e.g., memory, a hard drive, tape drive, and or optical disk drive) that stores the data needed by the search engine 1 when performing a search. For example, the search engine database 2 may associate various Internet entities and/or non-Internet entities (e.g., businesses, associations, government agencies, etc.) with information about those entities such as phone numbers, fax numbers, street addresses, countries, states, geographical regions, zip codes, contact names, web addresses, entity category (e.g., restaurant, government agency, locksmith), and/or other similar information. Entities may be geographically coded by associating entities in the search engine and/or search engine database with geographical information. For instance, some or all of the entities maybe associated with those entities' respective street addresses, countries, states, zip codes, and/or geographical regions). This information may be integrated into the search engine database such that some or all of the entries are geographically coded.
As will be discussed below, the PSTN 21 and or the Internet 23 may be connected to a wireless base station 28 for handling wireless communications between the Internet and a wireless user. The wireless user may have a handheld wireless unit (such as an Internet-accessible cellular phone, personal digital assistant, terminal, and/or navigational system) for wireless communication with the PSTN 21 and/or the Internet 23 via the base station 28. In certain embodiments, the wireless user's automobile 29 may include a wireless unit 31 for wireless communication with the PSTN 21 and/or the Internet 23 via the base station 28. The wireless user may also have global positioning system (GPS) and/or navigational unit 32 that determines the wireless user's geographical location from GPS satellites 30 in orbit around Earth. The GPS unit 32 may be in communication with the wireless unit 31 such that the wireless user's geographical location may be sent to the Internet 23 and/or the PSTN 21 (and ultimately to, e.g., the search provider's web server 24 and/or the search engine 1) from the GPS unit 32 via the wireless unit 31. Generation of Geographically Coded Database
The search engine database 2 may be generated and or updated in a variety of ways. For instance, as discussed herein, the internet spider 10 may automatically or semi-automatically search through a plurality of web sites for locator information (e.g., the web sites' contact names, telephone numbers, fax numbers, street addresses, countries, states, geographic locations, zip codes, etc.). The internet spider 10 may then generate and/or update the search engine database 2 based on its findings. As also discussed herein, the internet spider 10 may send e-mails to various web sites requesting additional information, wherein the internet spider 10 may automatically or semi-automatically generate and/or update the search engine database 2 with the responses to the e-mails that may be received.
Another way that the search engine database 2 may be generated and/or updated is to use data from an existing database. For instance, the directory database 27 may already store data for a plurality of businesses. The directory database 27 may further divide those businesses into categories (e.g., restaurants, locksmiths, etc.). The internet spider 10 and/or the search engine 1 may integrate the spider generated data with the data from the directory database 27. For example, the businesses' phone, facsimile, business hours, e-mail addresses and/or web page addresses may be added to the listings in the search engine database 2. Thus, the search engine database 2 may associate a business name, address, and telephone number, with, e.g., the business' e-mail address, web page address, country, zip code, state, and/or geographical region. Where information is missing (e.g., hours of operation), the web page contact person may be automatically sent an e-mail and/or facsimile requesting the additional information. Responses may be read electronically and the data updated without manual intervention or with minimal manual intervention.
Referring to Fig. IB, a general system overview is provided. A search engine 1 may interface via the internet and/or other network to any number of additional services such as various directory or listing services 9, various spidering services 10, various search engines (e.g., Yahoo), the actual end user 3, various mapping services 6 (e.g., mapquest), various address-to-coordinate conversion tools 7, and/or various on-line telephone/address directories 8, 25 (Fig. 1A).
The geographic location, such as a particular country, from which the user 3 is connected to the Internet may be determined by the search engine according any of the methods of this invention, including the user's Internet Protocol (IP) address. A particular IP address is typically associated with only a single country. For example, the IP address "aol.com" and "erols.com" are each associated only with the United States, while "abcd.jp" may be associated only with Japan. Such relationships between IP addresses and their countries and/or other geographic areas are public knowledge and may be stored on a public database or in the search engine database.
To implement a system for determining a geographic location of a user according to the user's IP address, there may be provided a server containing an IP address database which correlates an IP address to a location of the server. It need not necessarily be an IP address, but it may be user sign-on, user profile, user cookie, user information correlated with the user's location. For example, the user may sign on with the user name and password. This may be correlated with user location and therefore initiate each of the herein actions described. Embodiments of the present invention differ from current search engine databases in several ways. According to embodiments of the present invention, the search engine database may be (1) coded with coordinates that give the location of each web entity or sub- entity or owner in the search engine database, based on address or telephone number information contained on the web site and/or obtained by other means; (2) coded with phone and/or fax numbers extracted from web pages, sub-pages, and/or other means; and/or (3) coded with e-mail addresses extracted from web pages and/or sub-pages and/or other means and/or (4) coded with street address information extracted from web pages and/or sub-pages and/or other means. Referring to Fig. 26, the spider which may be utilized in exemplary embodiments to create the search engine database may look through each web site, searching for items that it can identify as addresses, phone numbers, fax numbers, and/or e-mail information, using matching patterns for each (Step 2601). For instance, a text string that contains text, followed by an "at" sign ("@"), followed by more text, followed by a period, and then followed by even more text may be assumed by the spider to be an e-mail address. Similarly, for example, text that contains state names or abbreviations followed by a zip code may be assumed to be a U.S. address. Further, text that contains a city name, optional postal code, and then a country name may be assumed to be an address in a European or other foreign country. Phone numbers may be identified by country code, area codes, digit separations, etc. Additionally or alternately, the spider may estimate the location according to the IP address of the web site being searched or by any of the other means described in this document.
In still further embodiments, telephone/facsimile information may be obtained by cross correlating address information with yellow pages information. In this manner, the address and phone/facsimile information may be checked against that information obtained from the spider to verify integrity and flag certain discrepancies.
Address and/or other information may further be obtained by the search engine by e-mailing and/or sending via facsimile a request for locality and other information to e-mail addresses and/or facsimile found by the spider on the site, to the site's webmaster, and/or to the administrative contact for the site as reported by the web address registration authority for the web site, e.g. in the United States, Internic (Step 2602). The e-mail may include a reference number in the subject line and/or embedded in the E-mail. When and if the e-mail is replied to (Step 2603), the search engine may automatically update the search engine database with location, phone, fax, and/or e-mail information as appropriate (Step 2604). Alternatively, a manual check and update may be accomplished.
According to further embodiments of the present invention, web page designers may use the HTML meta tag to describe the location, phone, fax numbers and/or e-mail addresses to be included in the search engine database. According to still further embodiments of the present invention, new HTML tags may be defined to describe the location, phone, fax numbers, and/or e-mail addresses to be included in the search engine database. These tags may include site information to describe individual stores, branches, and/or office locations with locality information associated with each site. For example, the meta tags may include: Meta-tag 1: Business Name: main location address, phone (e.g., for each of customer service, sales, help), facsimile (e.g., for each of customer service, sales, help), e-mail (e.g., for each of customer service, sales, help), hours of operation, inventory links (type of interface), types of services offered, etc. Meta-tag 2: Site 1, Business Name if different: store location address, store phone (e.g., for each of customer service, sales, help), store facsimile (e.g., for each of customer service, sales, help), store e-mail (e.g., for each of customer service, sales, help), store hours of operation, store inventory links (type of interface), types of services offered, etc.
Meta-tag N: Site N, Business Name if different: store location address, store phone
(e.g., for each of customer service, sales, help), store facsimile (e.g., for each of customer service, sales, help), store e-mail (e.g., for each of customer service, sales, help), store hours of operation, store inventory links (type of interface), types of services offered, etc.
The above mentioned meta tags are exemplary and are meant to include each of the meta tags described herein. The spider may obtain the meta tag locality information for use in the geographically coded database. The locality information may also be utilized by the browser to allow a visitor of a web site instant access to contact information for the web site.
HTML / Meta Tags for Web Page Location
In further embodiments, the location of the Web page and/or information about the web page or its owner, such as street address, telephone and fax numbers, and/or e-mail address may be coded with HTML tags and or META or other tags. The tags allow a search engine to easily find such information for a web site. Thus, referring to Fig. 28, a database may be generated in accordance with the present invention as described herein such that each of a plurality of web sites in the search engine's database may be associated in the database with the above-described HTML tags and/or META tags (Step 2801). The search engine may receive a geographical search term/limitation from a user, and/or determine the user's geographical location (e.g., based upon the user's IP address) (Step 2802). Using the database, the search engine may then search through the HTML and/or META tags of the various web sites in its database looking for a particular geographic location(s) (Step 2803). The search engine may then provide to a user the search results of the geographically-based search (Step 2804).
When an HTML / Meta tag is used to identify the user location the information may be exact or it may be approximated to protect the privacy of the user. For instance, all of the user telephone number may be used, or the first few digits of the number may be used, just sufficient to give the approximate location of the user from the area code and prefix. Additionally or alternatively, a separate search engine database of geographically- coded URLs may be utilized to select URLs to be displayed and their order. According to embodiments of the present invention, the search engine may find addresses by spidering each web site to be indexed, looking for fax and telephone numbers, and/or address information such as e-mail address, zip codes, postal codes, state names, abbreviations, and/or country names. Once found, the surrounding data may be parsed and/or standardized by, e.g., a commercially available address standardization engine, and then geographically- coded using, e.g., a commercially available geo-coding engine. Embodiments of the present invention may also generate approximate locations by using telephone numbers (country code, area code, and/or prefix) if address information is missing or incomplete. For example, some embodiments of the invention utilize a simple method to find the business name (or personal name) and location of a website bu searching the target website for a phone number, and then performing a reverse phone number lookup (e.g., using a commercially available online reverse phone number directory) to find the name and/or the address. If a fax, telephone number, and/or e-mail address is found, it may be stored in the search engine database to be presented with search results.
Described below in detail with reference to Fig. 16 is an exemplary embodiment of a method for finding e-mail, postal addresses, and/or telephone information on web pages:
1. (Step 1601) Perform a "whois" lookup on the domain name or look the domain name up in a database of registration information provided by a registration authority. The whois or database lookup may return a company and/or individuals name and address, including the country, in a fixed format. The information returned may then be saved. This information is very likely to be complete and valid for root page domain names.
2. (Step 1602) Determine whether the page is a root page, i.e., a page without a file name or with the file name "index.????" or "default.????". If so, proceed directly to Step 1603 ; otherwise, delete all address information found in the whois lookup except the country (Step 1602a) and then proceed to Step 1603. 3. (Step 1603) Access the web page and search for a language-dependent string or set of strings indicating contact information in link text or linked-to URL, using the language appropriate to the country found in Step 1601. In the U.S., nearly all pages containing address information are referred to using the string "contact." Thus, in the U.S., the search will be to find any link or URL containing those letters, such as "Contact us" or "ourcontacts.html." If the string is found in a URL, set that URL as the page to fetch in the next step, and if the string is found in a link, set the linked-to URL as the page to fetch in the next step (Steps 1603a, 1603b). If the string was found, go to Step 1604. If the string was not found (Step 1603d), recursively search all pages linked from this one for the string (Step 1603c). If the string is still not found, go to Step 1608. If, on the other hand, the string is found, proceed with Step 1604.
4. (Step 1604) Fetch the page found in the previous step. Where the page contains multiple addresses, the page is first parsed to separate out the different addresses. The first address may be assumed to be the main address with the subsequent addresses identified as branch addresses. For each address, the parsing program may parse the address to locate various information such as e-mail address, physical address and phone number (Steps 1605 through 1607).
5. (Step 1605) Search the page/address for e-mail address patterns. This pattern is a root level domain name (com, net, org, mil, edu, etc.) or country identifier (ca, be, fr, jp, etc.) that is preceded by a dot, an alphanumeric string that may or may not contain a dot, an "@" character, and another alphanumeric string, with no spaces. It may be most efficient to search for "@" characters and parse both sides for the pattern. Embodiments of the invention typically save each e-mail address found. If more than one e-mail address is found, and they are outside of links, save any text preceding the e-mail address up to the preceding HTML tag that causes a line break (<br>,<p>,<div>, <li>, etc.) (a "Line Break Tag"), as an identifier of the address. If one is found inside a link, use the link text as the identifier of the address.
6. (Step 1606) Search the page/address for a country-specific phone number pattern. In the U.S. and much of the rest of the world, this pattern is four numbers preceded by a space and/or punctuation symbol, three numbers, a space and/or punctuation symbol, and three numbers. Sometimes this string is preceded by another space and/or punctuation symbol and the long distance dialing code (in the U.S.," 1 "). In other countries, the number pattern may be different (in Europe, for instance, there is usually 0 or (0) before the area code), but the process is the same. Search the text previous to the number for a language- specific telephone or fax number identifier, such as "tel," "phone," "ring," "fax," etc. Stop the search when a Line Break Tag is found. If the identifier is found, save the number as the telephone and/or fax number, as appropriate. If no identifier is present save the first or only number found as a telephone number.
7. (Step 1607) If address information is present (from the whois lookup on a root page), then the parsing is complete and the rest of this step is skipped. If no address information is present, search the page for a country-specific address pattern. In the U.S., search for a state name or abbreviation followed by a space and a five-digit number. Outside of the U.S., search for the country name. Back up to the preceding Line Break Tag. The text between this tag and the one before it is the city information, including postal code. The text between the Line Break Tags previous to the city information is local address information, and is country dependent. The key is that each address item is separated from the next item by a Line Break Tag. The item containing the company name is the first item of the address. It may be determined for root page domains by matching to the company name found in the whois search or by finding a Line Break Tag that is different from the Line Break Tags found between the other lines of the address. A different tag or series of tags indicates the start of the address block. 8. (Step 1608) Perform the e-mail and address and phone number parsing in Steps
1605 through 1607 on the original page/address and, recursively, all pages linked from it, until all phone and address information, if present, is found. If a street address is not found, mark the site as an e-cornmerce site. This completes the processing for this exemplary embodiment.
In conjunction with or instead of the steps described above, web site addresses may be determined by automatically and methodically searching through an existing search engine (such as other existing search engines 5 shown in Figure IB) such as Yahoo to determine which web sites exist on the Internet. For instance, a search engine according to aspects of the present invention may start searching Yahoo's index with the letter "A" and work its way through all entries to Z.Z.Z.Z.Z.Z.Z to find all of the web sites listed on Yahoo. This may be done periodically in order to provide updates. Existing lists of popular web search terms (e.g., the top 10,000 terms) may further be used to find which sites need to be added to the searching engine's database. Such lists of popular web sites are currently provided by listing services (such as listing services 9 shown in Figure 1) on the Internet, and such lists may be periodically e-mailed from a listing service to the search engine in order to update the search engine database. The e-mail from the listing service may be manually and/or automatically parsed when received in order to extract the web site addresses.
Exemplary Search Interface for Geographically Coded Information
Further embodiments of the present invention may present a user interface including a search area map (such as map 51 shown in Figure 2). When a user visits such a search engine for the first time, the user may see a screen similar to the exemplary screen shown in Fig. 2. The map 51 may display the country that the user is in if the country can be determined in accordance with various aspects of the present invention as discussed herein. If the country of the user cannot be determined, the entire world may be shown in the map 51. To get better results from the search engine, the user may mark their location on the map 51. To do so, the user may click on the particular location on the map 51 in which the user is located, using zoom tools to zoom the map 51 as necessary. When the map 51 is zoomed in, the map may be centered on the point where the user last clicked. The point where the user clicks may be marked with an X symbol or other appropriate symbol 52. If the user does not want to manually click through the map 51 to indicate the user's location, the user may optionally click on a link 53 that in response would automatically determine the user's geographical location in a manner according to one or more aspects of the present invention. Alternatively, the link 53 may bring up the a screen such as the exemplary screen shown in Fig. 3. The screen shown in Fig. 3 may have a form for filling out various information about the user's location, and or a button 100 for automatically finding the user's location. Once filled out, this information may be permanently stored in the user's browser or as a cookie or other file on the users machine. A banner advertisement 50 may further be shown on the search engine screen, which may or may not be location specific.
The map 51 may be provided by the search engine and or through a mapping service (such as mapping service 6 shown in Figure 1 ). As discussed above, the first map presented to the user may be a relatively large geographic area that contains the user location, such as the world, a continent, a country, a state or even the city the person is searching from. The user may choose an area on the map, e.g., using a mouse. The area selected by the user may be, e.g., a geometric shape such as a box, diamond, ellipse, rectangle, and/or circle, and/or a freehand or other user-defined area. The user may use various graphical tools to select the area, such as the circle tool 650, the square tool 651 , and/or the freehand tool 652 shown in Figure 6. The map may zoom in and/or out automatically and/or manually in response to the user's request to show that area selected by the user. The user may manually zoom in and/or out by using a button, dial, slide bar, or percent data field or by clicking or double- clicking on the map without selecting an area. Additionally or alternatively, the user may zoom the map in and/or out by clicking or double-clicking on the map, and the new map center may be defined as being the location on the map where the user has clicked. Once an appropriate search area map is chosen (if necessary), the user may enter search terms into a search field, as in a standard search engine. The search field may be on the same page and/or window as the map or on a different page and/or window. Alternatively, embodiments of the invention allow the user to directly enter search terms related to geographic information such as zip=22213 or /NLA for near this location, and/or w/50m for within 50 miles.
Figs. 4 and 5 illustrate an exemplary embodiment of screens used while the map 51 is zoomed in. When the map 51 is zoomed in, the map 400 may result. When the map 400 is zoomed in, the map 500 may result. The screens in Figs. 4 and 5 may show a banner advertisement 401, 502 that is keyed to the geographic location selected so far by the user. If no geographically-keyed banner ad exists for the chosen location, a random banner advertisement may instead be displayed. Once the user decides that he or she is sufficiently zoomed in, the user may press a "start search" button 501 to begin the search.
The search engine may automatically assign the user to a geographic area based on information given by the user and/or determined from the user's Internet Protocol (IP) address and/or time zone and/or other method or apparatus of this invention. A user whose IP address is from an Internet Service Provider (ISP) in a particular location (e.g., a particular country) may be assumed to be in that location (e.g., located in that particular country). A user who has registered to use the search services may be asked his or her location by obtaining, e.g., his or her address and/or telephone number. When search services are provided by or through an ISP and/or online services provider (such as America Online), the online services provider may determine the user's location through the user's account and/or registration data. The users location may be used for various purposes including determining the content provided to the user and what services he or she may receive. For example, a user may be prohibited from receiving and/or seeing the order screen for certain on-line drugs if the user is located in the United States and/or pornography for users located in certain middle east countries.
The search results returned from the search may be only those businesses that are located within the search area chosen as discussed above. The results location may be determined from information stored in the main search engine database, in a supplementary search engine database located with or separately from the search term database, and/or determined in real time by examining the web pages of the possible search results before the search results are returned. Geographic locations of web sites and/or other search results may be shown on the map with the aid of a standard address-to-coordinate conversion tool (such as address-to- coordinate conversion tool 7 shown in Figure 1). Such conversion tools are presently available on the Internet and are often used by mapping services such as the mapping service presently provided by Yahoo. The conversion tools typically receive an address and convert the address to a coordinate location, such as in latitude-longitude format. Thus, a search engine according to aspects of the present invention may find an address associated with a web site and/or other search result, forward the address to the conversion tool or conversion tool web site, receive the converted coordinate location associated with the address, and show the location of the address on the map as described herein.
The search engine may store information about the user's last search area on the user's computer, such as in a cookie or other token containing the location coordinates, and/or in the search engine's database. In the case where the information is stored in the search engine's database, the information may be indexed by a cookie or other token kept on the user's machine and/or indexed by the user signing onto the search engine. This cookie or token may be modified and/or replaced as needed and may be passed back and forth between the user's machine and the search engine. The information contained in the cookie or token may be used by the search engine and/or the user's Internet browser to present the same area map in the next search by the same user.
Thus, as shown in Fig. 6, the user may use the various selection tools 650, 651, 652 described above to select an area in which the user would like to search. To do this, the user may continue to zoom the map to the desired scale if not already zoomed, and then make a selection on the map using one or more of the selection tools 650, 651, 652. The circular selection tool 650 may be a default tool, and the user may use the mouse to size the circle 620 to the desired size on the map to include only the area to be searched, as shown for example in Fig. 7. In Fig. 7, the new selection area that is dragged by the mouse may be indicated by a dashed circle 700, and may be temporary until the user releases the mouse button. Once the user has released the mouse button, the new area selected may become permanent, as shown for example by a solid circle 800 in Fig. 8.
To make a free hand selection, the user may choose the free-hand selection tool 652 and may click and hold the mouse button while dragging the mouse across portions of the map to encompass the area to be selected. The screen may include a selected area indicator 653 to indicate to the user the size of the area selected. The user may also choose to change his or her searching preferences and/or search area using a link 602 or button 600, and/or perform a point-to-point search using link 601 as discussed herein. The screen may include a banner advertisement 654 that is of a business located within the area of the map selected. To execute a search, the user may first select the area to be searched as discussed above, type in some keywords, and then click on one of the search buttons, such as those buttons labeled "search entire map," "search the Internet," or "search selected area." As an alternate to using a map based system, the user may be presented with a box for entering a zip code/city/county/state/country with and a distance modifier and given the choice to limit the search to the location as modified by any entered distance modifier. Using embodiments of the present invention, a user who, for example, selects the Washington, D.C. area (e.g., by drawing a circle around the Washington, D.C. area or entering Washington D.C. in the area modifier) and searches for "video store" would get search results indicating only Washington, D.C. area video stores located within the selected area. If the user had instead decided to change the search area by selecting the change search area button 600, a screen such as that shown in Fig. 9 may appear. From the screen shown in Fig. 9, the user may zoom the map to relocate themselves anywhere in the world. Once the user is satisfied with the location, the user may click the start search button 901 to search the newly-selected area. If the user wants to start all of his or her future searches from this selected location, the user may check the "make this my default location" box 900.
The search results returned by the engine may be presented to the user such that the results are sorted according to their distance from the searcher. For example, the search results may be sorted from closest to furthest, or from furthest to closest. Result order may be modified by other factors, such as whether or not the owner of the web site has paid a fee to the search engine.
The search results may include the address, phone, e-mail address, and/or fax number of the entity. The search results may further contain driving directions to the location of the business in the search results.
Search results may be presented textually and/or geographically. When the search results include a graphical presentation, an area map may be marked with one or more symbols, highlighted, and/or colored to show the locations or concentrations of each of the entities found in the search. The user may then select an entity or entities by, e.g., clicking the mouse on a symbol, colored, and/or highlighted area to see further search results data for the entity or entities selected by the user. This means, for instance, that a user may search for video stores with the entire U.S. on the area map, zoom in on an area(s) of interest after the search is completed and the map is marked, and then list, display, and/or select individual search results items and/or groups of items. Referring to Fig. 10, a point-to-point search may be requested and performed. Such a point-to-point search is a search within the area of a corridor defined between two points.
The corridor may be a straight line with a predetermined width between the two selected points, or even a corridor that follows along certain roads or highways between the two selected points. For example, a point-to-point search may be limited to the area of a corridor that follows along an Interstate route(s) between two specified cities. Such a search may be for, e.g., video stores along that portion of interstate 1-95 that is between Richmond and Washington. The user may further select a distance from the interstate from which a search may extend. In other words, the user may define the corridor width surrounding the selected interstate portion within which to perform the search. To do this, the user may textually and/or graphically (e.g., using a mouse) select a location at each end of a selected route, and optionally set the distance off the route to search. The route does not need to be an interstate, but may be any road, path, and/or street. The point-to-point search may automatically search along the fastest route(s) between the two selected points, the shortest route(s) between the two selected points, and/or to avoid those routes with limited access roads, toll roads, and/or ferry lanes. To further narrow the search, the user may choose for the search engine to list only those results that are within a certain distance from an exit or route. This screen may include a banner advertisement 1000 from a business located within the selected corridor. If keywords are also submitted in the search, the banner advertisement 1000 may also be keyed to the keywords. Contracted banner advertisements may be chosen first if available. Otherwise, run-of-site banner advertisements may be used.
A search may further be performed within a user-defined radial distance from a particular address, latitude/longitude coordinate, and/or well-known landmark. For example, the user may wish to search for all Italian restaurants within one-half mile of the Washington Monument in any direction and/or in limited directions (e.g., only between north and west of the Washington Monument).
A search may be further performed within a set of user-defined regions, with results returned from more than one region in a single search. Furthermore, exclude regions may be defined, so that a user may, for instance, select a large geographic region to search, and mark one or more sub-regions within the selected region as regions to not search.
If a user clicks on the "change your searching preferences" link 602, a screen such as that shown in Fig. 11 may appear. Such a screen may allow the user to change his or her searching preferences. Selections under the "include in results" 1101 heading may determine what data is displayed when search results are listed. When the "search for e- commerce websites" option 1102 is activated, any search may return e-commerce businesses all over the world, as well as local businesses. Under the "present results" 1103 heading, if the user chooses "by density" he or she may be presented with a color coded map as a result of a search. If the user chooses "by individual result," the user may be presented with icons and/or listings representing each individual result. The user may choose to order the results by proximity to a particular location (e.g., the user's location) or by keyword prevalence/density. The user may also be able to choose whether or not to allow search refinements to be suggested by an expert system. For example, the search results may be ordered in accordance with the sites with the highest usage or hit ratio. The sites may be listed be ordered in accordance with the users past searches. Other external expert systems may also be employed. Fig. 12 illustrates exemplary search results for a search for "video stores" displaying results by proximity and listing each search result individually. To refine this search, the user may type additional terms into the keyword field and/or simply click on the "add" buttons 1201, 1202, 1203 located beside one or more ofthe suggested keyword refinements. Results for e-commerce web sites and/or local web sites may be displayed separately. To jump to the e-commerce web sites, the user may click on the "e-commerce businesses" link
1205. To jump to the local results, the user may click on the "local businesses" link 1206.
If a particular search result has a commercial associated therewith (e.g., via online slide show, video and/or audio), a projector icon 1208 may be located beside the title ofthe particular search result in the listed search results. Advertising banners 1210 may be presented from one or businesses located in the selected map area and/or related to the search keywords.
Each search result may be listed in text and/or icons, as well as be shown on a map 1204. For instance, the map 1204 may includes an icon 1200 for each search result listed, indicating the business location of the respective search result. For searches that return many results, the results may be broken into a plurality of screens.
The search results of Fig. 12 may be further narrowed geographically by use ofthe zoom tools as discussed above. An example of a search that has been narrowed in this way is shown in Fig. 14. Only those search results that appear on the new zoomed-in map 1400 may be presented.
When the user selects one ofthe search results, either by clicking on the hyperlinked text search result or by clicking on one ofthe icons 1200 on the map 1204, a screen such as the screen shown in Fig. 15 may be presented. From this screen, the user may either go back to the previous search or start a new search. This screen may include driving directions 1501 customized according to the user's geographical location. For example, the driving directions may be from the user's location to the selected business' location. This screen may include a banner advertisement 1502 that may be very specifically selected according to the particular search result selected, according to the location ofthe user, and/or according to the keywords used in the search.
Thus, searches may be performed as described herein based on both geographic and non-geographic limitations and keywords. As shown in exemplary Fig. 23, the search engine may receive a search request from the user that may include keywords and/or a geographic limitation (Step 2301). The geographic limitation may be defined, e.g., by selecting an area on the search engine's map (e.g., using the circle 800 shown in Fig. 8). The search engine may search the geographically-coded database 2 (see Fig. IB) according to the search request (Step 2302). This search may include finding one or more web sites according to the geographic limitation and/or the keywords. The search engine may then identify those results that are found (Step 2303) and/or present the search results to the user in any ofthe format described herein (Step 2304).
Instead ofthe user providing the geographic search limitation, the search engine may use the geographic location of the user as part ofthe search limitations. Referring to Fig. 24, the search engine may receive the search request (Step 2401) as described above. The search engine may automatically determine the user's geographic location via any of the ways described herein (Step 2402). The search engine may then search for and identify the geographically-coded database 2 according to the keywords in the search request and/or the user's geographic location (e.g., within 100 miles of the user) (Steps 2403, 2404). The search engine may then present the search results to the user as above (Step 2405).
Search results may further be displayed as a plurality of regions, as shown for example in Fig. 13. A region may be defined as having a concentration (i.e., density) of items found in the search within a particular density range (e.g., one region may have between 1 and 3 restaurants per city block, while another region may have between 4 and 10 restaurants per city block) and/or having a particular type of item (e.g., one region may have mostly Italian restaurants, while another region may have mostly Greek restaurants). Such regions may be displayed to the user on a map 1300 such that they are distinguished by colors, markings, labeling, highlights, and/or borders. A region' s geographic boundaries may be determined for each search according to predefined ranges and/or according to predetermined geographic zones, such as according to country, state, county, city, zip code, etc. In the video store example, a search with the search area being defined as Maryland, Virginia, and Washington, D.C. may return a map colored, marked, and/or labeled to show how many stores are in each state, county, city, zip code, and/or other region. A salesperson, for another instance, could search for potential customers and receive a display of the mapped results color-coded by concentration of prospects. This would allow the salesperson to concentrate on those regions having the most prospects.
Search results may be limited to those items that are within a distance that is automatically set via a computerized algorithm that determines a maximum distance based on the search terms. For example, a video store search may automatically limit results only to locations within 20 miles of a particular landmark, address, interstate, etc. A search for a car dealer may return results only for locations within 50 miles, and a search for beaches may return only beaches within 250 miles. The user may have the option of including and/or excluding web-based (i.e., Internet- based) businesses in a search, such as via a graphically-selectable check box and/or other selection mechanism. In the video store example, for instance, a search that includes web- based businesses would return those sites that rent or sell videos on the Internet (and that also meet the other requirements ofthe search). Web-based businesses may be intermixed with the geographically located businesses and/or they may be presented in a separate section ofthe search results.
Optionally, the user may be presented with an indexed listing of sites within the search area, rather than sites found using the standard search term model. An expert system intelligent agent may be utilized to suggest ways to narrow searches based on search terms used and an analysis of the words indexed for the results returned. For instance, in a search for video stores, the expert system may find that the returned results include specialized video stores ("B" movie stores, classic movie stores, etc.) and may suggest searching on this, more specific, basis.
Embodiments ofthe present invention may perform searches keyed or filtered to the user's country. For example, if the user is connected from the United States, then a search may by default generate only those results within the United States. If an IP address is associated with a geographic region smaller or larger than a country, then the search may be geographically limited to, or expanded to include, that geographic region as appropriate. Further, graphical searching maps may be keyed to the user's country based on the user's IP address or other method or apparatus of this invention. For example, if the user is from Germany (and thus is likely using a German IP address from which the user accesses the Internet), the search engine may, by default, provide a map of Germany from which a search may begin. The user may define a different default starting point if the user so desires. Where the user is based in the United States and the web page is based in Germany and only displayed in the German language, the search engine may automatically translate the web page into English. Similarly, where the spider determines that the web page may be presented in multiple languages, this information may be coded so that the user is presented with the web page in his own language. In exemplary embodiments, the users browser codes his native language in a default file which is matched with one or more meta tags on the target web page to determine the action to be taken. The meta tags point the browser/search engine to the web page which is formatted in the appropriate language. The user may further register with the search engine and provide further information such as the user's country, preferred language(s), address(es), and/or other preferences. Such information may be stored and easily accessible by the search engine, e.g. as a cookie or token. Advertisements such as banner ads (such as banner ad 50 shown in Figure 2) and/or other commercials may be keyed to the user's country and/or other locality and/or
geographic region, as determined by the user ' s IP address and/or other information provided by the user.
Searches by embodiments of the present invention may provide any number of search results at one time, depending upon a variety of factors. The number of search results returned at one time may be determined by the user, by the search engine, according to the user's computer memory limitations, and/or according to the user's modem speed.
Maps may be downloaded to the user's Internet browser software as images (e.g., JPEG and/or GIF images) and/or as data that is not pixel or bit mapped data, but instead is drawing data. Drawing data may be coordinates of cities, road section endpoints, boundaries, etc. One example of such drawing data would be data used by Microsoft Powerpoint software to store drawings. Instead of bit mapped data, the drawings are stored as line, shape, and point data. Such drawing data nearly always takes up significantly less storage space than bit mapped or other similar image data. Such drawing data therefore takes less time and bandwidth to download to a browser. This is a significant improvement over current Internet based map technology. The browser may be configured to receive the drawing data corresponding to a map image and reconstruct the map based on the drawing data. The browser may utilize an applet such as a Java applet to reconstruct the map image or may be programmed to reconstruct the map without the use of add-in programs.
Additional maps that are expected to likely be viewed by the user in the future may be pre-downloaded by the browser in order to save time. For example, the user may be viewing map A, which shows the Washington, D.C. metropolitan area. The user's Internet browser may download from the search engine a map B that shows Washington, D.C. at the next zoomed-in level (e.g., based on the user's location) and/or map C that shows Washington, D.C. at a next zoomed-out level (e.g., even closer to the user's location). Thus, if the user zooms in, the zoomed-in image may already be available to the browser for immediate display. The browser may attempt to always remain one or more steps ahead of the user in this way in order to save time by predicting likely steps that the user may take next. The browser may utilize an applet such as a Java applet to pre-download maps and/or other information or may be programmed to pre-download information without use of add-in programs. Such pre-downloading is not limited just to maps, but may be used to pre- download large amounts of search result data. For example, the user may choose to see only twenty search result items at a time, but the browser may pre-download one hundred search result items even though only the first twenty are initially displayed. This is a substantial advantage in that the perceived speed ofthe search engine is substantially increased.
As discussed briefly above, embodiments of the present invention may further provide automatic language translation in conjunction with a search by a user. For example, when a search is performed, the search engine may automatically translate any search result information as necessary into the user's home language. The user's home language may be assumed to be the language associated with the user's country as determined by the user's IP address or other method or apparatus of this invention, and/or the user's home language may be set by the user as a default home language, regardless ofthe country from which the user is connected to the Internet.
Such language translation may be performed in several ways. In some embodiments ofthe present invention, the search engine may have access to automatic translation software (such as the translation software currently available) to translate foreign language information as needed to the search language (i.e., the language ofthe search terms). Expert systems may be employed to determined the source language and/or the search term language. In further embodiments ofthe present invention, the search terms themselves may be translated into multiple languages, and multiple searches may be performed based on the various language versions ofthe search terms. In further and more preferred embodiments of the present invention, the search engine database (and/or plurality of databases) of the search engine may already have information stored simultaneously in multiple languages, wherein the appropriate language version ofthe information would be selected according to the language required. Those embodiments having pre-stored multiple language versions would likely in general operate significantly more quickly than those embodiments that translate on an as-needed basis.
As discussed above, and discussed in more detail below, further embodiments ofthe present invention may provide search results filtered to not display results prohibited by the user's country's laws. For example, where the user is operating from a country that prohibits pornography, the search engine may automatically prevent search results from including pornographic sites. Again, the search engine may determine from which country the user is operating based on the user's IP address or other method or apparatus of this invention. Further embodiments ofthe present invention may be used to allow or block access to web pages, not limited to search results, based on the location ofthe user accessing the web page. For instance, a user from a state or country where gambling is illegal may be blocked from accessing a web site that has gambling and is located in a locale where gambling is allowed. The same techniques can be applied to pornographic web sites, which need to block certain locations from accessing their content, since such content is illegal in these locales. The present invention can be used by sites to control or deny access and to change the content presented based on laws, traditions, etc. For example, as shown in Fig. 27, a method for selectively allowing access to a web site may include the steps of receiving a request from a user for access to the web site (e.g., the user commands his or her browser to go to the web site's address) (Step 2701); responsive to the request, determining the geographic location of the user (e.g., based on the user's IP address (Step 2702); and selectively either allowing or denying access to the web site (or a portion of the content thereof) based on the user's geographic location (Steps 2703-2705). Further embodiments of the present invention may provide search results sorted according to language. For example, those search results in a user's home and/or preferred language may be presented first, and then other languages. Further multiple languages may be selected by the user in order of preference. For instance, the user may select English to be the primary preferred language, German the secondary preferred language, and Italian the tertiary preferred language. A search may thus provide first the English language results, then the German language results, and then the Italian language results. The results may be translated or untranslated as available and/or as determined by the user.
Many small businesses do not have a web site and thus are not listed on conventional search engines. However, according to various embodiments of the present invention, a search engine may have access to an online yellow pages and/or while pages telephone/address directory (such as the online telephone/address directories 8 shown in Figure 1) for any one or more geographic areas and may search these yellow and/or white pages in addition to or instead of searching for web sites. A search engine according to aspects of the present invention may choose a yellow/white pages entry according to its geographic location in the same manner as described above for web site geographic filtering. Thus, search results may include web sites, business listings found in the yellow pages regardless of whether the businesses have web sites, personal non-business listings normally found in the white pages, and/or government listings found in, e.g., the blue pages. For example, a user may custom-select a geographic search area as described above in order to search for all persons with the last name of Smith. The search results may include, at the option ofthe user, all personal web sites of anyone named Smith who is located within the selected geographic area, all telephone/address directory listing of anyone named Smith who is located within the selected geographic area, and/or all business web sites and/or listings of any businesses with the word "Smith" in the business name and located within the selected geographic area. Further, these results, as with any other results as discussed above, may be presented textually (e.g., individual listings) and/or graphically via, e.g., a map showing the location of each search result and/or showing the density distribution of persons named Smith on the map.
Web sites other than search engines may also utilize many of the above-described aspects ofthe present invention. For example, a web site may determine the country from which a user is operating based on one of the methods or apparatus of this invention. In such a case, the web site may automatically provide a version of a web page in the home language that is associated with the user's home country as determined by this invention. For example, if the user is connected to the Internet from Germany, the web site may automatically provide a German version of its web page(s), while if the user is connected from the United States, then that same web site may automatically provide an English version of its web page(s). Web sites that offer pornography and/or products may also filter out certain products and/or web pages according to the user's country's laws. For example, if the web site determines that the user is from Country A and wishes to purchase a product via the web site from Country B, but the law of Country B prohibit the export of that product to Country A, then the web site may prohibit the user from purchasing the product and/or filter out the product entirely from the user such that the user does not even see that the product is normally offered by the web site.
A web site may also use the user's country to determine which currency to use. For example, a web site that sells products may display the prices ofthe products in the currency that is used by the user's country as determined by this invention. If a web site is for a company, then the company's web site may display information for only those offices in and/or near the user's country.
If the web site was found and reached from the search engine, the search engine may pass one or more tokens to the web site selected by the user. Such tokens may include information about the user, such as the user's preferred language, the user's country, etc. Additionally, the search engine may pass information about the search, such as the user's search locus, area(s) searched, area(s) excluded, keywords searched, etc. The web site receiving this information can tailor the web page returned, or supply a different web page from a set of pages, in response to the information passed by the search engine.
Alternate ways of providing default information to the search engine and/or a web site may be employed. In some embodiments ofthe present invention, information such as the user's country, the user's preferred language(s), and/or other information and/or preferences may be stored in the user ' s computer and be accessible by and/or built-in to the user's Internet browser software. For example, the user's Internet browser software may have built-in features (e.g., accessible by the user via pull-down menus and/or windows) for allowing the user to define the user's country, preferred language(s), and/or other preferences such as default geographic search starting point and/or default extent of geographic search area. Various country's laws may also be stored in the user's computer and accessible by the Internet browser, and/or downloadable and/or updatable by the browser. In further embodiments of the present invention, cookies or other tokens stored on the user's computer may be utilized by the browser, search engine, and/or web site to store/retrieve information regarding the user's country, preferred language(s), and/or other preferences and/or information. Any of the above-described features of the present invention may utilize information such as browser-specific information and/or cookies or tokens stored on the user's computer to obtain information such as the user's country, preferred language(s), and/or other preferences and/or information.
Banner ads are currently displayed to users by search engines based on the terms being searched for. In embodiments ofthe present invention, the banner ads may also be displayed to users based on the user's geographic location or on the area the user has selected to search. For instance, if a Washington, D.C. based video store contracts with the search engine provider to display its banner ads, the banner ads may be displayed only to those users (i.e., potential customers) whose geographic location is proximate to that video store, or to users who's search area includes the location ofthe store, taking into account or not taking into account the search terms being used. Similarly, a web-based video store may choose to have its ads displayed only to those users who have elected to search for Internet- based businesses.
Embodiments of the present invention may present full commercials to the user based on search results, search terms and/or geographic data, instead of or in addition to banner ads, with online real-time slide shows, video and/or audio, either in the main window or in a pop-up console. Ads such as commercials and/or banner ads may further be automatically presented in the user's preferred language. Commercials for sites may also or alternately be accessed by clicking an icon presented with the search results entry for the entity sponsoring the commercial.
In navigation systems that have displays, such as those in cars based on Global Positioning System (GPS), embodiments ofthe present invention may provide the ability to display banner ads, real-time audio and/or video commercials, and/or graphical icons to the user of such a car based on the location ofthe car. For instance, an in-car navigation system may utilize aspects ofthe present invention to display search engines, banner ads for food, lodging, and/or other services along and/or near the travel route. The ads may be fullscreen and/or represented by graphical icons that the user may select in order to receive further information. As an example, all McDonald's restaurant locations may appear on the display using the familiar trademarked yellow arches and may be superimposed on a map of the area surrounding the car (e.g., a circular area within a 5 mile radius ofthe car, or a rectangular area within 2 miles behind the car, 5 miles to the left and right ofthe car, and 15 miles in front ofthe car, or other configuration). By selecting a particular yellow arches icon (e.g., using a touch-sensitive display, a keyboard, a light pen, a verbal command, and/or a mouse), the user may be provided with details of that McDonald's location, such as the address of and/or directions to the particular McDonald's selected. The commercials, banner ads, and/or icons may be visual and/or audio. It may be advantageous to provide purely audio commercials in order to prevent distracting the driver. Determining Users Geographic Location
The following are various ways that a user's geographic location may be determined according to embodiments ofthe present invention: IP Address
As discussed above, the user's IP address (or a portion thereof) may be correlated to a particular geographic area, such as a particular country, state, group of states, group of countries, etc. For example, the IP address "aol.com" and "erols.com" are each associated only with the United States, while "abcd.jp" may be associated only with Japan. Such relationships between IP addresses and their countries and/or other geographic areas are public knowledge and may be stored on a public database or in the search engine database.
To implement a system for determining a geographic location of a user according to the user's IP address, there may be provided a server containing an IP address database which correlates an IP address to a location of the server. It need not necessarily be IP address, but it can be user sign-on, user profile, user cookie, user information correlated with the user's location. For example, the user may sign on with the user name and password. This may be correlated with user location and therefore initiate each of the herein actions described. However, there may be a number of large private networks, such as AOL, or large corporations such as IBM, that have a single IP address or range of IP addresses, but route the Internet access request over a local or a private wide area network and access the Internet at an IP address location which is diverse from the originating site. Moreover, there are many large Internet Service Providers who serve multiple geographic areas. When Internet access is provided by one of these companies, it may not be possible to relate the IP address assigned to the visitor to a particular geographic location without access to the Service Provider's internal information. Some service providers may be reluctant to provide such information for security or competitive reasons. Since the information can be valuable to web sites, it would be desirable to be able to find the information without the cooperation ofthe Service Provider.
One way of determining such geographical information regarding the user is to perform a Traceroute function as discussed below. Traceroute is a known Internet program / technique that determines the IP address of all network devices (routers, switches, servers, etc.) between the site doing the Traceroute and any remote site.
In IP networks, dial-up users typically connect into a digital or analog modem in a communications server or remote access server. These are devices that attach multiple slower-speed users to higher-speed communications facilities. The assignment of IP address is typically accomplished by one of these server devices. There may be a multitude of these devices serving a geographic region, assigning IP addresses from a pool of IP addresses that may be of any size or configuration. These devices, in turn, are connected to a network, either the Internet itself through a router, or to a high-speed backbone for the site that connects a multitude ofthe devices together. If a high-speed backbone is present, it may be connected to the Internet via switch or router. In either case, the final connection between the equipment at the facility and the Internet is typically a switch or router. ISPs who serve multiple geographic regions publish access telephone numbers for each region or area. These phone numbers ring into the server equipment that handles the area, and end up being routed to the Internet through a router or switch at the site.
Aspects ofthe present invention take advantage ofthe aforementioned to provide the ability to find the general geographic region of any user ofthe ISP's facilities.
An exemplary embodiment of steps in a method for determining the IP addresses of a particular ISP and/or for determining the geographic location of each ofthe IP addresses is discussed as follows with reference to Fig. 17:
1. (Step 1701) Obtain a list of telephone access numbers for the ISP, and associate each telephone access number with a geographic area. One way to determine the geographic area(s) that are associated with the telephone access numbers is to examine the area code and or the prefix associated with a particular telephone network central office and/or exchange facility. For example, if a telephone access number is (202) 508-xxxx, then it may be determined through the use of existing directories that the 202 area codes is for the Washington, D.C, area, and/or the 508 prefix is for a particular central office and/or telephone exchange facility. The geographic area may then be defined as the area covered by the 202 area code, or narrowed even further to only include the area covered by the 508 exchange within the 202 area code. As an alternative, the geographic information and/or the telephone access numbers may be determined (automatically using a spider and/or manually) directly from the ISP's Internet web site.
2. (Step 1702) Dial each access number collected in Step 1701, connect via TCP-IP, and perform a Traceroute (or other similar program) from the dialing end to a web site. The device next to the dialing end performing the Traceroute is the router for that server, or the switch or router for the entire site. Save the IP address ofthe device next to the dialing end and associate it with the geographic area (Step 1702a). In some cases it may be necessary to perform the Traceroute from the web page end, for instance when the local router blocks traceroutes. In this instance, the device closest to the dialing end would be the router or switch. Such correlated IP addresses and geographic area information may be correlated and saved in a database and/or other storage.
3. (Step 1703) Continue this process for all ofthe access numbers provided for the ISP.
Using the above method, a list or database of router IP addresses may be generated, each associated with the geographic region served by the phone lines whose data comes through the router. In cases where individual servers in a location are each connected to the Internet through their own router, it may be necessary to make multiple calls to the same access number to find all the router IP addresses associated with that location.
Once the above method has been performed, the approximate geographic area of any visitor to a web site coming from the aforementioned ISP may be determined. An exemplary embodiment of steps in a method for determining the approximate geographic area of any visitor to a web site coming from the aforementioned ISP is described as follows with reference to Fig. 18:
1. (Step 1801) Obtain the IP address ofthe visitor.
2. (Step 1082) Perform a Traceroute (or other similar program) back to that IP address 3. (Step 1803) The second from furthest away IP address is the address ofthe router or switch. Look that IP address up in the list or database generated in the method described above to find the associated geographic area.
An alternate exemplary method involves saving a database of IP addresses and a history ofthe location of users who have visited a site using an IP address. For instance, if there exists a site that asks users for location information, such as address, zip code, longitude and latitude, etc., the information provided by the users may be saved and/or that information may be associated with the IP address they are using. Because ofthe nature of
IP networks, the next user of that IP address will likely be from the same general geographic region. Accordingly, information may be collected from more than one user of that IP address, and a more robust model may be built ofthe total area covered by that IP address.
Assumptions may also be made about IP addresses contained in the database that are in the same class C license space. For instance, IP addresses for a particular server are usually assigned in a contiguous series, so that a particular server will have a series of contiguous IP addresses from the same class C license to assign to incoming phone lines.
That server will also generally serve a particular geographic region. If the geographic area served by two IP addresses within the same class C address space are known (e.g., using methods as described above), and the geographic areas are substantially similar, it may be reasonably assumed that the addresses in numerically between those two are from the same or similar areas as well.
According to further embodiments of aspects ofthe invention, IP addresses may be associated with even larger geographic areas by moving back in the router chain, away from the end that dialed the phone number to be connected to the Internet. The second router back, for instance, may serve the East Coast of the U.S., or the Southeast, etc. Using this technique and moving further back in the router chain, it is possible to build a selective portion of, or even a complete, map ofthe Internet. In this case, the router on the Internet backbone or at one of the interconnect points such as Mae East, for instance, may be considered the demarcation ofthe geographic zone. DNS Entry
Other embodiments ofthe invention may utilize a domain name server (DNS) entry in a domain name server which has geographic information coded into that entry so that when a lookup is done on a particular URL the geographic location information is returned along with the web page address information. Caller ID
Still other embodiments ofthe invention may utilize caller ID services to determine a user's location. In determining the user's location, the user's Internet service provider (ISP) and or other site or service may use caller ID information associated with the telephone call through which the user accesses the ISP and the Internet. The caller ID information may be used to crosslink the phone number to the address of the user calling into the ISP. The user's phone number may fed into a computerized and/or online reverse telephone database or other similar database, from which the user's name, address, and/or other identifying information may be determined. The information obtained from the reverse telephone database may be fed into an address-to-coordinate conversion tool ofthe type discussed above in order to determine the user's location (e.g., latitude and/or longitude coordinates). This conversion process can take place at the ISP or service provider's location or the phone number or a portion ofthe phone number may be forwarded to the web page or search engine page location for lookup.
Using this technique or other methods ofthe current invention, the ISP's individual logon web pages may be reconfigured to reflect the particular local area that the user is calling into. For example, a user calling from Fairfax, VA might have a welcome screen customized to northern Virginia, with banner ads from local businesses in Fairfax. A user calling from Washington, DC would have local DC information and activities presented on the original screen.
Additionally, the caller ID and/or address information could be used as a cookie and/or other token and be attached to the profile ofthe user who is logging on. This cookie or token can be used locally by the ISP and/or forwarded to other web pages or search engines on the Internet.
For security purposes a user or ISP or service provider could elect to use or forward only the first six digits ofthe phone number so that the user's actual identity is not revealed, only his general location can be determined. Many users would prefer this so that they could keep their identity anonymous when they are logging on. Outside of the US, the number of digits forwarded or used would change, depending on local telephone numbering schemes.
In still other embodiments, a user profile is utilized to determine a user's geographic information. For example, user information and/or location information may be included in the user information and or location in a profile in the browser or a plug-in to the browser.
The user profile may include such information as the user's name, area code, phone number, fax number, address, geographical location, preferences, browsing history, and/or other information. Although some browsers currently have some user information profiled, the user information is not passed to the Internet for use by search engines or other web pages.
For security, the user may be able to select either allowing the user profile (or any portion thereof) to be sent only to a specific or predetermined web site(s), or allowing the user profile (or any portion thereof) to be sent to any web site without discretion. For example, some users may be concerned with security, and they may be provided with the option of allowing only general address information to be sent to a web page. The profile may be standardized such that any web page or server would be able to request a download of information from the profile in a cookie or token and be able to read the information in the profile.
Either in response to a web site request, or in response to the user's command, the user's browser may automatically send the profile, or a portion thereof, to the web page or server. The request from the web site may optionally specify another web site to whom the user profile is to be sent. The browser may send the profile without requesting permission ofthe user and/or in a way that is transparent to the user. The browser may optionally notify the user ofthe request from the web site. Alternatively, the browser may request permission from the user before sending the profile or portion thereof.
Further, a standardized HTML tag may be defined for downloading information (or a specified portion of information) from the profile. This HTML tag may be, e.g., an auto- fill Form tag and/or may be some other special HTML tag related directly to the profile information that requests information be returned but does not display.
Fig. 21 illustrates an exemplary embodiment of steps in a method for providing an Internet web site with user information. The user profile may be created as discussed above, such that the user's browser has access to the user profile (Step 2101). For example, the user profile may be stored on the hard drive ofthe user's computer. Once the user profile exists, the user's computer (e.g., a personal computer using a browser) and/or the browser may receive a request for the user profile from a web site (Step 2102). The computer and/or browser may optionally notify the user (Step 2103), and the computer and/or the browser may also determine whether there is authorization to send the user profile, or a portion thereof, to the web site or another web site specified by the requesting web site (Step 2104). In determining whether there is authorization, the computer and/or the browser may check whether the user has selected the option of sending the user profile to all web sites without discretion, or to only certain web sites, or to no web sites at all. If there is no authorization, the user profile is not sent. However, if there is authorization, then the user profile or a portion thereof may be sent to the web site or to the web site specified by the requesting web site (Step 2105).
Selectable User Profiles The user profile supplied by the browser or a plug-in could be configured for each user of the browser so that each member of a family could have a different profile and/or pseudo-name profile. By clicking, for instance, different buttons on the browser or plug-in menu bar a user profile can be chosen. When requested by the web page, the chosen profile is returned to the web page. Intelligent Auto-Fill
An alternative aspect ofthe invention is to have the browser (e.g., using a browser plug-in) and/or an artificial intelligence program, to fill in web page form fields, based on the data in the user profile or a portion thereof. The fields may be filled in locally on the screen so that the user can review, edit, and/or delete the information that is to be sent back to the web site server. Alternately or additionally, the user may select a particular user profile to submit to the form by clicking a button or making a menu selection on the browser or plug-in. If the user selects the wrong profile, he can select a different profile button and the browser or plug-in will reconfigure the fields based on the new profile selected.
Thus, for example, Fig.22 illustrates an exemplary embodiment of steps in a method for automatically filling out a form from an Internet web site. First, the computer ofthe user (e.g., a personal computer using a browser) may receive a form (which may be an HTML form) from a web site (Step 2201). The computer and/or browser may recognize certain standardized fields in the form (e.g., "Name," "Address," "Phone Number," "Fax Number," etc.) (Step 2202) and/or may automatically fill in those portions of the form that it recognizes with data from the user profile (Step 2203). For instance, if the computer and/or browser recognizes the word "Name" associated with a particular blank (e.g. a text box) in the form to be filled in, the portion of the user profile containing the user's name may be automatically inserted into that portion of the form. As another example, if the computer and/or browser recognizes the word "Phone Number" or "Telephone Number" or "Phone No." or "Telephone No." or "Phone" or "Telephone" or "Phone #" or "Telephone #" associated with a particular blank in the form to be filled in, then the portion of the user profile containing the user's phone number may be automatically inserted into that portion ofthe form. As discussed above, the user may be given the chance to review, edit, and/or delete the form or a portion thereof (Step 2204) before sending the completed form to the web site (Step 2205).
Global Positioning System (GPS) A mobile user would have a different way of communicating location that would dynamically vary. The mobile user may have a device such as a GPS device and/or other triangulation device, a computer with a "GPS chip," a computer with a GPS device attached thereto, and/or any other device suitable for determining its own geographic location. For example, based on the continuous updates of Global Positioning System (GPS) information, a web page or GPS device display containing search results can be updated dynamically to reflect information pertinent to the new location of the user, such as McDonald's restaurants, gas stations, bathroom stops, hotels, motels, and tourist attractions, etc. A further modification of the cuπent invention is that the web page displayed is actually a web page in a car and a GPS device is connected in the car directly to the display and gets its updated information dynamically on a periodic basis over a wireless connection. The local wireless ground point may only send local update information for the web page, to reduce the bandwidth. For example, each cell site associated with a particular location may broadcast information specific data to the web page such that local businesses associated with that cell site would be broadcast and as you moved into the next cell site local businesses with that cell site would be broadcast.
As an alternative the above technique, a user may log on to the Internet and plot a course between point A and point B. The web page and guidance system would download all ofthe data along the user's proposed course and load it into a storage medium accessible by the user's computer or GPS device, and have this data available as he progresses along the trip. The data may be formatted in HTML format so that the same program utilized for the online version could also be utilized in the car as the user is progressing down the highway, or the data may be coded in another way that is more suited to GPS use.
The web page or GPS device may have some intelligence so that it looks ahead in the direction of travel ofthe user, based on previous GPS location results, and determines the next most likely location ofthe user and the items of user interest associated with that location.
ZIP Code or Postal Address
Currently, many sites ask users for their zip code as a way to get a rough approximation ofthe user's location. An embodiment of this invention takes this concept a step further, by verifying the user's address information, which may include zip code, with the user's credit card company. This technique can be used to prevent users from claiming to be in one location, where, for instance, gambling or pornography is legal, when they are actually located in another location where, for instance, pornography or gambling is illegal. Outside ofthe United States, where zip codes are not used, the same techniques may be used with the user's credit card information and postal address. Server Queries for User Location and Information
A separate concept is to have a server "query" transaction that asks the user's browser to supply information about user's location or other personal information to the server. The server can make this information available to the web pages running on the server and the web pages can be recompiled or reconfigured, or different web pages can be supplied, based on the information provided by the browser.
HTML/Meta Tags for User Location and Information
A separate embodiment ofthe invention is to have HTML / Meta tags and programs running on the Web page that interact with the browser and cause the browser to upload or download information based on the set of HTML / Meta tags on the Web page. One way of implementing this is to modify a browser or write a plug-in for the browser such that the browser and the Web page dynamically interact based on information held in the browser or on the user's computer. The browser or plug-in, for example, could automatically respond to hidden (e.g. non-display) HTML Form queries from the Web page as to user location and other information about the user that the user has specified in a profile. One use of this interaction is to have the web page dynamically reconfigured based on the information supplied by the browser or plug-in. Such reconfiguration includes one based on local commerce to reconfigure the Web page to the individual user's location. Other configurations could include codes allowing for parental control such that the Web page is reconfigured based on the level of the user in the browser, so that children would see a different Web page when logging onto sites than adults.
Automatic registration can be accomplished by sending HTML / Meta tags from the Web page that retrieve the appropriate information from the browser or plug-in. A user could register for a site by simply pressing an OK button and having his profile downloaded according to the HTML / Meta tags on the Web page.
As an alternative, and referring to Fig. 25a, the Web page may automatically detect the country of origin of the user accessing the Web page (e.g., by detecting the user's IP address and/or by any other method described herein) (Step 2501), and then dynamically reconfigure the Web page based on the user's country of origin (Step 2502). In this way, for instance, users from Islamic countries would view a different content than users from the United States and other countries. Referring to Fig. 25b, instead of have the content ofthe web site depend upon the user's geographic location, the web site may determine the geographic location ofthe user (Step 2551 ) as discussed above and then selectively redirect the user to another web site and/or another web page within the web site depending upon the user's geographic location (Step 2552). Thus, for instance, a particular web site may have five different web pages, each web page being in a different language, and the user is redirected to the appropriate web site in the language of the user's country. Further, a method such as the one illustrated in Fig. 25b may be used to redirect user's of a porn web site to a non-porn web site when the user is attempting to access the porn web site from a country where such access would be illegal. Rating Codes and HTML/Meta Tags A browser can be configured with different rating codes such that the user when accessing a Web page is provided with different rated levels of information (e.g. g-rated, pg- rated, r-rated, x-rated, etc.) depending on the configuration in the user's browser. The rating code in the browser can interact with the server and/or HTML/Meta tags on the web page to filter web pages and prevent web pages that exceed the browser's rating from being viewed on the browser. The Web page can also dynamically query the user profile in the browser and reconfigure the Web page based on the user's preference or rating of content.
Conventionally, there are content rating tags currently in Web pages. However, the content rating tags are not used to reconfigure the Web page based on the desired viewing level of the user, nor are they used by the browser to filter or prevent intentional or accidental access based on the ratings. The difference between tags which currently exist to identify content rating level is that the tag allows external filtering or protection software to prevent display of a page that has the adult content, for instance, while aspects of the current invention allow the page to dynamically reconfigure itself based on a profile ofthe user, to display content selected and/or appropriate for the user. For example, based on the content rating profile of the user, the Web page may display advertisements or content calculated to interest the user.
Autonomous System Number A further mechanism for identifying the location of a Web page or user is to use an autonomous system number, a number which is incorporated into router information, and may be passed to a server or a browser. For example, any of the routers in Fig. 1A may utilize the autonomous system number and associated router information to identify the location ofthe Web page or user. Router Tables
A further mechanism for identifying network component, user or web page locations is to read the router tables in the various routers along a route, determine the path that the information is routed to reach the user or Web page and based on the path and the routing table determine the location ofthe Web page. This technique may be utilized by countries and/or law enforcement personnel to determine the location of network components, users or Web pages and associate those locations with physical locations. The routing table entries may be expanded to further include specific location information, such as latitude and longitude. This may be utilized by servers or browsers and/or regulatory or law enforcement personnel to more specifically identify the physical location of each network component, user and/or Web server.
Network Management Functions
As an additional aspect ofthe invention, the network diagnostic functions typically associated with wide area networks can be utilized to determine the location of network components, users and Web servers. Conventionally, a network management function may be able to locate the physical location of network components. This function can be utilized by a server or a user's browser to determine the location of a network component, user or Web page. Chip IDs
A further way of determining a user's location is to receive identification data associated with the user's computer. Intel has recently produced computer chips having built-in chip IDs (e.g., in its new Pentium III microprocessor). See, e.g., The Washington Post, Business Section, page El , January 26, 1999. When a user accesses a web page and/or other Internet content, the chip ID ofthe user's computer may be sent to the web page for identification of the user. The web page may then utilize a database associating chip IDs with user information such as user name, user address, user preferences, the user's geographic location, etc.
Instead of a chip ID, any other type of data associated with the user's computer may be used. Preferably, the data would be unique to the user's computer so that the user's computer may be uniquely identified. This data may be stored in read-only memory (ROM) and/or other memory such as random-access memory (RAM) in the computer. Cookies and/or other tokens
Conventionally, a Web page today can store information on a user's computer in the form of a "cookie," information provided by the web server and stored on the user's computer. Each time the user accesses that particular web page, the cookie data is returned to the web page. Cookies are typically used to maintain state data from one user session to the next, so that, for instance, a site can recognize when a user is returning to the site after a previous visit. The content of a cookie is currently limited to information previously written by the server and a particular cookie is returned only to specific web pages, so that a cookie written by one web page cannot be accessed by another page. An additional aspect ofthe invention is a generic cookie and/or other token that is given by the browser to all web pages, or to an entire set of web pages of a particular class, e.g. only to web pages whose content rating is pg, for example. Conventionally, the only user choice is to allow or not allow cookies, and no information is provided about the contents of the cookies. In the current system, with a generalized cookie and/or other token, the user can determine which information is passed to the server and can select alternative cookies and/or tokens to provide different information, either real or pseudo.
An additional concept is to have a universal cookie and/or other token for location that contains the specific location ofthe user. For example, in the United States, a cookie might be utilized just with the user's postal zip code, or first six digits of their phone number. However, it would be preferable to locate the user more specifically, using longitude and latitude.
For example, any user can type his address, which is looked up in a database which correlates the address with longitude and latitude. This information can be stored on the user's computer and passed as a universal cookie to every Web page the user accesses. In this manner, every Web page in the world has the option of dynamically reconfiguring the Web page based on the user's location. The information may also be stored during the operating system or browser install process, and/or may be done using other means to obtain geographic location, e.g., GPS.
In all cases, location information may be specified by the user to include a fuzzing factor, pending on the user's desired degree of security. For example, some users may elect a very large area as a fuzz factor, so that it can only be determined they are in a specific country. Other users may want to be located within a city, or a street block, and some may even want to be located exactly. As an example, the location may be rounded to a grid location on a map, wherein the distance between the grid lines (grid density) may be defined by the user (e.g., 500 yards between grid lines, 1 mile between grid lines, etc.). In such an embodiment, the user's location may be stored as a grid coordinate and/or along with grid density information.
Within a browser you may select standard categories of likes, interests, status, etc., such that the advertising that is directed to you takes into account your personal tastes. For example, men would be more likely to see advertisements associated with the male such as football, while women would be more likely to see sites conventionally associated with the female, such as cosmetics and jewelry. Plug-Ins and Browsers A plug-in to an Internet browser application may be used to perform any or all ofthe aspects described in the present invention, or the browser itself may incorporate one or more of these aspects. For example, the cookies and/or user profiles and/or geographic meta tags may be implemented in the browser using one or more plug-ins. Dynamic Reconfiguration of Web Pages A Web page and/or other Internet content may be dynamically recompiled or reconfigured based on information reported by a plug-in and/or the browser. The web page and/or other Internet content may be dynamically reconfigured based on geographic location, user preferences, time, date, day, year, etc. Date and Time
According to aspects of the present invention, a web page and/or other Internet content may be dynamically reconfigured based on date and/or time of day. For example, a Web page in the morning could show commuter congestion on routes into the city on the in-bound routes and reconfigure in the evening to show the out-bound routes. Time of day coding in the browser can be used to maintain, for instance, a g-rating during day an x-rating after 9:00 p.m. In this manner, a user does not have to reconfigure the browser every evening for adult use.
In another embodiment ofthe present invention, e-mail broadcasts or fax broadcasts from the Internet may be sent or reconfigured based on date, day, or time of day. A deli, for example, could broadcast an e-mail or Internet-based fax menu or daily specials to potential patrons in its service area, based on the day of the week and/or time of day. In the same manner, e-mail autoresponders can adjust the content of their responses or time their responses according to date, day or time of day. For example, an e-mail autoresponder can send one response during normal business hours and a different response on holidays.
As another example, information regarding radio and/or television coverage areas may be provided by a website using, e.g., maps of coverage that are be adjusted according to time of day and/or day of year. This would be useful where a radio station and/or television station is off the air and/or runs at a lower power at certain times (such as at night) and/or days, thereby changing the coverage area depending upon the time and/or day.
Adjusting web page content according to time of day and/or day of year along with location is a powerful aspect of this invention. In a multinational setting, such a web page could give location-specific holiday greetings, depending on the location. For instance, Thanksgiving Day is different in the US and Canada, and Mother's Day is different, depending on where you live. E-mail autoresponders could also use the day and location for the same purpose: to deliver day and location-specific greetings. Other Exemplary Applications and Embodiments of Aspects ofthe Present Invention Based on the location of the end user, the processing of payment terms could be altered. In this way users in certain locations may preferentially be given cash card transactions, while users in other locations may prefer credit cards.
Additionally, the Web page may be dynamically modified to show preferred currency, freight charges based on the user's location, sales tax based on the user's state, country, or other physical location, payment terms, shipping times based on the user's location and whether the item is in stock or out of stock based on the country or user's location.
The web page may be dynamically modified to take into account prohibitions such as for fireworks, alcohol, drugs or pornography or other things that may not be viewed in or shipped to certain states, countries or locals.
Directions for use of a product may be customized based on the user's location, in different languages, for instance. Product specifications may be modified, such as for different voltages, depending on the user's location. Different introduction manuals, different warranties, and different purchase terms may also be presented. In order to implement aspects ofthe above-described invention, it may be preferable to coπelate the web page contents to the user and the user's location with a database which inputs the user's location and outputs a new set of web page data based on the end user's location. For example, the calculation for shipping charges, shipping time, stock levels and particular catalog number of an item could all be geographically coded in a database for the corporation. In this manner, a company can have a single Web page and/or location to assist a user and thereby provide in a single location for all of its online purchasing requirements. A claim is to a server containing an IP address database which correlates an IP address to a location ofthe server. It need not necessarily be IP address but it can be user sign-on, user profile, user cookie, user information correlated with the user's location. For example, the user may sign on with the user name and password. This would be correlated with user location and therefore initiate each ofthe herein actions described.
There are many online service and advisory services such as medical services, legal services, etc. where it is critical to know the end user's location. For these services, the user could automatically be keyed to either a database and/or an advisor who is familiar with the user's geographic location. For example, a user who wanted to get accounting information and logged into an accounting firm's web site would get different information if he logged in from a foreign country than if he logged in from the United States. The user would be associated with the different online adviser depending on the geographic area for which he logged into. Additionally, for example, medical advisor programs could be geographically coded to the user's location and advise different procedures and/or drugs available to the user in that location.
An alternative use of aspects ofthe present invention is to modify the Web page at, for example, the U.S. Senate, such that when a user logs onto the site, the individual senator(s) and/or representative(s) who represents that user will appear on the user's Web page, based on the user's determined location. Even if the user did not know who his representative was in Congress when he logged onto the site, the correct representative will be displayed. Additionally, an interactive window on the screen can appear so that user could automatically be connected to that congressman's staff member.
One use of aspects of the present invention is for insurance companies whose policies change based on state or other geographic location, country, etc. A user logging in from a particular location would have a different set of Web pages and policy details than a user logging in from a different location. Additionally, this could be utilized by an insurance representative who traveled to a location where a disaster was located and logged in from the local site. The online policy details could be adjusted to reflect that location.
Another use of aspects of the present invention is for real estate agents and other personnel who show customers around a geographic area. As a real estate agent tours through a particular neighborhood, the web page or GPS device screen in the agent's car could be updated to reflect local information about schools, census data, taxes, neighborhood, recreational facilities and the like.
A building contractor who travels to different sites to provide estimates, could automatically have his device show different building codes, regulations, etc., relevant to the particular location his is visiting.
Additional utilization of aspects of the present invention would be to provide a cookie or other token that is forwarded to a 911 emergency number and thus provides user location. However, the cookie or token associated with the 911 number may be more specific than the cookie or token sent out to most Web pages, in that it is very specific as to location and other identifying information. In other words, there would be a specific information cookie or token precisely pinpointing the user's location and a general information cookie or token which provides an additional degree of anonymity and security. Additionally, the specific cookie or token could include special medical information about the user for use by emergency personnel.
The geographic information about users visiting a web site or using a search engine can be used to determine demographic information about the visitor. This information becomes more detailed and personal as the accuracy ofthe location information improves. With location to a county, general information can be found, such as average household income. If a street address is available, very specific personal demographics are available, such as whether the address is rental property or owned, the number of vehicles registered at that address, etc. This information can be used by a web site or search engine to tailor the site or search engine's operation, such as catalog pages displayed or banner ads displayed. It can be further be made available to the sites the user is referred to by a search engine, either directly through a token passed to the site when the user is referred, or through a classification passed to the site when the user is referred, or through a separate transaction with the referring site. Still another use of aspects of the present invention is to store relatively precise geographic information of all users visiting a web site such that a database of all users logging on to that particular Web page can be prepared. This database can be utilized in sales or marketing programs such that the company knows where its users are located, and hence, knows some general demographic information about them. In addition, demographic data from several searches by the same user, or from a user's visits to several web sites, may be combined to form a more accurate profile ofthe user or a class of users.
Conventionally, there's a program for monitoring access to Web pages which will print a statistical report based on country location and possibly even state location of the user logging onto the Web page. However, according to aspects ofthe present invention, by having location information about the people logging onto the Web page, a corporation can target particular customers by correlating their location with a demographic database. Additionally, the pages within the Web site can be customized according to the user's location information and therefore increase the database knowledge about the likes and dislikes ofthe users in that location.
This information may also be correlated into specific marketing information for targeting ads to the users logging on for a particular location based on census information and/or the history of users associated with that area. For example, users logging in from a wealthy demographic area may be provided with different selections than users from a less wealthy area. If the location information is specific enough, such as a street address, the site may tailor itself to personal information, such as whether the location is rental or owned, and what automobiles are registered to the address. An additional use of the location information is for a site who provides location specific information, such as news, sports or weather, to automatically display local information for the user's site. For example, if the user logs onto a sports site, all of the local sports information for that user will be displayed on the log in page. An advantage of these embodiments ofthe present invention is that a significant amount of server time and bandwidth may be saved in that the information the user is most likely interested in will be sent first.
Additionally, local classified and/or personal ads could be displayed based on the location ofthe user. So when the user logs on he receives all ofthe ads within a radius of the user's home.
For a mobile user, the user's location is updated dynamically, so that it changes as the user goes down the road, automatically refreshing new data as the user's location changes. For a palmtop device, for example, weather information could be modified as the user's location changes. Traffic conditions could be displayed depending on the user's location or cell site the user is attached to. Maps, local information, and advertisements for local attractions could be downloaded to a local hand held device depending on the particular cell site the user is passing through at that time. Traffic information can be provided because it knows the user's current location and it could be updated as the user goes down the road. E-Mail
All ofthe foregoing concepts can be utilized in e-mail, such that a mail recipient can determine the location ofthe person sending the e-mail. For example, a congressman may only be interested in e-mail from users within his district, so they would get treated with highest priority, while people sending e-mail from outside of his district would be treated with a lower priority. E-mail sent to a company's customer service department could be routed, based on location information, to the sales or customer service representative associated with that customer's area. The same could be used for inquiries to companies with sealer networks, such that a mail handling program automatically routes e-mails to dealers based on location information in the customer's e-mail messages.
An auto response e-mail could be tailored to the user's particular location. For example, customers inquiring about a particular service offering could get different answers based on their location. Correlating e-mail addresses with location allows you to target a user at a later time based on his location, as is done in product roll-outs, sending mail to users in different locations even over a span of many years.
Optionally, a mail server could automatically translate e-mails from one language to another, based on location or language preference. This could be utilized by small companies that don't have service representatives speaking different languages but provide products in countries that speak a different language. A company that receives an e-mail from Japan and/or France could translate the e-mail into English and provide it to its customer service representative in the United States to respond to. The response would automatically be translated and sent in the customer's preferred language. In this manner, a single customer service organization can provide e-mail support to users in many diverse locations in the world. E-mail Lists
Embodiments of the present invention allow coding lists of e-mail addresses with location and demographic and personal information. For instance, the domain name ofthe e-mail address can be geographically coded using the techniques of this invention or other techniques, and the geographic information can be used to generate demographic information. Personal information can be obtained by methods of this invention or other means, and attached to e-mail addresses. Such lists would allow direct marketers to target e-mails much more effectively, to sell snow shovels where it snows, for instance. In this manner, it is also possible for users who search for business within a certain area to e-mail and/or fax requests to the businesses returned in the search. Kiosks All of the concepts of this invention can be applied to kiosks that provide information to shoppers or travelers, for instance. Using an in-airport kiosk, for instance, a traveler could make an Internet inquiry for hotels, or restaurants, or sports, or events, etc. within a specified distance from the airport or in an area the user selects on a map in the kiosk. Using the kiosk, the user could then make reservations or book tickets. Automated Tours
The location information in a GPS device or mobile Web page could provide tour information to tourists. For example, a tourist driving through a park would be provided with dynamic tour updates on his GPS device or mobile web page. The mobile tour GPS or Web page devices could be purchased or rented at the entrance to a facility. They could be pre-programmed with all the information for the facility, or such information could be downloaded on a cell-by-cell basis as the user moves about the facility. Palmtop or ultra- portable GPS-driven devices could be used by hikers and bikers. Geographic Searches Conventionally, Yahoo recently came out with an interface where you can type in a zip code or an address and it will provide businesses from yellow pages categories correlated to that address. However, this arrangement is deficient in that if the user does not know the exact category ofthe business or if the business lacks a yellow pages listing it will not be found. There is no keyword search capability and web pages are not tied to the yellow pages listings. In addition, the user must know a starting address, so it is impossible to find, for instance, the hotels in the middle of a town unless the user knows an address or zip code in the middle ofthe town. Additionally, a user cannot define an area to search by marking a geographic area on the map. The present invention allows the user to mark a starting point on a map and allows the user to set the search limits using geometric figures such as a circle or a polygon or freehand selected area.
Mapquest has a map with symbols on it identifying the location of schools, restaurants, hotels, etc. but you cannot click on the symbol and hyperlink to the Web page associated with that particular entity or even identify what is on the map. Additionally, it is not an Internet search but only a search of those businesses which have paid to be listed on Mapquest's maps which is deficient from a usability standpoint. By contrast, aspects of the present invention may include not only Web pages, but also yellow pages, white pages, directories, and other information for those businesses. Further, an artificial intelligence application will associate particular Web pages with yellow pages addresses so that there is a hyperlink to the web page of those businesses which have Web pages. For applications where a map interface is preferable, an icon associated with businesses, such as the McDonald's arches, will appear on the map. A click on that map location will take you either to the Web page ofthe franchiser or to the individual Web page associated with the local business if one is available. Depending on the density and scale ofthe map, the size ofthe icon and/or other mark would vary.
Another option is a local commerce search engine whereby a user could query all of the services that are located close to a geographic area and return all of those services willing to provide service to a particular geographic location. This would be convenient for tradesmen, such as painters and carpenters, as well as for professionals, such as doctors, lawyers, dentists and other providers. An ISP or service provider could contract with such service providers to be listed, or listed in a priority location, in return for a fee. E-Mail Queries to Results Once a user performs a search and gets a set of results that include e-mail addresses, as provided by some aspects ofthe present invention, another aspect of this invention will allow the user to elect to send a broadcast e-mail message to one or n number of businesses in the results list. Fax Messages to Results
Once a user performs a search and gets a set of results that include a fax number, as provided by some aspects of the present invention, an additional aspect of the present invention allows the user to send a broadcast facsimile to one or n number of businesses in the results list. The user may utilize an Internet to PSTN gateway in a similar fashion as is currently utilized by IP telephony applications. Automatic Order Routing
A user who is placing an order over the Internet can have the order automatically routed to the location that serves the user, based on the user's location. For instance, a national pizza delivery chain can set up a web site that takes orders for pizza delivery and then automatically routes the orders, via e-mail, fax, phone or other means, to the local outlet that serves the user's location. Direct Mail Telemarketing
The direct mail or direct contact industry can use the present invention to mail or fax to every business and/or individual within a geographic area that fits a search profile. In this manner, the search engine can broadcast fax or e-mail an advertisement to all of those businesses. Additionally, the search engine could be programmed to generate a telemarketing call list containing the phone numbers returned in the search.
An additional alternative embodiment is to allow individual businesses to send e- mail to users within a particular geographic area. For example, the businesses could send out targeted mailings containing advertisements and/or electronic or printable coupons to subscribers within a certain geographic region. This could be done on an opt-in basis, where the user requests mailings, or by geographically coding e-mail lists based on directory listings.
Further, it could be used in the emergency broadcast system to send out e-mails to users within a certain geographic region who are faced with an impending catastrophe such as a hurricane. Sort Results by Country We also include a sort option — so that pages translated from foreign languages or from sites located in foreign countries are returned in a manner that differentiates them from those in the native language and country. Variable Map Zoom and Pan
Additional aspects ofthe present invention are directed to a search engine having a map interface which gives an automatically variable zoom and pan based on the density of search results returned. For example, a user searching for a department store chain would have a much wider area map than someone searching for fast food outlets. In this manner, the maps can be automatically adjusted such that the density of results does not completely overburden the map and confuse the locations ofthe individual entities. Alternatively, the user may manually zoom a map in and/or out and/or pan in different directions. The user may zoom and/or pan using a graphical user interface, and/or may use a mouse button (for example) to zoom or pan the display.
The return map of a search request need not be centered on the user's current location but may be automatically panned to be centered where a large density of results are located. For example, if the user is located in a residential area and searches for businesses, the results map may be panned to show the business locations, with the user's location displayed away from the center ofthe map. Location as One Aspect of Search Terms
An additional aspect ofthe present invention is to have the search engine weigh the order of results which it returns to the user based only partially on proximity, instead in order of proximity. For example, if a user is searching for a match of several keywords, the search engine may place a result that contains fewer keyword hits higher on the results list than one with more keyword hits because the business is located closer to the user. Proximity Searches
The present invention's database and search engine provide an entirely new search interface into the Web by providing search capability of A in proximity to (or not in proximity to) B. For example, a user may search for something "near" something, such as "hotel near golf." Further, one may search for near, adjacent, not near, not adjacent, within a certain distance, etc. Density Searches
Another search option is to search for areas having a certain density of businesses. For example, a user may search for an area having a high density of a particular type of business, service or activity. The ability to search by density can be combined with other aspects of the search, such as proximity, to allow for searching for an area away from another area, for instance. Further, a user may select geographic areas based on density of results, and then search in that area by separate keyword. For instance, the user may receive a map showing the density of one type of business and be able to search within density areas of that map for another type of business. Searches in Areas Based on Other Criteria
Further, a user may select one or more geographic areas and/or search in areas based on such items as school districts, township, taxing authority, congressional districts, zoning, voting precincts, tax maps, tax rates, climate, altitude, newspaper circulation area, radio and tv coverage area, and/or census bureau demographics. Such census bureau demographics may include family income range, ethnic makeup, cost of living, real estate price ranges, and/or average age. These listed search terms are merely exemplary, and the present invention is not limited only to such listed search terms or search expressions. These searches, as well as any ofthe other searches described above according to aspects ofthe present invention, may be configured and/or selected with or without a map. Search Preference to Advertisers
Further, search results returned for an area may be presented such that those results having associated commercials / advertisement are presented first. Filtering of Unwanted Search Results
A search engine may have an option that allows a user to choose to prevent particular search results from being listed multiple times. For example, when a search result listing is provided by a search engine, the search engine may provide a check box or button next to each listing. When the user selects a particular check box / button associated with a particular search result for a particular business, person, and/or other entity, further search results corresponding to that business, person, and/or other entity would not be shown later in the search result listing. For example, say the user uses the search engine to search for university web sites. The user may receive a search result listing of hundreds of university web site search results, and the user may initially be presented with the first twenty search results. As the user continues through the search result listing, the user may find that there are several search results for the same university (e.g., admission's office web page, student government web page, university book store web page, etc.). This can be annoying and can make the search result listing cluttered and difficult to read. If the user were to check a box, press a button, and/or otherwise select a search result corresponding to that university, the search engine may automatically prevent further search results corresponding to that university (i.e., "repetitive" search results) from appearing further down the search result listing.
The search engine having the above feature may determine whether a search result is a repetitive search result by comparing the website address of the search result with the website address of the original search result selected by the user as described in the paragraph above. For example, all of the search results corresponding to the particular university discussed in the above example may start with a website address of http://www.gmu.edu (e.g., for George Mason University).
The search engine may further be configured to allow a user to choose that no search results should be repetitive at all, instead of choosing this feature on a search-result-by- search-result basis. Popular Site Listings by Area
Top 100 or other popular site listings can be reclassified to include the area served by the site. For instance, there could be a Top- 10 New England Popular Web Sites list, or a Washington DCs Most Popular Sites listing. Drop-Down Combo Boxes
Aspects ofthe present invention may provide drop down combo boxes (drop down lists) that providing a check box as a visual representation that a list item has been selected when making multiple selections. Another way to say this is a drop-down list of check boxes (or radio buttons). In a web page, search engine, and/or other Internet content according to aspects of the present invention, a user may search for multiple search terms / criteria using such drop down combo boxes or lists. Radio Stations and Clocks
GPS can be used to automatically switch radio stations in your car based on location and optionally on station type choice (talk, rock, country, jazz, etc). For example, a user may wish to drive across the country and only listen to classical music radio stations. A radio station database may be utilized that contains a list of all radio stations available throughout the country or a region and the associated type of radio station (such as classical, jazz, rock, etc.) The user's radio receiver may have the capability of receiving GPS and/or other triangulation data in order to determine its location and/or to be controlled by such a device. The radio receiver may then automatically or under the direction of an external device choose a station that is within receiving distance ofthe user based on the geographic location ofthe user / radio receiver and the type of station preferred by the user. The station that the receiver or external device chooses may be determined from a radio station database to which it may have access. Alternatively, the radio station may broadcast periodically or continuously standardized data identifying the type of radio content that it broadcasts.
If the radio receiver does not have GPS or other triangulation capability, the receiver may automatically change to another, stronger music station when the station that it is on currently is becomes more noisy or has a loss of signal strength to a set point. This receiver may also utilize the above-described radio station database.
This aspect ofthe present invention is not limited to radio stations, but may also be used for television stations and/or other broadcasting stations. Further, GPS may be used to cause a cell phone to switch cells based on location rather than signal strength, and may be used to automatically adjust a watch or clock based on the time zone the watch or clock is located in. Caching
A search engine according to aspects ofthe present invention may cache all hits for all searches within a geographic area on the browser side, to allow very fast searching ofthe area.
Some or all of the web page content of hits found may be cached on the browser side, to allow fast access to those pages. Web Pages and Directories A search engine according to aspects ofthe present invention may provide additional information about a search result by accessing online directories and/or databases. For example, the search engine may determine a particular search result that is a web page link, determine information about the web page link such as business name, personal name, etc., and forward that information to a directory and/or other database (e.g. an online white pages and/or yellow pages). The directory and/or database may then return still additional information regarding that search result.
For example, the search may have a business' name, but not its telephone number. In such a situation, the search engine may access an online yellow pages to determine the telephone number, and the search engine may then present the search result with the telephone number to the user ofthe search engine.
Further, a search engine according to aspects ofthe present invention may search not only web pages but also online white pages and/or yellow pages in order to find search results.
One option for verifying the integrity ofthe geographically coded web pages is to cross reference the Web page address obtained by spidering the web page with yellow pages and/or white pages listing and flag those addresses which do not correlate for further automatic or manual checking. Newsgroups and Searching Thereof
Newsgroups are Internet content that may utilize aspects ofthe present invention.
A newsgroup may provide not only the user id of the user who sent a message onto the newsgroup, but also the user's geographic location. The newsgroup may determine the location ofthe user who sent a particular message in any ofthe ways discussed herein for other types of Internet content such as search engines or websites.
A search engine according to aspects of the present invention may search a newsgroup. The search engine may determine the geographic location of a newsgroup message (i.e., the geographic location ofthe user who sent the message) according to any ofthe ways discussed herein. Searching of Obituaries, Classifieds, etc.
The search engine may search and/or index obituaries. The obituaries may be listed in a specialized obituary website and/or in online newspapers. A user may configure the search engine to notify the user when a particular person dies, when a member ofthe user's family or other predefined group of persons dies, and/or when anyone in a particular geographic location dies. The search engine may also take orders for flowers and provide electronic condolences cards. The search engine may provide such card and/or flower services, and/or the search engine may communicate and or contract with a separate website that offers such flower or electronic card service.
The search engine may provide an "ask for" service, where a user may provide the search engine with a description / key words of an item that the user is looking for. The search engine may then search for businesses (e.g., businesses that are local to the user and/or in a predetermined geographic area) that are likely to carry that sort of item. The search engine may then notify those businesses (e.g., via e-mail). The businesses that are interested in selling the item may then contact the search engine and/or the user directly, depending upon the user's preferences. Search Results by Areas Served
Using the methods ofthe present invention, a search engine could return results for businesses, individuals, governments, or others who have indicated, through an HTML or META tag or other means, that they serve customers at the user's location. A pizza delivery company could put an HTML tag in their web site that says, in effect, "we serve customers within ten miles." A customer who is within ten miles who searches for pizza would get this site returned. Government offices, for instance the IRS or SSA, could post their service area and a user who searches for IRS would get the office who serves them. The same results could be returned for searches along a route. Effects of Spidering Tabular data on Web Pages
The ability of the present invention to individually index visual or programmatic table entries on web pages gives rise to some additional extensions of this inventive concept. Using this ability, for example, the personal or classified section of an online newspaper, magazine or broadcast station can have the individual ads indexed, since they would typically each be a table entry on a single web page. This is an improvement over other methods that only index entire pages, not tabular data on the pages. A community events calendar is another example of tabular data that could be indexed. Combining this ability with the ability to obtain location information for the table entries allows one to search using location. In this way one could, for instance, search the classifieds for a job located within a specific geographic area. Using the auto-fax and auto-e-mail features of the present invention, resumes could be broadcast to those of interest.
Using aspects ofthe present invention, a search engine spider could be set to spider newspaper, radio station, and magazine web sites to gather local event (community calendar) events and keep a current database of all events. Users could search the event site by date and/or location and/or category, for instance to find all the musical events this week within fifty miles, or within a geographic area. The user could also subscribe to a service that would automatically e-mail notification of new events that fit the user's criteria as those events are posted to the web site. Banner ads on the search engine and in the e-mails could be targeted at users of the search engine for pay events that are in the same category and location as the free events the user is interested in. The same results could be returned for searches along a route.
Using aspects ofthe present invention a search engine spider could be set to spider newspaper, radio station, and magazine web sites to gather classified ads and keep a current database of all ads. Users could search the ad site by location and/or category and/or keyword, for instance to find all the trumpets for sale within fifty miles, or within a geographic area. The user could also subscribe to a service that would automatically e-mail notification of new ads that fit the user's criteria as those ads are posted to the web site.
Banner ads on the search engine and in the e-mails could be targeted at users ofthe search engine for other products that are in the same category and location as the ads the user is interested in. The same results could be returned for searches along a route.
Effects of Spidering Reference Sites That Dynamically Generate Content
Aspects of the current invention that spiders tabular data can be extended to spidering sites that provide dynamically generated reference information, such as lists of dealers or retailers that carry a product or service, or automobiles for sale, etc. The current invention can be programmed to automatically visit these sites, extract information from the web pages or tabular data on a regional basis, and incorporate that data into the search database.
Additional Aspects of Searches along a Route Information returned for searches along a route could be in the form of printed
"tickets," each showing a potion ofthe route in a relatively large scale, with attached notices of events, local businesses, advertisements, and coupons for goods or services.
Tickets could be customized by the user to show various items found in searches, such as fast food outlets, hospitals, antique dealers, free concerts, etc. Subscription Coupon E-Mail Services
Users could subscribe to an e-mail service that sends them electronic coupons, which may or may not be printable, in areas of interest. This service could send users national coupons based on the customer's interests, as well as local coupons, based on the customer's interests and location as determined by other aspects ofthe present invention. Searchable Coupon Web Site
A searchable web site for coupons could deliver coupons to the customer from the web site, which may or may not be printable, without using e-mail, based on the customer's interests and, optionally, location as determined by other aspects of this invention. Merchandise and Inventory Interface
Another option to the local commerce friendly Internet is to provide the search engine with a capability to search for particular merchandise, either by merchandise type (e.g. flowers, computers, etc.) or by a particular brand or model (e.g. roses, Compaq Presario, etc.) within, for example, a certain area. This saves the local shopper from having to contact multiple locations to find a class of merchandise or a particular piece of merchandise, and compare availability and prices, for instance. In this manner, a user can log on to the Internet and search for all locations within a certain proximity to the user's location or in an area and pull up the price and availability of the item within the selected geographic area. This would be a service that, for example, a service provider or a search engine could sell so that users logging on to this search engine would be able to search the store's inventory. The search capability would look at the internal stock databases ofthe companies to determine what available and in what quantities. For example, current technology allows a clerk at one store to look at the stock availability in other stores. In our implementation, the search engine and/or online service provider directly links to these databases to retrieve the information needed to fulfill the search. A user may also check to see whether a store sells a particular class of merchandise or provides a particular type of service. For example, a user may want to find out whether a particular store sells groceries and electronics and flowers, etc. A user may want to find out if a particular grocery store sells flowers, for example.
This search can be formed through a standardized database interface such as ODBC
(open database connectivity interface) or X.400, such interface standardized to allow the search engine interface. By defining a standard interface, the search engine and/or online service provider can have access to the store's internal databases to provide this information to the user.
An application of the Merchandise and Inventory Interface described above is to have Internet search kiosks located in malls, set to search the databases of stores located within the mall. In this manner a person can go to a mall kiosk and inquire where a particular item may be found, instead of having to go from store to store looking for the item.
Chat Services An application of the ability to determine the location of or personal information about users allows the current invention to be used in chat rooms to limit the users ofthe chat facility to those from a specific area or region, age group, gender, economic level, etc.
This is particularly valuable for community chat boards, where outsiders are not welcome, or to boards that wish to separate chatters by age group. In addition, a nationwide chat facility can be configured to segment the chatting according to the geographic location or demographics ofthe people chatting.
Passing of Information Between Web Pages
According to aspects of the present invention, information associated with a user, which may include dynamically generated information such as geographic, demographic, or personal information, may be passed from one web site to another. An exemplary embodiment of a method for passing such information is described as follows with reference to Fig. 19: 1. (Step 1901) Determine the information to be passed, perhaps by looking it up in a database, examining previous transactions with the user, obtaining information about the user from a token, from his browser, from his IP address, and/or by other means.
2. (Step 1902) Dynamically generate the web page and insert the information to be passed as query data appended to the URLs on the hyperlinks. The data may be appended to all ofthe links, or only to selected links.
An alternate method of accomplishing the same transfer of data is to, in Step 1902 above, insert a token instead of the information. The web site receiving the referral may then query the referring site, passing back the token. The referred-to web site may determined the referring web site using, e.g., the html header field "http_referer" and/or querying the user's browser history file. The original referring site may then provide the referred-to site with the dynamically generated information, using the token to find the proper data.
According to another embodiment of aspects ofthe present invention, another way to accomplish the data transfer of this invention is to not pass a token at all, but to generate the data and save it associated with the visitor's IP address. A web site receiving a referral then can query the referring site, passing back the IP address of the visitor. The original referring site then provides the receiving site with the dynamically generated data, using the IP address to find the proper data. In these embodiments, the referring site may have a time-out period (e.g., less than about 10 seconds, between about 10 seconds and about 1 minute, or between about 1 minute and about 1 hour), to help prevent data from previous users ofthe same IP address from being presented.
According to yet another embodiment of aspects ofthe present invention, another way to accomplish the data transfer is to collect and/or generate the information to be transferred, and not pass a token when the user clicks to another site. A web site receiving a referral may query a the referred-to site (and/or another site), passing to the search engine or other web site identification information other than IP address, such as telephone number, name and address, zip code, etc., associated with the user. The referring site may then look up the information in its local list or database and forward the information to be transferred back to the querying site. In this embodiment, a general-purpose demographics site may be the site that is queried by the web site receiving the referral. The demographics site may be configured such that any web site can send a query containing some identifying information to the site and receive back personal and/or demographic information about the person so identified.
According to embodiments ofthe present invention, then, when the user clicks on a hyperlink or an object such as a banner ad that is hyperlinked to another page, the user's browser may provide the dynamically generated information and/or a token to the web page that has been clicked to. In this manner, dynamically generated information, such as geographic, personal, or demographic information, has been passed from one web page to another.
The dynamically generated information and/or token passed may be standard form clear text query data, and/or may be coded in a manner that both the sender and the receiver would understand (e.g., a standardized format). An example ofthe latter would be to use codes for demographic information, such as "I=A" meaning that the income range for the visitor is between $50,000 to $75,000 a year. In further embodiments of the present invention, an encrypting, scrambling, and/or other similar scheme may be used to encrypt the data being passed.
In further embodiments of the present invention, the dynamically generated information and/or token may be appended to only selected links. By appending the information and/or the token to only selected links, a web site can provide a for-fee service to other sites, such that the site being clicked to would not receive the information and/or token unless a fee is paid and/or there is some other contract for service. Methods involving queries, according to embodiments of the present invention, may also incorporate pay-for-service, so that queries would be answered only if the querying site has paid a fee and/or otherwise contracted for service.
Such information (e.g., a user's demographics, phone number, address, geographic location such as latitude/longitude) may also be passed using the extended header fields in IPv6 (IP Version 6), which is about to be approved, or using a later version of IP. Search Engine Click Statistics. Direct Marketing, and Billing for Search Engine Services According to further embodiments of aspects of the present invention, a search engine may tally and/or list the number of times a web page is displayed in search results. This tally may be categorized by specific page and/or by root domain name.
The search engine may further tally and or list the number of times a web page in search results is clicked on (selected) by a user from the web page link appearing in the search results. A ratio ofthe number of exposures to the number of clicks may be calculated by dividing the number of times a web page appears in search results by the number of times the web page is clicked on. This statistical information is of value to a web page, because such information provides a measure of the effectiveness of the web page's title and description in the search engine. The search engine may further tally and/or list which search terms or phrases cause a web page to be displayed. Combining this tally with one or more of the above tallies provides several measures that are of value to web pages, such as but not limited to the effectiveness of title and description for each set of keywords or phrases.
The search engine may further tally and/or list which banner ads get clicked on by search term or phrase. This information is of value to advertisers, because it helps the advertisers analyze the effectiveness of their banner advertising.
Any or all ofthe above information may be provided to web sites for a fee. Further, web sites may be charged according to the number of tallies counted as described above. For example, the more exposure or the more clicks of a website, the more the website is charged to be listed on with the search engine.
In addition, the search engine may use the above-described statistics to sell advertising such as banner ads or commercials. To accomplish this, the search engine may perform the following exemplary method:
1. (Step 2001) Compile the statistics as discussed above for a web page or set of web pages. The pages selected may be at random or based on a formula, such as the number of exposures given the page or the exposure/click ratio.
2. (Step 2002) Generate an e-mail, real mail, and/or fax to the web site (manually and/or programmatically), including a message that provides the statistics and/or suggests advertising for the site. The message may be custom or standardized.
3. (Step 2003) Send the e-mail, real mail, and/or fax to the e-mail address, real address, or fax number associated with the web site in the search engine database or obtained by another means. On a more manual basis, telephone representatives may telemarket the web sites, giving them the statistics and sales presentation verbally, using the telephone number associated with the site in the search engine database or obtained by another means.
The search engine may randomly or otherwise conduct surveys such as polls and/or opinion surveys. Such surveys may include surveys of demographics of users ofthe search engine, search terms searched for by the users, and/or search results clicked on by the users.
Further, a search engine may charge a web site for being listed with the search engine based on a search result priority. For example, a search engine may charge web sites a premium in order to be listed at or near the top of a search result that is relevant to the web site. The search engine could be the "search engine that pays you back. " In several ways :
A) The advertiser may pay the search engine for clicks and/or demographic information. The search engine may pass some of this revenue back to the customer as cash, merchant credit, e-credits, and/or prizes. The search engine may further give cash, merchant credit, e-credit, and/or prizes as a way to induce users to provide demographic information. B) Users may receive cash, merchant credit, e-credit, and/or prizes for watching advertisements or infomercials. For instance, a timeshare may give a free weekend to people who go through their online presentation, which may include a two-way exchange of information. The timeshare may ask the user questions in a real-time and/or interactive format such as, "What is your family income range, Mr. Jones?" (assuming the user's name is Mr. Jones).
In addition to providing demographic information to advertisers, the search engine may build a profile of users who use the search engine. The profile may be ofthe search terms that the users as a group are interested in. The profile may be provided to the search engine's advertising customers. The search engine may further keep track of what a user of an advertising customer's website has previously searched for on the search engine, and may provide such information to the advertising customer.
Such profile information may further be provided to non-advertisers and/or non- Internet businesses by providing an online query able database that such non-advertisers and or non-Internet businesses may use. For example, it would be valuable for a travel agent to be able to find out if a caller has made online inquiries regarding travel. It would also be valuable to companies to obtain lists (e.g., phone, address, e-mail, etc.) of users who search for their merchandise and/or services on the Internet, for marketing purposes. While exemplary embodiments of systems and methods according to the present invention are shown and/or described herein, it will be understood, of course, that the invention is not limited to these exemplary embodiments. Modifications may be made by those skilled in the art, particularly in light of the foregoing teachings. It is, therefore, intended that the appended claims cover any such modifications which incorporate the features of this invention or encompass the true spirit and scope of the invention. For example, each of the elements and/or steps of the aforementioned embodiments may be utilized alone or in combination with other elements and/or steps from other embodiments. Once the internet spider 10 has generated / updated the search engine database 2, an operator ofthe search provider may manually review and/or edit the search engine database to ensure accuracy and/or to obtain additional information that the spider 10 fails to obtain. To review and/or edit the data in the search engine database 2, the operator may be presented on a video monitor of a computer (such as personal computer 35) a screen and interface such as that shown in Fig. 29. This screen may include one or more of the following in any combination or subcombination: the entity's name 2901, street address 2902, city 2903, state 2904, zip code 2905, phone number 2906, fax number 2907, geographical region (e.g., Northeast U.S., Africa, Canada) 2908, hours of operation ofthe entity (if applicable) 2909, web address URL 2910, e-mail address 2911, advertisement web address 2912, category of service (e.g., restaurants, locksmiths, government) 2913, and/or category of entity (e.g., business, individual, government agency) 2914. The search engine database 2 may store, and the screen shown in Fig. 29 may show, whether the entity has an inventory, menu, and/or listing of services available online on its web site, e.g., via a check box 2919. Some or all of the above information may be reviewable and/or editable by the operator. The operator may also be presented with a "back" button 2915 for going back to a previous entity, a "forward" button 2916 for going on to the next entity, an "O.K." button 2917 for saving the edited information, and/or a "find..." button 2918 for allowing the operator to find a particular entity's data entry by keyword.
As is discussed herein, the META tags ofthe websites listed in the search engine database 2 may include any one or more ofthe data shown in Fig. 29 (i.e., any one or more ofthe data 2901-2914, 2919). Thus, the search engine 1 may perform a META tag search for entities based on any of this information 2901-2914, 2919. For example, the user 3 may wish to search for all restaurants that are within 20 miles of Washington, D.C, that are open at 10:00 pm on Wednesdays, and that offer a listing of their menus online. A search based upon these exemplary limitations would include the exemplary "Mel's Italian Restaurant." The META tags may also include such information as tourist industry-relevant information. For example, the META tags of web sites may include information as to whether it is and/or has a restaurant, hotel, tourist attraction, tourist visitor center, rides, theater, ski resort, swimming pool, etc. Thus, the user 3 may search for using the search engine 1, e.g., all tourist attractions within 100 miles of New York City and that include a tourist visitor center.
The present application hereby incorporates by reference as to their entireties the following U.S. patent applications filed simultaneously with the present application:
* U.S. Patent Application Serial No. (TBD), entitled "Search Engine Database and Interface," Attorney Docket No. 00713.84945.
* U.S. Patent Application Serial No. (TBD), entitled "Internet Access and Profiling," Attorney Docket No. 00713.85565. * U.S. Patent Application Serial No. (TBD), entitled "Internet Spider Program,"
Attorney Docket No. 00713.85566.
* U.S. Patent Application Serial No. (TBD), entitled "Web Site With Content Dependent Upon User Location," Attorney Docket No. 00713.85567.
* U.S. Patent Application Serial No. (TBD), entitled "Method and Apparatus for Determining Location of Web Page Owner," Attorney Docket No. 00713.85568.
* U.S. Patent Application Serial No. (TBD), entitled "Method and Apparatus for Determining Location of Internet User," Attorney Docket No. 00713.85569.
Priority Applications (19)
|Application Number||Priority Date||Filing Date||Title|
|PCT/US2000/000455 WO2000041090A1 (en)||1999-01-08||2000-01-10||Search engine database and interface|
|Publication Number||Publication Date|
|EP1171828A1 true EP1171828A1 (en)||2002-01-16|
Family Applications (1)
|Application Number||Title||Priority Date||Filing Date|
|EP00904256A Withdrawn EP1171828A1 (en)||1999-01-08||2000-01-10||Search engine database and interface|
Country Status (3)
|EP (1)||EP1171828A1 (en)|
|AU (1)||AU2604100A (en)|
|WO (1)||WO2000041090A1 (en)|
Cited By (1)
|Publication number||Priority date||Publication date||Assignee||Title|
|US20130125031A1 (en) *||2006-08-31||2013-05-16||Ben Calica||Context related location based content|
Families Citing this family (90)
|Publication number||Priority date||Publication date||Assignee||Title|
|US9875492B2 (en)||2001-05-22||2018-01-23||Dennis J. Dupray||Real estate transaction system|
|US6907566B1 (en)||1999-04-02||2005-06-14||Overture Services, Inc.||Method and system for optimum placement of advertisements on a webpage|
|US7702537B2 (en)||1999-05-28||2010-04-20||Yahoo! Inc||System and method for enabling multi-element bidding for influencing a position on a search result list generated by a computer network search engine|
|US7231358B2 (en)||1999-05-28||2007-06-12||Overture Services, Inc.||Automatic flight management in an online marketplace|
|US7835943B2 (en)||1999-05-28||2010-11-16||Yahoo! Inc.||System and method for providing place and price protection in a search result list generated by a computer network search engine|
|US7225182B2 (en)||1999-05-28||2007-05-29||Overture Services, Inc.||Recommending search terms using collaborative filtering and web spidering|
|US7065500B2 (en)||1999-05-28||2006-06-20||Overture Services, Inc.||Automatic advertiser notification for a system for providing place and price protection in a search result list generated by a computer network search engine|
|US6269361B1 (en)||1999-05-28||2001-07-31||Goto.Com||System and method for influencing a position on a search result list generated by a computer network search engine|
|AU1367101A (en)||1999-09-24||2002-01-08||Dennis J. Dupray||Geographically constrained network services|
|GB2365549A (en) *||2000-03-15||2002-02-20||Global Taxi Ltd||Location based internet search engine|
|AU6494701A (en)||2000-05-24||2001-12-03||Match Craft Inc||Online media exchange|
|GB2364225A (en) *||2000-06-26||2002-01-16||Beacon Dodsworth Ltd||Graphical user interface for the display of internet hyperlinks|
|NL1016379C2 (en) *||2000-07-25||2002-01-28||Alphonsus Albertus Schirris||A method and search engine for searching at least Uun database.|
|WO2002013045A2 (en) *||2000-08-03||2002-02-14||Ltdnetwork Pty. Ltd.||Online network and associated methods|
|AUPQ915600A0 (en)||2000-08-03||2000-08-24||Ltdnetwork Pty Ltd||Online network and associated methods|
|GB0019667D0 (en) *||2000-08-11||2000-09-27||Foale Thomas R||Data capture and access system|
|EP1180887A1 (en) *||2000-08-18||2002-02-20||Nokia Mobile Phones Ltd.||A method for communicating in a communication network, in particular in a wireless communication network|
|GB0021067D0 (en) *||2000-08-25||2000-10-11||Tendotcom Ltd||Data communications|
|FR2815436A1 (en) *||2000-10-17||2002-04-19||Infoduc||Location and representation in real-time on geographical maps of data from distributed sources, uses geographical information in response from directory server to create maps on user's screen|
|US20020051541A1 (en) *||2000-10-30||2002-05-02||Glick Barry J.||System and method for maintaining state between a client and server|
|US7120254B2 (en)||2000-10-30||2006-10-10||Geocodex Llc||Cryptographic system and method for geolocking and securing digital information|
|US8472627B2 (en)||2000-10-30||2013-06-25||Geocodex Llc||System and method for delivering encrypted information in a communication network using location indentity and key tables|
|US7013308B1 (en)||2000-11-28||2006-03-14||Semscript Ltd.||Knowledge storage and retrieval system and method|
|EP1342055B1 (en)||2000-12-02||2007-08-15||Volkswagen Aktiengesellschaft||Method and device for the display of information|
|FI111762B (en)||2000-12-28||2003-09-15||Fonecta Ltd||Method of providing survey data service and information service request|
|AU2005229711B2 (en) *||2001-02-09||2008-02-07||Excalibur Ip, Llc||Information retrieval system and method employing spatially selective features|
|CA2335445A1 (en)||2001-02-09||2002-08-09||Lasoo Inc.||Internet search tool using geographically selective features|
|WO2002102025A1 (en) *||2001-06-12||2002-12-19||At & T Wireless Services, Inc.||Using wireless cookies to deliver mobile-based location information|
|WO2002102024A1 (en) *||2001-06-12||2002-12-19||At & T Wireless Services, Inc.||Using wireless cookies to deliver network-based location information|
|US7043471B2 (en)||2001-08-03||2006-05-09||Overture Services, Inc.||Search engine account monitoring|
|DE20212755U1 (en) *||2001-08-20||2002-11-28||Softworks Ag||Data communication system, as well as a central computer for use in a data communication system|
|US7457862B2 (en)||2001-10-22||2008-11-25||Avaya, Inc.||Real time control protocol session matching|
|US6826572B2 (en)||2001-11-13||2004-11-30||Overture Services, Inc.||System and method allowing advertisers to manage search listings in a pay for placement search system using grouping|
|US20030117443A1 (en) *||2001-12-21||2003-06-26||Dun & Bradstreet, Inc.||Network based business diagnostic and credit evaluation method and system|
|WO2003085561A1 (en)||2002-04-01||2003-10-16||Overture Services, Inc.||Displaying paid search listings in proportion to advertiser spending|
|US7054857B2 (en)||2002-05-08||2006-05-30||Overture Services, Inc.||Use of extensible markup language in a system and method for influencing a position on a search result list generated by a computer network search engine|
|US8260786B2 (en)||2002-05-24||2012-09-04||Yahoo! Inc.||Method and apparatus for categorizing and presenting documents of a distributed database|
|US7231395B2 (en)||2002-05-24||2007-06-12||Overture Services, Inc.||Method and apparatus for categorizing and presenting documents of a distributed database|
|US7555485B2 (en)||2002-08-22||2009-06-30||Yahoo! Inc.||System and method for conducting an auction-based ranking of search results on a computer network|
|US7424510B2 (en)||2002-09-03||2008-09-09||X1 Technologies, Inc.||Methods and systems for Web-based incremental searches|
|US8176154B2 (en)||2002-09-30||2012-05-08||Avaya Inc.||Instantaneous user initiation voice quality feedback|
|US7359979B2 (en)||2002-09-30||2008-04-15||Avaya Technology Corp.||Packet prioritization and associated bandwidth and buffer management techniques for audio over IP|
|US7707140B2 (en)||2002-10-09||2010-04-27||Yahoo! Inc.||Information retrieval system and method employing spatially selective features|
|US20040127232A1 (en) *||2002-12-31||2004-07-01||Michael Kotzin||Method of tracking mobile station location|
|WO2004086257A1 (en) *||2003-03-26||2004-10-07||City Of Johannesburg||System and method for accessing and recording information for use in law enforcement|
|US8306972B2 (en)||2003-03-31||2012-11-06||Google Inc.||Ordering of search results based on language and/or country of the search results|
|US7451129B2 (en) *||2003-03-31||2008-11-11||Google Inc.||System and method for providing preferred language ordering of search results|
|US7451130B2 (en)||2003-06-16||2008-11-11||Google Inc.||System and method for providing preferred country biasing of search results|
|US7257570B2 (en)||2003-11-13||2007-08-14||Yahoo! Inc.||Geographical location extraction|
|GB2405001A (en)||2003-08-13||2005-02-16||Whereonearth Ltd||Determining a likely geographical location|
|US7050990B1 (en)||2003-09-24||2006-05-23||Verizon Directories Corp.||Information distribution system|
|US7730389B2 (en) *||2003-11-25||2010-06-01||Google Inc.||System for automatically integrating a digital map system|
|CA2548948C (en) *||2003-11-25||2014-11-18||Google Inc.||Assigning geographic location identifiers to web pages|
|JP3935889B2 (en) *||2004-02-27||2007-06-27||シャープ株式会社||Data processing apparatus, data processing method, data processing program, and a recording medium recording the data processing program|
|EP1575242A1 (en) *||2004-03-12||2005-09-14||Siemens Aktiengesellschaft||Exact geographical information for an internet web server through internet dialing over a telecommunications network|
|EP1599005B1 (en) *||2004-05-19||2006-02-01||Web.De AG||A method and system for locating facilities in the vicinity of a user unit|
|FR2874108B1 (en) *||2004-08-09||2006-09-22||Cit Alcatel||Method map display containing locations and accession to information resources relating to these places|
|US7743048B2 (en) *||2004-10-29||2010-06-22||Microsoft Corporation||System and method for providing a geographic search function|
|US7746343B1 (en)||2005-06-27||2010-06-29||Google Inc.||Streaming and interactive visualization of filled polygon data in a geographic information system|
|US7761400B2 (en)||2005-07-22||2010-07-20||John Reimer||Identifying events|
|US20070027751A1 (en)||2005-07-29||2007-02-01||Chad Carson||Positioning advertisements on the bases of expected revenue|
|US8666928B2 (en)||2005-08-01||2014-03-04||Evi Technologies Limited||Knowledge repository|
|US7606581B2 (en)||2005-12-13||2009-10-20||Yahoo! Inc.||System and method for providing geo-relevant information based on a location|
|US7616964B2 (en)||2005-12-13||2009-11-10||Yahoo! Inc.||System and method for providing geo-relevant information based on a mobile device|
|US8050689B2 (en)||2005-12-13||2011-11-01||Yahoo! Inc.||System and method for creating minimum bounding rectangles for use in a geo-coding system|
|US7606582B2 (en)||2005-12-13||2009-10-20||Yahoo! Inc.||System and method for populating a geo-coding database|
|CN100566344C (en)||2005-12-22||2009-12-02||腾讯科技（深圳）有限公司||Online user inquiry method and system|
|US8055553B1 (en)||2006-01-19||2011-11-08||Verizon Laboratories Inc.||Dynamic comparison text functionality|
|US7680697B2 (en)||2006-01-25||2010-03-16||Kelkoo Sas||Searching for a seller of a product|
|WO2007118305A1 (en) *||2006-04-19||2007-10-25||Demandcast Corp.||Automatically extracting information about local events from web pages|
|NO325248B1 (en) *||2006-07-04||2008-03-10||Steinar Osthassel||The process feed and system for a supplying users with information regarding a position|
|US8533217B2 (en)||2006-11-01||2013-09-10||Yahoo! Inc.||System and method for dynamically retrieving data specific to a region of a layer|
|WO2008074481A2 (en) *||2006-12-19||2008-06-26||Koninklijke Kpn N.V.||Data network service based on profiling client-addresses|
|US7966321B2 (en) *||2007-01-17||2011-06-21||Google Inc.||Presentation of local results|
|US7966309B2 (en)||2007-01-17||2011-06-21||Google Inc.||Providing relevance-ordered categories of information|
|US8005822B2 (en)||2007-01-17||2011-08-23||Google Inc.||Location in search queries|
|US7836085B2 (en) *||2007-02-05||2010-11-16||Google Inc.||Searching structured geographical data|
|US8838659B2 (en)||2007-10-04||2014-09-16||Amazon Technologies, Inc.||Enhanced knowledge repository|
|EP2277105A4 (en) *||2008-04-07||2012-09-19||Telecomm Systems Inc||Proximity search for point-of-interest names combining inexact string match with an expanding radius search|
|US8151205B2 (en)||2008-09-30||2012-04-03||Nokia Corporation||Methods, apparatuses, and computer program products for providing activity coordination information|
|US9805089B2 (en)||2009-02-10||2017-10-31||Amazon Technologies, Inc.||Local business and product search system and method|
|US20150154851A1 (en) *||2009-10-06||2015-06-04||Luc Vincent||System and method of filling in gaps in image data|
|US9110882B2 (en)||2010-05-14||2015-08-18||Amazon Technologies, Inc.||Extracting structured knowledge from unstructured text|
|US8825382B2 (en)||2011-02-22||2014-09-02||Telenav, Inc.||Navigation system with multimedia distribution mechanism and method of operation thereof|
|EP2923312A4 (en) *||2012-11-21||2016-04-27||Ziprealty Llc||System and method for automated property valuation utilizing user activity tracking information|
|US9659058B2 (en)||2013-03-22||2017-05-23||X1 Discovery, Inc.||Methods and systems for federation of results from search indexing|
|US9880983B2 (en)||2013-06-04||2018-01-30||X1 Discovery, Inc.||Methods and systems for uniquely identifying digital content for eDiscovery|
|US9754036B1 (en)||2013-12-23||2017-09-05||Google Inc.||Adapting third party applications|
|US20160063006A1 (en) *||2014-08-28||2016-03-03||Google Inc.||Auto-complete suggestions for structured searches|
|US10015630B2 (en)||2016-09-15||2018-07-03||Proximity Grid, Inc.||Tracking people|
Family Cites Families (5)
|Publication number||Priority date||Publication date||Assignee||Title|
|US5737734A (en) *||1995-09-15||1998-04-07||Infonautics Corporation||Query word relevance adjustment in a search of an information retrieval system|
|US5835904A (en) *||1995-10-31||1998-11-10||Microsoft Corporation||System and method for implementing database cursors in a client/server environment|
|US5890172A (en) *||1996-10-08||1999-03-30||Tenretni Dynamics, Inc.||Method and apparatus for retrieving data from a network using location identifiers|
|US5978799A (en) *||1997-01-30||1999-11-02||Hirsch; G. Scott||Search engine including query database, user profile database, information templates and email facility|
|US5924090A (en) *||1997-05-01||1999-07-13||Northern Light Technology Llc||Method and apparatus for searching a database of records|
Non-Patent Citations (1)
|See references of WO0041090A1 *|
Cited By (1)
|Publication number||Priority date||Publication date||Assignee||Title|
|US20130125031A1 (en) *||2006-08-31||2013-05-16||Ben Calica||Context related location based content|
Also Published As
|Publication number||Publication date|
|USRE44724E1 (en)||Method of delivery, targeting, and measuring advertising over networks|
|US8467961B2 (en)||Technique for effective navigation based on user preferences|
|US7142843B2 (en)||Geographical web browser, methods, apparatus and systems|
|JP4300767B2 (en)||Guidance system, the content server, the portable device, information processing method, information processing program, and storage medium|
|KR101213857B1 (en)||Virtual World|
|AU2003223314B2 (en)||Location based service provider|
|US6597983B2 (en)||Geographic location multiple listing service identifier and method of assigning and using the same|
|US6014090A (en)||Method and apparatus for delivering local information to travelers|
|ES2673510T3 (en)||User terminal capable of processing geographical location data|
|US8024224B2 (en)||Method and apparatus to provide pay-per-call advertising and billing|
|US8850011B2 (en)||Obtaining and displaying virtual earth images|
|US8799220B2 (en)||Content creation, distribution, interaction, and monitoring system|
|US8065291B2 (en)||On-line geographical directory|
|US8583764B2 (en)||Content distribution system|
|US20030216960A1 (en)||System and method for offering geocentric-based incentives and executing a commercial transaction via a wireless device|
|US7941430B2 (en)||Multi-mode location based e-directory service enabling method, system, and apparatus|
|US20030208624A1 (en)||Method, system, and storage medium for facilitating web searching and brand recognition capabilities over a computer network|
|US20070233582A1 (en)||Neighborhood commerce in a geo-spatial environment|
|US20020165967A1 (en)||Global personalization engine|
|US8121898B2 (en)||Methods and apparatuses for geographic area selections in pay-per-call advertisement|
|US20020147790A1 (en)||System for presenting designated websites or content to specified users|
|US9185068B2 (en)||Technique for effective organization and communication of information|
|US20060200490A1 (en)||Geographical indexing system and method|
|US8527357B1 (en)||Client and server system for coordinating messaging between motivated buyers and listed sellers|
|US20020069105A1 (en)||Data processing system for targeted content|
|AK||Designated contracting states:||
Kind code of ref document: A1
Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE
|AX||Request for extension of the european patent to||
Free format text: AL;LT;LV;MK;RO;SI
|17P||Request for examination filed||
Effective date: 20010808
|18D||Deemed to be withdrawn||
Effective date: 20030801